我正在尝试生成一个单色位图(每个像素的uint8)作为bytestring上传到外部设备。在
import scipy.misc
import numpy as np
image = np.ones((100,100),dtype=np.uint8)*255
image[0:50] = 0
scipy.misc.imsave('nomode.bmp',image)
im =scipy.misc.toimage(image, mode='1')
im.convert('1').save('mode_1.bmp')
上面的代码为正确的文件大小生成一个空白图像(全黑),但是在nomode.bmp在
Mode_1-文件显示1.62kB(我想要的大小)
Nomode-文件显示10.8kB(太大)
我是否误解了如何使用模式参数。或者有更好的方法来生成位图头和文件吗?在
如果你想让每个像素都有8位值,我想你需要一个“L”模式的图像:
我不清楚你为什么需要位图头。在
您可以使用
Image.convert('1')
将PIL图像从颜色转换为双层。在你可以:
相关问题 更多 >
编程相关推荐