如何在Python中将矩阵中的灰度值转换为图像?
我有一组灰度值,放在一个24x24的矩阵里:
masked=[[149 172 160 166 170 179 180 176 202 190 221 232 125 112 153 132 200 185
191 231 227 101 85 127] ...
我想把这个矩阵保存成一张灰度图像,方法如下:
im = Image.fromarray(masked_crop)
im.save('crop.png')
可是我得到的图像却是一片黑乎乎的,大小也是24x24。请问我哪里出错了?
2 个回答
0
很遗憾,fromarray
没有说明文档,但如果你的“矩阵”是一个 numpy
数组(或者其他实现了数组接口的东西),并且你把模式设置为 'L'(作为 fromarray
的第二个参数),那么你尝试的应该是可以工作的。
2
你可以使用matplotlib来显示和保存图片。
import numpy
from matplotlib import pyplot as plt
x = numpy.random.rand(10, 10)*255
plt.imshow(x, cmap='gray', interpolation='nearest', vmin=0, vmax=255)
plt.savefig('text.png')
plt.show()