Для чего используется цветовая модель lab
О цветовых пространствах
Я по образованию программист, но по работе мне пришлось столкнуться с обработкой изображений. И тут для меня открылся удивительный и неизведанный мир цветовых пространств. Не думаю, что дизайнеры и фотографы узнают для себя что-то новое, но, возможно, кому-нибудь это знание окажется, как минимум полезно, а в лучшем случае интересно.
Основная задача цветовых моделей – сделать возможным задание цветов унифицированным образом. По сути цветовые модели задают определённые системы координат, которые позволяют однозначно определить цвет.
Наиболее популярными на сегодняшний день являются следующие цветовые модели: RGB (используется в основном в мониторах и камерах), CMY(K) (используется в полиграфии), HSI (широко используется в машинном зрении и дизайне). Существует множество других моделей. Например, CIE XYZ (стандартные модели), YCbCr и др. Далее дан краткий обзор этих цветовых моделей.
Цветовой куб RGB
Из закона Грассмана возникает идея аддитивной (т.е. основанной на смешении цветов от непосредственно излучающих объектов) модели цветовоспроизведения. Впервые подобная модель была предложена Джеймсом Максвеллом в 1861 году, но наибольшее распространение она получила значительно позже.
В модели RGB (от англ. red – красный, green – зелёный, blue – голубой) все цвета получаются путём смешения трёх базовых (красного, зелёного и синего) цветов в различных пропорциях. Доля каждого базового цвета в итоговом может восприниматься, как координата в соответствующем трёхмерном пространстве, поэтому данную модель часто называют цветовым кубом. На Рис. 1 представлена модель цветового куба.
Чаще всего модель строится так, чтобы куб был единичным. Точки, соответствующие базовым цветам, расположены в вершинах куба, лежащих на осях: красный – (1;0;0), зелёный – (0;1;0), синий – (0;0;1). При этом вторичные цвета (полученные смешением двух базовых) расположены в других вершинах куба: голубой — (0;1;1), пурпурный — (1;0;1) и жёлтый – (1;1;0). Чёрный и белые цвета расположены в начале координат (0;0;0) и наиболее удалённой от начала координат точке (1;1;1). Рис. показывает только вершины куба.
Цветные изображения в модели RGB строятся из трёх отдельных изображений-каналов. В Табл. показано разложение исходного изображения на цветовые каналы.
В модели RGB для каждой составляющей цвета отводится определённое количество бит, например, если для кодирования каждой составляющей отводить 1 байт, то с помощью этой модели можно закодировать 2^(3*8)≈16 млн. цветов. На практике такое кодирование избыточно, т.к. большинство людей не способно различить такое количество цветов. Часто ограничиваются т.н. режимом «High Color» в котором на кодирование каждой компоненты отводится 5 бит. В некоторых приложениях используют 16-битный режим в котором на кодирование R и B составляющих отводится по 5 бит, а на кодирование G составляющей 6 бит. Этот режим, во-первых, учитывает более высокую чувствительность человека к зелёному цвету, а во-вторых, позволяет более эффективно использовать особенности архитектуры ЭВМ. Количество бит, отводимых на кодирование одного пиксела называется глубиной цвета. В Табл. приведены примеры кодирования одного и того же изображения с разной глубиной цвета.
Субтрактивные модели CMY и CMYK
Субтрактивная модель CMY (от англ. cyan — голубой, magenta — пурпурный, yellow — жёлтый) используется для получения твёрдых копий (печати) изображений, и в некотором роде является антиподом цветового RGB-куба. Если в RGB модели базовые цвета – это цвета источников света, то модель CMY – это модель поглощения цветов.
Например, бумага, покрытая жёлтым красителем не отражает синий свет, т.е. можно сказать, что жёлтый краситель вычитает из отражённого белого света синий. Аналогично голубой краситель вычитает из отражённого света красный, а пурпурный краситель вычитает зелёный. Именно поэтому данную модель принято называть субтрактивной. Алгоритм перевода из модели RGB в модель CMY очень прост:
При этом предполагается, что цвета RGB находятся в интервале [0;1]. Легко заметить, что для получения чёрного цвета в модели CMY необходимо смешать голубой, пурпурный и жёлтый в равных пропорциях. Этот метод имеет два серьёзных недостатка: во-первых, полученный в результате смешения чёрный цвет будет выглядеть светлее «настоящего» чёрного, во-вторых, это приводит к существенным затратам красителя. Поэтому на практике модель СMY расширяют до модели CMYK, добавляя к трём цветам чёрный (англ. black).
Цветовое пространство тон, насыщенность, интенсивность (HSI)
Рассмотренные ранее цветовые модели RGB и CMY(K) весьма просты в плане аппаратной реализации, но у них есть один существенный недостаток. Человеку очень тяжело оперировать цветами, заданными в этих моделях, т.к. человек, описывая цвета, пользуется не содержанием в описываемом цвете базовых составляющих, а несколько иными категориями.
Чаще всего люди оперируют следующими понятиями: цветовой тон, насыщенность и светлота. При этом, говоря о цветовом тоне, обычно имеют в виду именно цвет. Насыщенность показывает насколько описываемый цвет разбавлен белым (розовый, например, это смесь красного и белого). Понятие светлоты наиболее сложно для описания, и с некоторыми допущениями под светлотой можно понимать интенсивность света.
Если рассмотреть проекцию RGB-куба в направлении диагонали белый-чёрный, то получится шестиугольник:
Все серые цвета (лежащие на диагонали куба) при этом проецируются в центральную точку. Чтобы с помощью этой модели можно было закодировать все цвета, доступные в RGB-модели, необходимо добавить вертикальную ось светлоты (или интенсивности) (I). В итоге получается шестигранный конус:
При этом тон (H) задаётся углом относительно оси красного цвета, насыщенность (S) характеризует чистоту цвета (1 означает совершенно чистый цвет, а 0 соответствует оттенку серого). Важно понимать, что тон и насыщенность не определены при нулевой интенсивности.
Алгоритм перевода из RGB в HSI можно выполнить, воспользовавшись следующими формулами:
Цветовая модель HSI очень популярна среди дизайнеров и художников, т.к. в этой системе обеспечивается непосредственный контроль тона, насыщенности и яркости. Эти же свойства делают эту модель очень популярной в системах машинного зрения. В Табл. показано изменение изображения при увеличении и уменьшении интенсивности, тона (выполняется поворот на ±50°) и насыщенности.
Модель CIE XYZ
С целью унификации была разработана международная стандартная цветовая модель. В результате серии экспериментов международная комиссия по освещению (CIE) определила кривые сложения основных (красного, зелёного и синего) цветов. В этой системе каждому видимому цвету соответствует определённое соотношение основных цветов. При этом, для того, чтобы разработанная модель могла отражать все видимые человеком цвета пришлось ввести отрицательное количество базовых цветов. Чтобы уйти от отрицательных значений CIE, ввела т.н. нереальные или мнимые основные цвета: X (мнимый красный), Y (мнимый зелёный), Z (мнимый синий).
При описании цвета значения X,Y,Z называют стандартными основными возбуждениями, а полученные на их основе координаты – стандартными цветовыми координатами. Стандартные кривые сложения X(λ),Y(λ),Z(λ) (см. Рис.) описывают чувствительность среднестатистического наблюдателя к стандартным возбуждениям:
Помимо стандартных цветовых координат часто используют понятие относительных цветовых координат, которые можно вычислить по следующим формулам:
Легко заметить, что x+y+z=1, а это значит, что для однозначного задания относительных координат достаточно любой пары значений, а соответствующее цветовое пространство может быть представлено в виде двумерного графика:
Множество цветов, задаваемое таким способом, называют треугольником CIE.
Легко заметить, что треугольник CIE описывает только цветовой тон, но никак не описывает яркость. Для описания яркости вводят дополнительную ось, проходящую через точку с координатами (1/3;1/3) (т.н. точку белого). В результате получают цветовое тело CIE (см. Рис.):
Это тело содержит все цвета, видимые среднестатистическим наблюдателем. Основным недостатком этой системы является то, что используя её, мы можем констатировать только совпадение или различие двух цветов, но расстояние между двумя точками этого цветового пространства не соответствует зрительному восприятию различия цветов.
Модель CIELAB
Основной целью при разработке CIELAB было устранение нелинейности системы CIE XYZ с точки зрения человеческого восприятия. Под аббревиатурой LAB обычно понимается цветовое пространство CIE L*a*b*, которое на данный момент является международным стандартом.
В системе CIE L*a*b координата L означает светлоту (в диапазоне от 0 до 100), а координаты a,b – означают позицию между зелёным-пурпурным, и синим-жёлтым цветами. Формулы для перевода координат из CIE XYZ в CIE L*a*b* приведены ниже:
где (Xn,Yn,Zn) – координаты точки белого в пространстве CIE XYZ, а
На Рис. представлены срезы цветового тела CIE L*a*b* для двух значений светлоты:
По сравнению с системой CIE XYZ Евклидово расстояние (√((L1-L2 )^2+(a1^*-a2^* )^2+(b1^*-b2^* )^2 )) в системе CIE L*a*b* значительно лучше соответствует цветовому различию, воспринимаемому человеком, тем не менее, стандартной формулой цветового различия является чрезвычайно сложная CIEDE2000.
Телевизионные цветоразностные цветовые системы
В цветовых системах YIQ и YUV информация о цвете представляется в виде сигнала яркости (Y) и двух цветоразностных сигналов (IQ и UV соответственно).
Популярность этих цветовых систем обусловлена в первую очередь появлением цветного телевидения. Т.к. компонента Y по сути содержит исходное изображение в градациях серого, сигнал в системе YIQ мог быть принят и корректно отображён как на старых чёрно-белых телевизорах, так и на новых цветных.
Вторым, возможно более важным плюсом, этих пространств является разделение информации о цвете и яркости изображения. Дело в том, что человеческий глаз весьма чувствителен к изменению яркости, и значительно менее чувствителен к изменению цветности. Это позволяет передавать и хранить информацию о цветности с пониженной глубиной. Именно на этой особенности человеческого глаза построены самые популярные на сегодняшний день алгоритмы сжатия изображений (в т.ч. jpeg). Для перевода из пространства RGB в YIQ можно воспользоваться следующими формулами:
Labоратория цвета. #1 Читаем цвет в Lab.
Любой фотолюбитель, рано или поздно, в той, или иной степени, начинает обрабатывать свои фотографии.
А начав обрабатывать, рано или поздно, понимает, что ему следует научиться «читать» цвет. Т.е. максимально быстро и точно, по цифрам, обозначающим цвет, представлять его визуально. Это важно в процессе выставления баланса белого. При попытках понять, почему нам не нравится, скажем, скинтон человека, и что нужно сделать, дабы его нормализовать. Да практически всегда.
К сожалению, на практике это оказывается не так просто. Рассуждать я буду на примере Adobe Lightroom.
Практически все программы обработки изображений позволяют получить его цифровые RGB-значения (рис. 02), и именно это становится проблемой.
02.
Причин проблемности несколько:
1. RGB-пространств много, и одни и те же цифры в разных пространствах обозначают существенно разный цвет.
2. В Lightroom информация о цвете выводится (под гистограммой) в весьма экзотическом пространстве Melissa RGB, незнакомом подавляющему большинству фотолюбителей.
3. В RGB-пространствах информация о цвете и яркости смешана воедино. Даже имея калькулятор, далеко не каждый сможет определить яркость пиксела по его RGB-координатам.
Перечисленные причины привели к тому, что несколько лет назад в Lightroom добавили возможность перенастроить вывод информации о цвете из RGB-представления в Lab, которое для «чтения» цвета гораздо удобнее и информативнее.
Когда на втором занятии учебного курса по Lightroom я дохожу до этого момента, всегда вижу испуганные глаза. Новое и незнакомое пугает начинающих, но бояться не следует. Уже через пару занятий все студенты свободно ориентируются в Lab и находят его использование весьма полезным.
Координатные оси пространства Lab изображены на рис. 3:
03.
Абсолютная величина цветовых координат определяет Saturation (насыщенность) цвета.
Нейтраль в Lab имеет цветовые координаты (0,0)
Подобная организация цветового пространства, после привычных RGB, может показаться бредом сумасшедшего математика. Но в действительности не всё так страшно, как на самом деле.
В 1981 г. американцы Дэвид Хьюбл (David H.Hubel) и Торстен Вайзел (Torsten N.Wiesel) получили Нобелевскую премию за исследование зрения человека. Они доказали, что глаза человека выдают в мозг информацию вовсе не о красном (R), зелёном (G) и синем (B) цветах (теория цвета Юнга-Гельмгольца, 1802 г.). Согласно теории о 3-ёх оппонентных процессах (немецкий физиолог Эвальд Геринг, 1834—1918), мозг получает информацию о разнице яркости белого и чёрного, о разнице цветов Green и Magenta, и о разнице цветов Blue и Yellow.
Т.о. именно Lab более физиологично и максимально соответствует специфике зрительного восприятия человека.
Инструмент выставления White Balance (баланса белого) всех RAW-конвертеров содержит два параметра: Temp (цветовая температура), и Tint (оттенок).
В интерфейсе Lightroom оси движков, для наглядности, раскрашены в соответствующие цвета (рис. 04):
04.
На рис. 05 показана цветовая плоскость пространства Lab.
05.
Давайте мысленно сравним анализ цвета в случае RGB и Lab-представления.
В первом случае считываем три цифры, которые одновременно определяют и яркость, и цвет. Причём их визуализация требует ощутимых мысленных усилий.
Становится очевидным, почему (и насколько) считывание цвета в Lab-представлении проще и информативнее, чем в RGB.
На рис. 06 показано, как настроить вывод информации о цвете в Lab в Lightroom (слева), и Photoshop (справа).
Для открытия в Lightroom показанного меню, следует кликнуть по гистограмме правым кликом мыши:
06.
07.
На рис. 08 Lab-представление сразу даёт яркий (84,8%) и насыщенный жёлтый (77,1) с лёгкой примесью зелёного (-2,2):
08.
09.
Резюме: даже если вы никогда не будете применять приёмы обработки в пространстве Lab, умение считывать в нём информацию о цвете будет полезным.
Замечательных вам кадров!
Запись на него через кнопку «Сообщения» на моей FB-странице.
Приходите, буду рад каждому!
Цветовые модели и области их применения
Мы воспринимаем окружающий мир с помощью различных факторов, один из которых — это цвет. Открывает человек глаза и видит разные цвета, а если нужно об этих цветах рассказать другому человеку, то можно сказать что-то вроде «штаны у него как спелый лимон» или «глаза у нее как ясное небо» и человеку в принципе понятно какого цвета штаны и глаза, даже если он их не видит.
То есть передать информацию о цвете от человека человеку, никакого труда не составляет. А если цветовой информацией должны оперировать не люди, а какие-нибудь технические устройства, тут вариант «глаза как ясное небо» не пойдет. Нужно какое-то иное описание цвета, понятное этим устройствам (мониторы, принтеры, фотоаппараты и т. д.). Как раз для этого и нужны цветовые модели.
Типы цветовых моделей
Существует немало цветовых моделей, наиболее часто используемые можно разделить на три группы:
Рассмотрим по отдельности некоторые, часто используемые, цветовые модели.
Цветовая модель RGB
Данная цветовая модель описывает цвет источника света (сюда можно отнести например экран монитора или телевизора). Из огромного множества цветов, в качестве основных (первичных) было выделено три цвета: красный (Bed), зеленый (Green), синий (Blue ). Первые буквы названий основных цветов образовали название цветовой модели RGB.
Когда смешиваются два основных цвета, получившийся цвет осветляется: красный и зеленый дают желтый, зеленый и синий дают голубой, из синего и красного получится пурпурный. Если смешать все три основных цвета, образуется белый. Такие цвета называются аддитивными.
Эту модель можно представить в виде трехмерной системы координат, где каждая отражает значение одного из основных цветов в диапазоне от нуля до максимума. Получился куб, внутри которого находятся все цвета, образующие цветовое пространство RGB.
Важные точки и линии модели RGB
Плюс этой модели состоит в том, что она описывает все 16 миллионов цветов, а минус в том, что при печати часть (самые яркие и насыщенные) этих цветов потеряется.
Так как RGB аппаратно-завиисмая модель, то одна и та же картинка на разных мониторах может отличаться по цвету, например потому что экраны этих мониторов сделаны по разным технологиям или мониторы по разному настроены.
Цветовая модель CMYK
Если предыдущая модель описывает светящиеся цвета, то CMYK наоборот, для описания цветов отраженных. Еще они называются субтрактивными («вычитательными»), потому что они остаются после вычитания основных аддитивных. Так как цветов для вычитания у нас три, то и основных субтрактивных цветов тоже будет три: голубой (Cyan), пурпурный (Magenta), желтый (Yellow).
Три основных цвета модели CMYK, называют полиграфической триадой. Печатая этими красками, происходит поглощение красной, зеленой и синей составляющих. В изображении CMYK каждый пиксель имеет значение процентного содержания триадных красок.
Когда смешиваем две субтрактивных краски, то результирующий цвет затемняется, а если смешать три, то должен получиться черный цвет. При нулевом значении всех красок получаем белый цвет. А когда значения всех составляющих равны — получаем серый цвет.
На деле получается, что если смешать три краски при максимальных значениях, вместо глубокого черного цвета у нас получится скорее грязный темно-коричневый. Это происходит потому, что полиграфические краски не идеальны и не могут отразить весь цветовой диапазон.
Что бы компенсировать эту проблему к этой триаде добавили четвертую краску черного цвета, она и добавила последнюю букву в названии цветовой модели С — Cyan (Голубой), М — Magenta (Пурпурный), Y — Yellow (Желтый), К — blacK (Черный). Все краски обычно обозначаются начальной буквой названия, но черную обозначили последней буквой, Почему? На этот счет есть несколько версий.
Как и RGB, CMYK тоже модель аппаратно-зависимая. Зависит конечный результат от краски, от типа бумаги, от печатной машины, от особенностей технологии печати. Поэтому одно и то же изображение в разных типографиях может быть напечатанным по разному.
Цветовая модель HSB
Если вышеописанные модели соединить в одну, то результат можно изобразить в виде цветового круга, где основные цвета моделей RGB и CMY расположены в следующей зависимости: каждый цвет находится напротив комплементарного цвета, его дополняющего и между цветами, с помощью которых он образован.
Чтобы усилить какой-то цвет, нужно ослабить цвет находящийся напротив (дополняющий). Например, чтобы усилить желтый, нужно ослабить синий.
Для описания цвета в данной модели есть три параметра Hue (оттенок) — показывает положение цвета на цветовом круге и обозначается величиной угла от 0 до 360 градусов, Saturation (насыщенность) — определяет чистоту цвета (уменьшение насыщенности похоже на добавлене белого цвета в исходный цвет), Brightness (яркость) — показывает освещенность или затененность цвета (уменьшение яркости похоже на добавление черной краски). Первые буквы в названии этих параметров и дали название цветовой модели.
Модель HSB хорошо согласуется с человеческим восприятием: цветовой тон — длина волны света, насыщенность — интенсивность волны, а яркость — количество света.
Минусом модели HSB является необходимость конвертировать ее в RGB для отображения на экране монитора или в CMYK для печати.
Цветовая модель Lab
Эту модель создала Международная комиссия по освещению для того, чтобы уйти от недостатков предыдущих моделей. Было необходимо создать аппаратно независимую модель для определения цвета независящую от параметров устройства.
В модели Lab цвет представлен тремя параметрами:
При переводе цвета из какой-нибудь модели в Lab, все цвета сохраняются, так как пространство Lab самое большое. Поэтому данное пространство используют как посредника при конвертации цвета из одной модели в другую.
Цветовая модель Grayscale
Самое простое и понятное пространство используется для отображения черно-белого изображения. Цвет в данной модели описывается всего одним параметром. Значение параметра может быть в градациях (от 0 до 256) или в процентах (от 0% до 100%). Минимальное значение соответствует белому цвету, а максимальное — черному.
Индексные цвета
Вряд ли допечатнику придется работать с индексными цветами, но знать что это такое, не помешает.
Итак, когда-то давно, на заре компьютерных технологий, компьютеры могли отображать на экране не больше 256 цветов одновременно, а до этого 64 и 16 цветов. Исходя из таких условий был придуман индексный способ кодирования цвета. Каждый цвет, содержащийся в изображении, получил порядковый номер, с помощью этого номера описывался цвет всех пикселов, имеющих соответствующий цвет. Но у разных изображение наборы цветов разные и по этому пришлось в каждой картинке хранить свой набор цветов (набор цветов назвали — цветовая таблица).
Современные компьютеры (даже самые простые) способны отображать на экране 16,8 млн цветов, поэтому нет особой необходимости в использовании индексных цветов. Но с развитием интернета эта модель вновь используется. Все потому, что такой файл может иметь гораздо меньший размер.