1. ホーム
  2. python

[解決済み] バイトファイルからPIL画像を開く

2023-03-12 07:08:43

質問

私は この画像 で、サイズは128 x 128ピクセル、RGBAはバイト値でメモリに保存されています。しかし

from PIL import Image

image_data = ... # byte values of the image
image = Image.frombytes('RGBA', (128,128), image_data)
image.show()

例外を投げる

ValueError: 画像データが不足しています。

なぜですか?何が間違っているのでしょうか?

どのように解決するのですか?

のドキュメントは Image.open のドキュメントによると、ファイルのようなオブジェクトを 受け取ることができるそうです。 io.BytesIO オブジェクトから作成された bytes オブジェクトを作成します。

from PIL import Image
import io

image_data = ... # byte values of the image
image = Image.open(io.BytesIO(image_data))
image.show()