0 votes
by (120 points)

我用的是veye-IMX327摄像头,树莓派板子,python实现,想用摄像头采图并显示,但是套用例程里的函数时不出图,报如下错误。

我是用qt绘制的.ui界面,把界面动态加载到程序里的。静态加载并没有报这个错误。不知哪位大神能解答一下这个错误原因是什么?

另外,直接对frame.shape为何不对呢?

h, w = frame.shape[:2]

原代码如下:

 def show_camera(self):
                
        frame = self.camera.capture(encoding = 'i420')
        height = int(align_up(1080, 16))
        width = int(align_up(1920, 32))
        image = frame.as_array.reshape(int(height * 1.5), width)
        #h, w = frame.shape[:2]
        #h = frame.height
        #w = frame.wight
        image = frame.as_array.reshape(int(h * 1.5), w)
        self.image = cv2.cvtColor(image, cv2.COLOR_YUV2BGR_I420)
        # Release memory
        self.camera.release_buffer(frame)
        del frame

        show = cv2.cvtColor(self.image, cv2.COLOR_BGR2RGB)
        showImage = QtGui.QImage(show.data, show.shape[1], show.shape[0], QtGui.QImage.Format_RGB888)  # QImage::QImage ( uchar * data, int width, int height, Format format )

        self.ui.label_face.setPixmap(QtGui.QPixmap.fromImage(showImage))

        self.ui.label_face.setScaledContents(True)
       

1 Answer

0 votes
by (2.3k points)
不好意思,

我们暂时对QT和python的掌握程度不行,无法帮助到你了。
欢迎来到 Veye Q&;A ,有什么不懂的可以尽管在这里提问,你将会收到社区其他成员的回答。
...