PyQt5 + openCV 实现笔记本摄像头实时采集(完整代码)
前段时间学习了人脸识别和语音交互,想要集成到一个UI上。
人脸识别采用opencv的经典模块,语音交互使用图灵机器人+谷歌的speech recognition+win32com.clent.Dispatch
最初打算使用pygame做UI来集成,但是发现CV2捕捉的frame是ndarray格式,pygame的显示图形是pygame.surface格式
如果采用笨办法,CV2处理图片,保存图片,pygame读取图片,帧率太低,显示效果不好。
在参考了以下资料:
1.网址:https://github.com/seym45/webcamViewer
文章名:webcamViewer/integration of PyQt and OpenCV
作者:seym45
2.网址:https://my.oschina.net/u/3446786/blog/885875
文章名: pyqt 使用cv2 显示摄像头
作者:doodt
发布时间: 2017/04/24 11:54
发现:
1号资料的问题在于,搭建环境是PyQt4+openCV,与qt5的库关系有所不同。
2号资料代码不完整,无法直接使用。
综合以上二者,给出我的代码。
1.导入
21-23行写法不规范,下次改正
2.从摄像头抓取图片并转换为可被qt读取的格式,核心是53-64行
3.窗口创建,计时器与图像的显示
4.main函数
下一步会发出集成所有功能的代码。
需要交流,可以留言或发送邮件 [email protected]