В мире существуют миллиарды мониторов, способных воспроизвести один и тот же цвет по команде. Само по себе это инженерное достижение, но за ним скрывается более фундаментальный факт: такое возможно только потому, что для цвета вообще существует стандартное определение. Раньше цвета описывались через ограниченный набор слов — в большинстве языков есть не более двенадцати слов для обозначения цветов. Для повседневной речи этого достаточно, но не хватает точности, чтобы описать тонкие различия между похожими оттенками, необходимые для точного воспроизведения цвета.

изображение зелёных листьев с прямоугольниками ниже, показывающими некоторые оттенки зелёного на изображении

Одно название, разные цвета. Цветные прямоугольники показывают некоторые из оттенков, присутствующих на изображении листьев. Несмотря на различия, все эти оттенки можно описать одним и тем же словом — «зелёный». Можно, конечно, ввести уточнения вроде лаймово-зелёного, оливково-зелёного, светло- и тёмно-зелёного, но такая система названий громоздка и крайне неэффективна. Чтобы точно передать изображение, нужен способ уникально описать все оттенки зелёного, не прибегая к постоянно растущему списку названий.

Изображение с Pixabay, лицензия CC0.

Вместо того чтобы сопоставлять цвета с потенциально миллионами названий, гораздо проще использовать числовые единицы — тогда нужную точность можно получить, просто добавив или убрав цифры. Идея представления цвета числами может показаться странной, но на самом деле она не так уж экзотична. Большинство измеримых физических явлений уже давно квантифицированы (расстояние, температура и так далее). Если цвет можно измерить физически, то в теории его несложно свести к числам.

Определение цвета через числа сразу поднимает интересные вопросы: как выглядит сложение или умножение цветов? Процесс квантификации цвета также объясняет, почему цветовые hex-коды не могут описать все возможные оттенки даже при 16 777 216 значениях, почему одно платье стало предметом интернет-спора о цвете, и почему вообще существует дальтонизм.

Спектральное распределение мощности

Цель — измерить цвет как некую физическую величину. Проблема в том, что восприятие цвета субъективно. Однако то, что большинство людей способны согласиться относительно цвета одного и того же предмета, подсказывает: за этим стоит что-то объективное и физическое. И это действительно так. Цвет виден только при наличии света, и это даёт важную подсказку о его природе.

Свет — сложное явление, но его можно представить как поток волноподобных частиц, называемых фотонами, каждая из которых несёт определённое количество энергии. Энергия этих частиц определяется их длиной волны или частотой.

Энергию, которую переносят фотоны, можно физически измерить, что делает квантификацию света тривиальной задачей. Чтобы упростить сравнение разных типов света, измерения энергии нормируются по времени как мощность, а затем по площади как интенсивность — где площадь означает общую площадь тела, излучающего фотоны/свет.

Таким образом, источники света можно охарактеризовать одним значением интенсивности. Однако, как станет понятно позже, свет на практике представляют несколькими значениями интенсивности — измеряя её отдельно для фотонов разных длин волн. Распределение интенсивности по длинам волн называется спектральным распределением мощности.

Спектральное распределение мощности даёт способ квантифицировать свет. Но всё это бессмысленно, пока не появится количественный способ связать между собой цвета и спектральное распределение мощности (свет).

Фоторецепторные клетки

Самая очевидная подсказка для поиска этой связи — восприятие цвета невозможно без света, но точно так же невозможно и без глаз. Глаза чувствительны к свету, но что важнее — они по-разному реагируют на разные длины волн света.

Чтобы понять, как глаза различают разные длины волн, полезно немного знать о физиологии человека. В глазах есть разные типы фоторецепторных клеток, эволюционировавших так, чтобы реагировать на фотоны определённых длин волн. Неудивительно, что эти длины волн очень близки к тем, что излучает Солнце (380–750 нм).

В зависимости от энергии (длины волны) фотоны способны «возбуждать» определённые фоторецепторы, вызывая специфический отклик. В человеческом глазу есть два типа фоторецепторных клеток — палочки и три типа колбочек. Разные типы фоторецепторов по-разному чувствительны к разным длинам волн света — некоторые колбочки почти не реагируют на длинноволновый свет, другие реагируют сильно. Кривые чувствительности различных фоторецепторов различаются.

Благодаря различающимся кривым чувствительности колбочки способны различать длины волн света. Рассмотрим монохроматический источник света (свет с почти единственной длиной волны). Колбочки дадут отклик на этот свет в зависимости от длины волны и того, насколько они к ней чувствительны. Но поскольку каждый тип колбочек имеет свою чувствительность, их отклики на один и тот же свет будут разными.

