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编写的最短路径算法
Mar 25 Python
Python语言实现百度语音识别API的使用实例
Dec 13 Python
matplotlib savefig 保存图片大小的实例
May 24 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
Oct 22 Python
django小技巧之html模板中调用对象属性或对象的方法
Nov 30 Python
Python 监测文件是否更新的方法
Jun 10 Python
基于python-opencv3的图像显示和保存操作
Jun 27 Python
通过python3实现投票功能代码实例
Sep 26 Python
Python自动化完成tb喵币任务的操作方法
Oct 30 Python
8段用于数据清洗Python代码(小结)
Oct 31 Python
如何基于Python爬取隐秘的角落评论
Jul 02 Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
Dec 14 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 获取可变函数参数的函数
2009/08/26 PHP
使用配置类定义Codeigniter全局变量
2014/06/12 PHP
php基础教程
2015/08/26 PHP
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
2015/11/05 PHP
thinkPHP模板引擎用法示例
2016/12/08 PHP
PHPExcel导出2003和2007的excel文档功能示例
2017/01/04 PHP
PHP whois查询类定义与用法示例
2019/04/03 PHP
Yii框架布局文件的动态切换操作示例
2019/11/11 PHP
PHP实用小技巧之调用录像的方法
2019/12/05 PHP
你的 mixin 真的兼容 ECMAScript 5 吗?
2013/04/11 Javascript
javascript获取form里的表单元素的示例代码
2014/02/14 Javascript
Jquery遍历Json数据的方法
2015/04/20 Javascript
在JavaScript应用中使用RequireJS来实现延迟加载
2015/07/01 Javascript
javascript实现tab响应式切换特效
2016/01/29 Javascript
JavaScript判断变量是否为数组的方法(Array)
2016/02/24 Javascript
jQuery实现Select左右复制移动内容
2016/08/05 Javascript
关于vue-router的beforeEach无限循环的问题解决
2017/09/09 Javascript
微信小程序报错:this.setData is not a function的解决办法
2017/09/27 Javascript
JavaScript 判断对象中是否有某属性的常用方法
2018/06/14 Javascript
[01:04]DOTA2上海特锦赛现场采访 FreeAgain遭众解说围攻
2016/03/25 DOTA
从零学python系列之新版本导入httplib模块报ImportError解决方案
2014/05/23 Python
Python中类似于jquery的pyquery库用法分析
2019/12/02 Python
django迁移文件migrations的实现
2020/03/31 Python
详解Python openpyxl库的基本应用
2021/02/26 Python
Daniel Wellington官方海外旗舰店:丹尼尔惠灵顿DW手表
2018/02/22 全球购物
行政前台岗位职责
2013/12/04 职场文书
干部行政关系介绍信
2014/01/17 职场文书
语文教育专业求职信
2014/06/28 职场文书
2014年机关党建工作总结
2014/11/11 职场文书
先进班组事迹材料
2014/12/25 职场文书
本科毕业论文指导教师评语
2014/12/30 职场文书
教师党员自我评价2015
2015/03/04 职场文书
小学教师师德师风自我评价
2015/03/04 职场文书
高二数学教学反思
2016/02/18 职场文书
详解使用内网穿透工具Ngrok代理本地服务
2022/03/31 Servers
Java实现添加条码或二维码到Word文档
2022/06/01 Java/Android