Rgb изображение. Знакомство с цветовыми каналами (RGB, CMYK, Плашечные, Lab, многоканальный и одноканальные режимы)

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

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

1. Загрузите любое цветное изображение. Если загруженное изображение создано в цветовой модели CMYK, преобразуйте его в RGB.

2. Откройте палитру Каналы . Вы видите четыре пункта: RGB , Красный , Зеленый и Синий . Красный , Зеленый и Синий – это и есть каналы вашего изображения.

3. Снимите флажки в виде глаза для каналов RGB , Красный и Зеленый . У вас останется включенным только канал Синий (рис. 7.1).

Рис. 7.1. Отображен канал Синий


МУЛЬТИМЕДИЙНЫЙ КУРС

В главе «Цветовые каналы» прилагаемого к книге компакт-диска содержатся несколько видеолекций, посвященных работе с цветовыми каналами.

Обратите внимание, что изображение в окне документа стало серым. Причем оно мало напоминает обычное черно-белое изображение. Некоторые участки, которые вроде бы должны быть светлыми, темные, и наоборот. Дело все в том, что градации серого показывают, сколько синего цвета участвует в формировании каждой цветной точки. Чем светлее точка, тем больше синего цвета на нее приходится. Если есть полностью черные точки, значит, в результирующем цвете этих точек синего нет совсем или его ничтожно мало. Посмотрите таким же образом Красный и Зеленый каналы. Вы увидите, что яркости отдельных участков изображения не соответствуют действительности. Еще раз подчеркнем, что в данном случае яркость точки определяет не яркость результирующей точки, а яркость цвета данного канала в этой точке.

Каналы RGB

Проведем простой эксперимент.

1. Создайте новое изображение с белым фоном.

2. Выберите инструмент Карандаш . Настройте кисть таким образом, чтобы линия карандаша получилась достаточно жирной, например 50 пикселов.

3. Выберите чисто красный цвет. Для этого в диалоговом окне выбора цветов укажите значение R равным 255 , а значения G и B равными 0 . Это цвет, который состоит только из красных субпикселов. Синие и зеленые субпикселы в этом цвете совершенно не участвуют (значение их яркости равно нулю).

4. Проведите в окне созданного документа линию.

5. Откройте палитру Каналы , после чего посмотрите каждый канал в отдельности.

Теперь опишем, что вы должны увидеть.

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

Каналы Зеленый и Синий . Фоны этих каналов белые, так как участие синего и зеленого цветов в белом цвете также максимально (напомним, что белый цвет получается, когда значение всех трех составляющих RGB равно 255). Проведенная вами линия в данных каналах имеет черный цвет. Когда вы выбирали цвет инструмента, вы указали нулевые значения для цветов G и B , то есть в выбранном вами цвете синий и зеленый цвета не участвуют совсем. Именно поэтому в данных каналах линия имеет черный цвет, это говорит о том, что уровень соответствующих цветов в этих каналах минимален.

Теперь отобразите одновременно Красный и Зеленый каналы. Фон изображения стал желтым, а точка красной. Это результат смешивания каналов, то есть сейчас мы наложили Красный канал на Зеленый и при этом исключили Синий канал. В результате мы сложили 255 градаций красного цвета с таким же количеством зеленого цвета и тем самым получили желтый фон. Линия осталась красной, потому что к 255 градациям красного в канале Красный добавилось 0 градаций красного из канала Зеленый , то есть ничего не добавилось.

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

Каналы CMYK

Аналогичную картину мы увидим, создав изображение в цветовой модели CMYK. Только каналы CMYK, в отличие от RGB, инверсные, то есть черный и белый цвета в этих каналах поменяны местами. Белый цвет означает полное отсутствие красителя, а черный – максимальное его количество (100). Например, если мы создадим изображение с белым фоном и пурпурной линией (C = 0, M = 100, Y = 0 и K = 0), то в каналах увидим следующее.

Каналы Голубой , Желтый и Черный будут полностью белого цвета. В формировании белого фона данные цвета не участвуют (бумага и так белая сама по себе).

Канал Пурпурный будет содержать черную линию на белом фоне. В формировании фона данный цвет также не участвует, а вот в цвете линии интенсивность пурпурного цвета максимальна.

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

Мы так долго говорили о каналах, но до сих пор так и не объяснили, зачем они нужны. Вы, возможно, на первоначальных этапах не будете их использовать и вообще смотреть на палитру Каналы . Многие годами работают с Photoshop и совершенно не знают, с какой целью каналы используются, а то и вообще не подозревают о существовании таковых. Согласимся, что для любителя это не так и важно. Однако, когда вы дорастете до профессионального использования программы Photoshop и особенно если будете работать в организациях, выпускающих полиграфическую продукцию, вы непременно столкнетесь с таким понятием, как цветоделение. Вот здесь как раз вам и понадобятся каналы.

