Представление цвета в компьютере. Цветовые модели
Каждый пиксель растрового изображения содержит информацию о цвете. Представление информации в компьютере основывается на двоичной системе счисления. Минимальный размер цветовой информации в пикселе - 1 бит, т.е. в простейшем случае пиксели на экране могут быть "включены" или "выключены", представляя собой белый и черный цвет. Количество оттенков, которые может воспроизводить отдельный пиксель определяется глубиной цвета (максимум - 32 бита), позволяющей показывать на экране монитора до 16,7 млн. цветовых оттенков.
К полноцветным относятся типы изображений с глубиной цвета не менее 24 бит, то есть каждый пиксель такого изображения кодируется как минимум 24 битами, что дает возможность отобразить не менее 16,7 миллиона оттенков. Поэтому иногда полноцветные типы изображения называютTrue Color (истинный цвет).
Рисунок 1.4 - Цветовая модель RGB |
Если мы работаем с черно-белыми изображениями, то цвет кодируется нулем или единицей. Никаких проблем в этом случае не возникает. Для несложных рисунков, содержащих 256 цветов или столько же градаций серого цвета, нетрудно пронумеровать все используемые цвета. Но, для изображений в истинном цвете, содержащих миллионы разных оттенков, простая нумерация не подходит. Для них разработаны несколько моделей представления цвета, помогающих однозначно определить любой оттенок. Цветовые модели позволяют с помощью математического аппарата описать определенные цветовые области спектра.
Цветовая модель (режим) представляет собой правило обозначения цветов пикселей документа. Так как компьютер использует для обозначений цветов числа, необходимо ввести некоторое правило преобразования этих чисел в отображаемые устройствами вывода цвета и наоборот. Таких правил может быть несколько, поэтому каждое из них получает свое название.
Наиболее распространенными цветовыми моделями являются:
· битовый - 2 цвета - черный и белый;
· cерый - 256 градаций серого;
· RGB - red, green, blue - красный, зеленый, синий;
· CMYK - Cyan, Magenta, Yellow, blacK - голубой, пурпурный, желтый, черный.
Разные режимы нужны для того, чтобы отобразить в файле особенности последующего вывода изображения на какое-либо устройство или сохранения в файле. Разные устройства вывода изображений могут работать по различным принципам, используя физические явления, не имеющие друг с другом практически ничего общего. Например, на экране монитора с электронно-лучевой трубкой (а также аналогичного телевизора) изображение строится при помощи засветки люминофора пучком электронов. При таком воздействии люминофор начинает излучать свет. В зависимости от состава люминофора, этот свет имеет ту или иную окраску. Для формирования полноцветного изображения используется люминофор со свечением трех цветов - красным, зеленым и синим. Поэтому такой метод формирования цвета называют RGB (Red, Green, Blue - Красный,Зеленый, Синий). Сами по себе зерна люминофора разных цветов позволяют получить только чистые цвета (чистый красный, чистый зеленый и чистый синий). Промежуточные оттенки получаются за счет того, что разноцветные зерна расположены близко друг к другу. При этом их изображения в глазу сливаются, а цвета образуют некоторый смешанный оттенок. Регулируя яркость зерен, можно регулировать получающийся смешанный тон. Например, при максимальной яркости всех трех типов зерен будут получен белый цвет, при отсутствии засветки - черный, а при промежуточных значениях - различные оттенки серого. Если же зерна одного цвета засветить не так, как остальные, то смешанный цвет не будет оттенком серого, а приобретет окраску. Такой способ формирования цвета напоминает освещение белого экрана в полной темноте разноцветными прожекторами. Свет от разных источников складывается, давая различные оттенки. Поэтому такое представление цвета (цветовую модель) называютаддитивной (суммирующей).
При выводе изображения на печать используются другие технологии. Это может быть, например, струйная печать или многокрасочная печать на типографской машине. В этом случае изображение на бумаге создается при помощи чернил разных цветов. Накладываясь на бумагу и друг на друга, чернила поглощают часть света, проходящего сквозь них и отражающегося от бумаги. Если чернила густые, то они сами отражают свет, но не весь. Таким образом, отраженный от картинки цвет приобретает ту или иную окраску, в зависимости от того, какие красители и в каких количествах были использованы при печати. Обычно при таком способе цветопередачи для получения промежуточных оттенков используются чернила четырех цветов: голубой, пурпурный, желтый и черный.
Такую цветовую модель называют CMYK - Cyan, Magenta, Yellow, Blасk(Голубой, Пурпурный, Желтый, Черный). Теоретически для получения любого из оттенков достаточно только голубого, желтого и пурпурного цветов.
Рисунок 1.5 - Цветовая модель CMYK |
Однако на практике крайне сложно получить их смешением чистый черный цвет или оттенки серого. Так как в цветовой модели CMYK оттенки образуются путем вычитания определенных составляющих из белого, ее называют субтрактивной (вычитающей). Кроме различных печатающих устройств, эта цветовая модель используется в фотопленке и фотобумаге. Там также содержатся слои, чувствительные к голубому, желтому и пурпурному свету.
В файлах изображений, сохраненных в режимах RGB и CMYK, для каждого пикселя записываются значения всех трех или четырех компонентов. Для вывода изображения на черно-белые (монохромные) устройства, а также для некоторых других целей лучше всего подходит изображение в режиме градаций серого (grayscale). В этом режиме для каждого пиксела записывается только одно значение - его яркость.
При печати изображений на некоторых принтерах, а также для получения определенных изобразительных эффектов используется режим Bitmap (Битовый). В этом режиме любая точка изображения может быть либо белой, либо черной. Существуют и другие цветовые режимы. Например, для записи изображений в форматах, ограничивающих допустимое число цветов (таких как GIF), эти изображения надо предварительно перевести в режим индексированных цветов. При этом составляется палитра, которая и используется при дальнейшей работе. Палитра (palette) - набор цветов, используемых в изображении или при отображении видеоданных. Палитру можно воспринимать как таблицу кодов цветов (обычно в виде RGB-троек байтов в модели RGB). Палитра устанавливает взаимосвязь между кодом цвета и его компонентами в выбранной цветовой модели. Палитра может принадлежать изображению, части изображения, операционной системе или видеокарте. При попытке использовать не входящий в палитру цвет он заменяется ближайшим цветом, занесенным в нее.