Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Шпоры по компьютерной графике - файл Лекции.doc


Шпоры по компьютерной графике
скачать (107.5 kb.)

Доступные файлы (4):

1.doc66kb.21.12.2004 21:55скачать
2.doc74kb.21.12.2004 22:48скачать
Копия Лекции.doc221kb.06.01.2004 20:59скачать
Лекции.doc221kb.06.01.2004 20:59скачать

Лекции.doc

ЛЕКЦИЯ 1. История развития компьютерной графики.

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

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

Затем появляются специальные устройства для вывода на бумагу, так называемые графопостроители, или перьевые плоттеры. Для управления работой графопостроителей стали создавать спец. ПО. Следующий важный шаг произошёл с появлением графических дисплеев. Графический дисплей формирует рисунок из множества точек, выстроенных в равные ряды или строки, образующие растр. Мониторы, работающие по принципу построчного сканирования, называются растровыми. Плата компа, обеспечивающего формирование видеосигнала и тем самым определяющие изображение называются видеоадаптером, видеоплатой и т.д.Выводимое изображение формируется в видеопамяти. Дисплейный процессор читает содержимое видеопамяти и управляет работой монитора. К видеопамяти имеет доступ 2 процессора- центр. и диспл.Центральный записывает видеоинформацию, а дисплейный читает её и передаёт на монитор. В видеопамяти хранится последовательность кодов, определяющих цвет каждой точки. Видеоадаптеры могут работать в различных режимах: текстовый и графический.

В текстовом режиме экран монитора разбивается на отдельные участки, т.е. знакоместа. Каждое знакоместо может быть выделено 250 символами по таблице ASCI кодов.

В графическом режиме информация отображается в виде прямоугольной сетки точек, цвет каждой задаётся программой. Первый комп JBM PC -1986 году был оснащен видеоадаптером MDA. Видеосистема была предназначена для работы только в текстовом режиме. Через год появляются видеоадаптер йййййййййййййй, который поддерживал уже графический видеорежим, с размером роста 720*348. Следующим шагом был видеоадаптер CGA. Это была первая цветная модель. Он позволил работать в цветном текстовом и графическом режиме.(640*200-цветной, 320*200-белый)

В 1984 году появился видеоадаптер EGA. У него был 16 цветной режим, размером 640*350 pi. В 1987 появились адаптеры MCGA и VGA. Появляются видеоадаптеры, обеспечивающие видеорежимы 800*600, 640*480, 1024*768- Super VGA.1995год-Targa 24-16 000 000 цветов, т.е. 24 бита/pi. На данный момент на компьютеры JBM PC с процессором Pentium используется огромное кол-во видеокарт с глубиной цвета 32 бита/pi при размерах растра 1600*1200. В видеопамяти могут хранится несколько кадров изображения. Это используется в анимации, для их сохранения используется отдельные страницы видеопамяти с одинаковой логической организацией, но разной адресацией. Обмен данными по системе шин обеспечивает процессор, адаптер и контроллер локальной шины. До недавнего времени использовалась шина PSI. Эта шина является стандартом для подключения модемов и т.д.

В настоящее время подключается через шину AGP. Наличие AGP порта повышает быстродействие компа. Кроме видеопамяти на плате видеоадаптера располагается дисплейный процессор, который по сложности приближается к центральному. Этот графический дисплейный процессор выполняет следующие функции: рисование массивов pi, манипуляции, копирование, наложение текстуры и т.д. Ранее эти функции выполнялись центральным процессором, а графически использовались лишь для рисования линий и т.д.

Видеоадаптер выполняет эти операции аппаратно, что позволяет намного ускорить их в сравнении с программой реализации данных центрального процессора. Наиболее известными являются APJ,Open JF, Direct X . APJ имеют несколько сотен графических функций операционной системы Windows. Графический интерфейс Direct X имеет подсистему 3-х мерной графики Direct 3D и подсистему Direct DRAW,который обеспечивает доступ к памяти. Одним из наиболее распространенных является Open GL. Он является библиотекой графической функции и поддерживается многими операционными системами, в том числе и Windows.
^ ЛЕКЦИЯ 2. Основные понятия компьютерной графики.

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

^ ГРАФИЧЕСКИЙ ФОРМАТ.

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

^ ГРАФИЧЕСКИЕ ФАЙЛЫ.

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

Графические данные: 1 растровые

2 векторные

2- используется для представления прямых, прямоугольников и кривых и любых других объектов, которые могут быть созданы на их основе с помощью определения в численном виде ключевых точек. С ними программа производит связывание точек.

1- набор числовых значений, определяющий цвета отдельных пикселов. Пикселы- цветовые точки, расположенные на правильной сетке и формирующие образ. Техническим растром является массив числовых значений, задающих цвета отдельных пикселей преображающих цвета на отдельном устройстве вывода. Для обозначения числового значения в растровых данных соответствующих цвету пикселя в изображении используется термин пиксельное значение. Термин bitmap используется для обозначения массива пикселей, независимо от типа, а термин битовая глубина используется для указания размеров этих пикселей, выраженных в битах или байтах.

^ ФИЗИЧЕСКИЕ И ЛОГИЧЕСКИЕ ПИКСЕЛИ.

В компьютерной графике для указания местоположения графического объекта используется математические координаты, хотя поверхность отображения- это реальный физический объект, потому существует разность между физическими и логическими пикселями. Физические пиксели- реальные точки, отображённые на устройстве вывода, т.е. это наименьший физический элемент поверхности отображения, которые можно обрабатывать аппаратным способом. Так как физические пиксели занимают определённую площадь поверхности отображения, то площадь между двумя соседними пикселями вводится ограничения. Логические пиксели имеют местоположение, но не занимают физическое пространство. Поэтому при отображении значения логических пикселей в физические пиксели должны учитываться реальные размеры и расположения физических пикселей

^ ПИКСЕЛЬНАЯ ГЛУБИНА УСТРОЙСТВА ИЗОБРАЖЕНИЯ.

