Цветовая модель RGB. Кодирование цвета
Интенсивность каждой из перечисленных составляющих RGB может варьировать от 0 до 255, образуя разные цвета и, обеспечивая доступ ко всем 256*256*256=16777216 оттенков. Все цвета, входящие в данную цветовую модель, можно представить в виде куба. Если принять макс. излучение каждого люминофора за единицу и отложить их по осям X, Y и Z в декартовой системе координат, то получится графическая интерпретация рассматриваемого цветового пространства. Причем в точке, где все величины равны нулю, будет – черный цвет, там же, где все они будут принимать максимальное значение, — белый (рис. 4). Рис. 4.Цветовой куб моделиRGB Главная диагональ такого куба, проходящая от черного (0, 0, 0) к белому (1, 1, 1) цвету, называется ахроматической осью или шкалой яркости. На ней лежат цвета с одинаковым количеством каждого компонента, поэтому они являются оттенками серого. Модель RGB называется аддитивной. При увеличении яркости отдельных составляющих увеличивается и яркость результирующего цвета. При смешении всех трех цветов с максимальной интенсивностью получается белый цвет (рис. 4), при отсутствии всех цветов – черный. Каждому цвету можно сопоставить код, который содержит значения яркости трех составляющих. Используются десятичное и шестнадцатеричное представления кода. Рис. 5. Комбинации базовых цветов модели RGB Десятичное представление — это тройка десятичных чисел, разделенных запятыми. Первое число соответствует яркости красной составляющей, второе — зеленой, а третье — синей. Код цвета в шестнадцатеричном представлении имеет вид 0хХХХХХХ. Префикс 0х указывает на шестнадцатеричное число. За префиксом следуют шесть шестнадцатеричных цифр (0, 1, 2,...,9, А, В, С, D, E, F). Первые две цифры — шестнадцатеричное число, представляющее яркость красной составляющей, вторая и третья пары соответствуют яркости зеленой и синей составляющих. Если все составляющие имеют максимальную яркость (255,255,255 — в десятичном представлении; 0xFFFFFF — в шестнадцатеричном представлении), то получается белый цвет. Минимальная яркость (0,0,0 или 0x000000) соответствует черному цвету. Смешение красного, зеленого и синего цветов с различными, но одинаковыми яркостями дает шкалу из 256 оттенков (градаций) серого цвета — от черного до белого. При наложении отдельных каналов результат получается не совсем такой, как если бы смешивались краски. Базовые цвета смешиваются следующим образом: Ø Красный и зеленый — при максимальной яркости дают желтый цвет. Уменьшение яркости красного изменяет результирующий цвет в сторону зеленоватого, а уменьшение яркости зеленого делает цвет оранжевым. Ø Зеленый и синий — при максимальной яркости дают голубой. Изменяя пропорцию яркостей можно получить 65 000 оттенков голубого, от небесного до темно-синего. Ø Красный и синий — при максимальной яркости дают пурпурный или фиолетовый. Уменьшение яркости синего сдвигает цвет в сторону розового, а уменьшение красного — в сторону пурпурного. Так как яркость каждой из базовых составляющих цвета может принимать только 256 целочисленных значений, каждое значение можно представить 8-разрядным двоичным числом (последовательностью из 8 нулей и единиц, 256 = 28) или, одним байтом. Каждый разряд в байте называется битом (двоичной единицей или нулем). Таким образом, в модели RGB информация о каждом цвете требует 3 байта (по одному байту на каждый базовый цвет) или 24 бита памяти для хранения. Поскольку все оттенки серого цвета образуются смешением трех составляющих одинаковой яркости, то для представления любого из 256 оттенков серого требуется лишь 1 байт.
|