С помощью каналов очень удобно корректировать цветовую гамму изображения. Например, работая с RGB-фотографией, вы замечаете, что на отдельном ее участке преобладает красный цвет. Обычными методами (уровнями) или иной цветовой коррекцией это исправить непросто. Да и не всегда удобно. Отключаете все каналы, кроме красного, и, например, инструментом Затемнитель затеняете данный участок изображения, то есть вы затеняете только красный цвет, тем самым уменьшая уровень красного в композитном цвете. Вы даже можете не отключать при этом остальные каналы: достаточно просто выделить канал Красный . Однако с отключенными каналами проще контролировать свою работу.

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


Рис. 7.2. Так выглядит изображение в отдельных каналах CMYK


Мы не случайно используем термин «носитель», поскольку изображение можно распечатывать на ткани, пластике и различных полимерных материалах.

Каналы-маски

Вы можете добавить в изображение новый канал. Однако это будет не цветовой, а так называемый альфа-канал, или канал-маска. Для чего могут использоваться такие каналы? Применений множество. Самое простое – это использование масок для изображения или качественного ретуширования графики.

Попробуйте создать новый канал, нажав третью слева кнопку в нижней части палитры Каналы . Скорее всего, все ваше изображение будет как будто накрыто полупрозрачной цветной пленкой, а в списке каналов появится новый канал Альфа 1 .

1. Теперь, предварительно выделив канал Альфа 1 , попробуйте взять инструмент Ластик и стереть участок изображения. В месте, где «прошелся» Ластик , будет проступать изображение с исходными цветами. Иными словами, вы создали полупрозрачный альфа-канал и сделали отдельные его участки прозрачными (рис. 7.3).


Рис. 7.3. Часть канала-маски стерта ластиком


2. Нажмите сочетание клавиш Ctrl+A , при этом все изображение будет выделено, и нажмите клавишу Delete . Содержимое альфа-канала будет удалено, а изображение предстанет в оригинальных цветах.

3. Снимите выделение, нажав сочетание клавиш Ctrl+D .

4. Выберите инструмент Кисть и определите для данного инструмента синий цвет.

5. Убедитесь, что канал Альфа 1 по-прежнему выделен.

6. Сделайте кистью несколько мазков.

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

Теперь немного о настройках альфа-канала.

Чтобы вызывать диалоговое окно настроек альфа-канала (рис. 7.4), нужно дважды щелкнуть кнопкой мыши на миниатюре этого канала на палитре Каналы .

Рис. 7.4. Диалоговое окно Параметры канала


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

В области Показывать цветом по умолчанию переключатель установлен в положение Маскированные области . Как действует альфа-канал в данном режиме при рисовании или стирании, вы видели. Если выбрать положение Выделенные области , альфа-канал будет действовать на изображение обратным способом, то есть закрашенные области станут прозрачными, а незакрашенные, наоборот, непрозрачными или полупрозрачными.

В поле Непрозрачность указывают степень непрозрачности альфа-канала. По умолчанию степень непрозрачности равняется 50 % , именно поэтому вы хорошо видите изображение сквозь «цветную пленку».

Следует отметить, что вы можете создать множество альфа-каналов, настроить степень их непрозрачности и цвета, далее нанести в этих каналах какие-либо штрихи и изображения. Вы можете также копировать содержимое любого канала в альфа-канал, применять к нему различные коррекции и т. д. Все это позволяет вам очень тонко настраивать цветовые параметры изображения, создавать оригинальные рисунки и т. д. При большом желании вы даже можете превратить черно-белое изображение в цветное. Для этого нужно преобразовать черно-белое изображение в модель RGB или CMYK, создать необходимое количество альфа-каналов (по числу цветов модели), скопировать изображение в эти каналы и раскрасить отдельные фрагменты изображения так, чтобы при смешивании каналов получились нужные цвета. Это, конечно, непросто и потребует много времени, терпения и опыта, но это возможно! Действительно, из старой черно-белой фотографии можно сделать цветную. Кстати, если все цветовые каналы содержат абсолютно одинаковую информацию, значит, пропорции всех цветов в отдельных точках равны. А одинаковые пропорции цветов – это всегда серая точка (в разных градациях яркости: от белой до черной). Иными словами, если изображения во всех цветовых каналах не отличаются друг от друга, значит, картинка черно-белая.

HEX / HTML

Цвет в формате HEX - это ни что иное, как шестнадцатеричное представление RGB.

Цвета представляются в виде трёх групп шестнадцатеричных цифр, где каждая группа отвечает за свой цвет: #112233, где 11 - красный, 22 - зелёный, 33 - синий. Все значения должны быть между 00 и FF.

