Pyqt QImage 与 np array 转换方法


Posted in Python onJune 27, 2019

项目使用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可存储于更新前不会被销毁的对象中

以上这篇Pyqt QImage 与 np array 转换方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 调用VC++的动态链接库(DLL)
Sep 06 Python
python实现进程间通信简单实例
Jul 23 Python
Python常用小技巧总结
Jun 01 Python
python 自动化将markdown文件转成html文件的方法
Sep 23 Python
python编程实现归并排序
Apr 14 Python
Python之Web框架Django项目搭建全过程
May 02 Python
python自定义异常实例详解
Jul 11 Python
Python入门之三角函数sin()函数实例详解
Nov 08 Python
基于Python实现船舶的MMSI的获取(推荐)
Oct 21 Python
python元组的概念知识点
Nov 19 Python
Python socket聊天脚本代码实例
Jan 02 Python
Python基于Tkinter开发一个爬取B站直播弹幕的工具
May 06 Python
pyqt5 使用cv2 显示图片,摄像头的实例
Jun 27 #Python
对python中GUI,Label和Button的实例详解
Jun 27 #Python
python 整数越界问题详解
Jun 27 #Python
在Python中合并字典模块ChainMap的隐藏坑【推荐】
Jun 27 #Python
python 反编译exe文件为py文件的实例代码
Jun 27 #Python
Python 使用PyQt5 完成选择文件或目录的对话框方法
Jun 27 #Python
Python提取转移文件夹内所有.jpg文件并查看每一帧的方法
Jun 27 #Python
You might like
十天学会php之第四天
2006/10/09 PHP
详解PHP中strlen和mb_strlen函数的区别
2014/03/07 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
PHP+原生态ajax实现的省市联动功能详解
2017/08/15 PHP
js+FSO遍历文件夹下文件并显示
2007/03/07 Javascript
前端开发部分总结[兼容性、DOM操作、跨域等](持续更新)
2010/03/04 Javascript
jQuery Validation实例代码 让验证变得如此容易
2010/10/18 Javascript
ExtJS4中使用mixins实现多继承示例
2013/12/03 Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
2013/12/12 Javascript
jQuery 浮动导航菜单适合购物商品类型的网站
2014/09/09 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
JavaScript跨平台的开源框架NativeScript
2015/03/24 Javascript
Javascript中3个需要注意的运算符
2015/04/02 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
JS实现显示当前日期的实例代码
2018/07/03 Javascript
关于layui导航栏不展示下拉列表的解决方法
2019/09/25 Javascript
在Koa.js中实现文件上传的接口功能
2019/10/08 Javascript
python截取两个单词之间的内容方法
2018/12/25 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
2019/01/30 Python
Python3.5集合及其常见运算实例详解
2019/05/01 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
python列表推导式操作解析
2019/11/26 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
2020/04/08 Python
Python加速程序运行的方法
2020/07/29 Python
详解HTML5中的拖放事件(Drag 和 drop)
2016/11/14 HTML / CSS
运动鞋、足球鞋和慕尼黑球衣:Sport Münzinger
2019/08/26 全球购物
应用数学专业求职信
2014/03/14 职场文书
中小学生学籍证明
2014/10/25 职场文书
2015大学生实训报告
2014/11/05 职场文书
2014年化验员工作总结
2014/11/18 职场文书
留学推荐信中文范文
2015/03/26 职场文书
超市督导岗位职责
2015/04/10 职场文书
护士医德医风心得体会
2016/01/25 职场文书
社交电商模式的兴起:这些新的商机千万别错过
2019/07/26 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书