2015-10-13 69 views
14

我有PIL圖像格式的圖像。我需要將其轉換爲字節數組。將PIL圖像轉換爲字節數組?

img = Image.open(fh, mode='r') 
roiImg = img.crop(box) 

現在我需要roiImg作爲字節數組。

+2

請提供更多細節。字節數組應該是什麼格式?原始像素值可通過Image.getdata()獲得,該圖像返回PIL在特定平臺上以特定格式使用圖像的內部表示。 – dhke

+0

不確定,但它聽起來像你需要使用''圖像'['getdata()'](http://pillow.readthedocs.org/en/3.0.x/reference/Image.html#PIL。 Image.Image.getdata)方法。 – martineau

+0

我的目標是將圖像保存在mysql數據庫中作爲BLOB類型。 –

回答

34

感謝大家的幫助。

終於搞定了!

import io 

img = Image.open(fh, mode='r') 
roiImg = img.crop(box) 

imgByteArr = io.BytesIO() 
roiImg.save(imgByteArr, format='PNG') 
imgByteArr = imgByteArr.getvalue() 

有了這個我不必在我的硬盤上保存裁剪後的圖像,我可以從PIL裁剪圖像檢索字節數組。

+0

謝謝你的這個例子!我只是想做同樣的事情。 – statueofmike

+0

請問您可以添加導入io嗎? –

+0

框未定義。 –