0

Python では、文字列:

a = '00001111\n00110011\n00110101\n.....'

それを 8x8 ピクセルの画像に変換するにはどうすればよいでしょうか。0 は黒を表し、1 は白を表します。例えばBMPを勉強して、そこからBMPファイルを作るルートです。それとも、悟りへのよりスムーズな道はありますか?

4

1 に答える 1

1

最初のステップは、文字列を適切な値を含む一連のバイトに変換することです。

pixel_value = {'0': 0, '1': 255}
byte_seq = ''.join(chr(pixel_value[c]) for c in a if c in pixel_value)

次に、PILImage.fromstringを使用して画像に変換します。

from PIL import Image
im = Image.fromstring('L', (8, 8), byte_seq)
im.show()
于 2013-02-05T23:02:28.123 に答える