我在Flask中製作了一個簡單的API,它接受以base64編碼的圖像,然後使用Pillow將其解碼以作進一步處理。從POST解碼base64以在PIL中使用
我看了一些例子(1,2,3),我覺得我得到的過程的要點,但我不斷收到一個錯誤的枕頭無法讀取我給它的字符串。
這裏是我到目前爲止有:
import cStringIO
from PIL import Image
import base64
data = request.form
image_string = cStringIO.StringIO(base64.b64decode(data['img']))
image = Image.open(image_string)
這給錯誤:
IOError: cannot identify image file <cStringIO.StringIO object at 0x10f84c7a0>
你能在你的'數據[ 'IMG']'得到什麼的一個例子粘貼?記錄下來,或打印出來。 – OregonTrail 2014-09-27 03:57:53
下面是一個例子:http://jsfiddle.net/gn0x0wvc/。我把它放在'img'標籤中,以確保圖像數據沒有被破壞。 – 2014-09-27 04:21:50
'b64decode()'後面的數據是什麼樣的?是否有其他編碼正在進行,例如URL編碼?它是否真的是PIL支持的圖像? – mhawke 2014-09-27 05:09:02