Как закодировать цвет в виде чисел. Кодирование цветовой информации
Любой цвет является композицией трех основных цветов – красного (Red), зеленого (Green) и синего (Blue). В зависимости от того, какой «вес» имеет каждый из этих цветов, получается все разнообразие цветов окружающего нас мира. В цифровых компьютерах «вес» каждого цвета должен быть представлен некоторой дискретной величиной. В простейшем случае для кодирования каждого из основных цветов достаточно по одному биту (1 = цвет включен, 0 = цвет выключен), называемых битами R , G и В . Из трех основных цветов с двоичным кодированием получается 8 цветовых комбинаций, показанных на рис. 5.2. Когда все цвета выключены, получается черный цвет. Если ввести еще один бит, который управляет яркостью или интенсивностью (Intensity), то получится 4–битная комбинация, называемая IRGB–цветом. Управление интенсивностью дает еще 8 цветов, поэтому на экране можно получить 16 цветов, кодирование и названия которых приведены в табл. 5.2.
Таблица 5.2 Базовое кодирование цветов
|
Название |
Компоненты |
|||||
|
Зеленый + синий |
||||||
|
Вишневый |
Красный + синий |
|||||
|
Коричневый |
Красный + зеленый |
|||||
|
Красный + зеленый + синий |
||||||
|
Ярко–синий |
||||||
|
Ярко–зеленый |
I + зеленый |
|||||
|
Ярко–голубой |
I + зеленый + синий |
|||||
|
Ярко–красный |
I + красный |
|||||
|
Ярко вишневый |
I + красный + синий |
|||||
|
I + красный + зеленый |
||||||
|
Ярко–белый |
I + красный + зеленый + синий |
Восприятие цветов зависит от индивидуальных особенностей человека, а также аппаратной настройки монитора, поэтому в литературе вишневый (magenta) цвет назы
вается пурпурным, малиновым и сиреневым, коричневый – золотистым, голубой – бирюзовым и даже циановым, ярко–красный – розовым и т.д.
Каждый из четырех цветовых элементов IRGB в конце концов связан с формированием активного светового излучения. Чем больше элементов находится в состоянии 1, тем ярче будет свечение, но одновременно тем более «размытым» будет восприниматься цвет. Для глаза каждый чистый основной цвет R, G или В оказывается визуально более воспринимаемым, чем любой из смешанных цветов и даже чем «яркий» вариант этого же цвета.
В 16–цветном режиме можно пользоваться всеми цветами с номерами 0 – 15, приведенными в табл. 5.2. В 8–цветном режиме нет управления интенсивностью, поэтому здесь применяются цвета с номерами 0 – 7. В 4–цветном режиме можно выбрать любые 4 цвета из 16; выбранные цвета образуют так называемую палитру. Наконец, в 2–цветном режиме разрешены только цвета 0 и 7 – черный и обычный белый.
В адаптере EGA имеются режимы, в которых для кодирования каждого из основных цветов отведено по два бита, т.е. полный цвет кодируется шестью битами RrGgBb (00 = цвет выключен, 01 = слабый цвет, 10 = обычный, 11 = яркий). Такое кодирование расширяет общее число цветов до 64. Тем не менее одновременно на экране может наблюдаться только 16 цветов, так как в видеобуфере пикселы кодируются 4–битными значениями.
В адаптере VGA введены режимы, в которых для кодирования каждого из основных цветов отведено по 6 бит, т.е. возможное число цветов возросло до огромной величины 256 к. Однако одновременно на экране наблюдается только 256 цветов, так как в режиме с максимальной «цветностью» каждый пиксел кодируется в видеобуфере 8 битами.
В адаптере SVGA каждый цвет кодируется 16 битами (High Color), 24 битами или 32 битами (True Color), что составляет 16,7 млн. цветов.
В чем разница между 24–разрядным и 32–разрядным кодированием цвета?
Прежде всего – в том, что 24–разрядное представление неудобно с точки зрения обработки изображения: каждая точка описывается тремя байтами, а умножение/деление на три – менее эффективные операции, чем умножение/деление на степени двойки. Поэтому оно используется только при необходимости экономить видеопамять и существенно замедляет вывод изображения. При наличии достаточного количества видеопамяти используется 32–разрядное представление, в котором младшие три байта описывают цвет точки, а старший байт либо управляет дополнительными параметрами (например, информацией о взаимном перекрывании объектов или глубине в трехмерном изображении), либо не используется.
Достаточно ли 16,7 млн. цветов для любого изображения?
Хотя такого количества различных цветов и достаточно для кодирования большинства изображений, используемая в настоящее время система кодирования имеет принципиальный недостаток – количество градаций каждого из основных цветов не может превышать 256. Например, если заполнить экран одним из основных цветов с плавно меняющейся яркостью, то нетрудно заметить границы между дискретными уровнями. Это не позволяет точно передавать изображения, содержащие большие области плавного изменения цветов. Однако при кодировании изображений, в которых подобных областей нет, используемая система дает вполне удовлетворительное качество передачи цвета.
Цвет каждого пикселя растрового изображения запоминается с помощью комбинации битов. Чем больше битов используется для этого, тем большее количество оттенков цветов для каждого пикселя можно получить.
Суммарное количество двоичных разрядов (бит), используемых для представления информации о цвете одного пикселя, называется битовой глубиной цвета (глубиной цвета) , которая измеряется в битах на пиксель (bpp).
В монохромном изображении пикселы могут быть любого из оттенков, составленных смешиванием двух базовых цветов. Если в качестве базовых цветов используются черный и белый, то говорят о шкале градаций серого цвета.
Цветовая разрешающая способность монохромного изображения равна 8 bpp. (2 8 =256), т.е. для описания цвета пикселя монохромного изображения используется один байт. Добавление одного бита удваивает количество значений, которое можно закодировать, т.е. байтом можно закодировать 256 цветов, а тремя байтами (24 бита) – 16777216 различных цветов. О 24-битовых изображениях часто говорят как об изображениях с естественными цветами (True Color).
Цветовая модель – это способ описания цвета в виде совокупности числовых параметров.
Цветовой охват модели – это вся совокупность цветов, которые могут быть воспроизведены с использованием той или иной цветовой модели.
По принципу действия цветовые модели делятся на три класса:
1. аддитивные (RGB) , основанные на сложении цветов
2. субтрактивные (CMY, CMYK) , основу которых составляет операция вычитания цветов
3. перцепционные или интуитивные (HSB, HLS, Lab) , базирующиеся на восприятии.
Цветовая модель RGB используется при описании цветов, получаемых смешением световых лучей. Ее составляющими являются три базовых цвета: Red (красный), Green (зеленый) и Blue (синий). Все остальные цвета в этой модели образуются за счет смешения базовых цветов в различных пропорциях. Каждый из трех базовых цветов может варьироваться в пределах от 0 до 255, образовывая разные цвета и обеспечивая, таким образом, доступ ко всем другим цветам. Для их хранения необходимо 3 байта – 24 бита (цветовая разрешающая способность аддитивной модели составляет 24 bpp).
Каждому цвету RGB-модели можно сопоставить код, который содержит яркости его трех составляющих. Для записи кода используется десятичное (тройка десятичных чисел, разделенных запятой) или шестнадцатеричное (#XXXXXX; # – признак шестнадцатеричного числа, далее каждые две цифры – шестнадцатеричное число яркости каждой составляющей) представление кода. Например, код желтого цвета можно записать как 255,255,0 или #FFFF00.
На экране монитора RGB схема – это свечение трех зерен триады люминофора (красного, зеленого и синего). Для получения белого цвета необходимо, чтобы ярко светились все три зерна триады – красное, зеленое и синее (R:255/G:255/B:255). Отсутствие свечения дает черный свет (R:0/G:0/B:0).
При попарном свечении при максимальной яркости можно получить три цвета: пурпурный (magenta) – светятся красный и синий; голубой (cyan) – синий и зеленый и желтый (yellow) – красный и зеленый, которые составляют базовую основу субтрактивной моделиCMYK/CMY.
Цветовая модель CMYK / CMY состоит из трех базовых цветов: Cyan – голубой, Magenta – пурпурный и Yellow – желтый. Каждый из трех параметров модели соответствует процентному содержанию в пикселе напечатанного на бумаге точечного изображения соответствующей ему базовой краски. При смешении максимально допустимых моделью количеств всех трех компонентов должен получаться черный цвет, а при отсутствии красок – белый цвет. Однако смешение этих цветов в полиграфии не дает чистого черного цвета, поэтому в триаду цветов добавляют черный (blacK) цвет.
CMYK – основная цветовая модель для отраженного света. Каждый из базовых цветов CMYK получается вычитанием из белого цвета одного из базовых цветов модели RGB.
Четыре параметра модели могут принимать значения от 0 до 100. Для хранения каждого числа отводится 1 байт (8 бит). Цветовая разрешающая способность модели равна 32 bpp.
При смешивании отдельных цветовых составляющих модели CMYK при максимальной яркости можно получить следующие результаты:
Голубой + Пурпурный = Синий с оттенком фиолетового, который можно усилить, изменив пропорции смешиваемых цветов.
Пурпурный + Желтый = Красный. Уменьшение яркости пурпурного дает оранжевый, а уменьшение яркости желтого – розовый.
Желтый + Голубой = Зеленый. Уменьшение яркости желтого дает изумрудный, а уменьшение яркости голубого – салатовый.
Цветовые красители имеют худшие характеристики по сравнению с люминофором. Поэтому цветовая модель CMYK имеет более узкий цветовой диапазон по сравнению с RGB-моделью.
Преобразование цветов из системы RGB в систему CMYK не всегда возможно. Поэтому, цвета, отображаемые на экране монитора, никогда нельзя точно повторить при печати. Однако, многие программы позволяют работать непосредственно в цветах CMYK.
Для устранения несоответствий цветовых диапазонов RGB- и CMYK-моделей существуют три направления:
1. Выявление и коррекция несоответствующих цветов непосредственно в процессе редактирования:
§ редактирование изображения в формате CMYK-модели;
§ использование CMYK-ориентированных палитр;
§ средства индикации, имеющиеся в программах, для получения информации о наличии в изображении цветов, не поддерживаемых моделью CMYK.
2. Расширение цветового пространства CMYK-модели. Переход от 4-цветной к 6- и 7-цветной моделям:
§ системы PANTONE HEXACHROME Colors – к 4 цветам модели CMYK добавлены зеленый и оранжевый (CMYKOG);
§ использование цветовой модели HiFi Color 3000 – всего 7 цветов, 4 цвета CMYK-модели и 3 цвета RGB-модели.
§ использование цветовой модели CMYK + Special – дополнительно включает в себя четыре цвета.
§ использование плашечных цветов.
3. Использование системы управления цветом – CMS (Color Management Systems).
Плашечные цвета – это цвета, получающиеся путем смешивания из исходных красок до печатного процесса, а не смешиванием четырёх (CMYK) или шести (CMYKOG) красок при печати. Их можно получить от различных производителей, но в повседневной практике печатники чаще всего самостоятельно готовят краску, используя таблицы, полученные от производителя краски.
Плашечные цвета позволяют печатать специальные цвета, которые нельзя получить смешиванием обычных чернил CMYK. Самый типичный пример – цвета вне охвата (перенасыщенные синие и оранжевые), «металлики» (золото, серебро, медь и т.д.), флуоресцентные краски и т.п.
Существует несколько промышленных стандартов плашечных цветов, некоторые из них используются только в определённых частях света. Наиболее распространённый стандарт разработан в компании Pantone.
Палитра Pantone – это набор цветов, каждому из которых присвоено определенное имя. Компания Pantone выпускает цветовые каталоги, по которым полиграфисты и производят выбор красок для каждого тиража.
Цветовая модель HSB основана на трех параметрах: H (Hue) – оттенок или тон; S (Saturation) – насыщенность и B (Brightness) – яркость.
Цветовой тон – свет с доминирующей длиной волны (например, свет с доминирующей длиной волны 450 нм ассоциируется с синим цветом).
Насыщенность характеризует чистоту цвета (нулевая – серый цвет, максимальная – наиболее яркий вариант данного цвета).
Яркость понимается как степень освещенности. При нулевой яркости цвет становиться черным. Максимальная яркость при максимальной насыщенности дают наиболее выразительный вариант данного цвета.
Графически модель HSB можно представить в виде кольца (рис.6), вдоль которого располагаются оттенки цветов. На внешнем круге находятся оттенки цветов (параметр Н измеряется в градусах от 0 до 360), каждому спектральному цвету соответствует свой градус, то есть всего насчитывается 360 вариантов (красный – 0, желтый – 60, зеленый – 120 градусов и т.д.).
Рис.6. Графическое представление цветовой модели HSB
Чем ближе к центру круга располагается цвет, тем меньше его насыщенность (S измеряется в процентах).
Яркость отображается на линейке, перпендикулярной плоскости цветового круга (В измеряется в процентах). Все цвета на внешнем круге имеют максимальную яркость.
Модель HSB согласуется с восприятием цвета человеком и считается самой удобной в подборе цвета для пользователя. Однако она является абстрактной, поскольку не существует технических средств для непосредственного измерения цветового тона и насыщенности. Модель HSB не образует цветовых каналов в документе (сохранить документ в этой цветовой модели нельзя). Поэтому, к достоинствам цветовой модели HSB относят аппаратную независимость и простой и интуитивно понятный механизм управления цветом. А к недостаткам – ограниченное цветовое пространство и неудобство визуального восприятия компоненты «яркость» (например, оттенки, имеющие равные значения параметра «яркость» (к примеру, желтый и красный), визуально воспринимаются разными по яркости).
Цветовая модель HLS основана на трех параметрах: H (Hue) – оттенок или тон, S (Saturation) – насыщенность и L (Lightness) – освещенность.
Освещенность – параметр цветовой модели, позволяющий визуально сравнивать степень яркости цветового тона. Оттенки с равными значениями светлоты выглядят одинаково яркими. Уменьшение освещенности приближает цвет к черному, а увеличение – к белому. Чистый спектральный цвет получается при освещенности 50%.
Данная модель используется в некоторых графических редакторах, например в Macromedia FreeHand.
Цветовая модель Lab основана на трех параметрах:
L (Luminosity) – яркость (освещенность) – осуществляет контроль за яркостью цветов, образованных двумя цветовыми каналами
цветовой канал a – соотношение зеленой и красной составляющих цвета – содержит цвета от темно-зеленого через серый до ярко-розового
цветовой канал b – соотношение синей и желтой составляющих – содержит цвета от светло-синего через серый до ярко-желтого
Модель Lab обладает самым большим цветовым охватом, в ней можно представить практически все природные цвета, которые способен воспринять человек.
Графическое изображение модели Lab представлено на рис.7.
![]()
Рис.7. Графическое представление цветовой модели Lab
Lab – аппаратно-независимая цветовая модель. Она определяет цвета без учета особенностей технологии цветовоспроизведения (на мониторе, на принтере). Lab используется в качестве промежуточной цветовой модели (ее цветовой диапазон покрывает диапазоны RGB и CMYK). Например, PhotoShop использует Lab при переходе от RGB к CMYK в качестве промежуточного этапа.
Цветовой охват моделей RGB, CMYK и Lab можно изобразить следующим образом:

Рис.8. Схематическое изображение цветового охвата моделей RGB, CMYK и Lab
Объясняется, что один байт позволяет закодировать 256 различных значений и эта кодировка будет однозначно восприниматься компьютером.
В число этих значений входят, как мы помним из этой статьи, русские и английские буквы (как заглавные, так и прописные), знаки препинания и специальные символы.
Давайте теперь посмотрим с точки зрения компьютерной грамотности, как обстоит дело с кодированием цвета.
Понятно, что если использовать один байт, то можно закодировать 256 различных цветов. Для рисованных изображений таких как, например, в мультфильмах «Ну, погоди!», «Карлсон, который живет на крыше» этого вполне хватит. Но маловато будет для качественных изображений живой природы и им подобных. Человеческий глаз вполне может различать десятки миллионов цветовых оттенков.
Поэтому одного байта для кодирования цвета явно недостаточно. Возьмем два байта. Тогда получится, что двумя байтами можно закодировать 256×256=65536 различных цветов. Это ближе к тому, что мы видим на фотографиях и в журналах, но до таких цветов, как в живой природе, еще далеко.
Теперь давайте попробуем для кодирования цвета одной точки взять 3 байта (то есть 24 бита). Тогда количество возможных цветов увеличится еще: 256x256x256=16.777.216 (примерно 16,5 миллионов). Результат получается по качеству, сравнимый с живой природой.
Любой цвет можно представить в виде комбинации трех основных цветов: красного, зеленого и синего (цветовые составляющие). Способ разделения цвета на составляющие компоненты называется цветовой моделью. Ниже мы рассмотрим две цветовых модели: RGB и CMYK.
Цветовая модель RGB
При кодировании цвета точки с помощью трех байтов получается, что первый байт является красной составляющей, второй байт – зеленой, а третий – синей составляющей. Чем больше значение байта цветовой составляющей (в пределах от 0 до 255), тем ярче будет цвет.
Белый цвет. Точка белого цвета имеет все цветовые составляющие, и они имеют полную яркость: R (red – красный) = 255, G (green зеленый) = 255, B (blue – синий) = 255. Такая кодировка сокращенно называется по первым буквам спектра – RGB . Красный, синий и зеленый цвета удобны при воспроизведении цветов на мониторах компьютеров. Они устроены таким образом, что воспроизводят цвета путем «перемешивания» именно этих составляющих.

Цветовая модель CMYK
Несколько иначе кодируются цвета при распечатке картинок и текстов на цветном принтере. В принтерах технологически удобнее использовать другие цветовые составляющие. Это – составляющие, которые получаются при смешении красного с синим (лиловый), красного с зеленым (желтый) и синего с зеленым (голубой).
Таким образом, в цветных принтерах для воспроизводства всех 16 млн. цветов применяются 3 цветных картриджа: голубой – C yan, лиловый – M agenta и желтый – Y ellow. Для печати всех оттенков серого цвета часто применяется также черный (Black) картридж, в таких принтерах число картриджей составляет 4. Такая цветовая модель называется CMYK . Чтобы Black не путать с Blue из модели RGB, из слова Black берется последняя буква, входящая в название CMYK тоже последней.
Соответственно, при печати цветных изображений и текстов цвета перекодируются из кодировки «красный-зеленый-синий» в кодировку «голубой-магента-желтый». Эти операции выполняют драйверы (системные программы), обслуживающие цветные принтеры, а также некоторые прикладные профессиональные программы.
Следует отметить, что при нарушениях в настройках указанных драйверов или прикладных программ цвета при печати могут отличаться от цветов, которые мы видим на экране монитора. Это исправляется путем включения автоматических настроек или путем тщательной ручной настройки драйверов.
Практическое задание описано в статье .
P.S. Статья закончилась, но можно еще прочитать:
P.P.S.
Чтобы подписаться на получение новых статей
, которых еще нет на блоге:
1) Введите Ваш e-mail адрес в эту форму.
Термин цветовое кодирование известен уже очень и очень давно тем, кто хоть немного общается с дизайном. По факту цветовое кодирование
- это один из видов представление информации, основанный на сопоставлении одного цвета одному или нескольким предметам, терминам или формам. Цветовое кодирование применяется тогда, когда представляемой информации оказывается слишком много, а ее еще нужно показать на таймлайне (изменение во времени) или же стандартные средства обозначения предмета (символьно) недействительны. Именно в таких случаях применяется цветовое кодирование - чтобы глаз мог без труда различать только необходимую информацию, которая интересует пользователя в конкретный момент.
История
Самые первые эксперименты по цветовому кодированию были проведены при составлении старинных топографических карт, где оттенки зеленого означали различные высоты равнин, а оттенки коричневого - горы.
У большинства в школе, наверняка, была география и все прекрасно понимают о чем идет речь:)
Применение в инфографике
Естественно, после карт цветовое кодирование начало применяться во многих других областях, где требовалось как-то обозначать предметы или выделять важную информацию. Одной из активных областей применения цветового кодирования - инфографика, но не во всех примерах инфографики можно его встретить. Разберем несколько вариантов применения цветового кодирования.

