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()

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

  • 相关阅读:
    MongoDB学习(1)—在Windows系统中安装MongoDB
    在windows系统的文件右键菜单中增加“命令提示符”
    python基础五之字典
    python基础四之列表
    python基础三之字符串
    python基础二
    python基础一
    二叉搜索树与双向链表
    记录一下Comparator的用法
    根节点到叶子节点路径之和为target
  • 原文地址:https://www.cnblogs.com/roscangjie/p/11504608.html
Copyright © 2011-2022 走看看