从 numpy 数组在 PyQt5 中显示图像

我有一个形状为 numpy 的数组(500, 500, 3)。我希望它转换成图像并使用 PyQt5 显示它。



函数式编程
浏览 216回答 1
1回答

慕工程0101907

我假设该数组的类型为 uint8 并代表红色、绿色和蓝色 您可以Pillow为此使用,例如from PyQt5 import QtWidgets, QtGuifrom PIL import Image, ImageQtimport numpy as np# generate datatable = np.zeros((256,256,3), dtype=np.uint8)for i in range(256):    table[:,i,0] = i    table[i,:,1] = itable[:,:,2] = (2*255 - table[:,:,0] - table[:,:,1]) // 2# convert data to QImage using PILimg = Image.fromarray(table, mode='RGB')qt_img = ImageQt.ImageQt(img)app = QtWidgets.QApplication([])w = QtWidgets.QLabel()w.setPixmap(QtGui.QPixmap.fromImage(qt_img))w.show()app.exec()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python