Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Цветовые модели HSV и HLS

.docx
Скачиваний:
49
Добавлен:
25.03.2016
Размер:
92.67 Кб
Скачать

Цветовые модели HSV и HLS. Рассмотренные модели ориентированы на работу с цветопередающей аппаратурой и для некоторых людей неудобны. Поэтому модели HSV, HLS опираются на интуитивные понятия тона насыщенности и яркости.

В цветовом пространстве модели HSV (Hue, Saturation, Value), иногда называемой HSB (Hue, Saturation, Brightness), используется цилиндрическая система координат, а множество допустимых цветов представляет собой шестигранный конус, поставленный на вершину.

Основание конуса представляет яркие цвета и соответствует V = 1. Однако цвета основания V = 1 не имеют одинаковой воспринимаемой интенсивности. Тон (H) измеряется углом, отсчитываемым вокруг вертикальной оси OV. При этом красному цвету соответствует угол 0°, зелёному – угол 120° и т. д. Цвета, взаимно дополняющие друг друга до белого, находятся напротив один другого, т. е. их тона отличаются на 180°. Величина S изменяется от 0 на оси OV до 1 на гранях конуса.

Конус имеет единичную высоту (V = 1) и основание, расположенное в начале координат. В основании конуса величины H и S смысла не имеют. Белому цвету соответствует пара S = 1, V = 1. Ось OV (S = 0) соответствует ахроматическим цветам (серым тонам).

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

 

Рис. 1.8. Цветовое пространство HSV модели

 

Еще одним примером системы, построенной на интуитивных понятиях тона насыщенности и яркости, является система HLS (Hue, Lightness, Saturation). Здесь множество всех цветов представляет собой два шестигранных конуса, поставленных друг на друга (основание к основанию).

Модель HLS HLS (Hue, Lightness, Saturation - цветовой тон, освещённость, насыщенность) - модель ориентированная на человека и обеспечивающая возможность явного задания требуемого оттенка цвета/ Эта модель образует подпространство, представляющее собой двойной конус, в котором черный цвет задается вершиной нижнего конуса и соответствует значению L = 0, белый цвет максимальной интенсивности задается вершиной верхнего конуса и соответствует значению L = 1. Максимально интенсивные цветовые тона соответствуют основанию конусов с L = 0.5, что не совсем удобно. Цветовой тон H, аналогично системе HSV, задается углом поворота. Насыщенность S меняется в пределах от 0 до 1 и задается расстоянием от вертикальной оси L до боковой поверхности конуса. Т.е. максимально насыщенные цветовые цвета располагаются при L=0.5, S=1. В общем, систему HLS можно представить как полученную из HSV "вытягиванием" точки V=1, S=0, задающей белый цвет, вверх для образования верхнего конуса.

  • H — тон [0; 360]

  • S — насыщенность [0; 1]

  • L — светлота (освещённость) [0; 1]

В некоторых графических редакторах, например, в Macromedia FreeHand используется модель HLS. В модели HLS, в отличие от HSB, вместо яркости используется параметр L — освещенность (Lightness). Уменьшение освещенности приближает цвет к черному, а увеличение — к белому. Чистый спектральный цвет получается при освещенности 50%.

Модели HSB и HLS не ориентированы ни на какое техническое устройство воспроизведения цветов, поэтому их называют еще аппаратно независимыми.

Рис. 5: Цветовая модель HLS

Светлота (lightness) — одна из основных характеристик цвета наряду с насыщенностью и тоном. Это субъективная яркость участка изображения, отнесённая к субъективной яркости поверхности, воспринимаемой человеком как белая.

где

- светлота

- субъективная яркость участка

- субъективная яркость белого

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

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

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

Цветовые модели HSB и HLS

Многие художники пользуются цветовой моделью HSB. Это не строгая математическая модель, но она очень удобна для подбора оттенков и цветов. Эта модель основана на модели RGB, но имеет другую систему координат. Любой цвет в модели HSB определяется своим цветовым тоном (собственно цветом), насыщенностью (то есть процентом добавленной к цвету белой краски) и яркостью (процентом добавленной черной краски). Такая модель получила название по первым буквам английских слов Hue — тон, Saturation — насыщенность и Brightness — яркость. Это трехканальная модель (рис. 3.).

Все оттенки располагаются по кругу, и каждому соответствует свой градус, т.е. всего насчитывается 360 вариантов (красный — 0, желтый — 60, зеленый — 120 градусов и т.д.). Более точной графической интерпретацией данной модели будет конус. Такая цветовая модель намного беднее, рассмотренной ранее RGB, так как позволяет работать всего лишь с 3 млн. цветов.

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

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

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

Графически модель HSB можно представить в виде кольца, вдоль которого располагаются оттенки цветов. На внешнем крае круга находятся чистые спектральные цвета или цветовые тона (параметр Н в угловых градусах). Чем ближе к центру круга расположен цвет, тем меньше его насыщенность, тем он более блеклый, пастельный (параметр S в процентах). Яркость (освещенность) отображается на линейке, перпендикулярной плоскости цветового круга (параметр В в процентах). Цвета на внешнем круге имеют максимальную яркость.

