Графическая информация и компьютер

Компьютерные цвета

Цветное изображение на экране монитора также получается смешиванием красок. Каждый видеопиксель (далее будем употреблять краткое название — пиксель) состоит из трех крупинок люминофора — красного, зеленого и синего цветов. Получается, что механизм цветопередачи монитора практически повторяет устройство человеческого глаза.

Сетку из горизонтальных и вертикальных столбцов, которыю на экране образуют пиксели, называют графическая сетка, или растр.

Размер графической сетки MxN определяет разрешающую способность экрана, от которой зависит качество изображения.

Система кодирования цвета при помощи трех составляющих — красной, зеленой и синей — носит название RGB (от Red — красный, Green — зеленый, Blue — синий). Метод кодирования цвета RGB, как правило применяется при кодировании изображений, выводимых на экран цветного дисплея.

Пусть каждый из трех образующих цветов либо участвует в образовании цвета, либо нет. Тогда для кодирования интенсивности красного, зеленого или синего цветов достаточно двух значений: 0 — цвета нет, 1 — цвет есть. При таком кодировании получается палитра из 8 цветов:

Цвет R (красный) G (зелёный) B (синий) Код
        000
        001
        010
        011
        100
        101
        110
        111

При палитре в восемь цветов каждый цвет можно закодировать кодом длиной в три бита. То есть один пиксель занимает три бита. Если палитра состоит из двух цветов (например, черный и белый), то на каждый пиксель приходится 1 бит (черный — 0, белый — 1). Для кодирования одного пикселя при палитре, состоящей из четырех цветов, достаточно 2 битов. И так далее.

Связь между количеством различных цветов — K (размером палитры) и количеством битов для их кодировки (битовой глубиной цвета) b выражается формулой: K = 2b.

По этой формуле легко посчитать, сколько бит требуется для хранения K-цветного изображения. Например, для хранения 256-цветного изображения на один пиксель требуется 256 = 2b, b = 8 бит.

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

Задача: Определить размер видеопамяти, необходимый для 8-цветного монитора с разрешением 640 x 480.

Для этого нужно знать, сколько бит потребуется для каждого пикселя и количество пикселей на экране.

По формуле K = 2b имеем K = 8, отсюда b = 3. То есть каждый пиксель восьмицветной палитры занимает 3 бита.

Монитор с разрешением 640 x 480 содежит 640 x 480 = 307200 пикселей.

Получается, что для такого монитора нужна видеопамять V = 3 x 307200 = 921600 бит = 115200 байт.

Задача: Подсчитать необходимый размер видеопамяти для разрешения 640 x 480, если каждая RGB-компонента имеет 6 градаций интенсивности.

Как и в предыдущей задаче нам нужно знать, сколько бит потребуется для каждого пикселя и количество пикселей на экране. Но теперь не известно, сколько цветов содержит палитра. Зато сказано, что каждая RGB-компонента имеет 6 градаций интенсивности. Что это значит?

Вспомним, что такое метод кодирования цвета RGB.

Каждый пиксель состоит из трех RGB-компонент. Определим, сколько бит приходится на одну RGB-компоненту, если каждая из них по условию задачи может принимать 6 различных значений.

Для этого воспользуемся знакомой нам формулой K = 2b. K = 6, откуда b = 3 (3 бит достаточно).

Теперь можем определить сколько бит приходится на один пиксель. Каждый пиксель состоит из трех RGB-компонент. На каждую приходится по 3 бита. Тогда один пиксель занимает 3 x 3 = 9 бит.

Получаем, что для монитора с разрешением 640 x 480 нужна видеопамять V = 9 x 640 x 480 = 2764800 бит = 345600 байт.



Вопросы:
  1. Что собой представляет видеопиксель?
  2. Что такое растр?
  3. Система кодирования RGB.
  4. Формула, отражающая зависимость размера палитры от битовой глубины цвета.
  5. Сколько бит потребуется для хранения 8-цветоного изображения?
  6. Определить размер видеопамяти, необходимый для черно-белого монитора с разрешением 640 x 480.
  7. Если каждая RGB-компонента принимает по 2 различных значения, каков будет размер палитры?
  8. Определить размер видеопамяти для монитора с разрешением 640 x 480, если каждая RGB-компонента имеет 4 градации интенсивности.

© В. С. Власова  karabash-school@yandex.ru


Hosted by uCoz