Принятая пиксельная глубина 1,4,8,24,32 бита соответственно монохроматический режим 16 цветов, 256 цветов и т.д.

^ ОТОБРАЖЕНИЯ ЦВЕТОВ.

Набор цветов, который задаётся пиксельными значениями в файле не всегда совпадает с тем, который может быть отображен на физическом устройстве вывода. Задача согласования набора цветов решается программой визуализации. Существует 2 варианта:

1 если количество цветов, заданных пиксельными значениями в файле значительно меньше количества цветов , которое способно отобразить устройство вывода.

2 устройство вывода способно отобразить меньше цветов, чем записью в исходных данных

( квантование самостоятельно.)

^ ЛЕКЦИЯ 3. ПИКСЕЛЬНЫЕ ДАННЫЕ И ПАЛИТРА.
Пиксельные данные, содержащие более 1 бита на пиксель могут представляться:

1)как набор индексов палитры цветов

2)определяется в соответствии со схемой определения цветов.

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

^ ЦВЕТОВЫЕ ПРОСТРАНСТВА.

Чтобы передать цвет, нужно задать несколько значений, определяющих интенсивность каждого из основных цветов, которые смешивают для получения составных цветов. Составной цвет задаётся упорядоченным набором значений и представляют собой точку в цветовом пространстве. Наиболее распространенным способом передачи цвета является модель RGB. В модели RGB –(0,0,0)-черный,

(255,255,255)-белый. Порядок следования цветовых составляющих может быть произвольный. А порядок и обработка цветовых составляющих разная.
^ ТИПЫ ПАЛИТРЫ.

Различают одноканальные и многоканальные палитры. Одноканальная палитра предусматривает только одну цветовую величину для каждого элемента изображения, причем эта цветовая величина явно указывает цвет пикселя. Многоканальная палитра предусматривает 2 или более цветовые величины для каждого цветового элемента .Палитры могут быть как пиксельные так и плоскоориентированные. Пиксельно ориентированные палитры хранят все данные о цветах пикселей в виде последовательности битов в каждом элементе массива. В плоскоориентированной палитре цветовые составляющие пикселя разделены. Величины, соотв. определ. цветовому каналу сохраняются вместе, и палитра состоит из 3 –х одноммммм палитр, по одной для каждого цветового канала .Одноканальная пиксельно ориентированная палитра содержит одно пиксельное значение на элемент. Многоканальная пиксель-ориентированная палитра также хранит по 1 пикселю на элемент, но каждый пиксель содержит 2 или более цветовых канала. Одноканальная плоскоориентированная хранит 1 пиксель на элемент и 1 бит на плоскость. Многоканальная плоскоориентированная палитра содержит одно значение цветового канала на элемент. Количество элементов в палитре определяется по формуле 2 в степ n,где n-размер пиксельного значения
ЦВЕТ.

Рецепторы чел. глаза воспринимают длину волны от 380-770 нм. Волны различной длины воспринимаются чел. глазом по-разному. ^ Система визуального восприятия близко расположенные цвета, особенно если они разделены видимым объектом. Для восприятия цвета значение имеет как цвет, полученный не существующих моделей, представленных из-за разного способа действующих на разных устройствах. Все множество цветов получается путем смешивания основных цветов образует цветовую гамму.

Цветовые модели- аддитивная и субаддитивная.

Аддитивная- ?????????????????? цвета плюс основной цвет и черный. Чем больше интенсивность добавленного цвета, тем ближе результирующий цвет к белому. Смешивание всех основных цветов дает чисто белый цвет, если значение максимально черное минимально они самоосветляющиеся .

Субаддитивные-основные цвета ?????????????????? из белого. Чем больше интенсивность цвета, тем ближе результат к черному. Смешивание всех цветов максимально-черный, минимально-белый. Они отражающие.

^ МОДЕЛИ RGB.

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

Теоритически при вычитании всех основных цветов, суммой является черный, но на практике получить черный сложней, поэтому модель дополнена отдельным черным цветовым компонентом.. Результат модели-4-х цветовая печать.

ЛЕКЦИЯ 4.

HSV- оттенок, насыщенность , величина. В этой модели изменяют свойства цвета. Весь оттенок-это цветовая насыщенность (цветность) определяют количество белого в оттенке . В полностью насыщенные 100% оттенке не содержится белого и такой оттенок считается чистым. Красный оттенок 50% насыщенности- это розовый. Величина, которая называется яркостью , определяют интенсивностью свечения света. Оттенок с высокой интенсивностью является очень ярким. Черный и белый цвет, смешанный с основными цветами для получения оттенков tint, Shade,tone.

Tint- чистый, полный, насыщенный цветом, смешан с белым. Shade-, насыщенный цветом, смешан с черным. Tone –цвет, смешанный с серым.(белый+черный)
Насыщение-количество черного.

Величина-количество красного.

Оттенок-цвет.

YUL-состоит из 3-х сигналов. Она основана на линейном преображении данных

AGB-изображение, применяется для кодирования цвета в телевидении.

Полутоновая модель состоит из черного, белого и серого.

Гамма всех цветов серого цвета. Каждая точка состоит из 3-х составляющих с равной величиной, не имеющей насыщенности и различающиеся только интенсивностью.

Цвет

RGB

CMY

HCV

красный

255,0,0

0,255,250

0,240,120

желтый

255,255,0

0,0,255

40,240,120

зеленый

0,255,0

255,0,255

30,240,120

синий

0,0,255

255,255,0

160,240,120

черный

0,0,0

250,250,0

160,0,0

белый

255,255,255

0,0,0

160,0,240

серый

127,127,127

127,127,127

160,0,120



^ НАЛОЖЕНИЕ И ПРОЗРАЧНОСТЬ.
Если изображение не прозрачное, то не существует условий, при котором можно наложить одно изображение на другое и видеть при этом элемент нижнего изображения. Для того, чтобы изображения могли прикладываться , задается прозрачность изображения на уровне????????? всего изображения, ??????????? фрагменты, ?????????????? отдельного пикселя. Прозрачностью управляют при помощи дополнительной информации, содержащейся в любом элементе пиксельных данных. Каждый пиксель добавляется по крайней мере один, оверленный бит. Установка такого бита позволяет программе визуализации выборочно игнорировать те пиксельные значения, у которых этот вид установлен.

16 бит=5 бит+5 бит+5 бит+1 овер. бит.

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

32 бита=8 бит+8 бит+8 бит+8 бит прозр.

0= прозрачен на 100%

255-полностью не прозрачен.

Кроме того, информация о прозрачности можно сохранить в виде отдельного блока, не зависящего от остальных данных изображения. Это позволяет манипулировать данные о прозрачности отдельного от изображения.

^ ВЕКТОРНЫЙ ФАЙЛ (ВФ)

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

^ Векторные данные- включают данные о типе линии и её атрибутах. Линии используются для построения геометрических фигур, т.е. в свою очередь может быть использованы для создания объекта 3D фигур. ВД представляют собой список операций черчения и математическое описание элементов изображения, записанные в файле в той последовательности , в которой они создавались. Простейшие ВФ исполняются текстовыми редакторами и электронными таблицами. Большие ВФ разработаны для хранения и создания рисунков программами САПР.

^ ОРГАНИЗАЦИЯ ВЕКТОРНЫХ ФАЙЛОВ.

Базовая структура ВФ –это заголовок и ВД.


заголовок

данное

изображение



заголовок

Данные изображения

палитра

концовка


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

Заголовок содержит информацию, общую для всего ВФ и должна быть ???????????????????????? до того, как был об.????????????? Все остальных информация. Общая информация состоит из числа идентичных ф. формата ; номера версии и цветовая информация. Они могут содержать значения атрибутов по умолчанию, которые применяются к любым элементам ВД этого файла, если значения их собственных атрибутов не задано. Приб. По умолчанию используется для сокращения размеров файла. Заголовок и концовка в ВФ не всегда имеют постоянную длину. Поэтому файл должен читаться последовательно. Информация записывается в заголовок определенным типом данных в файле и включает сведения о высоте и ширине изображения, а также сведения о количестве изображения.
^ ЛЕКЦИЯ 5. ВЕКТОРНЫЕ ДАННЫЕ.

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

Во многих форматах применяется аббревиатура. Одинаковые буквы для определения элемента и цвета не вызывает конфликтов, т.к. они отличаются контекстом.
^ ПАЛИТРА И ЦВЕТОВАЯ ИНФОРМАЦИЯ.

Если в файле используется палитра, то перед тем, как воспроизводить изображение, программа визуализации должна найти определение цвета в палитре цветов.

^ АТРИБУТЫ ЗАПОЛНЕНИЯ.

Не цветовые элементы информации, необходимые для визуализации изображения называются элементарными атрибутами. Замкнутые элементы векторных данных могут быть спроектированы с учетом их цвета. Цвет элемента не зависит от цвета контура. Т о. каждый элемент может быть связан с двумя или более цветами. Первый из них задается для контура элемента, остальные-цвета заполнения. Замкнутые элементы могут заполняться чистыми цветами, могут содержать штриховку или полутона, создаваемые атрибутами заполнения. Также для заполнения могут использоваться шаблоны. Если замкнутый элемент заполнен несколькими цветами, то в описании элемента содержатся либо наименование шаблона заполнения, либо информация о цветах заполнения. Простейший способ - градиентное заполнение. Оно хранится в виде информации о начальных и конечных цветах, направлений и типы заполнений. Оно представляет собой плавный переход от одного цвета к другому с максимально возможным расширением. Типы заполнения могут быть горизонтальные, вертикальные и кольцевые.
^ КОНЦОВКА ВЕКТОРНЫХ ФАЙЛОВ.

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

Проблему создания повторяющихся элементов решают след. Образом:

Определяют один оригинальный элемент, остальные сохраняют в виде атрибутов и ??????????????????????? инфо для каждого повторяющегося элемента. На размер файла влияет способ сохранения в нем информации. Разные форматы поддерживают идентичную информацию множеством различных способов. Векторные данные хранятся в виде чисел, поэтому масштабирование, вращение и другие операции с ними осуществляются проще, чем с растровыми. Т. к. масштабирование упрощено, то вект.файлы ограничиваются по размеру. Векторные файлы не поддерживают сжатие данных. Они допускают альтернативный метод кодирования.
^ ТЕКСТ ВЕКТОРНЫХ ФАЙЛОВ.
Сохранить векторные символы можно двумя способами Сохранение отдельных символов, В таком случае символьная строка превращается в набор контуров, созданных из множества простых элементов векторных данных, т.к. такие символьные штрихи хранятся подобно остальным векторным данным, то они могут быть масштабируемыми и т.д. Применение таких ?????????????????????????????????????? очень сильно увеличивает размер файлов, но оправдывается высоким качеством визуализации.

^ ПРЕИМУЩЕСТВА И НЕДОСТАТКИ ВЕКТОРНЫХ ФАЙЛОВ.

ПРЕИМУЩЕСТВА:

  1. векторные файлы наиболее удобны для хранения изображений, состоящих из элементов.

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

  3. векторные файлы, содержащие текстовые данные могут быть изменены без ущерба для других объектов изображения.

НЕДОСТАТКИ:

  1. векторные файлы не применяются для хранения сложных изображений, как фотография.

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

  3. векторные данные плохо отображаются на растровых устройствах вывода.

  4. визуализация векторного файла может потребовать значительно больше времени, чем визуализация растрового равной сложности.


Лекция 6. Растровые файлы и их организация


Заголовок растровых данных(РД)




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

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



Если файловый формат позволяет иметь каждому изо-ю свою

палитру палитру, то она сохраняется непосредственно перед данным

изо-ем с кот. она связана. В таком случае структура

изменится и будет иметь вид.


Заголовок – раздел данных и символов в формате

ASCII данных, хранящий общ. инфо о РД , структура и

Содержимое конкретного заголовка определяется исполнением форматов.
рис.2

^ Типичный набор полей заголовка.

1поле: магическое число/идентификатор файлов

2поле: версия файлов

3поле: количество строк изображении

4поле: количество пикселей в строке

5поле: количество видов пикселей

6поле: количество цветовых плоскостей

7поле: тип сжатия

8поле: х координата начала изображения

9поле: у координата нач. изо-я

10поле: текстовое описание

11поле: неиспользованное пространство

идентификатор файла – во всех структурах заголовок начинается с уникального ID-значения. Он позволяет программам определить формат графики файла с которым она работает. Идентификаторы файлов выбираются разработчиками произвольно и содержат последовательность символов ASCII или любое числовое значение.

Например, формат bmp имеет значение bmp.gif. Идентификаторы могут быть уникальными даже для платформы, т.к. если значение, прочитанное в начале файла совпадает с имеющимся идентификатором, то программа, читающая заголовок предполагает что ей известен данный формат. Существуют 3 обстоятельства, когда этот простой способ не работает:

1) в нек. Форматах идентификатор файла опущен и на этом месте находятся любые данные. 2) автор формата специально воспроизвел ID-значение другого формата, кот. например позаимствовал с другой платформы. 3) распространители формата дополняют его новыми возможностями, сохраняя при этом ID файла и его спецификацию.

^ Поле - версия файла

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

^ Поле – тип сжатия

Если с целью уменьшения формат поддерживает какой-либо вид кодирования, то в заголовок включается данное поле, т.к. несколько форматов поддерживают несколько алгоритмов компрессии, то все они должны быть указаны в форме – тип сжатия.

Координаты начала опред. точку у нач. изо-я на устройство вывода.

Текстовое описание – комментарий содержащий произвольные символьные в формате ASCII данные, имя автора.

Неиспользуемое пространство в конце заголовка рас-я поля наз. зарезервированными полями или заполнителями. Они не содержат данных, не описываются и не структурируются, но если возник. Необходимость расширить файловый формат, то сведения о новых данных заносятся в зарезервированное пространство.
^ Лекция 7. Растровые данные.

РД в большинстве форматов расположены непосредственно после заголовков, но могут быть и в любом другом месте растрового файла т.к. после заголовка может быть палитра или др. данные. В таком случае в заголовке поле смещения данных изо-я или в поле каталога изо-я указ. Местоположение начала данных изо-я. РД состоящие из пиксельных значений обычно выводятся на устройства в виде строк развертки по всей ширине поверхности изо-я. Иногда РД записываются в файл в виде плоскостей.
^ Организация данных в виде строк развертки.

При такой организации пиксельные данные в файле описывающем это изо-е, представляют собой последовательности наборов значений, где каждый набор соответствует строке изо-я. Несколько строк представл. некоторыми наборами записанными в файл от начала до конца. Если известен размер кажд. пикселя и кол-во пикселей в строке, то можно рассчитать смещения начала каждой строки в файле.

Пусть в строке 21 пиксель, на 1 пиксель – 8 бит, тогда смещение будет:

1строка: 0…..20

2строка: 21…41

3строка: 42…62

4строка: 63…

Если 24 бита, то 0…62

63…125

126…

21 пиксель ------ 24 пикселя. 8 бит

0…23

24…47

48…71

Существует правило согласно кот. строки РД выравниваются по границе байта. Рассмотренное выше изо-е будет занимать 24 байта.

Пиксельные данные организованные в виде строк развертки могут быть сохранены в файле 3 способами: 1) в виде непрерывных данных 2) в виде полос 3) в виде фрагментов.
^ Непрерывные данные.

Это простейший способ организации данных, когда данные записываются в файл непрерывно строка со строкой. При воспроизведении данные читаются в том же порядке в котором были записаны, большими порциями, быстро и легко собираются в памяти.


Строка развертки 0


Строка развертки 1

Строка развертки 2









Полосы.

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

Пример: 1280 x1024. на 1 пиксель – 8 бит инфо, т.е. 1 байт на пиксель.

Т.е. получим изо-е размером 1310720 байт (1280 Кб, 1,25 Мб).

128 строк x 8 полос = 1024.

160 Кб на обработку одной полосы.

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

Фрагменты

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

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

^ Организация РД в виде плоскостей.

В таких файлах данные изо-я делятся на 2 и более плоскости и наз. плоскостными файлами. Изо-е кот. использует несколько цветов наз. составным изо-ем. Составное изо-е м.б. представлено несколькими блоками РД, причем кажд. блок будет содержать одну из цветовых составляющих используемых в данном изо-ии. Конструирование блока – это размножение изо-я на цветовые составляющие. Блоки м.б. сохранены в файле последовательно или физически раздельно. Организация данных в виде плоскостей – это обычная ориентация на какое-либо устройство вывода, конструкция кот. позволяет в кажд. момент времени только 1 цветом.

Пример. 2 строки на 3 столбца.

В виде строк развертки.

(00, 01, 02) (03, 04, 05) (06, 07, 08)

(09, 10, 11) (12, 13, 14) (15, 16, 17)

В виде плоскостей.

Красная плоскость Синяя плоскость Зеленая плоскость

00 03 06 02 05 08 01 04 07

09 12 15 11 14 17 10 13 16

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

Палитра аналогична векторным файлам.

^ Дополнительные структуры данных растрового файла (рф).

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

Концовка

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

^ Лекция 8. Преимущества и недостатки РФ

1) РФ специально разрабатывались для хранения реальных изо-й, получаемых со сканирующего фотографического или видеооборудования.

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

3) РФ легко преобразуются для передачи на точечное устройство вывода.

-- РФ имеют очень большой размер, особенно если изо-е многоцветное. Применение различных схем сжатия уменьшает размер, но необходимость распаковки перед использованием замедляет процесс чтения и визуализации изо-я.

-- растровые форматы плохо поддаются масштабированию.

^ Фрактальная графика

Фрактал – это объект, отдельные элементы которого наследуют свойства родительских структур.