Само по себе это не позволяет различать разные длины волн, но благодаря тому, как распределены (или эволюционно сформировались) кривые чувствительности, каждой отдельной длине волны всегда соответствует уникальный набор откликов колбочек — это и делает возможным различение волн. Мозг научился интерпретировать эти уникальные наборы откликов как восприятие уникальных цветов.

Палочки не показаны в приведённых выше примерах, потому что они не влияют на восприятие цвета. В условиях хорошего освещения колбочки могут давать разные отклики в зависимости от длины волны света. Но в таких условиях палочки дают насыщенный отклик, поскольку они чувствительнее к свету, чем колбочки. Поскольку отклик палочек в ярких условиях не зависит от длины волны, он не может различать разные волны и потому не оказывает существенного влияния на восприятие цвета при ярком свете.

В тёмных условиях палочки дают отклик там, где колбочки уже бездействуют. Но в отличие от колбочек, тип палочек только один — нет другого типа палочек с иной кривой чувствительности, способной помочь различить длины волн. Поэтому два источника света с разными длинами волн могут вызывать одинаковый отклик палочек, и различить эти волны по единственному отклику невозможно. Мозг научился интерпретировать отклик палочек как единое значение яркости (luminance).

Таким образом, палочки не способны различать свет разных длин волн ни в темноте, ни при ярком освещении, и потому не играют значительной роли в восприятии цвета.

Дальтонизм

Иногда и колбочки не способны различить разные длины волн света. Это может происходить из-за отсутствия какого-либо типа колбочек или из-за перекрывающихся кривых чувствительности. Без третьего типа колбочек свет с разными длинами волн может давать похожий набор откликов колбочек — различить волны снова невозможно. Это приводит к дальтонизму.

Тип аномалии колбочек определяет тип дальтонизма. Кривая чувствительности L-колбочек может смещаться в сторону более коротких волн (протаномалия), либо кривая чувствительности M-колбочек может смещаться в сторону более длинных волн (дейтераномалия). У некоторых людей могут полностью отсутствовать функциональные L-колбочки (протанопия) или M-колбочки (дейтеранопия). Результат во всех этих случаях схож — красный и зелёный выглядят похожими. В очень редких случаях аномальными оказываются S-колбочки, что приводит к тританомалии и тританопии.

В крайне редких случаях у людей могут быть только S-колбочки или вообще отсутствовать фоторецепторы-колбочки. Оба варианта приводят к тотальному дальтонизму, поскольку механизм различения разных длин волн отсутствует полностью.

Дальтонизм также объясняет, почему восприятие цвета субъективно — не у всех людей три полностью функционирующие колбочки с абсолютно одинаковыми кривыми чувствительности. Кроме того, механизм интерпретации мозгом откликов колбочек в цвета до сих пор остаётся предметом дискуссии. Так что даже при идентичных кривых чувствительности и одинаковых откликах колбочек мозг разных людей может интерпретировать сигналы по-разному, что снова приводит к несогласованности восприятия цвета.

Тем не менее одни и те же длины волн света в целом воспринимаются большинством людей достаточно согласованно. Поэтому для целей квантификации цвета можно игнорировать то, как именно мозг интерпретирует отклики колбочек, и определить стандартные кривые чувствительности на основе усреднённых данных большинства людей с нормальным цветовым зрением.

В результате получается набор стандартизированных кривых чувствительности, которые можно использовать для квантификации цвета. Однако прежде чем переходить к этому, нужно разобраться ещё с одним типом цвета.

Неспектральные цвета

До сих пор речь шла только о спектральных цветах (соответствующих монохроматическому свету). Но большая часть света вокруг нас не монохроматична — это комбинация множества длин волн. Это немного усложняет измерение откликов колбочек. Раньше, для монохроматического света, отклик просто равнялся значению чувствительности колбочки на заданной длине волны. Для немонохроматического света это не работает, поскольку нет единой конкретной длины волны.

Вместо этого отклик для немонохроматических источников света вычисляется как взвешенное среднее всех откликов — путём вычисления нормированной площади под кривой отклика. Кривая отклика — это просто поточечное произведение кривой чувствительности колбочек и спектрального распределения мощности: спектральное распределение мощности описывает интенсивность света на заданных длинах волн, а кривая чувствительности описывает чувствительность колбочек на этих же длинах волн. Их произведение описывает отклик колбочки на данной длине волны. Измерение этого произведения по всем длинам волн (эквивалентное вычислению площади) даёт суммарный отклик, который при необходимости может быть нормирован (например, отклики нормируются для монохроматического света).

Цвет немонохроматического света может выглядеть иначе, чем спектральные цвета, потому что набор откликов колбочек для такого света может отличаться от набора, порождаемого спектральными цветами. Мозг интерпретирует эти уникальные отклики колбочек как цвет, отличный от спектральных. Такие цвета уместно называют неспектральными.

Цветовое пространство

Поскольку восприятие цвета в конечном счёте зависит от набора откликов колбочек, теоретически должно быть возможно представить цвет исключительно через эти отклики. И теоретически этих откликов должно быть достаточно для описания любого воспринимаемого цвета. Значит, если набор откликов колбочек поддаётся квантификации, то так же легко можно квантифицировать и все цвета.

Как уже говорилось, спектральное распределение мощности любого света измеримо и поддаётся квантификации. Аналогично, хотя кривые чувствительности колбочек субъективны, для целей квантификации цвета можно использовать усреднённые и стандартизированные данные большинства людей. Поскольку отклик колбочек зависит от этих двух факторов — а оба поддаются квантификации, — отклик тоже должен поддаваться квантификации. Но только если между ними существует чётко определённая связь.

Как уже обсуждалось в разделе о неспектральных цветах, биологи уже нашли способ определить эту связь — это нормированная площадь под кривой отклика (сама кривая отклика — это поточечное произведение спектрального распределения мощности и кривых чувствительности фоторецепторов).

Эту связь можно более формально описать так:

L = ∫ J(λ)·l(λ)·dλ
M = ∫ J(λ)·m(λ)·dλ
S = ∫ J(λ)·s(λ)·dλ

Здесь J(λ) описывает спектральное распределение мощности света, а l(λ), m(λ) и s(λ) — кривые чувствительности L-, M- и S-колбочек соответственно. Отклики также нормированы так, что их максимум равен единице. Эта формула позволяет квантифицировать отклик колбочек на заданное спектральное распределение мощности.

Таким образом, цвет любого источника света или объекта, отражающего свет, можно точно описать значениями (L,M,S), выведенными из его спектрального распределения мощности. Множество всех возможных значений (L,M,S) описывает каждый воспринимаемый цвет, и все эти значения вместе образуют трёхмерное пространство, уместно называемое цветовым пространством. Точнее, это цветовое пространство LMS, где цвета задаются набором значений (L,M,S).

Итак, цель достигнута — способ точно квантифицировать цвет числами найден. Вот только это совсем не тот стандарт, который используется для описания цветов на практике. Цветовое пространство LMS — один из способов описания цвета, но не стандартный.

Как уже говорилось, для определения значений LMS цвета требуется задать связь между спектральным распределением мощности и откликом колбочек. Но это возможно только при наличии набора стандартизированных кривых чувствительности. Без них отклики нельзя ни измерить, ни определить.

Интересно, что цвета были квантифицированы и стандартизированы ещё до того, как чувствительность колбочек стало возможным измерять с достаточной точностью. Поэтому уже существовало определение/модель цвета, из-за чего цветовое пространство LMS оказалось избыточным.

Возможно, о представлении цветов через значения LMS никогда прежде и не слышали. Зато наверняка встречались цвета, представленные через значения RGB. В чём тут дело? Чем это отличается от LMS? А если кто-то искал числовые значения цвета, то мог наткнуться на странные значения XYZ и цветную диаграмму в форме подковы.

Чтобы разобраться в этой на первый взгляд странной диаграмме и понять, откуда взялись значения RGB, нужно вернуться к стандарту, который использовался для квантификации цвета раньше.

Эта более старая модель цвета не опиралась на отклики колбочек. Вместо этого она использовала функции сложения цветов (colour matching functions) — сопоставление цветов с интенсивностью определённых источников света, необходимой для получения этого цвета. По сути, это тот же принцип квантификации цвета числами (измеримыми значениями интенсивности), но опирающийся на другое явление.

Метамеризм

Как уже кратко упоминалось, свет с разным спектральным распределением мощности иногда может давать в колбочках отклики, похожие на отклики от спектральных цветов. Такой свет может давать похожие отклики и на неспектральные цвета. В более общем виде: один и тот же отклик колбочек может создаваться светом с разным спектральным распределением мощности — поэтому разные типы света могут восприниматься как один и тот же цвет, даже если их спектральные распределения мощности отличаются. Это явление называется метамеризмом.

Это явление подробно исследовалось в экспериментах по сложению цветов, проведённых Уильямом Дэвидом Райтом и Джоном Гилдом. Источник света с тремя длинами волн (435, 546 и 700 нм), каждая с разной интенсивностью, сопоставлялся со спектральными цветами путём подбора интенсивностей составляющих монохроматических источников — так, чтобы результирующий свет воспринимался идентичным спектральному цвету. Результаты затем были обобщены и оформлены в виде (ныне стандартизированных) функций сложения цветов.

Кривые сложения цветов задают интенсивность каждого из трёх основных цветов, необходимую для воспроизведения спектрального цвета. Основными называют цвета, которые используются для воссоздания других цветов. Здесь основными являются монохроматические источники 435, 546 и 700 нм.

Хотя три основных цвета способны создавать в колбочках отклики, похожие на отклики от определённых спектральных цветов, — заставляя их выглядеть схожими, — так бывает не всегда. Есть спектральные цвета, которые невозможно воспроизвести только тремя монохроматическими основными цветами. Например, три указанные длины волны не могут создать цвет, похожий на спектральный циан (свет с длиной волны около 500 нм).

Тем не менее циан всё же можно сопоставить с основными цветами. Спектральный циан начинает выглядеть похожим на цвет, образованный основными цветами, если добавить некоторую интенсивность основного цвета 700 нм к самому циану. Это даёт измеримое значение интенсивности основного цвета 700 нм, которое можно использовать для квантификации спектрального циана. Однако, поскольку свет добавляется к спектральному цвету, а не к основным цветам, это нужно представить иначе. В кривых сложения цветов это отражается через отрицательные значения.

Физически создать свет с отрицательной интенсивностью невозможно, поэтому воспроизвести некоторые цвета, используя только три длины волны света, нельзя. Тем не менее цвета всё же можно представить теоретически с помощью отрицательных значений в этих функциях сложения цветов — для целей квантификации цвета.

Эти функции сложения цветов легли в основу современных стандартов, используемых для описания и определения цветов.

Цветовые пространства CIE

Функции сложения цветов Райта — Гилда делают спектральные цвета измеримыми через набор значений интенсивности трёх монохроматических источников света. Но с помощью той же техники можно сопоставить с интенсивностями и неспектральные цвета.

Вместо того чтобы ограничивать значения интенсивности основных цветов функциями сложения цветов, их можно задать произвольно. Это даёт другие воспринимаемые цвета, не обязательно спектральные, то есть неспектральные цвета. Тем не менее они остаются цветами, и, что важнее, все эти цвета можно сопоставить с набором значений интенсивности. Так, набор значений интенсивности (основных цветов 435, 546 и 700 нм) определяет цвет. Поскольку эти значения определяют цвета, вместе они образуют цветовое пространство. Это пространство называется цветовым пространством CIE RGB.

Эти значения интенсивности снова измеримы и квантифицируемы, что даёт ещё один способ описания цвета числами. Однако у этого цветового пространства есть некоторые неудобства. Не все цвета присутствуют в этом пространстве. Точнее, не все воспринимаемые цвета лежат в положительном квадранте этого пространства.

Рассмотрим спектральные цвета. Отображение спектральных цветов в этом пространстве образует спектральный локус. Часть этого локуса выходит за пределы положительного квадранта пространства — например, спектральные цианы. Аналогично, некоторые неспектральные цвета также лежат за пределами положительных границ этого пространства.

Было решено, что предпочтительнее было бы иметь цветовое пространство, где все цвета описываются неотрицательными значениями. Но вместо того, чтобы проводить новые эксперименты для построения нового пространства, существующее пространство CIE RGB можно преобразовать простыми линейными преобразованиями. Преобразование трёхмерного цветового пространства задаётся простой матрицей 3×3.

Преобразование пространства означает, что новое пространство теперь задаётся новыми базисами, или новыми основными цветами. Раньше некоторые спектральные цвета приходилось описывать отрицательными значениями одного из основных цветов, но теперь тот же цвет описывается положительными значениями. Это означает, что сама система координат (основные цвета) должна содержать некую отрицательную интенсивность. Но у света не может быть отрицательной интенсивности, а значит, основные цвета нового пространства физически существовать не могут — они мнимые.

Поскольку основные цвета нового пространства мнимые, логично определить их так, чтобы они представляли более абстрактные понятия, а не физические величины. Было решено, что один из основных цветов будет определять яркость (luminance) цвета. Два других можно использовать для вычисления его цветности (chromaticity). Один из двух оставшихся основных цветов также примерно соответствует отклику S-колбочек. Было определено специальное преобразование, отображающее цвета в неотрицательный квадрант и воплощающее эти идеи.

Яркость и цветность. Яркость отражает воспринимаемую светлоту цвета, тогда как цветность аналогична понятию оттенка (hue). Согласно теории оппонентных процессов, цвета воспринимаются как пары противоположных цветов — красный против зелёного, синий против жёлтого (цветность) и чёрный против белого (яркость). Поэтому цвет можно описать тем, насколько он красный по сравнению с зелёным, насколько синий по сравнению с жёлтым, и насколько ярким является цвет в целом — то есть определить его через яркость и цветность.

Основные цвета нового пространства названы X, Y и Z, а получившееся пространство называется цветовым пространством CIE XYZ. Все спектральные цвета лежат в положительном квадранте этого пространства.

Остальные цвета пространства CIE RGB можно аналогично отобразить в пространстве XYZ, применив то же матричное преобразование. Однако не все воспринимаемые цвета можно отобразить в пространстве XYZ таким образом, поскольку само пространство CIE RGB не определяет все воспринимаемые цвета — цвета, требующие «отрицательных» интенсивностей, остаются неопределёнными, кроме спектральных цветов. В отличие от пространства RGB, где основные цвета — это физические монохроматические источники света с реальным цветом, в пространстве CIE XYZ основные цвета мнимые, и неочевидно, какому цвету соответствует то или иное сочетание значений (X,Y,Z) — и соответствует ли оно вообще допустимому цвету.

Чтобы выяснить, каким цветам соответствуют неопределённые значения, полезно сначала рассмотреть ещё один популярный способ представления цветов — через пространства цветности.

Пространство цветности

Как уже отмечалось, цвета можно альтернативно классифицировать по более абстрактным свойствам — яркости и цветности. Это может быть более удобным способом определения цветов, поскольку он соответствует тому, как, как предполагается, мозг классифицирует цвета: тёмный против яркого (яркость) и красный против зелёного, синий против жёлтого (цветность).

Рассмотрим цветовое пространство CIE RGB. Простой способ получить грубое приближение яркости по значениям основных цветов — взять их сумму (R+G+B). Аналогично значения цветности можно получить, взяв отношения интенсивностей основных цветов RGB.

Таким образом, яркость цвета со значениями (R,G,B) будет равна L=R+G+B, а его значения цветности — относительными интенсивностями, вычисляемыми через нормировку. То есть коэффициенты цветности r, g, b будут равны R/L, G/L и B/L соответственно. Рассмотрим простой пример, где яркость зафиксирована на единице. В пространстве CIE RGB все цвета с яркостью, равной единице, лежат на плоскости R+G+B=1. Значения (R,G,B) цвета на этой плоскости представляют отношения его основных цветов и, следовательно, задают его значения цветности.

Цвет с некоторой другой яркостью k лежит на плоскости R+G+B=k. При этом коэффициенты цветности будут нормированными интенсивностями основных цветов, поэтому коэффициенты (r,g,b) — это проекция значений (R,G,B) на плоскость R+G+B=1.

Для конкретной фиксированной яркости пространство цветности представляет собой просто двумерную плоскость в трёхмерном пространстве. Вместо того чтобы представлять пространство цветности как плоскость, вложенную в трёхмерное пространство, его просто представляют как двумерное пространство, проецируя плоскость цветности на одну из плоскостей цветового пространства. В случае пространства CIE RGB плоскость цветности R+G+B=1 проецируется на плоскость RG.

Значения цветности для спектральных цветов также можно вычислить, применив те же преобразования к спектральному локусу — нормировав интенсивность основных цветов, чтобы получить его проекцию на плоскость R+G+B=1, а затем выбрав значения (r,g) для получения проекции на плоскость rg.

Хотя цвета, а значит и цветность цветов в положительном квадранте пространства цветности rg определены, цветность для цветов за пределами небольшого подмножества положительного квадранта снова не определена. Разумеется, кроме спектральных цветов.

Диаграмма цветности rg CIE может показаться немного странной: часть цветностей определена в отрицательной половине этого пространства (спектральные цианы), другая часть определена в положительной половине (цвета, воспроизводимые основными цветами CIE RGB), но между ними цветность не определена вовсе. Это не значит, что таких цветов не существует — цвета, представляющие собой комбинацию спектральных цианов и основных цветов CIE RGB, реально существуют, и интуиция подсказывает, что их значения (r,g) должны лежать между значениями цианов и цветов CIE RGB в пространстве цветности. Проблема в том, как отобразить эти цвета (цветности) в пространстве цветности.

Чтобы определить цветность для этого неопределённого промежуточного пространства, нужна ещё одна идея из других экспериментов, а именно то, что сложение цветов можно приближённо считать линейной операцией. Это значит, что цвета, определённые в пространствах CIE, можно использовать для определения других цветов, являющихся линейной комбинацией уже определённых цветов.

Рассмотрим два цвета, лежащих на спектральном локусе, например два спектральных циана. Цвета, которые можно получить линейной комбинацией этих цианов, тогда можно представить как линейную комбинацию значений цветности основных цветов CIE RGB — то есть выразить через значения (r,g).

Это свойство линейности сложения цветов аналогично можно распространить с двумерных пространств цветности на трёхмерные цветовые пространства. Цвет можно сначала квантифицировать как интенсивность двух монохроматических источников света, а затем переписать как линейную комбинацию основных цветов CIE, используя значения CIE для этих двух монохроматических источников.

Хотя пространство цветности было введено, чтобы показать линейность сложения цветов в более простом пространстве меньшей размерности, у него есть и другие применения. Цветность — ещё один способ квантифицировать цвет. Он не идеален, поскольку часть информации теряется — компонент яркости цвета жертвуется ради представления цвета в двух измерениях. Но это удобный компромисс, поскольку большинство визуальных средств коммуникации двумерны, поэтому пространства цветности позволяют легко представлять цвета на таких носителях без большой потери информации — что и делает их довольно популярными.

Пространство цветности xy

Хотя пространства цветности — популярный способ представления цветов (точнее, цветностей), пространство цветности rg CIE не очень распространено, поскольку требует отрицательных значений для описания некоторых цветностей. Вместо него чаще используется пространство цветности xy.

Аналогично тому, как пространство CIE RGB преобразовывалось для получения пространства и диаграммы цветности rg, те же преобразования можно применить к пространству CIE XYZ, чтобы получить пространство цветности xy и диаграмму цветности xy.

Поскольку пространство XYZ специально определено так, чтобы отображать спектральные цвета в положительные значения, значения цветности (представляющие собой просто нормированные значения основных цветов) спектральных цветов тоже все положительны. Поскольку все воспринимаемые цвета являются некоторой комбинацией спектральных цветов, значения цветности всех наблюдаемых цветов лежат внутри области спектрального локуса и, следовательно, также положительны.

Квантификация цвета через значения цветности несовершенна из-за потери информации о яркости, но диаграммы цветности, такие как диаграмма xy, всё же полезны для некоторых применений — например, для визуализации ограничений цветовых охватов (gamut).

Цветовой охват (Gamut)

Снова рассмотрим два монохроматических источника света. Эти источники создают цвета с цветностью, представляющей собой линейную комбинацию значений цветности составляющих их монохроматических источников — цветность результирующих цветов будет лежать на линии, соединяющей спектральные цвета на плоскости цветности CIE xy. Никакая комбинация интенсивностей не может создать цвет с цветностью за пределами этой линии.

Например, свет с зеленоватой и синеватой цветностью никогда не сможет создать цвет с красноватой цветностью.

До сих пор во всех примерах использовались отношения двух монохроматических источников света для вычисления цветности цветов. Однако цветность можно вычислить и с использованием трёх монохроматических источников. Тогда цветность будет линейной комбинацией трёх значений цветности.

Рассмотрим три монохроматических источника света — например, основные цвета CIE RGB. Цветность цвета, созданного с их помощью, будет линейной комбинацией трёх цветностей.

Цветность цветов, физически создаваемых с помощью основных цветов RGB, лежит внутри выпуклого многоугольника, образованного основными цветами. Диапазон цветов (или цветностей), которые могут создать основные цвета, называется его цветовым охватом (gamut). Точки за пределами многоугольника физически создать невозможно (по крайней мере, теми же тремя основными цветами), поскольку это потребовало бы линейной комбинации с отрицательными коэффициентами — создание цветов с цветностью за пределами этого многоугольника потребовало бы отрицательной интенсивности основных цветов, что физически невозможно.

