Механизм формирования цветов модели RGB

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

 

Рисунок 2 – Цветовая модель RGB

 

R+G=Y (Yellow - желтый);

G+B=C (Cyan – голубой);

B+R=M (Magenta – пурпурный).

 

Сумма всех трех основных цветов в равных долях дает белый (White) цвет

 

R+G+B=W (White – белый)

 

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

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

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

Таблица 1 – Присутствие цветов

R G B Цвет
(white /белый)
(yellow / желтый)
(magenta / пурпурный)
(red / красный)
(cyan / голубой)
(green / зеленый)
(blue /синий)
(black / черный)

На практике же, для сохранения информации о цвете каждой точки цветного изображения в модели RGB обычно отводится 3 байта (т.е. 24 бита) по 1 байту (т.е. по 8 бит) под значение цвета каждой составляющей. Таким образом, каждая RGB-составляющая может принимать значение в диапазоне от 0 до 255 (всего 2 в 8 степени = 256 значений). Поэтому можно смешивать цвета в различных пропорциях, изменяя яркость каждой составляющей.

Таким образом, можно получить 256 х 256 х 256 = 16 777 216 цветов.

Изменяющиеся в диапазоне от 0 до 255 координаты RGB образуют цветовой куб (Рисунок 3).

 

Рисунок 3 – Цветовой куб

 

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

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

Каждому цвету можно сопоставить код, используя десятичное и шестнадцатеричное представление кода. Десятичное представление – это тройка десятичных чисел, разделенных запятыми. Первое число соответствует яркости красной составляющей, второе - зеленой, третье – синей.

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

Максимальная яркость всех трех базовых составляющих соответствует белому цвету, минимальная - черному цвету. Поэтому белый цвет имеет в десятеричном представлении код (255,255,255), а в шестнадцатеричном - FFFFFF. Черный цвет кодирует соответственно (0,0,0) или 000000.

Все оттенки серого цвета образуются смешиванием трех составляющих одинаковой яркости. Например, при значениях (200,200,200) или C8C8C8 получается светло-серый цвет, а при значениях (100,100,100) или 646464 - темно-серый. Чем более темный оттенок серого нужно получить, тем меньшее число нужно вводить в каждое текстовое поле.

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