Webcam Uygulaması

Merhaba, bir webcam uygulaması yapmaya çalışıyorum ama ilk adımı daha geçemedim.
Kameradan alınan görüntüyü label’da nasıl gösterebilirim?

Kodunuzu metin olarak da yollayabilir misiniz.

Tabi, paylaşıyorum ama henüz bir şey yapamadım (:

from PyQt5.QtWidgets import *
from modül20 import *
import cv2
class kamera (QMainWindow):
    def __init__(self):
        super().__init__()
        self.ui=Ui_MainWindow()
        self.ui.setupUi(self)
        self.ui.pushButton_kamerayi_ac.clicked.connect(self.kamera)
    def kamera(self):
        kamera=cv2.VideoCapture(0)
        while True:
            ret,kare=kamera.read()
            cv2.imshow("Wideo",kare)
            if (cv2.waitKey(25) & 0xFF==ord("q")):
                break
        kamera.release()
        cv2.destroyAllWindows()


uygulama=QApplication([])
pencere=kamera()
pencere.show()
uygulama.exec()

Modül20


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(735, 568)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton_kamerayi_ac = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_kamerayi_ac.setGeometry(QtCore.QRect(70, 340, 151, 71))
        self.pushButton_kamerayi_ac.setObjectName("pushButton_kamerayi_ac")
        self.pushButton_kayda_basla = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_kayda_basla.setGeometry(QtCore.QRect(310, 340, 151, 71))
        self.pushButton_kayda_basla.setObjectName("pushButton_kayda_basla")
        self.pushButton_kayd_durdur = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_kayd_durdur.setGeometry(QtCore.QRect(540, 340, 151, 71))
        self.pushButton_kayd_durdur.setObjectName("pushButton_kayd_durdur")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(30, 20, 671, 281))
        self.label.setStyleSheet("background-color: rgb(255, 255, 200);")
        self.label.setFrameShape(QtWidgets.QFrame.Panel)
        self.label.setFrameShadow(QtWidgets.QFrame.Plain)
        self.label.setLineWidth(5)
        self.label.setMidLineWidth(0)
        self.label.setText("")
        self.label.setObjectName("label")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 735, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushButton_kamerayi_ac.setText(_translate("MainWindow", "Kamerayı Aç"))
        self.pushButton_kayda_basla.setText(_translate("MainWindow", "Kayda Başla"))
        self.pushButton_kayd_durdur.setText(_translate("MainWindow", "Kaydı Durdur"))


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

Sanırım QThread ve birkaç hook kullanmanız gerekecek, bu linki inceleyerek bir yapmaya çalışın:


Bu video işinize yarayabilir belki.

Bu video işinize yarayabilir belki.