Использование большего числа основных цветов даёт выпуклый многоугольник с большим числом вершин и большей площадью, а значит, большим числом доступных цветностей, но для большинства задач достаточно и трёх основных цветов. К тому же экономически выгоднее использовать основные цвета, не являющиеся чисто монохроматическими. Поэтому большинство дисплеев используют всего три немонохроматических основных цвета — некоторые из них стандартизированы и даже используются для построения цветовых пространств. Например, цветовые пространства sRGB и Adobe RGB используют стандартизированные немонохроматические основные цвета.

Цветовое пространство sRGB лежит в основе ещё одного популярного способа квантификации цвета — цветовых hex-кодов. Эти hex-коды представляют интенсивность основных цветов sRGB. Обычно первые два шестнадцатеричных числа (равные одному байту, или восьми битам) соответствуют интенсивности красноватого основного цвета. Следующие два значения представляют интенсивность зеленоватого основного цвета, а последние два — синеватого.

Глубина цвета. В hex-обозначении цвет обычно представляется 24 битами. Количество бит, выделяемых для представления цвета, называется битовой глубиной или глубиной цвета. Такие 24-битные цвета иногда называют «истинным цветом» (true colour) — они позволяют представить в общей сложности 2^24 значений, или 16 777 216 цветов. Аналогично существуют 8-битные и 30-битные цвета, представляющие соответственно меньше или больше оттенков. Есть и другие глубины цвета, например 3-битные.

Глубина цвета в некотором смысле отражает «точность» воспроизводимых цветов, но не отражает их «диапазон». Цвета всё равно ограничены основными цветами — цвета вне охвата основных цветов невозможно воспроизвести, даже если выделить больше бит для более точного управления интенсивностью.

До сих пор были рассмотрены несколько способов квантификации цвета. Может показаться, что этого более чем достаточно для большинства задач, но при квантификации и воспроизведении цвета есть ещё один важный момент.

Точка белого

Вернёмся к физике — все тела излучают фотоны из-за теплового излучения абсолютно чёрного тела. Спектральное распределение мощности этого излучения — функция температуры. У спектрального распределения мощности такого излучения есть соответствующий ему цвет.

Этим цветам соответствует определённая цветность — при отображении на диаграмме цветности CIE xy они вместе образуют локус Планка.

Цветовая температура — ещё один способ квантифицировать определённые цвета и цветности, в основном разные оттенки белого. Это распространённый подход, поскольку большинство физических источников освещения имеют цветность, близкую к этим значениям. Например, дневной свет имеет цветность, близкую к абсолютно чёрному телу при температурах от 5000 до 6500 К, а лампы накаливания излучают свет с цветовой температурой около 2700 К.

У большинства источников освещения значения цветности лежат близко к локусу Планка, но не точно на нём — поскольку большинство тел не являются идеальными абсолютно чёрными телами. Другие источники света, такие как люминесцентные лампы и светодиоды, вообще не используют тепловое излучение для генерации света, и потому тоже не обязательно лежат на локусе Планка.

Хотя значения цветности таких источников не лежат точно на локусе Планка, они всё же достаточно близки к нему, чтобы восприниматься как похожие на абсолютно чёрное тело и получить осмысленную привязку к цветовой температуре. Таким цветам можно присвоить коррелированную цветовую температуру в зависимости от того, к какой цветовой температуре они ближе всего.

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

Вместо этого для однозначного и точного представления разных типов белого света определены специальные стандартные источники освещения (standard illuminants). Это теоретические источники света с точно заданным спектральным распределением мощности и, соответственно, точным значением цветности.

Все эти усилия по определению отдельных цветностей белого света могут показаться избыточными, но их важность становится очевидной, если учесть, что большинство цветов видны не потому, что они излучают собственный свет, а потому, что отражают свет источника освещения. Этим источником обычно служит дневной свет (белый), или другой источник, пытающийся его воспроизвести.

Поскольку неизлучающее тело не производит собственного света, его спектральное распределение мощности в основном зависит от того, что оно отражает, и от спектрального распределения мощности освещающего его источника. Точнее, это поточечное произведение кривой спектрального отражения тела и спектрального распределения мощности источника освещения. Например, тело может выглядеть синеватым при дневном свете, но то же самое тело может выглядеть более жёлтым при свете лампы накаливания.

Искажения цвета из-за различий в освещении видны более наглядно в этом примере — одни и те же объекты освещаются разными типами источников света.

