Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Теория_КГ / Кодирование цвета_КГ

.doc
Скачиваний:
45
Добавлен:
02.04.2015
Размер:
46.08 Кб
Скачать

Кодирование цвета. Палитра

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

Для модели RGB каждая из компонент может представляться числами, ограниченными некоторым диапазоном — например, дробными числами от 0 до 1 либо целыми числами от 0 до некоторого максимального значения. В настоящее время достаточно распространенным является формат True Color, в котором каждая компонента представлена в виде байта, что дает 256 градаций для каждой компоненты: R=0...255, G = 0...255, B = 0...255. Количество цветов составляет 256*256*256= 16.7 млн (2 ). Такой способ кодирования цветов можно назвать компонентным. В компьютере коды изображений Тгue Со1ог представляются в виде троек байтов либо упаковываются в длинное целое (четырехбайтное) – 32 бита (так, например, сделано в API WINDOWS)

С = 00000000 bbbbbbbb gggggggg rrrrrrrr.

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

Кроме того, некоторое изображение само по себе может использовать ограниченное количество цветов. Например, для черчения может быть достаточно двух цветов, для человеческого лица важны оттенки розового, желтого, пурпурного, красного, зеленого; а для неба— оттенки голубого и серого. В этих случаях использование полноцветного кодирования цвета является избыточным.

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

Например, стандартная палитра дисплейных 16-цветных видеорежимов приведена в таблице 1.

Таблица 1.

Код цвета

R

G

В

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

0

0

0

0

Черный

1

128

0

0

Темно-красный

2

0

128

0

Зеленый

3

128

128

0

Коричнево-зеленый

4

0

0

128

Темно-синий

5

128

0

128

Темно-пурпурный

6

0

128

128

Сине-зеленый

7

128

128

128

Серый 50%

8

192

192

192

Серый 25%

9

255

0

0

Красный

Код цвета

К

С

В

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

10

0

255

0

Ярко-зеленый

11

255

255

0

Желтый

12

0

0

255

Синий

13

255

0

255

Пурпурный

14

0

255

255

Голубой

15

255

255

255

Белый

Недостатком такой палитры можно считать отсутствие одного из важных цветов — оранжевого.

Существуют также иные стандартные палитры, на­пример. 256-цветная для VGA. Компьютерные видеосистемы обычно предос­тавляют возможность программисту установить собственную палитру. Каждый цвет изображения, использующего палитру, кодируется индексом, который будет определять номер строки в таблице палитры. Поэтому такой способ кодирования цвета называют индексным.