gpt4 book ai didi

python - 如何在 Python 中将二进制数组写为图像?

转载 作者:太空狗 更新时间:2023-10-29 18:16:01 25 4
gpt4 key购买 nike

我在 Python 中有一个二进制数数组:

data = [0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1...]

我想取出这些数据并将其保存为位图,其中“0”对应白色,“1”对应黑色。我知道数组中有2500个数字,对应一个50x50的位图。我已经下载并安装了 PIL,但我不确定如何将其用于此目的。如何将这个数组转换成对应的图片?

最佳答案

您可以将 Image.new1 一起使用模式并将每个整数作为初始图像中的像素:

>>> from PIL import Image
>>> import random

>>> data = [random.choice((0, 1)) for _ in range(2500)]
>>> data[:] = [data[i:i + 50] for i in range(0, 2500, 50)]
>>> print data
[[0, 1, 0, 0, 1, ...], [0, 1, 1, 0, 1, ...], [1, 1, 0, 1, ...], ...]

>>> img = Image.new('1', (50, 50))
>>> pixels = img.load()

>>> for i in range(img.size[0]):
... for j in range(img.size[1]):
... pixels[i, j] = data[i][j]

>>> img.show()
>>> img.save('/tmp/image.bmp')

enter image description here

关于python - 如何在 Python 中将二进制数组写为图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32105954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com