Изменение цвета из-за различий в освещении влияет и на цветность. Рассмотрим «белый» объект (отражающий все длины волн света в равной степени) под источником равной энергии (излучающим равную энергию на всех длинах волн). Результирующее спектральное распределение мощности такого тела будет прямой линией — то есть равная энергия на всех длинах волн. Его цветность будет находиться в точке (0.333, 0.333) в пространстве цветности xy. Теперь рассмотрим тот же объект под источником D65. Спектральное распределение мощности тела теперь будет совпадать со спектром источника D65 и окажется в точке (0.313, 0.329) в пространстве xy. Цветность «белого» объекта аналогично будет меняться при других источниках освещения.

Значит, дисплею, излучающему собственный свет и пытающемуся имитировать «белый», нужно учитывать условия освещения окружающей среды, чтобы не выглядеть неуместно и казаться «правильным». Другие цвета также будут искажаться, и их нужно корректировать. Опять же, подобно тому как сложение цветов приближённо считается линейным, эту коррекцию тоже можно приближённо описать простым линейным преобразованием — линейно масштабируя цвета, используя точку белого как опорную.

Ещё раз взгляните на изображения классной комнаты из более раннего примера. Несмотря на разные цвета (из-за разных источников освещения), они могут казаться похожими благодаря хроматической адаптации. Человеческое восприятие цвета подстраивается под различия в освещении, чтобы сохранить восприятие «истинных» цветов объектов — используя подсказки из окружающей среды. На изображениях классной комнаты белые стены могут «ощущаться» белыми, несмотря на то что их значения цветности ближе к жёлтым и синим тонам. Другие цвета тоже могут выглядеть «исходными», несмотря на искажение источником освещения, благодаря хроматической адаптации.

Однако иногда хроматическая адаптация может и обмануть мозг, заставив воспринимать неверные цвета. Относительно известный, но крайний пример этого — то самое платье. Одни и те же цвета платья могут восприниматься как синий с чёрным или как белый с золотым — в зависимости от того, как мозг интерпретирует точку белого источника, освещающего платье. Если мозг предполагает, что платье освещено синеватым светом, он пытается это скорректировать, из-за чего платье выглядит белым и золотым. И наоборот, если мозг предполагает более тёплый источник освещения, он пытается скорректировать искажение цвета, из-за чего платье кажется синим и чёрным.

Описанный сценарий — пример того, что происходит, когда цвета квантифицируются без коррекции на точку белого (освещение) — это может выглядеть неуместно, а в крайних случаях, как с платьем, даже приводить к совершенно неверному описанию и воспроизведению цвета. Если цвета платья нанести на диаграмму цветности напрямую, без каких-либо коррекций, они не всегда будут отражать «настоящую» цветность платья.

Например, цвета двух пикселей — сине-белого и чёрно-золотого — при нанесении на диаграмму цветности xy дают значения, соответствующие синеватым и желтоватым оттенкам, наводя на мысль, что цвета на самом деле синий и золотой. Очевидно, это не так. Цвета можно скорректировать, изменив точку белого — применив то же линейное преобразование точки белого, что и раньше.

Для точной квантификации и воспроизведения цвета необходимо учитывать освещение окружающей среды — при квантификации цветов неизлучающих объектов, коих большинство вокруг нас.

Наука о цвете

Теперь легко ответить на исходные вопросы. Дальтонизм существует из-за аномалий колбочек. Сложение цветов даёт цвет, чья яркость (luminance) равна сумме яркостей слагаемых, а его оттенок или цветность — отношению этих слагаемых. Умножение цветов можно представить как отражение цвета от другого цветного источника освещения. Цветовые hex-коды, даже с 16 777 216 возможными значениями, всё равно ограничены своими основными цветами. А платье выглядит одновременно белым и золотым, синим и чёрным — из-за хроматической адаптации.

Цвет — очень интересная тема, поскольку она заключается в квантификации того, что кажется по своей сути качественным. Здесь рассмотрены в основном аддитивные цветовые модели, но субтрактивные и другие цветовые модели не менее интересны. Большинство этих тем связаны со способами описания и воспроизведения цвета. Но существует и совершенно отдельная область науки, занимающаяся психологией цвета — тем, почему определённые цветовые сочетания кажутся приятными, как значение цветов варьируется между культурами, или как цвет влияет на другие органы чувств.

Тема цвета огромна — она охватывает научные области от квантовой физики и электромагнетизма до физиологии и психологии. Изложенное выше — лишь крохотная часть того, что составляет науку о цвете.

Источники