Что такое растровое кодирование?
Кодирование с палитрой
Очень часто (например, в схемах, диаграммах и чертежах) количество цветов в изображении невелико (не более 256). Поэтому глубину цвета можно брать не 24 бита на пиксель, а меньше, таким образом, уменьшится размер файла. Для этого применяют кодирование с палитрой.
Если использовать кодирование с глубиной цвета 4 бита на пиксель вместо режима истинного цвета, как изменится объём файла?
Цветовая палитра — это таблица, в которой каждому цвету, заданному в виде составляющих в модели RGB, сопоставляется числовой код.
Кодирование с палитрой выполняется следующим образом:
• выбираем количество цветов N (не более 256);
• из палитры истинного цвета (16 777 216 цветов) выбираем любые N цветов, и для каждого из них определяем код в модели RGB;
• каждому выбранному цвету присваиваем номер (код) от 0 до N - 1;
• составляем палитру, записывая сначала RGB-составляющие цвета, имеющего код 0, затем — составляющие цвета с кодом 1 и т. д.;
• для каждого пикселя рисунка храним в памяти не яркости трёх цветовых каналов, а номер цвета в палитре.
Например, пусть при кодировании изображения российского флага (см. рис. 2.21) были выбраны 4 цвета:
• чёрный: RGB(0,0,0); двоичный код 002;
• красный: RGB(255,0,0); двоичный код 012;
• синий: RGB(0,0,255); двоичный код 102;
• белый: RGB(255,255,255); двоичный код 112.
Тогда палитра, которая обычно хранится в заголовке файла, представляет собой четыре трехбайтных блока:
Код каждого пикселя занимает всего два бита. Чтобы примерно оценить объём рисунка с палитрой, включающей N цветов, нужно:
• определить размер палитры, 3 • N байт = 24 N бит;
• определить глубину цвета (количество битов на пиксель), т. е. найти наименьшее натуральное число i, такое что 2i ≥ N;
• вычислить общее количество пикселей К, перемножив размеры рисунка;
• определить информационный объём рисунка (без учёта палитры): К • i бит.
В таблице 2.5 приведены данные по некоторым вариантам кодирования с палитрой.
Таблица 2.5
Количество цветов | Размер палитры (байт) | Глубина цвета (бит на пиксель) |
2 | 6 | 1 |
4 | 12 | 2 |
16 | 48 | 4 |
256 | 768 | 8 |
Палитры с количеством цветом более 256 на практике не используются.
Используя дополнительные источники, найдите ответы на вопросы.
— В файлах каких форматов можно сохранить изображение с палитрой?
— Определите размер палитры и глубину цвета при кодировании с палитрой 128 цветов.
— Как можно преобразовать рисунок, записанный в формате истинного цвета, в формат с палитрой?
Следующая страница Форматы файлов