RGB

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Аддитивное смешение цветов
Глубина цвета
См. также

RGB (аббревиатура английских слов red, green, blue — красный, зелёный, синий) или КЗС — аддитивная цветовая модель, описывающая способ кодирования цвета для цветовоспроизведения с помощью трёх цветов, которые принято называть основными. Выбор основных цветов обусловлен особенностями физиологии восприятия цвета сетчаткой человеческого глаза.

RGB-модель является аддитивной, где цвета получаются путём добавления к чёрному цвету. При отсутствии излучения — нет никакого цвета — чёрный, смешение всех трёх в определённой пропорции — даёт белый. Если цвет экрана, освещённого цветным прожектором, обозначается в RGB как (r1, g1, b1), а цвет того же экрана, освещённого другим прожектором, — (r2, g2, b2), то при освещении двумя прожекторами цвет экрана будет обозначаться как (r1+r2, g1+g2, b1+b2).

Изображение в данной цветовой модели состоит из трёх каналов. При смешении основных излучений, например, синего (B) и красного (R), получается пурпурный (M, magenta), зелёного (G) и красного (R) — жёлтый (Y, yellow), зелёного (G) и синего (B) — циановый (С, cyan). При смешении всех трёх основных излучений получается белый цвет (W, white).

В телевизорах и мониторах ЭЛТ применяются три электронных пушки для красного, зелёного и синего каналов. В ЖК- и других матричных мониторах и телевизорах носителями трёх цветов являются светоточки (светодиоды, светофильтры).

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

Джеймс Максвелл предложил аддитивный синтез цвета как способ получения цветных изображений в 1861 году[1].

Определение

Ограничение sRGB по возможности передачи цветов

Цветовая модель RGB является зависимой от устройства. Поскольку мониторы разных моделей и производителей различаются, было предложено несколько стандартов цветовых пространств для этой модели. Например, sRGB является стандартом для изображения на мониторе (профиль «по умолчанию» для компьютерной графики). Также распространён Adobe RGB, а при редактировании используется ProPhoto.

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

Числовое представление

RGB-цветовая модель, представленная в виде куба

Для большинства приложений значения координат r, g и b можно считать принадлежащими отрезку [0,1], что представляет пространство RGB в виде куба 1×1×1.

В компьютерах для представления каждой из координат представляются в виде одного октета, значения которого обозначаются для удобства целыми числами от 0 до 255 включительно, где 0 — минимальная, а 255 — максимальная интенсивность. В этом случае чаще используется гамма-компенсированое цветовое пространство sRGB, обычно с показателем 1,8 (Mac) или 2,2 (PC).

Вместе с тем, используются также 16-битный цвет (с диапазонами 0…65535 или 0…32768, в зависимости от конкретной реализации), а для изображений HDR — 32-битный цвет (в целых значения или в числах с плавающей запятой). В последнем случае возможны яркости «белее белого» и даже «отрицательные яркости», которые не выводятся на экран, но хранятся в памяти и учитываются при различной фильтрации.

В языке HTML используется запись вида «#rrggbb», называемая шестнадцатеричной: каждая координата записывается в виде трех шестнадцатеричных чисел («rr», «gg», «bb»), без пробелов (см. цвета HTML). Например, белый цвет кодируется строкой #FFFFFF.

COLORREF

COLORREF — стандартный тип для представления цветов в Win32. Используется для определения цвета в виде RGB. Размер — 4 байта. При определении какого-либо RGB цвета, значение переменной типа COLORREF можно представить в шестнадцатеричном виде так:

0x00bbggrr

rr, gg, bb — значение интенсивности соответственно красной, зелёной и синей составляющих цвета. Максимальное их значение — 0xFF.

Определить переменную типа COLORREF можно следующим образом:

 COLORREF C = RGB( r, g, b );

r, g и b — интенсивность (в диапазоне от 0 до 255) соответственно красной, зелёной и синей составляющих определяемого цвета C. То есть ярко-синий цвет может быть определён как (0,0,255), красный как (255,0,0), ярко-фиолетовый — (255,0,255), чёрный — (0,0,0), а белый — (255,255,255)

См. также

  • VGA-порт компьютера и монитора для передачи изображения часто обозначают как RGB IN, т.к. формат передачи сигнала имеет RGB-вид.

Примечания

  1. Синтез цвета // Фотокинотехника: Энциклопедия / Гл. ред. Е. А. Иофис. — М.: Советская энциклопедия, 1981. — 447 с.

Ссылки