Я пробовал загружать и сохранять изображения с помощью python, используя cv2, PIL, scipy, но сохраненное изображение имеет немного другой цвет по сравнению с оригиналом.
Я загружаю и сохраняю формат tif, поэтому не ожидаю изменения цвета.
ссылка на изображение, которое я использую: https://data.csail.mit.edu/graphics/fivek/img/tiff16_c/a0486-jmac_MG_0791.tif
разница между загруженным и сохраненным изображением:
вы можете помочь мне понять, что я делаю не так? почему цвет меняется?
Обновить: проблема в том, что изображение имеет цвет prophoto rgb. кто-нибудь знает, как я могу преобразовать пакет изображений из prophoto rgb в rgb?
Благодарность, йоав
Опция 1:
img = imread(file_name)
imsave('imread.tif', img)
вариант 2:
img = cv2.imread(file_name)
cv2.imwrite('cv2.tif', img)
вариант 3:
img = Image.open(file_name)
img.save('pil.tif')
К сведению: вы также можете попробовать использовать tifffile.
тот же результат с tifffile с кодом: image = tiff.imread (file_path) tiff.imsave ('tifffile.tif', image)
изменение цвета при отображении изображения (без сохранения, только загрузка). я использовал: plt.imshow (img, interpolation = 'ближайший') plt.show ()






I считать OpenCV больше интересуется компьютерным зрением, то есть обнаружением и измерением объектов и т. д., Чем печатью или высококачественным воспроизведением, редактированием и печатью изображений, поэтому он в значительной степени игнорирует профили ICC. Если кто знает лучше, я рад, что меня поправят.
Вы можете использовать ImageMagick для преобразования изображений из одного формата в другой, а также для многих, многих других вещей, одна из которых - изменение цветовых профилей. Итак, я думаю, если вы перейдете в этот сайт и загрузите профиль sRGB (я выбрал первый с "предпочтение" в его имени) и сохраните его как sRGB.icc, вы можете изменить одно из ваших изображений ProPhoto на обычное изображение sRGB с помощью следующей команды в Терминале:
convert input.tif -profile sRGB.icc output.tiff
Попробуйте и посмотрите, работает ли это. Если это так, сделайте копию ваших изображений и на копии вы можете запустить mogrify, чтобы сделать все за один раз - будьте осторожны и сделайте копию, как я предлагаю, потому что она очень быстро изменит все ваши изображения ...
magick mogrify -profile sRGB.icc *tif
Вы можете увидеть встроенный профиль и множество другой информации об изображении, используя команду identifyImageMagick:
magick identify -verbose OneOfYourImages.tiff
Перед сохранением можно вывести изображение на экран и посмотреть, изменятся ли тогда цвета.