怎么把3D的numpy array显示为彩色图像并且保存?
3个回答
这里用matplotlib库实现,默认数据是numpy array,RGB通道排列的三维数据
from matplotlib import pyplot as plt
plt.imshow(data)
# 这里默认是RGB通道排列,即(R,G,B),如果是其他通道表述可以通过data.transpose来调整
plt.savefig("./1.jpg")
使用pillow库的Image.fromarray,你的3D的numpy array我理解图片是RGB的
下面我给了代码和示例图片
from PIL import Image
import numpy as np
if __name__ == '__main__':
org_img = Image.open('vacant.jpg')
org_pix = np.array(org_img)
print(org_pix.shape) # (32, 32, 3)
img = Image.fromarray(org_pix.astype('uint8')).convert('RGB')
img.save('111.jpg')
是的,是RGB的数值。多谢!
-
bugoutong
2019-11-09 13:31
keras里面的一些函数也可以用保存图片
from keras.preprocessing import image
my_img = image.array_to_img(my_array)
my_img.save('output.jpg')
my_img.show()
SofaSofa数据科学社区DS面试题库 DS面经