logo
Лекция_Представление_информации_в_компьютере1

Цветовая модель rgb.

В модели RGB основными цветами являются красный, зеленый и синий. Данная модель используется в основном при отображении графических изображений на экране монитора, телевизора, сотового телефона и т. д. Смешением трех основных цветов синтезируются все остальные цвета, их условные яркости (интенсивности) задаются вещественными числами от 0 до 1 (значение 1 соответствует максимальной яркости соответствующего цвета, которую может изобразить графическое устройство). Модель RGB определяет пространство цветов в виде единичного куба с осями «яркость красной компоненты», «яркость зеленой компоненты» и «яркость синей компоненты».

Характерные особенности RGB-модели

У цветовой модели RGB есть физиологическое обоснование. Человеческий глаз содержит четыре типа зрительных рецепторов: «палочки» (рецепторы интенсивности) и

три типа «колбочек» (рецепторы цветовых оттенков). Колбочки каждого типа чувствительны к свету в своем узком диапазоне длин волн, для колбочек разных типов максимумы чувствительности приходятся на разные длины волн, диапазоны чувствительности частично перекрываются:

Тип колбочек

Диапазон длин волн

Максимум чувствительности

Красные

от 760 до 550 нм

-610 нм

Зеленые

от 650 до 450 нм

-550 нм

Синие

от 550 до 380 нм

-450 нм

Общий спектр видимого света

от 760 до 380 нм

555 нм (дневное зрение)

510 нм (ночное зрение)

Именно благодаря неравномерной спектральной чувствительности и перекрытию диапазонов чувствительности человеческий глаз способен различать огромное количество цветов (около 10 млн).

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

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

Наиболее простой способ добиться этого — перевести вещественные числа из интервала [0; 1) в интервал целых чисел от 0 до N - 1 путем умножения на целое число N, с последующим округлением. Фактически, интервал [0; 1) разбивается на N равных подинтервалов вида

Разбиению на подинтервалы подвергают каждую из цветовых осей. Количество подинтервалов на «красной», «зеленой» и «синей» осях (Nr, Ng , Nb) может быть различным, но чаще принимается, что Nr = Ng = Nb = N.

После квантования каждый цвет представляется триадой целых неотрицательных чисел (kr, kg, kb), 0 <= ki < Ni Числа Ni обычно выбирают равными степени двойки , а величину М, равную сумме mr + mg + тb, называют глубиной цвета или глубиной цветности.

Ниже приведена таблица наиболее распространенных видеорежимов с указанием количества отображаемых цветов

Видеорежим

Глубина цвета

Количество отображаемых цветов

256 цветов

8

28 = 256

High Color

16

216 = 65 536

True Color

24

224= 16 777 216

Пример. В современных компьютерах в видеорежиме TrueColor на хранение информации об одной цветовой компоненте используется 1 байт, для сохранения цвета точки — 3 байта: тr = тg = тb = 8, Nr = Ng = Nb = 28 = 256, Nr × Ng × Nb =28+8+8 = 16777216.

Глубины цветности 24 бита для мониторов вполне достаточно, чтобы создать видимость непрерывности шкалы цветовых оттенков. Особенности человеческого зрения таковы, что если на экране монитора изобразить две фигуры, цвета которых при глубине цвета 24 бита отличаются не более чем на 1 в каждой цветовой компоненте, то человек не сможет заметить разницу.

В таблице для стандарта TrueColor приведены двоичные значения уровней интенсивности некоторых цветов:

Название цвета

Интенсивность основных цветов

Красный

Зеленый

Синий

черный

00000000

00000000

00000000

красный

11111111

00000000

00000000

зеленый

00000000

11111111

00000000

синий

00000000

00000000

11111111

голубой

00000000

11111111

11111111

пурпурный

11111111

00000000

11111111

желтый

11111111

11111111

00000000

белый

11111111

11111111

11111111

Пример. В видеорежиме HighColor цвет каждой точки кодируется 16 битами. На глубину красного и синего цвета отводится 5 бит, на глубину зеленого — 6 бит: mr = mb = 5, mg = 6. Следовательно, шкала яркостей зеленого цвета содержит в два раза больше уровней, чем шкалы яркостей красного и синего цветов. Для экономии памяти биты цветовых компонент каждой точки записывают в два байта вместо трех.

Задача. Подсчитайте объем памяти, требуемый для сохранения изображения всего экрана для видеорежима с размером экрана 1024 х 768 пикселей и с глубиной цвета 24 бита.

Решение. Экран монитора представляет собой прямоугольный растр, поэтому суммарное количество пикселей равно 1024 × 768 = 786 432 пикселей. Для видеорежима с глубиной цвета 24 бита требуется 3 байта на каждый пиксель, так что общий объем требуемой памяти составит 1024 × 768 × 3 = 2 359 296 байт = = 2,25 Мбайт.

Для непосредственной цифровой записи 1 секунды цветного видеоизображения без звука (25 кадров размером 1024 × 768 пикселей) потребуется примерно 60 Мб (25 × 1024 × 768 × 3 = 58 982 400 байт). Для записи двухчасового фильма необходимо около 400 Гб.