Я читаю изображения, которые я получаю из Интернета, а затем сразу же читаю в OpenCV на python, как показано ниже:
# read in image as bytes from page
image = page.raw_stream.read()
frame = cv2.imdecode(np.asarray(bytearray(image)), 0)
, и я получаю предупреждение libpng:
libpng warning: iCCP: known incorrect sRGB profile
Как я могу удалить профиль sRGB перед imread?Люди предлагают сделать это с помощью imagemagick на png-файлах перед их чтением, но для меня это невозможно.Разве нет возможности сделать это в python напрямую?
EDIT:
Я не могу получить код в ответе ниже, чтобы исправить мою проблему, если я запускаю его с файлом в https://uploadfiles.io/m1w2l и используйте код:
import cv2
import numpy as np
with open('data/47.png', 'rb') as test:
image = np.asarray(bytearray(test.read()), dtype="uint8")
image = cv2.imdecode(image, cv2.IMREAD_COLOR)
Я получаю то же предупреждение