Жизнь заиграла новыми красками

Jan 11, 2017 16:05

Нашёл дурацкую ошибку в своей программе построения профиля, теперь результаты получаются адекватные:




Черный треугольник - sRGB, зелёный - "базовые цвета" сканера, т.е такие цвета, которые попав под стекло сканера дадут отклики (255;0;0), (0;255;0) и (0;0;255). Не нужно удивляться, что две точки этого треугольника не являются физически реализуемыми цветами, для входных устройств (сканеров, фотоаппаратов, глаз) это совершенно нормальная практика. Так, "базовые цвета" наших глаз таковы, что внутрь треугольника, образованного ими входит вся целиком "подкова" реальных цветов!

Проще всего понять, почему так получается - представить, что спектральные отклики довольно сильно пересекаются. В таком случае ни один реальный цвет не сможет дать отклика (255;0;0), даже совсем-совсем красный (700 нм или даже 750 нм) даст, к примеру, (255; 10; 0). Если же мы хотим получить "базовый" отклик (255;0;0), то можем это сделать, лишь добавив к монохроматическому красному ещё и зелёный, но со знаком "минус"! Поскольку мы не можем сделать некогерентный свет с отрицательной интенсивностью, то такой цвет и будет "невозможным".

Как ни странно, в формате профилей ICC для задания значений XYZ используются знаковые числа, так что все 3 базовых цвета можно задать. Верхняя точка треугольника имеет отрицательное значение Z, что и понятно - она ведь лежит выше прямой y = 1 - x. Все физически реализуемые цвета лежат ниже этой прямой, специально цветовую систему XYZ так сочиняли, чтобы для любого цвета отклики были неотрицательными.

scancombine

Previous post Next post
Up