Другими примерами пространств, в которых яркость отделена от цветности, служат пространства, используемые при описании модели восприятия цвета CIECAM02. Модели CIECAM02 посвящен отдельный параграф ниже.
Перейдем к цветовой модели CMYK (произносится «смик»), которая моделирует отображение цветов принтерами и обычно является аппаратно-зависимой. Каждая тройка чернила-принтер-бумага в рамках этой модели может иметь свое собственное цветовое пространство. Смысл числовых значений координат CMYK по сравнению с RGB обратный: 0 – это максимальное количество цвета данного канала, 255 для 8-битной глубины цветности – это отсутствие цвета данного канала. Если преобразование RGB-координат в CMY-координаты элементарно простое, то пересчет из CMY в CMYK можно выполнить по-разному. Один из простейших вариантов: {C, M, Y} – > { K = min(C, M, Y), C – K, M – K, Y – K, }. Реальные варианты гораздо сложнее и учитывают многие характеристики чернил, бумаги, оборудования и даже температуру и влажность воздуха возле печатной машины.
В пространстве CMY нейтральные цвета определены как C = M = Y. В пространстве CMYK – как C = M = Y = 0.
Распечатанное изображение гораздо сильнее зависит от условий просмотра, чем изображение на экране монитора. Чтобы вычислить видимый цвет малого кусочка картинки, нужно взять спектр источника освещения и умножить его на спектральные коэффициенты отражения чернил, которыми закрашен этот кусочек, и просвечивающей сквозь них бумаги. Полученный спектр отраженного от этого кусочка света и позволит определить искомый цвет, воспринимаемый человеком. Усложняет дело то, что, если заменить источник освещения другим, имеющим тот же самый цвет, но другой спектр (метамерный), то видимый цвет кусочка может измениться!
Цветовой охват CMYK для обычных принтеров больше цветового охвата sRGB (в светло-голубых и светло-зеленых тонах), но меньше цветового охвата Adobe RGB (1998).
Четырехцветная печать CMYK не всегда может отобразить светлые насыщенные цвета. Поэтому часто используют шестицветную печать CcMmYK и даже еще более многоцветную.
А теперь вспомним то, о чем говорилось в предыдущей главе и опишем процессы, происходящие в сетчатке глаза, в терминах цветовых пространств. Рецепторы сетчатки реагируют на видимый цвет и выдают сигнал, похожий на значения координат в пространстве RGB (точнее, в пространстве «колбочковых ответов» LMS). Затем спектрально оппонентные ганглиозные клетки преобразуют rgb-сигнал, опять же приблизительно, в координаты CIELAB.
Зачем могло понадобиться использовать такие нетривиальные координаты в зрительной системе человека? Этот факт может быть объяснен тем, что цветовое зрение в процессе эволюции возникло на основе черно-белого. К рецепторам-палочкам, дающим сигнал только о яркости (значение координаты L*), добавились колбочки. Сигналы от трех видов колбочек (приблизительно – красный, зеленый и синий цвета) нейроны сетчатки преобразуют только в две дополнительные цветовые координаты a* (разность зеленого и красного) и b* (разность синего и желтого). Что вместе с координатой L* и дает цвет. В пространстве RGB объединить сигнал палочек и колбочек было бы сложнее. Простое добавление трех координат RGB к координате L привело бы к избыточности (четыре значения вместо трех). Упразднение координаты L и рецепторов-палочек вызвало бы потерю зрения в сумерках.
Кстати, то, что не бывает красно-зеленого и сине-желтого цветов, как раз и объясняется тем, что такие цвета невозможно описать в координатах a* и b*.
2.6. Колориметрические отображения
После того как были определены цветовые пространства, нужно объяснить, как преобразовывать изображения из одного цветового пространства в другое. В процессе компьютерной обработки неизбежно приходится это делать, явно или неявно. Так, картинка, полученная сканером или цифровой фотокамерой, представляет собой множество точек (пикселей), координаты которых даны в цветовом пространстве данного устройства. Эта картинка преобразуется в независящее от устройства рабочее цветовое пространство графического редактора. Затем, для просмотра – в цветовое пространство монитора. И, наконец, после обработки в редакторе – в цветовое пространство принтера. Если эти преобразования не делать, то камера запишет в файл одни цвета, монитор покажет другие, а принтер напечатает третьи, несмотря на то, что во всех трех случаях числовые значения координат цвета в файле будут одними и теми же. И останется только надеяться, что все три цветовых пространства не будут сильно различаться.