Tworzę prosty API w kolbie, który akceptuje obraz zakodowany w base64, a następnie dekoduje go do dalszego przetwarzania za pomocą Pillow.Podstawa dekodowania64 z POST do użycia w PIL
szukałem w niektórych przykładach (1, 2, 3) i myślę, że mogę istotę tego procesu, ale wciąż otrzymuję błąd gdzie Poduszka nie może odczytać ciąg dałem.
Oto co mam do tej pory:
import cStringIO
from PIL import Image
import base64
data = request.form
image_string = cStringIO.StringIO(base64.b64decode(data['img']))
image = Image.open(image_string)
co daje błąd:
IOError: cannot identify image file <cStringIO.StringIO object at 0x10f84c7a0>
można wkleić na przykład tego, co dostajesz w 'danych [ 'img']'? Wyloguj się lub wydrukuj. – OregonTrail
Oto przykład: http://jsfiddle.net/gn0x0wvc/. Umieściłem go w znaczniku 'img', aby upewnić się, że dane obrazu nie są uszkodzone. –
Jakie dane wyglądają po 'b64decode()'? Czy jest inne kodowanie, np. urlencoding? Czy to naprawdę obraz obsługiwany przez PIL? – mhawke