Во многих приложениях допускается сокращённая форма записи шестнадцатеричных цветов. Если каждая из трёх групп содержит одинаковые символы, например #112233, то их можно записать как #123.

  1. h1 { color: #ff0000; } /* красный */
  2. h2 { color: #00ff00; } /* зелёный */
  3. h3 { color: #0000ff; } /* синий */
  4. h4 { color: #00f; } /* тот же синий, сокращённая запись */

RGB

Цветовое пространство RGB (Red, Green, Blue) состоит из всех возможных цветов, которые могут быть получены путём смешивания красного, зелёного, и синего. Эта модель популярна в фотографии, телевидении, и компьютерной графике.

Значения RGB задаются целым числом от 0 до 255. Например, rgb(0,0,255) отображается как синий, так как синий параметр установлен в его самое высокое значение (255), а остальные установлены в 0.

Некоторые приложения (в частности веб-браузеры) поддерживают процентную запись значений RGB (от 0% до 100%).

  1. h1 { color: rgb(255, 0, 0); } /* красный */
  2. h2 { color: rgb(0, 255, 0); } /* зелёный */
  3. h3 { color: rgb(0, 0, 255); } /* синий */
  4. h4 { color: rgb(0%, 0%, 100%); } /* тот же синий, процентная запись */

Цветовые значения RGB поддерживаются во всех основных браузерах.

RGBA

С недавних пор современные браузеры научились работать с цветовой моделью RGBA - расширением RGB с поддержкой альфа-канала, который определяет непрозрачность объекта.

Значение цвета RGBA задается в виде: rgba(red, green, blue, alpha). Параметр alpha - это число в диапазоне от 0.0 (полностью прозрачный) до 1.0 (полностью непрозрачный).

  1. h1 { color: rgb(0, 0, 255); } /* синий в обычном RGB */
  2. h2 { color: rgba(0, 0, 255, 1); } /* тот же синий в RGBA, потому как непрозрачность: 100% */
  3. h3 { color: rgba(0, 0, 255, 0.5); } /* непрозрачность: 50% */
  4. h4 { color: rgba(0, 0, 255, .155); } /* непрозрачность: 15.5% */
  5. h5 { color: rgba(0, 0, 255, 0); } /* полностью прозрачный */

RGBA поддерживается в IE9+, Firefox 3+, Chrome, Safari, и в Opera 10+.

HSL

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

HSL расшифровывается как Hue (цвет/оттенок), Saturation (насыщенность), Lightness/Luminance (светлота/светлость/светимость, не путать с яркостью).

Hue задаёт положение цвета на цветовом круге (от 0 до 360). Saturation является процентным значением насыщенности (от 0% до 100%). Lightness является процентным значением светлости (от 0% до 100%).

  1. h1 { color: hsl(120, 100%, 50%); } /* зелёный */
  2. h2 { color: hsl(120, 100%, 75%); } /* светло-зелёный */
  3. h3 { color: hsl(120, 100%, 25%); } /* тёмно-зелёный */
  4. h4 { color: hsl(120, 60%, 70%); } /* пастельный зеленый */

HSL поддерживается в IE9+, Firefox, Chrome, Safari, и в Opera 10+.

HSLA

По аналогии с RGB/RGBA, для HSL имеется режим HSLA с поддержкой альфа-канала для указания непрозрачности объекта.

Значение цвета HSLA задается в виде: hsla(hue, saturation, lightness, alpha). Параметр alpha - это число в диапазоне от 0.0 (полностью прозрачный) до 1.0 (полностью непрозрачный).

  1. h1 { color: hsl(120, 100%, 50%); } /* зелёный в обычном HSL */
  2. h2 { color: hsla(120, 100%, 50%, 1); } /* тот же зелёный в HSLA, потому как непрозрачность: 100% */
  3. h3 { color: hsla(120, 100%, 50%, 0.5); } /* непрозрачность: 50% */
  4. h4 { color: hsla(120, 100%, 50%, .155); } /* непрозрачность: 15.5% */
  5. h5 { color: hsla(120, 100%, 50%, 0); } /* полностью прозрачный */

CMYK

Цветовая модель CMYK часто ассоциируется с цветной печатью, с полиграфией. CMYK (в отличие от RGB) является субтрактивной моделью, это означает что более высокие значения связаны с более тёмными цветами.

Цвета определяются соотношением голубого (Cyan), пурпурного (Magenta), жёлтого (Yellow), с добавлением чёрного (Key/blacK).

Каждое из чисел, определяющее цвет в CMYK, представляет собой процент краски данного цвета, составляющей цветовую комбинацию, а точнее, размер точки растра, выводимой на фотонаборном аппарате на плёнке данного цвета (или прямо на печатной форме в случае с CTP).

Например, для получения цвета «PANTONE 7526» следует смешать 9 частей голубой краски, 83 частей пурпурной краски, 100 - жёлтой краски, и 46 - чёрной. Это можно обозначить следующим образом: (9,83,100,46). Иногда пользуются такими обозначениями: C9M83Y100K46, или (9%, 83%, 100%, 46%), или (0,09/0,83/1,0/0,46).

HSB / HSV

HSB (также известна как HSV) похожа на HSL, но это две разные цветовые модели. Они обе основаны на цилиндрической геометрии, но HSB/HSV основана на модели «hexcone», в то время как HSL основана на модели «bi-hexcone». Художники часто предпочитают использовать эту модель, принято считать что устройство HSB/HSV ближе к естественному восприятию цветов. В частности, цветовая модель HSB применяется в Adobe Photoshop.

HSB/HSV расшифровывается как Hue (цвет/оттенок), Saturation (насыщенность), Brightness/Value (яркость/значение).

Hue задаёт положение цвета на цветовом круге (от 0 до 360). Saturation является процентным значением насыщенности (от 0% до 100%). Brightness является процентным значением яркости (от 0% до 100%).

XYZ

Цветовая модель XYZ (CIE 1931 XYZ) является чисто математическим пространством. В отличие от RGB, CMYK, и других моделей, в XYZ основные компоненты являются «мнимыми», то есть вы не можете соотнести X, Y, и Z с каким-либо набором цветов для смешивания. XYZ является мастер-моделью практически всех остальных цветовых моделей, используемых в технических областях.

LAB

Цветовая модель LAB (CIELAB, «CIE 1976 L*a*b*») вычисляется из пространства CIE XYZ. При разработке Lab преследовалась цель создания цветового пространства, изменение цвета в котором будет более линейным с точки зрения человеческого восприятия (по сравнению с XYZ), то есть с тем, чтобы одинаковое изменение значений координат цвета в разных областях цветового пространства производило одинаковое ощущение изменения цвета.

  • Перевод

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

Пионеры исследований цветовосприятия

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

Поглощение света опсинами

Колбочки соответствуют красной, зелёной и синей частям спектра и часто называются длинными (L), средними (M) и короткими (S) согласно длинам волн, к которым они наиболее чувствительны.

Одной из первых научных работ о взаимодействии света и сетчатки был трактат «Hypothesis Concerning Light and Colors» Исаака Ньютона, написанный между 1670-1675 гг. У Ньютона была теория, что свет с различными длинами волн приводил к резонансу сетчатки с теми же частотами; эти колебания затем передавались через оптический нерв в «сенсориум».


«Лучи света, падая на дно глаза, возбуждают колебания в сетчатке, которые распространяются по волокнам оптических нервов в мозг, создавая чувство зрения. Разные типы лучей создают колебания разной силы, которые согласно своей силе возбуждают ощущения разных цветов…»

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

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

В 1850 году Герман Гельмгольц первым получил экспериментальное доказательство теории Юнга. Гельмгольц попросил испытуемого сопоставить цвета различных образцов источников света, регулируя яркость нескольких монохромных источников света. Он пришёл к выводу, что для сопоставления всех образцов необходимо и достаточно трёх источников света: в красной, зелёной и синей части спектра.

Рождение современной колориметрии

Перенесёмся в начало 1930-х. К тому времени научное сообщество имело достаточно хорошее представление о внутренней работе глаза. (Хотя потребовалось ещё 20 лет, чтобы Джорджу Уолду удалось экспериментально подтвердить присутствие и функции родопсинов в колбочках сетчатки. Это открытие привело его к Нобелевской премии по медицине в 1967 году.) Commission Internationale de L"Eclairage (Меж­ду­на­род­ная комиссия по освещению), CIE, поставила задачу по созданию исчерпывающей количественной оценки восприятия цвета человеком. Количественная оценка была основана на экспериментальных данных, собранных Уильямом Дэвидом Райтом и Джоном Гилдом при параметрах, схожих с выбранными впервые Германом Гельмгольцем. Базовыми настройками были выбраны 435,8 нм для синего цвета, 546,1 нм для зелёного и 700 нм для красного.


Экспериментальная установка Джона Гилда, три ручки регулируют основные цвета

Из-за значительного наложения чувствительности колбочек M и L невозможно было сопоставить некоторые длины волн с сине-зелёной частью спектра. Для «сопоставления» этих цветов в качестве точки отсчёта нужно было добавить немного основного красного цвета:

Если мы на мгновение представим, что все основные цвета вносят отрицательный вклад, то уравнение можно переписать так:

Результатом экспериментов стала таблица RGB-триад для каждой длины волны, что отображалось на графике следующим образом:


Функции сопоставления цветов RGB по CIE 1931

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

Теперь мы можем найти трихромные коэффициенты для света распределения спектральной интенсивности S как следующее внутреннее произведение:

Может казаться очевидным, что чувствительность к различным длинам волн можно проинтегрировать таким образом, но на самом деле она зависит от физической чувствительности глаза, линейной по отношению к чувствительности к длинам волн. Это было эмпирически подтверждено в 1853 году Германом Грассманом, и представленные выше интегралы в современной формулировке известны нам как закон Грассмана.

Термин «цветовое пространство» возник потому, что основные цвета (красный, зелёный и синий) можно считать базисом векторного пространства. В этом пространстве различные цвета, воспринимаемые человеком, представлены лучами, исходящими из источника. Современное определение векторного пространства введено в 1888 году Джузеппе Пеано, но более чем за 30 лет до этого Джеймс Клерк Максвелл уже использовал только зародившиеся теории того, что позже стало линейной алгеброй, для формального описания трихроматической цветовой системы.

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

Этот новый набор основных цветов невозможно реализовать в физическом мире. Это просто математический инструмент, упрощающий работу с цветовым пространством. Кроме того, чтобы коэффициенты основных цветов всегда были положительными, новое пространство скомпоновано таким образом, что коэффициент цвета Y соответствует воспринимаемой яркости. Этот компонент известен как яркость CIE (подробнее о ней можно почитать в замечательной статье Color FAQ Чарльза Пойнтона (Charles Poynton)).

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

Координаты x и y известны как координаты цветности, и вместе с яркостью Y CIE они составляют цветовое пространство xyY CIE. Если мы расположим на графике координаты цветности всех цветов с заданной яркостью, у нас получится следующая диаграмма, которая вам наверно знакома:


Диаграмма xyY CIE 1931

И последнее, что нужно узнать - что считается белым цветом цветового пространства. В такой системе отображения белый цвет - это координаты x и y цвета, которые получаются, когда все коэффициенты основных цветов RGB равны между собой.

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

Передаточные функции

Прежде чем рассматривать видеостандарты, необходимо ввести и объяснить ещё две концепции.

Оптико-электронная передаточная функция

Оптико-электронная передаточная функция (optical-electronic transfer function, OETF) определяет то, как линейный свет, фиксируемый устройством (камерой) должен кодироваться в сигнале, т.е. это функция формы:

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

Электронно-оптическая передаточная функция

Электронно-оптическая передаточная функция (electronic-optical transfer, EOTF) выполняет противоположную OETF задачу, т.е. она определяет, как сигнал будет преобразован в линейный свет:

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

Отношение между EOTF и OETF

Понятия EOTF и OETF хоть и взаимосвязаны, но служат разным целям. OETF нужна для представления захваченной сцены, из которого мы потом можем реконструировать исходное линейное освещение (это представление концептуально является буфером кадра HDR (High Dynamic Range) обычной игры). Что происходит на этапах производства обычного фильма:
  • Захват данных сцены
  • Инвертирование OETF для восстановления значений линейного освещения
  • Цветокоррекция
  • Мастеринг под различные целевые форматы (DCI-P3, Rec. 709, HDR10, Dolby Vision и т.д.):
    • Уменьшение динамического диапазона материала для соответствия динамическому диапазону целевого формата (тональная компрессия)
    • Преобразование в цветовой пространство целевого формата
    • Инвертирование EOTF для материала (при использовании EOTF в устройстве отображения изображение восстанавливается как нужно).
Подробное обсуждение этого техпроцесса не войдёт в нашу статью, но я рекомендую изучить подробное формализованное описание рабочего процесса ACES (Academy Color Encoding System).

До текущего момента стандартный техпроцесс игры выглядел следующим образом:

  • Рендеринг
  • Буфер кадра HDR
  • Тональная коррекция
  • Инвертирование EOTF для предполагаемого устройства отображения (обычно sRGB)
  • Цветокоррекция
В большинстве игровых движков используется метод цветокоррекции, популяризованный презентацией Нэти Хофмана (Naty Hoffman) «Color Enhancement for Videogames» с Siggraph 2010. Этот метод был практичен, когда использовался только целевой SDR (Standard Dynamic Range), и он позволял использовать для цветокоррекции ПО, уже установленное на компьютерах большинства художников, например Adobe Photoshop.


Стандартный рабочий процесс цветокоррекции SDR (изображение принадлежит Джонатану Блоу (Jonathan Blow))

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

Теперь мы готовы рассмотреть различные стандарты, используемые в настоящее время для описания форматов телевизоров.

Видеостандарты

Rec. 709

Большинство стандартов, относящихся к вещанию видеосигналов, выпущено Меж­ду­на­род­ным союзом элект­рос­вя­зи (International Telecommunication Union, ITU), органом ООН, в основном занимающимся информационными технологиями.

Рекомендация ITU-R BT.709 , которую чаще называют Rec. 709 - это стандарт, описывающий свойства HDTV. Первая версия стандарта была выпущена в 1990 году, последняя - в июне 2015 года. В стандарте описываются такие параметры, как соотношения сторон, разрешения, частота кадров. С этими характеристиками знакомо большинство людей, поэтому я не буду рассматривать их и сосредоточусь на разделах стандарта, касающихся воспроизведения цвета и яркости.

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

Их относительная интенсивность должна быть настроена таким образом, чтобы белая точка имела цветность

(Эта белая точка также известна как CIE Standard Illuminant D65 и аналогична захвату координат цветности распределения спектральной интенсивности обычного дневного освещения.)

Свойства цветности можно визуально представить следующим образом:


Охват Rec. 709

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

Теперь мы переходим к части стандарта, посвящённой яркости, и здесь всё становится немного сложнее. В стандарте указано, что «Общая оптико-электронная передаточная характеристика в источнике» равна:

Здесь есть две проблемы:

  1. Не существует спецификации о том, чему соответствует физическая яркость L = 1
  2. Несмотря на то, что это стандарт вещания видео, в нём не указана EOTF
Так получилось исторически, потому что считалось, что устройство отображения, т.е. телевизор потребителя и есть EOTF. На практике это осуществлялось корректировкой диапазона захваченной яркости в вышеприведённой OETF, чтобы изображение выглядело хорошо на эталонном мониторе со следующей EOTF:

Где L = 1 соответствует яркость примерно 100 кд / м² (единицу кд / м² в этой отрасли называют «нит»). Это подтверждается ITU в последних версиях стандарта следующим комментарием:

В стандартной производственной практике функция кодирования источников изображения регулируется таким образом, чтобы конечное изображение имело требуемый вид, соответствующий видимому на эталонном мониторе. В качестве эталонной принимается функция декодирования из Рекомендации ITU-R BT.1886. Эталонная среда просмотра указана в Рекомендации ITU-R BT.2035.
Rec. 1886 - это результат работ по документации характеристик ЭЛТ-мониторов (стандарт опубликован в 2011 году), т.е. является формализацией существующей практики.


Кладбище слонов ЭЛТ

Нелинейность яркости как функции приложенного напряжения привела к тому, как физически устроены ЭЛТ-мониторы. По чистой случайности эта нелинейность (очень) приблизительно является инвертированной нелинейностью восприятия яркости человеком. Когда мы перешли к цифровому представлению сигналов, это привело к удачному эффекту равномерного распределения ошибки дискретизации по всему диапазону яркости.

Rec. 709 рассчитана на использование 8-битного или 10-битного кодирования. В большинстве контента используется 8-битное кодирование. Для него в стандарте указано, что распределение диапазона яркости сигнала должно распределяться в кодах 16-235.

HDR10

Что касается HDR-видео, то в нём есть два основных соперника: Dolby Vision и HDR10. В этой статье я сосредоточусь на HDR10, потому что это открытый стандарт, который быстрее стал популярным. Этот стандарт выбран для Xbox One S и PS4.

Мы снова начнём с рассмотрения используемой в HDR10 части цветности цветового пространства, определённой в Рекомендации ITU-R BT.2020 (UHDTV). В ней указаны следующие координаты цветности основных цветов:

И снова в качестве белой точки используется D65. При визуализации на схеме xy Rec. 2020 выглядит следующим образом:


Охват Rec. 2020

Очевидно заметно, что охват этого цветового пространства значительно больше, чем у Rec. 709.

Теперь мы переходим к разделу стандарта о яркости, и здесь снова всё становится более интересным. В своей кандидатской диссертации 1999 года “Contrast sensitivity of the human eye and its effect on image quality” («Контрастная чувствительность человеческого глаза и её влияние на качество изображения») Питер Бартен представил немного пугающее уравнение:

(Многие переменные этого уравнения сами по себе являются сложными уравнениями, например, яркость скрывается внутри уравнений, вычисляющих E и M).

Уравнение определяет, насколько чувствителен глаз к изменению контрастности при различной яркости, а различные параметры определяют условия просмотра и некоторые свойства наблюдателя. «Минимальная различаемая разница» (Just Noticeable Difference, JND) обратна уравнению Бартена, поэтому для дискретизации EOTF, чтобы избавиться от привязки к условиям просмотра, должно быть верно следующее:

Общество инженеров кино и телевидения (Society of Motion Picture and Television Engineers, SMPTE) решило, что уравнение Бартена будет хорошей основой для новой EOTF. Результатом стало то, что мы сейчас называем SMPTE ST 2084 или Perceptual Quantizer (PQ).

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

Дискретизированные значения EOTF можно найти с помощью следующей рекуррентной формулы нахождения k < 1 . Последним значением дискретизации будет являться необходимая максимальная яркость:

Для максимальной яркости в 10 000 нит с использованием 12-битной дискретизации (которая используется в Dolby Vision) результат выглядит следующим образом:


EOTF PQ

Как можно заметить, дискретизация не занимает весь диапазон яркости.

В стандарте HDR10 тоже используется EOTF PQ, но с 10-битной дискретизацией. Этого недостаточно, чтобы оставаться ниже порога Бартена в диапазоне яркости в 10 000 нит, но стандарт позволяет встраивать в сигнал метаданные для динамической регуляции пиковой яркости. Вот как 10-битная дискретизация PQ выглядит для разных диапазонов яркости:


Разные EOTF HDR10

Но даже так яркость немного выше порога Бартена. Однако ситуация не настолько плоха, как это может показаться из графика, потому что:

  1. Кривая логарифмическая, поэтому относительная погрешность на самом деле не так велика
  2. Не стоит забывать, что параметры, взятые для создания порога Бартена, выбраны консервативно.
На момент написания статьи телевизоры с HDR10, представленные на рынке, обычно имеют пиковую яркость 1000-1500 нит, и для них достаточно 10 бит. Стоит также заметить, что изготовители телевизоров могут сами решать, что им делать с яркостями выше диапазона, который они могут отображать. Некоторые придерживаются подхода с жёсткой обрезкой, другие - с более мягкой.

Вот пример того, как выглядит 8-битная дискретизация Rec. 709 с пиковой яркостью 100 нит:


EOTF Rec. 709 (16-235)

Как можно видеть, мы намного выше порога Бартена, и, что важно, даже самые неразборчивые покупатели будут настраивать свои телевизоры на значительно большие 100 нит пиковые яркости (обычно на 250-400 нит), что поднимет кривую Rec. 709 ещё выше.

В заключение

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

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

Теги:

Добавить метки

Как вы уже знаете, каждый пиксел изображения в градациях серого определяется 8 битами информации, и файл может содержать до 256 значений пикселов. Но эти значения (от 1 до 255) не обязательно должны представлять оттенки серого. Режим Indexed Color (Индексированные цвета) предлагает возможность создания 8-битовых изображений с 256 цветами. В таких изображениях используется таблица из 256 цветов, выбранных из всей 24-битовой цветовой палитры. Цвет того или иного пиксела определяется ссылкой к таблице: этот пиксел имеет цвет за номером 123, этот – за номером 81 и т. д.

Режим Indexed Color позволяет экономить дисковое пространство (лишь 8 бит на пиксел против 24 бит в режиме RGB – см. ниже), но дает всего 256 цветов. Это совсем не много по сравнению с 16,7 млн. цветов в режиме RGB. Тем не менее, поскольку многие мониторы работают только в режиме 8-битового отображения цвета, изображения с индексированными цветами идеально подходят для программ мультимедиа и экранных презентаций.

Есть и ряд серьезных ограничений. Прежде всего, в режиме Indexed Color невозможно пользоваться фильтрами и инструментами, выполняющими сглаживание (напр. "палец" или "осветлитель/затемнитель"), так как функция сглаживания здесь недоступна. Это значит, что редактировать изображение следует в RGB и лишь на заключительной стадии выполнять преобразование в Indexed Color.

Другая проблема с индексированными цветами связана с цветовыми таблицами. Если при переносе изображения из одной программы в другую эта таблица изменится, то изменится и цветовой состав изображения. Пиксел номер 123 может и сохранит значение 81, но после переноса в другую программу "цвет 81" может оказаться уже не красным, а синим.

Наконец, изображение с индексированными цветами невозможно разделить на цвета CMYK в программе QuarkXPress или Adobe PageMaker. Если вы собираетесь напечатать такое изображение, его стоит преобразовать в RGB или CMYK, не выходя из Photoshop. Правда, картинка после этого ничуть не улучшится – она по-прежнему будет состоять из 256 цветов.

Кстати, изображения Indexed Color можно более-менее успешно использовать при работе с плашечными цветами.

Изображения с индексированными цветами можно сохранять в форматах Photoshop, CompuServe GIF, PNG, PICT , Amiga IFF и BMP (см. "Другие форматы файла, которые могут вам пригодиться", "Хранение изображений").

Режим RGB

Компьютерные мониторы и телевизоры воспроизводят цвет в режиме RGB, где все разнообразие оттенков формируется сочетанием разного количества красного, зеленого и синего света. (Эти цвета называются первичными аддитивными – сложение красного, зеленого и синего света образует белый). Файлы, сохраненные в режиме RGB, состоят из трех 8-битовых файлов в градациях серого, поэтому принято говорить, что RGB-изображения являются 24-битовыми файлами.

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

Если вы занимаетесь созданием изображений для проектов мультимедиа или выводом файлов на устройства записи на пленку (напр. 35-мм слайды или диапозитивы 4 х 5 дюймов), изображения следует всегда сохранять в режиме RGB (см. "Методы вывода").

24-битовые RGB-файлы можно сохранять в форматах Photoshop, EPS, TIFF, PICT , Amiga IFF , BMP, JPEG, PCX, Pixar, Roaw, Scitex CT и Targa. Но если у вас нет веских причин поступать иначе, мы рекомендуем вам пользоваться только форматами Photoshop, TIFF или EPS.

Photoshop позволяет также работать и с 48-битовыми RGB-файлами, содержащими три 16-битовых канала вместо обычных 8-битовых. Несмотря на ограниченный выбор средств для обработки 48-битовых изображений, мы обращаемся к таким файлам все чаще и чаще, поскольку они допускают чрезвычайную гибкость в редактировании (см. "Работа с многобитовыми сканированными изображениями", "Цветокоррекция").

Разумеется, если вы занимаетесь подготовкой изображений для мультимедиа или Web, вы будете все время работать в RGB и переключаться на CMYK вам совершенно незачем.

Режим CMYK

Традиционные машины цветной печати работают только с четырьмя красками: голубой, пурпурной, желтой и черной. Все остальные цвета имитируются комбинацией этих красок. Когда вы открываете CMYK-файл в Photoshop, программа для отображения его на экране компьютера тут же преобразует значения CMYK в значения RGB. Важно помнить, что, просматривая CMYK-файл на экране, вы видите его RGB-версию.

Если вы покупаете сканированные изображения, полученные на сканере высшего класса, это почти наверняка будут CMYK-файлы. Во всех остальных случаях прежде, чем напечатать изображение на печатной машине или настольном принтере, вам нужно будет преобразовать его из RGB в CMYK. Средства, которые в Photoshop используются для такого преобразования, рассмотрены в "Параметры цвета" .

CMYK-файлы можно сохранять в форматах Photoshop, TIFF, EPS, JPEG, Scitex CT и Raw, хотя в большинстве случаев используются первые три.

Режим Lab

Основная проблема моделей RGB и CMYK состоит в том, что применяемые в них значения в действительности цвета не описывают. Скорее это набор инструкций, которыми пользуется выводное устройство для воспроизведения цвета. Но дело в том, что по одним и тем же спецификациям RGB или CMYK разные устройства воспроизводят разные цвета. Вы наверняка видели в магазинах полки с работающими телевизорами и понимаете, о чем речь: одно и то же изображение (с одними и теми же значениями RGB) на разных экранах выглядит по-разному.

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

Между тем существуют и аппаратно-независимые цветовые модели. Все они в той или иной степени основываются на цветовом пространстве, определенном в качестве стандарта в 1931 году организацией Commission Internationale de l’Eclairage (CIE). Модель Lab в Photoshop – одна из его производных.

В отличие от RGB и CMYK, модель Lab определяет цвет не по его компонентам, а дает описание того, как выглядит цвет. Аппаратно-независимые модели составляют ядро систем управления цветом, которые обеспечивают соответствие цветов при отображением их на экране, подачей файла на выводное устройство и получении конечных оттисков.

Файл, сохраненный в модели Lab, описывает, как выглядит цвет в строго определенных условиях. А то, какие значения RGB или CMYK нужны для воспроизведения этого цвета на конкретном выводном устройстве, зависит от вас (или от Photoshop, или от вашей системы управления цветом).

В ходе преобразования изображения из RGB в CMYK или наоборот Photoshop использует модель Lab в качестве эталона, принимая в расчет параметры из диалоговых окон RGB Setup и CMYK Setup (подробно этот процесс описан в "Параметры цвета"). Lab-изображения можно сохранять в форматах Photoshop, EPS, TIFF или Raw.

Хорошо, что работать в режиме Lab приходится довольно редко: управляться с этой моделью почти невозможно. Если RGB или CMYK более или менее понятны, то Lab совершенно непостижима (если вы вдруг почувствовали, что кое-что начинает проясняться, значит у вас нелады с рассудком). Тем не менее, иногда Lab оказывается очень полезной, например при подчистке изображений, полученных на цифровых камерах, или при тонкой настройке яркости).

Подсказка. L означает Luminosity (Светлота) . Преимущество Lab заключается в том, что информация о яркости (канал "L") здесь хранится отдельно от цветовой информации (каналы "a" и "b"). Этим можно воспользоваться для настройки тонов без воздействия на его цвета, а также для повышения резкости без заметного ущерба для качества изображения.

Режим Multichannel

Последним в списке цветовых режимов Photoshop числится Multi-channel – многоканальный. Так же, как RGB или CMYK, он имеет несколько 8-битовых каналов, но позволяет присваивать им любые цвета и имена.

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

Сегодня многие изображения, используемые в научных и астрономических целях, делаются с применением "инородного цвета" – в дополнение к различным цветам видимого спектра каналы могут представлять собой комбинацию радио-, инфракрасных и ультрафиолетовых волн. Некоторые из наших знакомых, помешанные на цифровой фотографии, комбинируют в многоканальном режиме обычные снимки с фотографиями, сделанными под воздействием инфракрасных лучей, создавая необыкновенные сюрреалистические композиции.

Мы же обращаемся к режиму Multichannel в основном на промежуточных этапах работы. В нем, например, можно хранить дополнительные каналы масок для прозрачности или выделений, использованных в других изображениях. Многоканальные изображения могут сохраняться только в форматах Photoshop и Raw.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: