Представление графической информации

Наиболее распространенные из существующих методов представления изображений можно разделить на две большие категории: растровые методы и векторные методы.

При растровом методеизображение представляется как совокупность точек, называемых пикселями (pixel — сокращение от picture element — элемент изображения). Поскольку линейные координаты и индивидуальные свойства каждой точки (яркость) можно выразить с помощью целых чисел, то можно сказать, что растровое кодирование позволяет использовать двоичный код для представления графических данных.

Общепринятым на сегодняшний день считается представление черно-белых иллюстраций в виде комбинации точек с 256 градациями серого цвета, и, таким образом, для кодирования яркости любой точки обычно достаточно восьмиразрядного двоичного числа.

Для кодирования цветных графических изображений применяется принцип декомпозициипроизвольного цвета на основные составляющие. В качестве таких составляющих используют три основных цвета: красный (Red, R), зеленый (Green, G) и синий (Blue, В). Такая система кодирования называется системой RGB(по первым буквам названий основных цветов).

Графические файлы, в которых применяется цветовая система RGB, представляют каждый пиксель в виде цветового триплета — трех числовых величин (R, G, В), соответствующих интенсивностям красного, зеленого и синего цветов.

Если для кодирования яркости каждой из основных составляющих использовать по 256 значений (восемь двоичных разрядов), как это принято для полутоновых черно-белых изображений, то на кодирование цвета одной точки надо затратить 24 разряда.

При этом система кодирования обеспечивает однозначное определение 16,5 млн. различных цветов, что близко к чувствительности человеческого глаза.

Для 24-битового цвета триплетом (0, 0, 0) обычно представляется черный цвет, а триплетом (255, 255, 255) — белый. Если все три величины RGB имеют одинаковые значения, например (63, 63, 63), (127, 127, 127) или (191, 191, 191), то результирующим будет один из оттенков серого цвета.

Кроме RGB, другими популярными системами кодирования цветных изображений являются СМY и HSB.

CMY (Cyan-Magenta-Yellow — голубой-пурпурный-желтый) — цветовая система, применяемая для получения цветных изображений на белой поверхности. Эта система используется в большинстве устройств вывода, таких как лазерные и струйные принтеры, когда для получения твердых копий краски наносятся на белую бумагу. При освещении каждый из трех основных цветов поглощает дополняющий его цвет: голубой цвет поглощает красный, пурпурный — зеленый, а желтый — синий. Например, если увеличить количество желтой краски, то интенсивность синего цвета в изображении уменьшится.

Новые цвета в системе CMY получают вычитанием цветовых составляющих из белого цвета. Если все составляющие CMYбудут вычтены (или поглощены), то результирующим цветом станет черный. На практике же получить идеальный черный цвет без дорогостоящих красителей в системе CMYвесьма сложно.

Существует более практичный вариант CMY — система CMYK, в которой символ K означает черный цвет. Введение в эту цветовую систему черного цвета в качестве независимой основной цветовой переменной позволяет использовать недорогие красители. Систему CMYKчасто называют четырехцветной, а результат ее применения — четырехцветной печатью.

Как правило, четыре цветовые составляющие CMYKзадаются в процентах в диапазоне от 0 до 100.

Режим, когда для кодирования цвета каждой точки используется 32 двоичных разряда, также называют полноцветным (True Color). Если уменьшить количество двоичных разрядов, используемых для кодирования цвета каждой точки, то можно сократить объем данных, но при этом диапазон кодируемых цветов заметно сокращается. Кодирование цветной графики 16-разрядными двоичными числами называют режимом High Color.

При кодировании информации о цвете с помощью восьми бит данных можно передать только 256 цветовых оттенков. Такой метод кодирования цвета называют индексным. Смысл названия состоит в том, что, поскольку 256 значений недостаточно, чтобы передать весь диапазон цветов, доступный человеческому глазу, код каждой точки растра выражает не цвет сам по себе, а только его номер (индекс) в справочной таблице, называемой палитрой. Эта палитра прикладывается к графическим данным.

Одним из недостатков растровых методов является трудность пропорционального изменения размеров изображения до произвольно выбранного значения. В сущности, единственный способ увеличить изображение — это увеличить сами пиксели. Однако это приводит к появлению зернистости — пикселизации.

Векторные методыпозволяют избежать проблем масштабирования, характерных для растровых методов. В этом случае изображение представляется в виде совокупности линий и кривых. Каждый элемент векторного изображения является объектом, который описывается с помощью специального языка (математических уравнения линий, дуг, окружностей и т.д.)

В векторном формате изображение разделяется на примитивы - прямые линии, многоугольники, окружности и сегменты окружностей, параметрические кривые, залитые определенным цветом или шаблоном, связные области, набранные определенным шрифтом отрывки текста и т. д. (см. рис.). Для пересекающихся примитивов задается порядок, в котором один из них перекрывает другой. Некоторые форматы, например, PostScript, позволяют задавать собственные примитивы, аналогично тому, как в языках программирования можно описывать подпрограммы. Такие форматы часто имеют переменные и условные операторы и представляют собой полнофункциональный (хотя и специализированный) язык программирования.

Каждый примитив описывается своими геометрическими координатами. Точность описания в разных форматах различна, нередко используются числа с плавающей точкой двойной точности или с фиксированной точкой и точностью до 16-го двоичного знака.

Координаты примитивов бывают как двух-, так и трехмерными. Для трехмерных изображений, естественно, набор примитивов расширяется, в него включаются и различные поверхности - сферы, эллипсоиды и их сегменты, параметрические многообразия и др. (рис. 1).

представление графической информации - student2.ru
Рисунок 1 - Трехмерное векторное изображение

Двухмерные векторные форматы очень хороши для представления чертежей, диаграмм, шрифтов (или, если угодно, отдельных букв шрифта) и отформатированных текстов. Такие изображения удобно редактировать - изображения и их отдельные элементы легко поддаются масштабированию и другим преобразованиям. Примеры двухмерных векторных форматов - PostScript, PDF (Portable Document Format, специализированное подмножество PostScript), WMF (Windows MetaFile), PCL (Printer Control Language, система команд принтеров, поддерживаемая большинством современных лазерных и струйных печатающих устройств). Примером векторного представления движущихся изображений является MacroMedia Flash. Трехмерные векторные форматы широко используются в системах автоматизированного проектирования и для генерации фотореалистичных изображений методами трассировки лучей и т. д.

Однако преобразование реальной сцены (например, полученной оцифровкой видеоизображения или сканированием фотографии) в векторный формат представляет собой сложную и, в общем случае, неразрешимую задачу. Программы-векторизаторы существуют, но потребляют очень много ресурсов, а качество изображения во многих случаях получается низким. Самое же главное - создание фотореалистичных (фотографических или имитирующих фотографию) изображений в векторном формате, хотя теоретически и, возможно, на практике требует большого числа очень сложных примитивов. Сложные объекты (ломаные линии, различные геометрические фигуры) представляются в виде совокупности элементарных графических объектов. На основе этих данных устройство, в конечном счете, и создает готовое изображение. С помощью подобной технологии описываются различные шрифты, поддерживаемые современными принтерами и мониторами. Векторные методы также широко применяются в автоматизированных системах проектирования, которые отображают на экране мониторов чертежи сложных трехмерных объектов и предоставляют средства манипулирования ими. Однако векторная технология не позволяет достичь фотографического качества изображений объектов как при использовании растровых методов.

Видеоизображение характеризуется теми же параметрами, что и графическое, а также дополнительно частотой смены кадров. Человек воспринимает последовательность кадров, сменяющихся с частотой 24 кадра в секунду, как плавное, динамически меняющееся изображение.

Для хранения одной минуты видеоинформации с разрешающей способностью 800x600 и с глубиной цвета 16 бит необходимо иметь память объемом 0,92x24x60 Мбайт = 1 318 Мбайт = 1,29 Гбайт.

Как мы видим, нужны носители информации очень большого объема. Для решения этой проблемы используются различные способы сжатия информации, основанные на сходстве характеристик соседних (по времени и пространству) пикселов изображения.

Наши рекомендации