Форматирование и индексирование изображения.
В данном разделе будем рассматривать изображение как прямоугольную матрицу A={ai,j} с N
столбцами и M строками, где N - ширина изображения в пикселях, M - высота изображения в пикселях. Рассмотрим основные форматы, применяемые в компьютерной обработке изображений:
Черно-белый. Каждый элемент матрицы представлен одним битом. Если он равен единице, то он отождествляется с черным цветом, если равен нулю - с белым. Это самый простой формат, он применяется при печати газет, распознавании текстов и подписей.
Grayscale(градации серого).Отличие данного формата от предыдущего в том, что для каждого элемента матрицы отводится 8 битов (байт). Это позволит нам использовать 28=256 уровней серого цвета. Если ai,j=0, то имеем белый цвет, с возрастанием до 255 мы будем терять яркость и при ai,j=255 получим черный цвет. В промежутке от 0 до 255 будут располагаться серые цвета по правилу: чем ближе значение к 255, тем чернее будет серый. Данный формат позволяет получать довольно качественные черно-белые изображения. Значения ai,j
содержат обратную яркость, т.е. значение (1 - L)*255, где L - яркость, которая может быть получена, например из RGB цветовых изображений по формуле:
L = aR + bG + cG,
где R,G,B лежат в интервале [0;1], а веса a,
b,
c в сумме дают единицу.
Иногда, для хранения grayscale
изображений используют на точку 4-7 и 16 битов. В таком случае мы имеем 16-128 или 65536 оттенков серого цвета.
Многоканальные. В данном случае ai,j
представлен в виде вектора с координатами используемой цветовой модели. Обычно вектор трехмерный, так как природа глаза реагирует на три различных цветовых составляющих. Каждый компонент вектора чаще всего занимает байт. Рассмотрим наиболее распространенные многоканальные форматы:
Название | Соотношение бит | 1-ый компонент | 2-ой компонент | 3-ий компонент | |||||
RGB - Truecolor | 8:8:8 | Красный0-255 | Зеленый0..255 | Синий0-255 | |||||
RGB - Highcolor | 5:6:5/5:5:5 | Красный0-31 | Зеленый0.63/31 | Синий0-31 | |||||
RGB - Extended | 12:12:12/ 16:16:16 | Красный
0-4095/0-65535 | Зеленый 0-4095/0-65535 | Синий0-4095 /0-65535 | |||||
CMY | 8:8:8 | Голубой0-255 | Пурпур0-255 | Желтый0-255 | |||||
LAB | 8:8:8 | Яркость0-255 | Канал A 0-100% | Канал B 0-100% | |||||
YIQ | 8:8:8 | Яркость0-255 | Синфазный 0-255 | Интегрированный 0-255 | |||||
HLS | 8:8:8 | Тон 0-3600 | Яркость0-100% | Насыщенность 0-100% | |||||
HSB | 8:8:8 | Тон 0-3600 | Насыщенность 0-100% | Яркость0-100% |
Встречаются четырех и более мерные вектора, например, модель CMYK, она применяется, когда имеются четыре основных цветовых красителя. Двумерные модели называют дуплексами. Их применяют в полиграфии, например, при печати стандартного grayscale изображения, реально в промышленности оно будет выполнено лишь в ~50 градациях серого, и для повышения числа градаций вводят вторую краску.
Индексированный. Для уменьшения объемов изображения или для использования определенных цветов используют данный формат. Элемент матрицы ai,j
является указателем на таблицу цветов. Число используемых цветов равно 2K, где K -
количество бит, используемый для хранения элемента матрицы. Цвета в указываемой таблице могут кодироваться другим числом бит. Например, в 256 цветовых режимах видеоадаптеров выбирается 256 цветов из 262144 возможных, так как выбираемые цвета представляются в RGB формате и для каждой цветовой компоненты кодируется 6-ю битами. Существует много методов преобразования многоканальных изображения в индексированные (Error diffusion, ближайшего цвета ...).
Рассмотрим форматы на примере:
5.Чернобелое изображение.