import numpy
from PIL import Image
a=numpy.array(numpy.uint16([[12,23,34],[123,213,22]]))
im=Image.fromarray(a)
# im =Image.fromarray(a, mode='I;16')
im.save(r'd:\a16.tiff')
保存的 a16.tiff 就是 16 位灰度图像.
首先, 生成的数组类型是 uint16
然后, fromarray() 时不要指定其 mode, 或者指定 mode='I;16', 这里的''I;16''我是第一次见到, 而且官方说明文档里也 没有提及这个 mode, 只有'I'.
最后, 图像类型只能是 tiff, 其他的我试了, 是不行的.
python-PIL-16bit - 灰度图像生成 - tiff
来源: http://www.bubuko.com/infodetail-2478107.html