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 相关文章推荐
在Django中创建第一个静态视图
Jul 15 Python
Python六大开源框架对比
Oct 19 Python
Python 登录网站详解及实例
Apr 11 Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 Python
python批量获取html内body内容的实例
Jan 02 Python
python实现串口自动触发工作的示例
Jul 02 Python
Python Collatz序列实现过程解析
Oct 12 Python
在django中使用apscheduler 执行计划任务的实现方法
Feb 11 Python
Python 读取有公式cell的结果内容实例方法
Feb 17 Python
Python虚拟环境库virtualenvwrapper安装及使用
Jun 17 Python
Python多线程的退出控制实现
Aug 10 Python
python 如何用map()函数创建多线程任务
Apr 07 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
CI框架开发新浪微博登录接口源码完整版
2014/05/28 PHP
浅析application/x-www-form-urlencoded和multipart/form-data的区别
2014/06/22 PHP
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
Laravel中任务调度console使用方法小结
2017/05/07 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
javascript 单选框,多选框美化代码
2008/08/01 Javascript
asp(javascript)全角半角转换代码 dbc2sbc
2009/08/06 Javascript
用js读、写、删除Cookie代码续篇
2014/12/03 Javascript
JavaScript中使用sencha gridpanel 编辑单元格、改变单元格颜色
2015/11/26 Javascript
Vue 2.0 服务端渲染入门介绍
2017/03/29 Javascript
微信小程序网络请求的封装与填坑之路
2017/04/01 Javascript
前端页面文件拖拽上传模块js代码示例
2017/05/19 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
2018/05/21 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
2020/08/26 Javascript
js实现手表表盘时钟与圆周运动
2020/09/18 Javascript
Echarts.js无法引入问题解决方案
2020/10/30 Javascript
[14:36]2014 DOTA2国际邀请赛中国区预选赛5.21 Orenda VS NE
2014/05/22 DOTA
Python 制作糗事百科爬虫实例
2016/09/22 Python
python机器学习实战之最近邻kNN分类器
2017/12/20 Python
分析Python中解析构建数据知识
2018/01/20 Python
python实现壁纸批量下载代码实例
2018/01/25 Python
Python利用Scrapy框架爬取豆瓣电影示例
2020/01/17 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
python计算Content-MD5并获取文件的Content-MD5值方式
2020/04/03 Python
如何基于python实现不邻接植花
2020/05/01 Python
Python字符串格式化f-string多种功能实现
2020/05/07 Python
python实现凯撒密码、凯撒加解密算法
2020/06/11 Python
基于HTML5的WebGL实现json和echarts图表展现在同一个界面
2017/10/26 HTML / CSS
Bed Bath & Beyond加拿大官网:购买床上用品、浴巾、厨房电器等
2019/10/04 全球购物
过滤器的用法
2013/10/08 面试题
有关环保的标语
2014/06/13 职场文书
安全在我心中演讲稿
2014/09/01 职场文书
心灵点滴观后感
2015/06/02 职场文书
漫画「请问您今天要来点兔子吗?」最新杂志彩页公开
2022/03/24 日漫
Python爬虫 简单介绍一下Xpath及使用
2022/04/26 Python