Преобразование строки base64 в массив пустых изображений изменяет вывод изображения на немного более синий цвет - PullRequest
0 голосов
/ 12 мая 2019

После съемки с помощью Python полученное изображение становится немного более голубым, чем исходное изображение. Как вывести исходное изображение без изменения цвета на синий?

Код получает строку base64 с присоединенной частью данных. Это затем снимает часть данных, чтобы оставить текст базы 64, а затем пытается исправить ошибку binascii. Затем в строке 64 строки с простым текстом преобразуется в массив Numpy.

Вот код Python, который я использовал для вывода изображения

#extract the plain base64 data text

imageuri = request.args.get('imageuri')

base64justdatatxt = re.sub(r'data\:image\/jpeg;base64,', "", imageuri)


print("original uri =" + imageuri)

print("modified string " + base64justdatatxt)


#have to convert an image uri to a numpy array, convert a base64 string to a numpy array, base64 string -> numpy array

#fixes a binascii error

image = Image.open(BytesIO(base64.b64decode(base64justdatatxt, ' /')))

#convert to numpy array

img = np.array(image)




#img = base64.b64decode(imageuri, ' /')


#cv.imwrite(fullimageurl,img)

cv.imwrite(temporary_file_path,img)

1 Ответ

0 голосов
/ 14 мая 2019

Спасибо. Я использовал PIL вместо OpenCV, и он работает правильно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...