将pixmap分配给QLab时出现Python seg错误

2024-04-26 23:42:38 发布

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

我试图在Python中将一个QPixmap分配给一个QLabel,结果得到了一个seg错误。你知道吗

我在我的代码中用同样的方法做了很多次,效果很好。我不知道在这个案子里我做错了什么。你知道吗

def newPointL(self, x, y):
    rgbIm = np.stack((self.leftPointSelIm,) * 3, axis=-1)
    imPIL = Image.fromarray(np.uint8(rgbIm), mode="RGB")
    draw = ImageDraw.Draw(imPIL)
    point = (x, y, x + 10, y + 10)
    draw.ellipse(point, fill='green', outline='green')
    pointIm = ImageQt.ImageQt(imPIL)
    pointIm2 = QtGui.QImage(pointIm)
    pixmap = QtGui.QPixmap.fromImage(pointIm2)
    self.lbl_startIm.setPixmap(pixmap)

因此,我将一个np数组(uint8类型)转换为一个PIL图像(在生成RGB之后),使用ImageDraw,生成一个QtImage,然后生成一个QImage(我尝试过不使用QImage步骤),然后生成一个pixmap并分配它。我从另一个显示红色省略号的函数复制了这个代码,它工作得很好。请告诉我我做错了什么!你知道吗


Tags: 代码selfnpgreenrgbpointdrawuint8