zoukankan      html  css  js  c++  java
  • pyQT编写界面调用摄像头

    1、首先要知道使用命令调用摄像头,并将其写成一个槽函数,这样方便以后增加新操作

        def PrepCamera(self):
            self.camera = cv2.VideoCapture(0)

    2、下面编写一个简单界面,我将要调用摄像头的Qlabel放在下图选中的位置,当点击开始按钮时,能调用打开摄像头的操作,当然不是上面那个,Qlabel要实现显示摄像头还需要很多操作

    3、这里设置函数

     def StartCamera(self):
            self.Timer.start(1)
            self.timelb = time.clock()

    这个函数的作用是刷新Qlabel,每隔1毫秒执行一次self类,为什么呢,因为要执行这个操作:

    self.Timer.timeout.connect(self.TimerOutFun)

    每隔一毫秒会执行一次TimerOutFun函数,那这个函数的功能是什么:

        def TimerOutFun(self):
            success, img = self.camera.read()
            if success:
                self.Image = img
                self.DispImg()

    就是为了获取到摄像头的实时图片,得到之后会执行self.DispImg()这个函数,这个函数的作用是改变图片数据类型,并将图片用过QLabel展示出来:

        def DispImg(self):
            img = cv2.cvtColor(self.Image, cv2.COLOR_BGR2RGB)
            qimg = qimage2ndarray.array2qimage(img)
            self.DispLb.setPixmap(QPixmap(qimg))
            self.DispLb.show()

    这样我们就可以在界面调用摄像头了:

  • 相关阅读:
    OCP-1Z0-053-200题-178题-187
    OCP-1Z0-053-200题-179题-232
    OCP-1Z0-053-200题-181题-407
    OCP-1Z0-053-200题-182题-408
    OCP-1Z0-053-V13.02-408题
    OCP-1Z0-053-200题-183题-232
    OCP-1Z0-053-200题-184题-270
    OCP-1Z0-053-200题-185题-44
    OCP-1Z0-053-200题-186题-61
    OCP-1Z0-053-200题-187题-610
  • 原文地址:https://www.cnblogs.com/roscangjie/p/11504608.html
Copyright © 2011-2022 走看看