使用PyQt4和opencv遇到的Type error

我在使用PyQt4(QtGui,QtCore和uic), opencv, numpy, PTL Image, PTL.ImageQt

self.currentFrame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) #opencv默认是BGR顺序,转为RGB
self.currentSeg = Image.fromarray(thresh).convert('RGB')
self.currentSeg = ImageQt(self.currentSeg)
height, width = self.currentFrame.shape[:2]
img = QtGui.QImage(self.currentFrame,
width,
height,
QtGui.QImage.Format_RGB888)
img = QtGui.QPixmap.fromImage(img)
self.video_label.setPixmap(img) #显示视频区域
seg = QtGui.QImage(self.currentSeg)
seg = QtGui.QPixmap(seg)
self.seg_label.setPixmap(seg) # 显示分割视频区域

    使用的是Windows 7, Python 3.6.5, PyCharm的平台
    报错内容:
    Traceback (most recent call last):

File "D:/Pycharm_Programmes/recognize/step_1(1).py", line 127, in play
seg = QtGui.QImage(self.currentSeg)
TypeError: QImage(): argument 1 has unexpected type 'ImageQt'

程序制作UI在MainWindows左边打印一个视频label,右边打印一个视频label,坐标改了也没有用,没有覆盖
不管右边打印什么UI都显示不出来
是使用setPixmap()
左边实时显示当前摄像头视频,同时右边显示摄像头视频二值化
不清楚为什么不能同时显示两个视频label

stackoverflow 和 csdn都没有看到类似的报错
挺急的,在线等

2个回答

self.currentSeg = ImageQt.ImageQt(self.currentSeg)
了解一下

qq_43062829
LordofSSBS 好像不太ok,'ImageQt' object has no attribute 'mode',电脑识别不出ImageQt.ImageQt
大约 2 年之前 回复

self.currentSeg的类型是ImageQt,不能使用QImage直接转

qq_43062829
LordofSSBS 为什么在别的电脑上可以直接转,要怎么解决,谢谢
大约 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