Основная проблема - это цвет. Сочетания ярко-красного и ярко-синего могут спокойно делать только ученые или исследователи, поэтому я такие сочетания и такие цвета так и назваю - «научные цвета»:) Этот термин как нельзя точно определяет использованные в этом примере цвета. Однако, если не обращать внимания на кислотные красные точки, а сосредоточиться именно на представлении информации, то можно заметить неплохую картину, которую создал автор: крупный, привлекающий внимание заголовок, из которого сразу же становится понятно назначение цветов на карте. Такие заголовки выполняют сразу несколько функций: непосредственно сам заголовок + легенда, а т.к. кроме цветов на этой карте больше ничего непонятного быть не может, то решение очень удачное.
Основные правила использования
Основные правила очень просты:

Будущее цветового кодирования
В том, что этот термин и его применение никогда никуда не денутся (в обозримом будущем) я точно уверен. Сейчас вокруг появляется все большая и большая необходимость визуализировать большие массивы данных на небольших носителях информации: газетные страницы, буклеты и тд… Чем больше информации, тем ее сложнее воспринимать, структурировать и вообще понимать. Именно поэтому мы будем все чаще и чаще сталкиваться с различными проявляниями цветового кодирования
Кодирование цвета. Палитра
Кодирование цвета
Для того чтобы компьютер имел возможность работать с цветными изображениями, необходимо представлять цвета в виде чисел - кодировать цвет. Способ кодирования зависит от цветовой модели и формата числовых данных в компьютере. Для модели RGB каждая из компонент может представляться числами, ограниченными некоторым диапазоном, например дробными числами от нуля до единицы либо целыми числами от нуля до некоторого максимального значения. Наиболее распространенной схемой представления цветов для видеоустройств является так называемое RGB-представление, в котором любой цвет представляется как сумма трех основных цветов – красного, зеленого, синего – с заданными интенсивностями. Все возможное пространство цветов представляет собой единичный куб, и каждый цвет определяется тройкой чисел (r, g, b) – (red, green, blue). Например, желтый цвет задается как (1, 1, 0), а малиновый – как (1, 0, 1), белому цвету соответствует набор (1, 1, 1), а черному – (0, 0, 0). Обычно под хранение каждого из компонентов цвета отводится фиксированное число n бит памяти. Поэтому считается, что допустимый диапазон значений для компонент цвета не , а . Практически любой видеоадаптер способен отобразить значительно большее количество цветов, чем то, которое определяется размером видеопамяти, отводимой под один пиксел. Для использования этой возможности вводится понятие палитры. Палитра – массив, в котором каждому возможному значению пиксела ставится в соответствие значение цвета (r, g, b). Размер палитры и ее организация зависят от типа используемого видеоадаптера. Наиболее простой является организация палитры на EGA-адаптере . Под каждый из 16 возможных логических цветов (значений пиксела) отводится 6 бит, по 2 бита на каждый цветовой компонент. При этом цвет в палитре задается байтом вида 00rgbRGB, где r,g,b,R,G,B могут принимать значение 0 или 1. Таким образом, для каждого из 16 логических цветов можно задать любой из 64 возможных физических цветов. ^ 16-цветная стандартная палитра для видеорежимов EGA, VGA. Реализация палитры для 16-цветных режимов адаптеров VGA намного сложнее. Помимо поддержки палитры адаптера EGA, видеоадаптер дополнительно содержит 256 специальных DAC-регистров, где для каждого цвета хранится его 18-битовое представление (по 6 бит на каждый компонент). При этом с исходным логическим номером цвета с использованием 6-битовых регистров палитры EGA сопоставляется, как и раньше, значение от 0 до 63, но оно уже является не RGB-разложением цвета, а номером DAC-регистра, содержащего физический цвет. ^ 256-цветная для VGA . Для 256-VGA значение пиксела непосредственно используется для индексации массива DAC-регистров. В настоящее время достаточно распространенным является формат True Color, в котором каждый компонент представлен в виде байта, что дает 256 градаций яркости для каждого компонента: R=0…255, G=0…255, B=0…255. Количество цветов составляет 256х256х256=16.7 млн (2 24). Такой способ кодирования можно назвать компонентным . В компьютере коды изображений True Color представляются в виде троек байтов, либо упаковываются в длинное целое (четырехбайтное) - 32 бита (так, например, сделано в API Windows): C = 00000000 bbbbbbbb gggggggg rrrrrrrr. ^
Индексные палитры
При работе с изображениями в системах компьютерной графики часто приходится искать компромисс между качеством изображения (требуется как можно больше цветов) и ресурсами, необходимыми для хранения и воспроизведения изображения, исчисляемыми, например, объемом памяти (надо уменьшать количество байтов на пиксел). Кроме того, некоторое изображение само по себе может использовать ограниченное количество цветов. Например, для черчения может быть достаточно двух цветов, для человеческого лица важны оттенки розового, желтого, пурпурного, красного, зеленого, а для неба – оттенки голубого и серого. В этих случаях использование полноцветного кодирования цвета является избыточным. При ограничении количества цветов используют палитру, предоставляющую набор цветов, важных для данного изображения. Палитру можно воспринимать как таблицу цветов. Палитра устанавливает взаимосвязь между кодом цвета и его компонентами в выбранной цветовой модели. Компьютерные видеосистемы обычно предоставляют возможность программисту установить собственную цветовую палитру. Каждый цветовой оттенок представляется одним числом, причем это число выражает не цвет пиксела, а индекс цвета (его номер). Сам же цвет разыскивается по этому номеру в сопроводительной цветовой палитре, приложенной к файлу. Такие цветовые палитры называют индексными палитрами. ^ Индексная палитра – это таблица данных, в которой хранится информация о том, каким кодом закодирован тот или иной цвет. Эта таблица создается и хранится вместе с графическим файлом. Разные изображения могут иметь разные цветовые палитры. Например, в одном изображении зеленый цвет может кодироваться индексом 64, а в другом этот индекс может быть отдан розовому цвету. Если воспроизвести изображение с "чужой" цветовой палитрой, то зеленая елка на экране может оказаться розовой. ^
Фиксированная палитра
В тех случаях, когда цвет изображения закодирован двумя байтами (режим High Color), на экране возможно изображение 65 тысяч цветов. Разумеется, это не все возможные цвета, а лишь одна 256-я доля общего непрерывного спектра красок, доступных в режиме True Color. В таком изображении каждый двухбайтный код тоже выражает какой-то цвет из общего спектра. Но в данном случае нельзя приложить к файлу индексную палитру, в которой было бы записано, какой код какому цвету соответствует, поскольку в этой таблице было бы 65 тыс. записей и ее размер составил бы сотни тысяч байтов. Вряд ли есть смысл прикладывать к файлу таблицу, которая может быть по размеру больше самого файла. В этом случае используют понятие фиксированной палитры . Ее не надо прилагать к файлу, поскольку в любом графическом файле, имеющем 16-разрядное кодирование цвета, один и тот же код всегда выражает один и тот же цвет.
Безопасная палитра
Термин безопасная палитра используют в Web-графике. Поскольку скорость передачи данных в Интернете пока оставляет желать лучшего, для оформления Web-страниц не применяют графику, имеющую кодирование цвета выше 8-разрядного. При этом возникает проблема, связанная с тем, что создатель Web-страницы не имеет ни малейшего понятия о том, на какой модели компьютера и под управлением каких программ будет просматриваться его произведение. Он не уверен, не превратится ли его "зеленая елка" в красную или оранжевую на экранах пользователей. В связи с этим было принято следующее решение. Все наиболее популярные программы для просмотра Web-страниц (броузеры) заранее настроены на некоторую одну фиксированную палитру . Если разработчик Web-страницы при создании иллюстраций будет применять только эту палитру , то он может быть уверен, что пользователи всего мира увидят рисунок правильно. В этой палитре не 256 цветов, как можно было бы предположить, а лишь 216. Это связано с тем, что не все компьютеры, подключенные к Интернету способны воспроизводить 256 цветов. Такая палитра, жестко определяющая индексы для кодирования 216 цветов, называется безопасной палитрой .