Фрактальные объекты – дерево, снежинка. Фрактал – это та структура, кот. состоит из подобных форм и рисунков и встречается в различных размерах. Термин “фрактал” применил Мандельброт в 1975 г. Фракталы описываются математически и создаются с помощью очень простых алгоритмов.

y = x2 + c

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

Отношение времени архивации ко времени разархивации, т.е. коэф-т симметричности для фрактального алгоритма колеблется в пределах десятков тысяч. Коэф-т сжатия у фрак-х алгоритмов колеблется от 2 до 200. большие коэф-ты достигаются на реальных изо-ях.

В процессе преоб-я раст. изо-ий во фрак-ые коды реализ-ся 2 огромных преимущества:

1) возможность масштабировать фрактальные изо-я.

2) размер физич. данных используемых для записи фрак-ых кодов до 200 раз меньше своего растрового оригинала.
Фрактальное сжатие обязательно сопровождается потерями, т.к. оно не предусматривает точного поиска соответствия фракталов. Ищется наилучшее соответствие на основе параметров сжатия. Этими параметрами можно управлять доводя изо-е до того состояния в кот. оно визуально не имеет потерь. Фрактальное сжатие примен-ся в БД изо-й. наиболее известные фрактальные пакеты Fractal и Fractal Transform.

^ Сжатие данных

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

^ Схемы сжатия.

1) RLE – метод группового кодирования.

2) LZW – метод Лемпела-Зива-Велча.

3) CCITT – частный случай алгоритма Хаффмана.

4) DCT – метод дискретных косинус-преобразований. Применяется при сжатии jpeg.

5) Фрактальное сжатие.

В РФ обычно сжимаются только данные изо-я, заголовок и др. остаются не сжатыми.

Векторные файлы не имеют родной схемы сжатия. Они не сжимаются.

1) т.к. данные уже представ-ны в компактной форме.

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

3) если векторные файлы все-таки сжать, то сжимается весь файл целиком, включая заголовок (это сжатие архиваторами ZIP, RAR и др.)

^ Физическое и логическое сжатие.

Алгоритмы сжатия используют для повторного кодирования данных.

Различие между методами физич. и логич. сжатия основано на том, как данные преобразуются. В результате физического сжатия данные преоб-ся без учета содержащейся в них инфо. Происходит просто переход серии битов из 1 шаблона в другой более компактно. Алгоритм физического сжатия удаляет существующую в данных избыточность.

Все рассмотренные методы будут физическими.

Метод логического сжатия явл-ся процессом логич. постановки, т.е. замены одного набора алфавита цифровых или двоичных символов другими. Логическое сжатие выполняется только на символьном или более высоком уровне. Основано на инфо содержащейся в исходных данных и логисеское сжатие не применяется для данных изо-я.

Методы физического сжатия делятся на две категории:

1) сжатие всего файла

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

2) сжатие включенное в структуру файла

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

^ Лекция 9. Симметричное и ассиметричное сжатие.

ГФ делятся на 2 большие категории: симметр. и ассиметр.

1) симм. основан на тех же алгоритмах и позволяет выполнить тот же объем работы, что и распаковка файлов (RLE, LZW).

В программах обмена данными используют как сжатие так и распаковку.

в одном направлении увелич. объем работ чем в другом (сжатие увелич. объем, время, чем на распаковку) – это для БД изо.

Существует ассиметричный алгоритм работающий в обратном направлении (т.е. сжатие < распаковки (по времени)). Используется для программ резервного копирования.

^ Адаптивное, неадаптивное и полуадаптивное кодирование.

Например, нак для сжатия текстов содержит словарь: end (1 код), but (2 код), then (3 код) и т.д.

Для графики 4 черных пикселя 1

8 белых 2

8 черных 3
АК не принадл. педопр.правил для сжимаемых данных, адаптивные компрессоры такие как LZV не зависят от типа обработки данных, поскольку строят словари из поступивших данных, т.е. строят дополнительные данные о процессе кодирования.

АК – любой тип данных, добиваясь максимально возможной степени сжатия.

ПАК – применение обоих методов кодирования. Работает в 2-х проходах.

1) работает как АК (view data + build словарь)

2) НАК выполняет кодирование на основе полученных на 1 этапе подстроф.

Позволяет построить оптимальный словарь прежде чем кодировать.

^ Сжатие с потерями и без них.

СБП – порция данных сжимается и распаковывается и содержащаяся в данных инфо сохр-ся (было=есть). Данные не должны быть изменены, потеряны или повреждены.

ССП предусматривает отбрасывание нескольких данных изо-я для достижения лучшей степени сжатия, чем в большом количестве СБП.

*.jpg – ССП.

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

^ Классификация приложений использующих алгоритмы компрессий.

1) высокие требования ко времени архивации и разархивации (издательские системы, инфо узлы в интернете). Сами илюстр. > часть от общего объема. Используются алгоритмы СБП (LZW, RLE и т.д.)

2) степень архивации и времени разархивации (справочники и энциклопедии на CD-ROM). Ассиметрич. алгоритмы время компрессии >> времени разархивации (фрактальное сжатие).

3) очень высокие требования к степени разархивации (jpeg, хотя большое время разархивации).

^ Требования, прилагаемые к алгоритмам компрессии.

Определяются характером использования изо-я.

Требования:

1) степень компрессии

2) качество изо-я

3) скорость компрессии

4) скорость декомпрессии

5) масштабирование изо-я

6) возможность показать изо нужного разрешения

7) устойчивость к ошибкам, это противоречит высокой степени архивации, т.к. необходимо вводить избыточную инфо.

8) учет специфики изо, т.е. более высокая степень архивации, чаще применяемая в ваших приложениях.

9) редактируемость (минимальное сжатие ухудшает качество изо при его повторном сохранении)

10) небольшая стоимость аппаратной и программной реализации

^ Алгоритм группового кодирования или RLE

Алгоритм сжатия, поддерживающий большое число растровых форматов (tif, wmp и т.д.)

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

Суть метода: RLE уменьшает физический размер повторяющихся строк символов. Повторяющиеся строки – группы, и обычно кодируются в 2-х байтах.

1 байт: количество символов в группе – счетчик группы. Закодируемая группа содержит 1-128(256)символов, что записывается в счетчик группы как количество символов – 1.

2 байт: содержит значение символов группы, значение группы.

Если программа считает подряд несколько пикселей с одинаковыми значениями она не записывает значение пикселя еще раз, а запоминает сколько пикселей с этими значениями следуют др. за другом.

Этот код сгенерированный для представления строки – RLE пакет.

Он создается всякий раз когда изменяется группа или когда количество символов в группе больше максимального значения счетчика. Простой растровый рисунок с помощью RLE – пакета сжат следующим образом.














(3-1).255, (4-1).0, (3-1).255, (6-1).0

Для кодирования в RLE требуется минимум 2 байта.

Эффективность сжатия зависит от типа данных изо-я. Для сложного изо-я с большим количеством цветов групповое кодирование практически не используется.

Групповое кодирование не является форматом файла. Это метод кодирования который может быть включен в некоторые графические форматы (gif, tif, jpeg)

^

Лекция 10.

Варианты группового кодирования


Данные изображения кодируются последовательно. Растр кодируется, начиная с верхнего левого угла по оси Х слева на право конец нижнему правому углу.








Альтернативные схемы позволяют записывать закодированные данные по высоте растра по оси У. Иначе кодировать растр зигзагами.

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

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

^ Перекрестное кодирование слияние строк развертки происходящее из-за того, что вывод процессе кодирования различия между нами исчезают. При

выигрыше вывод несколько байтов процессы сжатия без «конца строки» усложняется вывод процессе декодирования информации. Программа должна понимать закодированные данные маркера конца строки развертки. Этот маркер – уникальный пакет, определенный вывод спецификации RLE. Маркер конца строки – 1 байт.

Ещё одно преимущество построчного кодирования - программа легко воспроизводит любую часть изображения .

Другим способом определения в блоке закодированных данных начальных точек любой строки развертки является создание таблиц строк разверток TCR, содержащих по 1 элементу для любой строки, в этот элемент записана информация о смещении начала любой строки развертки в файле.
^

RLE схемы битового, байтового, пиксельного уровня.


Любой алгоритм группы кодирования отличаются друг от друга длиной групп данных. RLE схема для кодирования растровых изображений и использования в большинстве форматов.

  1. битовый уровень

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

RLE кодирует в группу от 1 до 128 битов, создавая из них 1 байтовые пакеты.

7 младших битов содержат счетчик группы, старший бит содержит значение группы.

8 –ой бит – (0\1), значение группы

1-7 – ой биты – счетчик группы (0-127)

  1. байтовый уровень

Кодирует одинаковые байтовые значения, игнорируя отдельные биты. RLE кодируется в 2-х байтовый пакет

1-ый байт – счетчик группы(0-255)

2-ой байт – значение группы (0-255)

Используемая схема 2х байтового кодирования, позволяет хранить в потоке данных как закодированные, так и не закодированные группы.

Незакодированные группы – литералы. В этом случае 1-7 бит 1- го байта пакета содержит счетчик группы, а самый старший бит 1-го байта – тип группы:

1- закодированная группа

0 – литеральная группа, т. е следующие байты должны читаться на прямую из закодированных данных изображения в количестве, указанном счетчиком группы +1.
1 – ый байт 1-127 - счетчик

0-255 – значение группы


1

0-127

0-255

0

0-127

1,2,3,4,…,255


закод.
литеральная


Эффективно для изображений ,хранящихся в виде 1 байта на пиксель.

  1. пиксельного уровня

Используется для хранения 1 пиксельного значения , 2 или более смежных байтов изображения.

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

Сведения о количестве битов или байтов пикселя записаны в заголовке файла изображения.

1-ый байт – счетчик(0-255)


N

red

green

blue
2-ой байт – пиксель1 го канала(0-255)

3-ий байт – пиксель 2го канала(0-255)

4-ый байт – пиксель 3 го канала(0-255)
Существуют литеральные группы пиксельного уровня для этого также как и в схемах байтового уровня используется старший бит 1 го байта.

В RLE схемах пиксельного уровня счетчик содержит данные о количестве пикселей .

^

RLE схемы с использованием флага.


При этом способе для представления группы используется не 2 ,а 3 байта.

1ый байт – флаг, значение которого указывает на то , что следующие 2 байта часть закодированного пакета.


255

0-255

0-255
2ой байт – счетчик группы

3ий байт – значение группы
флаг 255 – закодированная группа





15

218
Если нет флага – незакодированная группа.


255

15

218

цвет

пиксель цвет

Если в процессе кодирования встречаются одинаковые группы пикселей, то их значение непосредственно в потоке сжатых данных. При декодирований:

флаговое значение – то читают и обрабатывают счетчик и значение группы

не флаговое то, он записывается напрямую

Недостатки

  • минимальный размер до 4 х символов

  • поток незакодированных данных содержит значения символов = флаговому значению, Этот символ должен быть закодирован в 3х байтовый пакет.



^

RLE пакет вертикального повторения.


Пакет вертикального повторения строк развертки. Он не хранит действительные данные строк развертки , а указывает на необходимость повторить предыдущую строку .Он занимает 2 байта.

1 ый байт – счетчик группы

2 ой байт - количество повторяемых строк развертки


255

255

0

255
FB

лекция 11.

LWZ сжатие.

Этот метод сжатия данных без потерь применяется в различных формах файловых изображений , в частности gif, tif , включен в стандартное сжатие для модемов и используется в zip архивации , compress, ipg. Был разработан Лейболом и Зифом lz-78 для растровых данных .

в 1984 алгоритм был доработан Велчем и стал LZW

LZW- позволяет работать с любыми данными, так как обеспечивает быструю распаковку и сжатие данных . Он основан на поиске шаблонов внутри заданной строки и сохранения этих шаблонов .

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

Степень сжатия 3:1-4:1 хорошо сжимает сильно насыщенный узор изображения , содержащий очень большие блоки однотонной окраски или повторяющиеся цветные узоры.

Метод LZW не является форматом, но включается в различные форматы файлов.

WED/WE/WEE/WEB/WET

^ ВЫХ.ПОСЛ. КОДИР.ПОСЛ.

/(значение) 256=/w

w 257=we

e 258=ed

d 259=d/

256 260=/we

e 261=e/

260 262=/wee

261 263=e/w

257 264=web

260 265=b/

260 266=/we

Алгоритм распаковки аналогичен сжатию с точностью до наоборот.

Работа алгоритмов начинается с проверки наличия строки (очередного символа из входящего потока в библиотеку, так как первые 255 символов уже определены , то если не находится строка в таблице символов , в выходном потоке пишется значение по таблице ASCI , а в таблицу добавляется следующее значение , равное строка+символ. Этот процесс продолжается до тех пор пока не запишутся все входящие данные инее записаны все коды.

Алгоритм LWZ относится к алгоритмам подстановки , то есть к методам адаптивного кодирования , базирующегося на словарях. Словарь строится в процессе кодирования .

LWZ –необходимо сохранять словари для последнего кодирования потока данных .

При сжатии текстовых файлов lwz или первые 250 записей словаря одного байтовыми символами ASCI.

Эти записи представляют значения , которые встречаются в потоке данных в различных композициях , строят новые подстроки , записывающиеся в конец словаря .

кодирование и декодирование начинается со словаря .
^

Кодирование CCITT.


Этот алгоритм разрабатывался для факсовых передач черно-белых изображений передачи данных.

Также называется кодирование по алгоритму Хаффмана.

Он является неадаптивным , то есть не настраивается для кодирования каждого реестра оптимальным образом , используется фиксирование таблицы кодовых значений , которые были выбраны заранее для представления данных в степень сжатия по этим алгоритмам 5:1-8:1.

Кодирование:

Кодировщик определяет длину пиксельных групп в строке развертке и выводит двоичное кодовое слово , представляющее6 длину и цвет группы . Кодированное слова берутся из таблицы значений представляемых группами белых и черных пикселей. Двоичное кодовое слово по этому алгоритму бывает переменной длины. Размер каждого слова определяется на основе статистически усредненной частоты черно-белых групп, появляется в течение печатных документов. Длины групп, встречающиеся наиболее часто ,присваивается наименьшее кодированное слово , чем длины групп, которые появляются менее часто.
^

Алгоритм Хаффмана для символьных групп.


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

файлы длиной 100 б, имеют различные символы, длина каждого 1 байт.

  1. Символы:

A 10

B 20

C 30

D 5

E 25

F 10

  1. Выбирают 2 символа с наименьшей частотой:


D,A(F) и формируют новый узел частота входа для каждого = D+A

5+10=15

A&D&F=25

B&A&D&F=45

B&A&D&F&E=70

A&B&D&C&E&F=100


C E B F A D

30 25 20 10 10 5

| |______| | |_____|

| | | 15

| 45 |_______|

| | 25

|__________|_______|

55 |

|___|

|

100

Кодирование файла всегда начинается с корня. Каждый левый поворот как 0 , а правый 1.

C 00 E 01 B 11 F 010 A 0110 D 1111

Базируется на частоте повторений величин , чем чаще встречается величина , тем короче будет её код.
^

лекция 12.

Сжатие Jpeg.


Joint photograph expert group – сформирована в 1982.

Сжатие с потерями, но сильное (20:1 – 25:1)

Jpg не является алгоритмом .Это целый набор методов сжатия.

В процессе кодирования отбрасывается та информация , которую трудно заметить визуально .

Jpg разрабатывался для уменьшения (сжатия) цветных и полутоновых фото изображений, телезаставок и др.сложной графики. Используется для сжатия видео внутри стандарта mpeg.

Объём зависит от содержимого изображения . Степень сжатия составляет 25:1 без заметной потери качества. Ничего не остается от исходного файла. Пользователь регулирует качество jpg , используя его параметр Q фактор – установка качества изменяется от1 до 100 при Q=1 создается изображение самого маленького размера и плохого качества при Q=100 наилучшее качество при большом размере.

Начальное Q=75 , если качество нормальное понижается Q, если нет – наоборот.
^

Алгоритм Jpeg.


Он основан на схеме кодирования с помощью дискретных косинус преобразований (Дкп.

Дкп всегда с потерями, но обеспечивает высокую степень сжатия при минимальных потерях.

Схема Jpeg , используется только при сжатии многоцветных изображений в которых различие между соседними пиксельными значениями незначительно. Пиксельная глубина >=5 битов на цветовой канал : 65000 цветов.

Процесс сжатия делится на:


  1. преобразование изображения в оптимальное цветовое пространство

  2. субдискретизация усреднением групп пикселей

  3. применение дкс для снижения избыточности данных изображения.

  4. квантование блока коэффициентов Дкп

  5. кодирование результирующих коэффициентов


Декодирование Jpeg в обратном порядке.
^

Преобразование изображения.


Алгоритм кодирует каждое изображение , основанное на любом типе цветового пространства. Jpeg преобразует каждый компонент отдельно в модель YCB or YCBCR , потому что в ней достигаются нужные :

Y – яркость

CB,CR – цветность(взять у Оли)

^

Субдискретизация компонентов цветности.


Воспользовавшись меньшей чувствительностью человеческого глаза, к информации уменьшая количество пикселей для каналов цветности , оставляя без изменения количество пикселей для каналов яркости.

При поступлении не сжатых данных в общепринятом формате, т. е. одинаковое разрешение для всех каналов цветности , компрессор Jpeg уменьшает разрешение каналов цветности путем СКЦ или усреднения групп пикселей . Канал яркости с полным разрешением (1:1). Оба канала цветности подвергаются СКЦ (2:1) в горизонтальном направлении и (1:1) или (2:1) в вертикальном, т. е. пиксель цветности охватывает ту же область , что и блок (2:1) ,(2:2) пикселей яркости. Согласно Jpeg эти процессы называются 2h1v and 2h2v

Дкп


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

Воздействуяна спектральное представление можно балансировать между качеством воспроизведения и степенью сжатия.

Квантование.


Прежде чем отбросить объём информации, компрессор делит выходное значение матрицы ДКП на коэффициенты квантования. Коэффициенты квантования – величина обратная Q. После деления результат округляется до целого .

чем больше коэффициент, тем больше данных теряется, т. к. реальное значение всё менее точное . На этом этапе мы управляем Jpg компрессором за счет установки качества.
^

Кодирование результирующих коэффициентов.


Они содержат объём избыточных данных кодируемых по алгоритму Хаффмана. Это позволяет понизить объём данных, удалив избыточность информации без потерь.

^

Сжатие MPEG.


Применяется при обработке видео этот метод ассиметричного сжатия. Процесс сжатия сложнее, чем распаковка.

В MPEG используется 2 типа:

  • внутрикадровое

  • межкадровое

Кодирование с предсказаниями и интерполятивное кодирование.

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

Схема позволяет кодировать видео кадр на основе между ним, предыдущим и следующим кадром видео.

Это называют интерполятивным кодированием. Для поддержки межкадрового и внутрикадрового кодирования поток данных mpeg содержит 3 типа закодированных кадров.

I – внутрикадровое кодирование, записывает один кадр , не связанный с информацией , любого другого кадра. Любой поток данных начинается с I кадра.

P – различие между текущим и предыдущими I и P кадрами

B – состоит из различии между текущими и двумя предыдущими и последующим I или P кадрами.

IBBPBBPBBPBB

Между двумя любыми I кадрами располагаются 12 P и B кадрами.

Данные MPEG декодируют раньше , чем B кадры.

  1. I

  2. P

  3. B

I,P,B кадры сжимаются с использованием метода ДКП. Но в межкадровом для P и B . снижается также временная избыточность.

Размер:

I=150kBit

P=50kBit

B=20kBit

I кадры очень похожи на Jpeg можно закодировать с использованием внутрикадрового кодирования выполняется быстрее, чем кодирование с использованием внутри межкадрового.
^

лекция 13.

Mpeg кодирование.


movie picture expert group

Сравнительный анализ Mpeg стандартов.


Mpeg 1 рассчитан на передачу видео по низкоскоростным сетям и для записи на CD со скоростью 150 kBit/с . Разрешающая способность уменьшается в два раза (по обеим осям ) по сравнению с разверткой вещательного канала(720*576) , т. к. 288 строк и 360 отчетов по оси Х . При внутрикадровом сжатии появились «квадратики» .Полный фильм занимал 2 CD.

Super video CD повышено разрешение и понижена степень сжатия Jpeg компрессором, добавлено поддержка хорошего звука.(3 CD)

Mpeg 2(1995) _это доработка Mpeg 1 под новые возможности. Используются для обработки видео изображения согласованные по качеству при способности каналов передачи данных от 3 до 15 Мбаит /с.

Это DVD продукция , изначально использовалась для спутникового телевидения .(НТВ+,HOT BIRD).

20 каналов.

DVD digital video disk – однослойный (4,7Гбайта)

Отличие MPEG1 от MPEG2

  1. После разбивки на кадры и группы кодер анализирует на предмет повторяющихся данных. Составляется список оригинальных и повторяющихся участков. Оригиналы сохраняются, копии повторяются. Таблицы используются при декодировании.

  2. При внутрикадровом сжатии вместо линейного преобразования используется нелинейное преобразование.

  3. Оптимизирован алгоритм предсказания движения

  4. в процессе кодирования можно задавать точность частотных коэффициентов матрицы квантования. Точность 8-11 бит на одно значение в зависимости от пропускной способности сети или ёмкости носителя.

  5. Добавлен многоканальный звук Dolby digital 5.1 и DTS

Mpeg 3 Для использования в системах телевидения с высокой четкостью со скоростью 40 Мбит/с. Параметры необходимы для HDTV.отдельно он не используется.

Mpeg4


появился в конце 1999.Этот стандарт задает принципы работы с цифровым представлением медиаданных (контентом).

Для трёх областей мультимедиа данные ,графические приложения , цифровое телевидение. Определен двоичный язык описания объектов, классов и сцен.

Помимо видео и аудио объектов работает с естественными и с синтезированными 2 и 3D объектами.

Картина разделяется на составные элементы – медиа объекты, описываются структура этих объектов, их взаимосвязь. Для сборки в единую видео-звуковую сцену . Результирующая сцена состоит из объектов содержащихся в иерархической структуре.

  • Неподвижная картинка(фон)

  • Видео объект (говор. человек)

  • Аудио (голос видео объекта)

  • текст, связанный с данной сценой

  • Синтетические объекты

  • текст для синтетических объектов, преобразуемый в синтетический голос

Такой способ представления данных позволяет перемещать и помещать объекты в любое место сцены, трансформировать объекты, изменяя их отдельные составляющие и производить над ними любые возможные операции; менять точку наблюдения за всей сценой

МР4 –фильм сжатый кодером со стандартом Mpeg 4 . Отличие алгоритма компрессии от предыдущих стандартов:

  • Кадр делится на блоки, кодер оперирует целыми объектами произвольной формы в зависимости от содержимого.

  • Интеллектуальный способ расстановки ключевых I – кадров. Выделяются только в момент смены сюжета, хотя расстанавливаются с определенной регулярностью.

  • Эффект компрессии увеличен в несколько раз и фильм помещается на 1CD=670 Mbait

Div X кодер позволяет компрессировать видео в соответствие со стандартом Mpeg 4

^

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


В нем описан стандартный набор дескрипторов для различных типов мультимедиа.

Основная цель – поиск машиной специальной мультимедийной информации.

несколько звуков – мелодия

эскиз – набор картин

видео – набор роликов и видео клипов

голос – набор песен или видео клипов

Ну вот и все что мы набрали!!!!!!!!!!!!!!!!!!!!!!!!







Скачать файл (107.5 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации