Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по компьютерной графике [по билетам].doc
Скачиваний:
68
Добавлен:
02.05.2014
Размер:
805.89 Кб
Скачать

9. Алгоритмы архивации с потерями, проблемы алгоритмов архивации с потерями. Основные идеи алгоритмов jpeg, фрактальный, волновой.

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

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

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

JPEG – один из самых новых и достаточно мощных алгоритмов. Разработан группой экспертов в области фотографии специально для сжатия 24-битных изображений. Оперирует алгоритм областями 8х8, на которых яркость и цвет меняются сравнительно плавно. Вследствие этого при разложении матрицы такой области в двойной ряд по косинусам значимыми оказываются только первые коэффициенты. коэффициенты. Таким образом, сжатие в JPEG осуществляется за счет плавности изменения цветов в изображении. Метод позволяет сжимать некоторые изображения в 10-15 раз без серьезных потерь.

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

Рекурсивный (волновой) алгоритм исходит из идеи использования когерентности областей. Ориентирован алгоритм на цветные и черно-белые изображения с плавными переходами. Идея алгоритма заключается в том, что в файле сохраняется разница – число между средними значениями соседних блоков в изображении, которая обычно принимает значения, близкие к 0. К достоинствам этого алгоритма можно отнести то, что он очень легко позволяет реализовать возможность постепенного “проявления” изображения при передаче его по сети.

(Вопрос) Удаление скрытых линий и поверхностей: алгоритм удаления поверхностей с Z-буфером, построчный Z-буфер, иерархический Z-буфер, Z-пирамида.

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

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

Общая схема такого алгоритма следующая:

1. Подготовка данных. Для каждого многоугольника определить максимальную Y-координату. Занести многоугольник в груп­пу многоугольников, соответствующую данной Y-координате.

2. Совбстенно заливка.

Иерархический z-буфер

Опишем куб вокруг всей сцены. Разобьем его на 8 равных частей.

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

Для облегчения проверки грани на скрытость можно использо­вать z-пирамиду. Ее нижним уровнем является сам z-буфер. Для по­строения следующего уровня пиксели объединяются в группы по 4 (22×) и из их глубин выбирается наибольшая. Таким образом, сле­дующий уровень оказывается тоже буфером, но его размер уже будет меньше исходного в 2 раза по каждому измерению. Аналогично стро­ятся и остальные уровни z-пирамиды до тех пор, пока не будет дос­тигнут уровень, состоящий из единственного пикселя, являющегося вершиной z-пирамиды.

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

Билет 26