Режим Indexed Color и глубина цвета
Глубина цвета – это еще один важнейший параметр растровых изображений. Сразу оговорим, что он тесно связан с архитектурой существующих компьютеров и исторически сложившимися стандартами. Глубина цвета выражается в битах и показывает, сколько бит памяти требуется для хранения одного пикселя изображения.
Компьютер имеет дело с цифровой информацией в двоичной системе счисления. Двоичный разряд может иметь два значения: единица или ноль (как вы знаете, десятичный разряд может принимать десять значений от нуля до девяти). Этот наименьшая элементарная информации называется битом. Восемь двоичных разрядов, восемь бит, образуют байт. Байт может принимать 28 = 256 значений (восемь десятичных разрядов могут принимать 108 = 100 000 000 значений). Почему байт составляют именно восемь бит? Да просто потому, что восемь разрядов имели первые микропроцессоры. Разрядность современных микропроцессоров для совместимости с их предшественниками тоже кратна восьми. Для больших значений используются "псевдодесятичные" приставки: 1024 байт =1 Кбайт, 1024 Кбайт=1Мбайт.
В памяти компьютера информация о цвете пикселей изображения тоже хранится в двоичном представлении. Поэтому для быстрой ее обработки пиксел кодируется одним или несколькими байтами. Единственное исключение составляют монохромные изображения. Для хранения информации о цвете пикселя такого изображения вполне достаточно одного бита, ведь пиксель может иметь всего два цвета. Таким образом, глубина цвета монохромных изображений составляет 1 бит. Зная, сколько памяти требуется для хранения одного пикселя изображения (то есть глубину цвета), легко рассчитать, сколько памяти займет все изображение. Например, изображение размером 100х100 пикселей займет 100 пикселей x 100 пикселов х 1 бит = 10 000 бит приблизительно 1.2 Кбайт. Объем памяти, занимаемый цветными изображениями, зависит от количества имеющихся в них каналов. Каждый канал является полутоновым, то есть кодируется одним байтом. Если каналов три, как в изображениях в модели RGB или LAB, то на один пиксел приходится 8 бит х 3 =24 бита.В модели CMYK четыре канала и глубина цвета равна 8 бит х 4 = 32 бита. Таким образом, память, занимаемая цветными изображениями, в три или четыре раза больше, чем для полутоновых изображений: 100 пикселей х 100 х 24 бит = 240 000 бит приблизительно 29.3 Кбайт или 100 х 100 х 32 бит = 320 000 бит = 39.1 Кбайт.
Говоря о глубине цвета для типов растровых изображений, мы имели в виду наиболее употребительные изображения с восьмибитными каналами. Adobe Photoshop допускает ограниченное редактирование изображений с 16 битами на канал (Выделение областей, Feather, Клонирующий штамп (Rubber Stamp), в общем, очень мало возможностей.) Нетрудно вычислить, что цветное изображение с восьмибитными каналами может содержать максимум 224=16.7 млн. цветов. С шестнадцатибитными каналами количество цветов увеличивается до 216x3 = 248= 281 млрд. Такое количество цветов имеет смысл использовать лишь в том случае, если ваш сканер поддерживает 48-битный цвет. Пока это под силу только очень дорогим профессиональным сканерам.
Для перевода из 8-ми битного цвета в 16-ти битный и наоборот предназначены одноименные команды из подменю Mode из подменю Image. (8 bits/channel и 16 bits/channel). Еще один тип изображений › индексированные изображения. Это один из первых способов представления цветных точечных изображений. Он широко применялся в те времена, когда компьютеры были не столь мощными, а видеоадаптеры, поддерживающие более 256 цветов, являлись роскошью. Индексированное изображение как раз и рассчитано на хранение не более чем 256 цветов. Цвета, использованные в индексированном изображении, могут быть произвольными, но их общее количество не должно превышать указанного. Какие именно цвета использованы в изображении, определяется его палитрой. Палитра индексированного изображения представляет собой нумерованный список цветов и хранится в файле вместе с изображением. Каждый байт индексированного изображения хранит номер цвета в палитре, а не значения RGB-компонентов цвета. В результате на один пиксель цветного индексированного изображения приходится не 24 бита, а всего 8.
Палитра индексированного изображения может иметь не только 256 цветов, но и меньшее их количество. Сокращение палитры дает возможность сократить и размер файла. Например, если палитра будет состоять не из 256, а из 64 цветов, то для кодирования одного пикселя потребуется только 6 бит, а не 8. В результате размер изображения уменьшится на четверть. Таким образом, глубина цвета индексированных изображений может принимать целые значения в диапазоне от 1 до 8. Компактность представления цветов в индексированных изображениях объясняет нынешнюю сферу их применения – Web-дизайн.
Индексированные изображения получают из полноцветных сокращением количества использованных цветов. Иными словами, изображение приводится к ограниченной палитре. Какие из цветов изображения попадут в палитру, определяется особыми алгоритмами или указывается непосредственно. Первый способ используют, когда необходимо достичь наилучшего приближения индексированного изображения к цветам оригинала. Ко второму прибегают, если хотят достичь одинакового воспроизведения цветов в разных программах или на разных компьютерах. Для перевода изображения в индексированное необходимо выбрать пункт Indexed Color из подпункта Mode меню Image. В ответ получите такое окно: