形象看起来不错matplotlib.pyplot.imshow,但当使用Qimag在QT-GUi上显示时,会严重失真

2024-09-30 06:20:46 发布

您现在位置:Python中文网/ 问答频道 /正文

好的,我试着从一个经过处理的正常人脸图像中提取出我的局部二进制模式图像,然后在qtgui中显示出来。执行此操作的以下代码是:

def extractFace(self):
    try:



        self.lbpface = self.model.lbpface(self.face)
        height, width = self.self.lbpface.shape[:2]

        #plt.imshow(self.lbpface, cmap= 'gray')
        #plt.show()

        img = QtGui.QImage(self.lbpface,
                           width,
                           height,
                           QtGui.QImage.Format_Indexed8)
        return QtGui.QPixmap.fromImage(img)
    except:
        return QtGui.QPixmap("nosignal.jpg")

但结果是:Not expected result..。在

现在,如果我取消注释plt.imshow公司我得到以下结果(这是我想在GUI中显示的结果):Expected result.

我试过各种各样的东西,如果我试着加上:

^{pr2}$

导致: A little closer...

有什么办法解决这个问题吗?我的意思是,它在matplot图上显示得很好,但是在变成一个QImage之后,它会变得非常扭曲

还将补充说,我是全新的QT4。在


Tags: 图像selfimgreturn二进制plt局部width
1条回答
网友
1楼 · 发布于 2024-09-30 06:20:46

在尝试了各种各样的东西之后,我最终做了这个,虽然不是很理想,可能有点慢,但它工作起来,并向我展示了一个面部图像:

def extractFace(self):
    try:
        self.lbpface = self.model.lbpface(self.face)

        cv2.imwrite("TEST.JPG",self.lbpface)

        return QtGui.QPixmap('TEST.JPG')
    except:
        return QtGui.QPixmap("nosignal.jpg")

相关问题 更多 >

    热门问题