将Python Opencv图像(numpy数组)转换为PyQt QPixmap图像 [英] Convert Python Opencv Image (numpy array) to PyQt QPixmap image

查看:1727
本文介绍了将Python Opencv图像(numpy数组)转换为PyQt QPixmap图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将python opencv图像转换为QPixmap.

I am trying to convert python opencv image to QPixmap.

我按照说明显示了页面链接,我的代码附在下面

I follow the instruction shows Page Link and my code is attached below

img = cv2.imread('test.png')[:,:,::1]/255. 
imgDown = cv2.pyrDown(img)
imgDown = np.float32(imgDown)        
cvRGBImg = cv2.cvtColor(imgDown, cv2.cv.CV_BGR2RGB)
qimg = QtGui.QImage(cvRGBImg.data,cvRGBImg.shape[1], cvRGBImg.shape[0], QtGui.QImage.Format_RGB888)
pixmap01 = QtGui.QPixmap.fromImage(qimg)
self.image01TopTxt = QtGui.QLabel('window',self)
self.imageLable01 = QtGui.QLabel(self)
self.imageLable01.setPixmap(pixmap01)

代码没有编译和运行时错误,但是转换错误,我只是得到一些噪点图像.我不确定是什么问题.有人可以帮忙吗?

The code has no compile and runtime error but the conversion is wrong and I just get some noise image. I am not sure what the problem is. Could anyone help?

推荐答案

使用此将cvImage转换为Qimage,这里的cvImage是原始图像.

Use this to convert cvImage to Qimage, here cvImage is the original image.

height, width, channel = cvImg.shape
bytesPerLine = 3 * width
qImg = QImage(cvImg.data, width, height, bytesPerLine, QImage.Format_RGB888)

并将此Qimage设置为Label. setPixmap Qimage中的参数.它有效!!!

and set this Qimage to Label.setPixmap parameter from Qimage. It works!!!

这篇关于将Python Opencv图像(numpy数组)转换为PyQt QPixmap图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