LordofSSBS 2018-08-27 18:24 采纳率: 100%
浏览 910
已采纳

使用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条回答 默认 最新

  • kof98765 2018-08-27 19:33
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部