PIL画像形式の画像があります。バイト配列に変換する必要があります。
img = Image.open(fh, mode='r')
roiImg = img.crop(box)
今、バイト配列としてroiImg
が必要です。
皆さん、助けてくれてありがとう。
ついに解決しました!!
import io
img = Image.open(fh, mode='r')
roiImg = img.crop(box)
imgByteArr = io.BytesIO()
roiImg.save(imgByteArr, format='PNG')
imgByteArr = imgByteArr.getvalue()
これにより、トリミングした画像をハードディスクに保存する必要がなくなり、PILでトリミングした画像からバイト配列を取得できます。
これが私の解決策です。この機能を使用してください。
from PIL import Image
import io
def image_to_byte_array(image:Image):
imgByteArr = io.BytesIO()
image.save(imgByteArr, format=image.format)
imgByteArr = imgByteArr.getvalue()
return imgByteArr