PyQt5 QImage无法从2D灰度阵列正确读取图像

问题描述 投票:0回答:1

我的代码给了我奇怪的结果,如所附的照片QImage到左边ndnd到右边

如何解决将2D灰度ndarray正确转换为QImage的问题?

  • QImage

    • 编辑:原始图像在这里:
  • Original
qimage = QImage(Image, Image.shape[0],Image.shape[1],QImage.Format_Mono).scaled(308, 384, Qt.KeepAspectRatio, Qt.FastTransformation) 
print(Image.shape)
plt.imshow(Image,cmap=plt.cm.bone)
plt.show()
self.image = QPixmap(qimage)
self.LB_Image_Orig.setPixmap(self.image)
self.LB_Image_Orig.adjustSize()
QApplication.processEvents()
python python-3.x pyqt pyqt5 qimage
1个回答
0
投票

感谢eyllanesc提出的解决方案,该解决方案是将图像编写为PNG并直接从磁盘读取:

from skimage.io import imsave, imread

imsave('image.png', Image.astype(np.float))
self.image = QPixmap('image.png')
self.LB_Image_Orig.setPixmap(self.image)
self.LB_Image_Orig.adjustSize()
QApplication.processEvents()

if os.path.exists("image.png"):
 os.remove("image.png") 
© www.soinside.com 2019 - 2024. All rights reserved.