python 实现将Numpy数组保存为图像
第一种方案
可以使用scipy.misc,代码如下:
import scipy.misc
misc.imsave(out.jpg, image_array)
上面的scipy版本会标准化所有图像,以便min(数据)变成黑色,max(数据)变成白色。如果数据应该是精确的灰度级或准确的RGB通道,则解决方案为:
import scipy.misc
misc.toimage(image_array, cmin=0.0, cmax=...).save(outfile.jpg)
第二种方案
使用PIL。
给定一个numpy数组"A":
from PIL import Image
im = Image.fromarray(A)
im.save("out.jpeg")
你可以用几乎任何你想要的格式来替换"jpeg"。有关格式详见here更多细节
第三种方案
mport matplotlib
matplotlib.image.imsave(out.png, array)
import matplotlib.pyplot as plt
plt.imshow(matrix) #Needs to be in row,col order
plt.savefig(
out.png
)
第四种方案
import cv2
import numpy as np
cv2.imwri