Колірні моделі HSV і HLS
Наведені моделі не охоплюють усього діапазону видимого кольору, оскільки їхній колірний охват - це лише трикутник на графіку МКО, вершинам якого відповідають базові кольори. Вони є апаратно орієнтованими, тобто відповідають технічній реалізації кольору в пристроях графічного виводу. Але психофізіологічне сприйняття світла визначається не інтенсивністю трьох первинних квітів, а колірним тоном, насиченістю й світлістю. Колірний тон дозволяє розрізняти кольору, насиченість задає ступінь "розведення" чистого тону білим кольором, а светлість - це інтенсивність світла в цілому. Тому для адекватного нашому сприйняттю підбора відтінків більше зручними є моделі, у числі параметрів яких є присутнім тон (Hue). Цей параметр прийнятий вимірювати кутом, відлічуваним навколо вертикальної осі. При цьому червоному кольору відповідає кут 0°, зеленому - 120°, синьому - 240°, а доповнюючі один одного кольори розташовані один напроти іншого, тобто кут між ними становить 180°. Кольору CMY розташовані посередині між складовими їхніми компонентами RGB. Існує дві моделі, що використовують цей параметр.
Модель HSV (Hue, Saturation, Value, або тон, насиченість, кількість світла) можна представити у вигляді світлової шестигранної піраміди (мал. 3.10), по осі якої відкладається значення V, а відстань від осі до бічної грані в горизонтальному перетині відповідає параметру S (за діапазон зміни цих величин приймається інтервал від нуля до одиниці). Значення S дорівнює одиниці, якщо крапка лежить на бічній грані піраміди. Шестикутник, що лежить у підставі піраміди, являє собою проекцію колірного куба в напрямку його головної діагоналі (мал. 3.11).
Рис. 3.10. Колірний простір HSV
Рис. 3.11. Колірний простір HLS
Перетворення колірного простору HSV в RGB здійснюється безпосередньо за допомогою геометричних співвідношень між шестигранною пірамідою й кубом.
Колірна модель HLS (Hue, Lightness, Saturation, або тон, світлість, насиченість) є розширенням моделі HSV. Тут колірний простір уже представляється у вигляді подвійної піраміди (мал. 3.13), у якій по вертикальній осі відкладається L (світлість), а інші два параметри задаються так само, як і в попередній моделі. У літературі ці піраміди іноді називають шестигранним конусом.
На мал. 3.12 і 3.13 наведені блок-схеми перетворення моделей HSV і HLS у модель RGB. Алгоритми зворотного перетворення пропонуються читачеві як вправа.
У першому алгоритмі використовується функція Ent, що означає цілу частину числа. Крім того, використовується операція присвоювання для векторів. Константа ndf (скорочене від вираження "not defined") використовується при вході в алгоритм для того, щоб з'ясувати, чи задане значення змінної H. Наприклад, за згодою ndf може бути деяким негативним значенням, тому що тон - це завжди позитивна величина. У другому алгоритмі застосовується допоміжна функція Value (H, M1, M2) для обчислення значення компоненти R, G або B залежно від ситуації.
Рис. 3.12. Перетворення моделі HSV в RGB
Алгоритм перетворення:
Приведення H до заданого діапазону: Поки H<0 H=H+360 Поки H>360 H= H-360Визначення координат Якщо H<60 то Value=M1+(M 2-M1)*H/60 Якщо 60<=H<180 то Value=M2 Якщо 180<=H<240 то Value=M1+(M 2-M1)*( 240-H)/60 Якщо 240<=H то Value=M1
Рис. 3.13. Перетворення моделі HLS в RGB
Дата добавления: 2015-04-03; просмотров: 1645;