Pyqt QImage 与 np array 转换方法
作者:Lynn_Chan 时间:2022-01-03 01:18:53
项目使用Pyqt作为UI框架,使用相机线程捕捉image,并在QGraphicsView中显示,遇到以下问题:
1、采集的数据为nparray数据,需转换为QImage 转换代码如下:
img=cv2.resize(src=img,dsize=None,fx=0.2,fy=0.2)
img2=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
self._image = QtGui.QImage(img2[:],img2.shape[1], img2.shape[0],img2.shape[1] * 3, QtGui.QImage.Format_RGB888)
注意:QImage(uchar * data, int width, int height, int bytesPerLine, Format format) 中的bytesPerLine 参数不能省略,负责造成Qimage数据错误,显示图片不正常,此参数设置为image的width*image.channels
2、采集数据的线程为非UI线程,则在QGraphicsView中显示时不仅需要添加Item对象,并且更新显示线程需在UI线程中,否则QGraphicsView不会主动更新显示,使用信号将image放到UI线程中更新即可
3、保证在UI更新时,所需更新的image还未被销毁,由于处于不同的线程,所以image可存储于更新前不会被销毁的对象中
来源:https://blog.csdn.net/ccchen706/article/details/71425653
标签:Pyqt,QImage,np,array
0
投稿
猜你喜欢
python画图常规设置方式
2023-11-25 03:52:04
ASP分页类(支持多风格变换)
2011-04-08 10:39:00
简单实现python收发邮件功能
2022-03-08 08:02:40
Django压缩静态文件的实现方法详析
2023-06-15 05:31:33
python实现在函数中修改变量值的方法
2023-12-15 04:15:02
一篇文章掌握MySQL的索引查询优化技巧
2024-01-17 22:19:29
Pycharm Git 设置方法
2023-07-13 17:02:55
Python多线程中阻塞(join)与锁(Lock)使用误区解析
2022-03-22 08:00:31
innerHTML 的些摘记
2009-06-01 15:42:00
python opencv实现证件照换底功能
2021-06-22 07:17:58
利用xmlhttp和adodb.stream加缓存技术下载远程Web文
2009-04-23 18:33:00
采用手动分页方式显示文章具体的内容
2009-10-29 11:58:00
MySQL8.0无法远程连接访问的解决方法
2024-01-19 02:55:54
Python + selenium + crontab实现每日定时自动打卡功能
2021-06-10 19:45:42
Makefile构建Golang项目示例详解
2024-05-25 15:16:26
Python 文件操作的详解及实例
2021-06-05 12:59:12
CSS样式表中继承关系的空格与不空格
2007-12-12 13:05:00
getWindow与isWindow
2009-12-28 13:12:00
SQL Server 作业同步 (结合备份作业)
2012-07-11 15:59:47
详解MySQL高可用MMM搭建方案及架构原理
2024-01-18 07:28:09