Рис. 3. Графическое представление модели HSB

В некоторых графических редакторах, например в Macromedia FreeHand, используется модель HLS (Hue, Lightness, Saturation), которая похожа на HSB. В модели HLS, в отличие от HSB, вместо яркости используется параметр L— освещенность (Lightness). Уменьшение освещенности приближает цвет к черному, а увеличение — к белому. Чистый спектральный цвет получается при освещенности 50%.

Понятия яркости L в моделях Lab и HSB не тождественны. Как и в RGB, смешение цветов из шкал а и b позволяет получить более яркие цвета. Уменьшить яркость результирующего цвета можно за счет параметра яркости L.

Модели HSB и HLS не ориентированы ни на какое техническое устройство воспроизведения цветов, поэтому их называют еще аппаратно независимыми.

Модель HSB основана на трех параметрах: H — оттенок или тон (Hue), S — насыщенность (Saturation) и B — яркость (Brightness). Модель HSB лучше, чем RGB и CMYK, соответствует понятию цвета, которое используют профессиональные художники. У них обычно есть несколько основных красок, а все другие получаются добавлением к ним белой и черной. Таким образом, нужные цвета — это некоторая модификация основных: осветлить или затемнить. Хотя художники и смешивают различные краски, но это уже выходит за рамки модели HSB.

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

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

Графически модель HSB можно представить в виде кольца, по окружности которого располагаются оттенки цветов (рис. 6). На внешнем крае круга находятся чистые спектральные цвета или цветовые тона (параметр H измеряется в угловых градусах, от 0 до 360). Чем ближе к центру круга расположен цвет, тем меньше его насыщенность, тем он более блеклый, пастельный (параметр S измеряется в процентах). Яркость (освещенность) отображается на линейке, перпендикулярной плоскости цветового круга (параметр B измеряется в процентах). Все цвета на внешнем круге имеют максимальную яркость.

Рис. 6. Графическое представление модели HSB

Цветовые модели HSV и HLS

Приведенные модели не охватывают всего диапазона видимого цвета, поскольку их цветовой охват - это лишь треугольник на графике МКО, вершинам которого соответствуют базовые цвета. Они являются аппаратно ориентированными, т.е. соответствуют технической реализации цвета в устройствах графического вывода. Но психофизиологическое восприятие света определяется не интенсивностью трех первичных цветов, а цветовым тоном, насыщенностью и светлотой. Цветовой тон позволяет различать цвета, насыщенность задает степень "разбавления" чистого тона белым цветом, а светлота - это интенсивность света в целом. Поэтому для адекватного нашему восприятию подбора оттенков более удобными являются модели, в числе параметров которых присутствует тон (Hue). Этот параметр принято измерять углом, отсчитываемым вокруг вертикальной оси. При этом красному цвету соответствует угол 0 , зеленому - 120 , синему - 240 , а дополняющие друг друга цвета расположены один напротив другого, т.е. угол между ними составляет 180 . Цвета CMY расположены посредине между составляющими их компонентами RGB. Существует две модели, использующие этот параметр.

Модель HSV (Hue, Saturation, Value, или тон, насыщенность, количество света) можно представить в виде световой шестигранной пирамиды (рис. 2.10), по оси которой откладывается значение V, а расстояние от оси до боковой грани в горизонтальном сечении соответствует параметру S (за диапазон изменения этих величин принимается интервал от нуля до единицы). Значение S равно единице, если точка лежит на боковой грани пирамиды. Шестиугольник, лежащий в основании пирамиды, представляет собой проекцию цветового куба в направлении его главной диагонали.

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

Цветовая модель HLS (Hue, Lightness, Saturation, или тон, светлота, насыщенность) является расширением модели HSV. Здесь цветовое пространство уже представляется в виде двойной пирамиды (рис. 2.11), в которой по вертикальной оси откладывается L (светлота), а остальные два параметра задаются так же, как и в предыдущей модели. В литературе эти пирамиды иногда называют шестигранным конусом.

На рис. 2.12 и 2.13 приведены блок-схемы преобразования моделей HSV и HLS в модель RGB. Алгоритмы обратного преобразования предлагаются читателю в качестве упражнения.

В первом алгоритме используется функция Ent, означающая целую часть числа. Кроме того, используется операция присваивания для векторов. Константа ndf (сокращенное от выражения "not defined" (не определен)) используется при входе в алгоритм для того, чтобы выяснить, задано ли значение переменной H. Например, по соглашению ndf может быть некоторым отрицательным значением, так как тон - это всегда положительная величина. Во втором алгоритме применяется вспомогательная функция Value (Значение) (H, M1, M2) для вычисления значения компоненты R, G или B в зависимости от ситуации.

Рис. 2.12. Преобразование модели HSV в RGB

Алгоритм преобразования:

Приведение H к заданному диапазону:

Пока H<0 H=H+360

Пока H>360 H=H-360

Определение координат

Если H<60 то Value=M1+(M2-M1)*H/60

Если 60<=H<180 то Value=M2

Если 180<=H<240 то Value=M1+(M2-M1)*(240-H)/60

Если 240<=H то Value=M1

Рис. 2.13. Преобразование модели HLS в RGB