Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Точное преобразование цветового пространства профиля происходит в и обратно в независящем от устройства цветовом прострастве (PCS), то есть система управления цветовым профилем программы преобразует изображение из пространства sRGB (например) через PCS в пространство цветов монитора. Для преобразования могут использоваться две модели алгоритмов: Matrix/TRC и LUT (Lookup table), соответственно цветовой профиль может быть основан на Matrix/TRC, на LUT или содержать и то и то. В Windows не все программы умеют управлять цветом в принципе, не каждая умеющая программа умеет работать с обоими алгоритмами преобразования, определённый алгоритм может поддерживаться только для определённых файлов, не каждая может конвертировать в профиль монитора. Зоопарк. Попробуем с ним немного разобраться и начнём с...
Начнём с браузеров
Для теста я использую специально подготовленные файлы (первые три файла с поддержкой и LUT и Matrix/TRC профилями, следующие три только с LUT, по три файла потому что три расширения (jpg, png и tif). Возможны несколько вариантов отображения данных файлов:
Откроем html страничку со всеми файлами в разных браузерах
Открыть отдельно.
Что можно сказать при взгляде на изображение? Ну точно можно сказать, что у Firefox есть проблемы, а у Edge и Chrome всё ок. Firefox можно тюнинговать, подробнее тут (пишем в адресной строке: about:config, в поиске: color_m,
gfx.color_management.enablev4 = true
gfx.color_management.mode = 1
gfx.color_management.rendering_intent = 1
), также применим к монитору специально созданный для теста цветовый профиль, которые при установке и назначении монитору добавят сильный цветовой оттенок всему экрану, но программы, которые работают именно с установленным профилем монитора (а не общим sRGB) покажут всё корректно.
Открыть отдельно.
Картина радикально меняется, Firefox молодец, после проделанных манипуляций он начинает показывать абсолютно всё верно, а вот остальные браузеры нет, похоже, что они работают не с профилем монитора, а с sRGB.
Попробуем сравнить реальное изображение в разных браузерах, для этого воспользуемся недавной анонсированной утилитой ICAT от NVidia, сделаем скриншоты браузеров Edge и Firefox и сравним (надеюсь, наспех зарегистрированный бесплатный сайт тут, не заблокирует доступ, на всякий случай зеркало).
Изображения
Оригиналы файлов: Firefox, Edge.
Видно, что на конкретно данном примере цветопередача совпадает, а вот чёткость у Firefox лучше, с Chrome ситуация аналогична, с цветопередачей всё ок, а чёткость хуже.
Продолжим с программами для просмотра графических файлов
В тесте участвовали Windows Photo, FastStone, HoneyView, ImageGlass (GitHub), IrfanView, JPEGView (SourceForge), Nomacs (GitHub), PicView (GitHub), qimgv (GitHub) и qView (GitHub), XnView. Изначально я также хотел продемонстрировать с какой скоростью открывается файл в каждой из программ (легко замерить скорость открытия программы с помощью PowerShel и команды
Measure-Command {Invoke-Item .\example1.jpg}
десяти прогонов с закрытием программы после каждого прогона, но быстро понял, что это быссмысленно, открытие программы != завершению открытия файла, как кэширует Windows вообще не понять, но тем не менее результаты следующие:
Windows Photo открытие 247 мс;
ImageGlass 47 мс (но файл отображается примерно через одну секунду);
У остальных программ в среднем открытие происходит за 49 мс.
В просмотрщиках опция управления цветом, если и есть, то по умолчанию выключена (перед тестирование включал), также у некоторых есть опция конвертирования в профиль монитора, также по умолчанию выключена, но мною включена. Программы Nomacs, PicView, qimgv и qView вылетели, так как в принципе не умеют работать с системой управления цвета.
Просмотрщик может использовать систему управления цветом (1 балл), использовать, но преобразовывать некорректно (0.5 балла) или совсем не использовать (0 баллов), за наличие конвертации в профиль монитора 0.01 балла, за возможность выбора профиля для файлов у которых его нет 0.001 балла.
В результате получается следующая таблица
Удивился тому, что FastStone и IrfanView спотыкаются на png, показывая следующее
От Windows Photo особенного не ждал, поэтому особо и не расстроился. Заинтересовал ImageGlass, симпатично выглядит, активно развивается, в текущем dev билде уже часть косяков поправили (заработало управление цветом на tif, например), может и перерасчёт в профиль монитора прикрутят.
Если сравнивать цветопередачу у участников теста, то у всех кроме ImageView изображение ничем не отличается от изображения в FireFox. ImageView изображение в профиль монитора не конвертирует, в результате оно сильно ярчит, аналогичного эффекта можно добиться, если, например, отключить автоопределение и использование профиля монитора у FastStone.
Зеркало.
Изображения
Оригиналы файлов: Firefox, ImageGlass.
Выводы? Как таковых не будет.
Если работаете с цветом и изображениями, то разбираетесь лучше меня (я ещё буквально пару дней назад ничего не знал про icc), и сможете сами выбрать себе софт, проведя нехитрые тесты.
Если разбираетесь меньше меня, то могу сказать одно: пользуйтесь тем, что нравится с учётом того, что для вас важно.
Файлы, используемые для теста, распространяются по лицензии Creative Commons BY-SA 4.0, автор Florian Höch . Скачать их, ознакомиться с принципом работы и объяснить мне, где я ошибся можно здесь. Фотография льва взята на сайте https://www.signatureedits.com/.
p.s. Если у вас WindowsPhoto после загрузки изображения меняет его цвет, то скорее всего дело в цветовом профиле монитора, установите sRGB (Adobe RGB, если монитор с широким цветовым охватом), и, возможно, проблема исчезнет, но учитывайте, что лучше использовать профиль производителя, а ещё лучше произвести калибровку монитора.