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
  • asp之家 网络编程 m.aspxhome.com