Использование дискретного вейвлет-преобразования для сжатия графической информации

ИСПОЛЬЗОВАНИЕ ДИСКРЕТНОГО ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ ДЛЯ СЖАТИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ

M. A. Таловская, Е. А. Кочегурова

Институт кибернетики Национального исследовательского Томского политехнического университета, 634050, Томск, Россия

УДК 004.627

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

Ключевые слова: сжатие изображений, JPEG2000, схема лифтинга, сценарий сжатия изображений.

Classical methods of compressing graphics and methods with discrete wavelet transform were considered. Analysis of compression efficiency based on wavelet transform was presented. Fundamental stages of wavelet compression algorithms were emphasized.

Key words: image compression, JPEG2000, lifting scheme, script image compression.

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

Существует большое количество алгоритмов, позволяющих сжимать изображения. Классические методы, такие как алгоритм JPEG, работают на основе дискретного косинусного преобразования, являющегося частным случаем преобразования Фурье. Данный алгоритм работает по отдельности с блоками изображений размером N х N пикселей, что при высокой степени сжатия способствует проявлению блочной структуры изображений. При сжатии с помощью вейвлет-преобразования такой проблемы не возникает, при этом могут появляться искажения [1] в виде ряби вблизи четко выраженных границ, смазанные линии, ложные линии, так как алгоритм последовательно обрабатывает именно границы выделяемых областей. Однако считается, что такие артефакты менее заметны наблюдателю.

В целом сжатие на основе вейвлет-преобразования является более требовательным к ресурсам, чем преобразование Фурье, так как использует более сложный математический аппарат.

а б в

Рис. 1. Примеры восстановления изображения: а - исходное изображение; б - фотография, восстановленная после сжатия с помощью JPEG-алгоритма; в - фотография, восстановленная после сжатия с помощью JPEG2000

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

Выделяются два класса методов сжатия изображения, основанных на вейвлет-преобразова-нии: внутриподдиапазонный и межподдиапазонный. На основе внутридиапазонных методов работают такие алгоритмы, как JPEG2000 и ICER.

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

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

Алгоритм JPEG2000 не является наиболее популярным вариантом сжатия фотографических снимков, так как не поддерживается большинством веб-браузеров, хотя используется в сервисах Google. При этом сам алгоритм вейвлет-преобразования не позволяет сжимать данные, но позволяет преобразовать входное изображение (рис. 2,а), так чтобы без значительного ухудшения качества можно было уменьшить его избыточность.

Основным отличием обработки данных на основе вейвлет-преобразования является возможность восстановления данных без потерь и возможность получать результат постепенно, увеличивая детализацию по мере загрузки новых данных [2]. Описанная особенность преобразования позволяет использовать данный вид сжатия в различных многопользовательских он-лайн-играх, в которых контент создают сами пользователи, например в SecondLife.

Для реализации "прогрессивной" загрузки поток после вейвлет-преобразования организуется особым образом: сначала загружаются старшие биты низких частот, далее - младшие биты

Рис. 2. Алгоритм сжатия изображения на основе вейвлет-преобразования: а - исходное изображение; б - третий шаг дискретного вейвлет-преобразования исходного изображения

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

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

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

На рис. 2 видно, что на каждом шаге изображение сжимается в двух направлениях [3], т. е. фильтры поочередно применяются к столбцам и строкам матрицы изображения. Таким образом, в файле хранятся уменьшенное исходное изображение и пары обратных фильтров.

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

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

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

Коэффициент фильтрации J

F. _ i ч

-и

0

;- -п

Si 1

©

К +

Frn

Si+i

Рис. 3. Схема деления сигнала при использовании схемы лифтинга

Данная схема имеет большое количество разновидностей [4] различной сложности, таких как дуальный лифтинг, лифтинг Хаара, лифтинг высших порядков. Схема лифтинга применяется в работе алгоритма JPEG2000. Наиболее простой схемой является схема лифтинга Хаара для пары фильтров с одним коэффициентом (см. рис. 3). При этом с каждым шагом I изменяется обрабатываемая матрица Е и уменьшается поток обрабатываемых данных

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

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

к = 81§п

АЬ

где y - исходное заданное значение коэффициента; функция sign определяет знак параметра; АЬ - заданное значение шага округления.

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

При увеличении i значения коэффициентов становятся ближе к нулю, что позволяет получить большую степень сжатия. Таким образом, данное преобразование представляет собой простой способ управления степенью потерь в изображении.

Рис. 4. Схема работы постоянного квантователя с мертвой зоной

Основной сценарий сжатия изображений на основе вейвлет-преобразования может быть разделен на следующие этапы:

1. Препроцессинг:

- конвертирование изображения в байтовый массив RGB-значений;

- перекодирование RGB в YCrCb с квантованием итоговых цветовых компонентов.

2. Дискретное вейвлет-преобразование (применение фильтров).

3. Организация битов на выходе:

- перевод многомерного массива в одномерный;

- сжатие полученного потока.

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

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

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

Список литературы

1. Шокуров А. В. Система удаленного извлечения фрагмента растрового изображения измеряемой детализации, адаптированная к его размеру // Пробл. информатики. 2012. № 1. С. 25-39.

2. Семенюк В. Обзор стандарта JPEG2000. СПб., 2002. [Электрон. ресурс]. http://www.compression.ru/download/ jpeg2000.html.

3. ISO/IEC 15444-2:2004(Е)/[Текст]. P. 54-56.

4. Алексеев К. А. Модели и алгоритмы вейвлет-обработки сигналов датчиков с применением лиф-тинга. Ч. 1. Теоретические основы лифтинга // Датчики и системы. 2002. № 1. С. 3-9.

5. Рыбаков Г., Суслов А. JPEG, JPEG2000, JPEG-LS. Сжатие изображений с потерями и без. Б. м., 2006. [Электрон. ресурс]. http://rain.ifmo.ru/cat/view.php/theory/data-compression/jpeg-2006.

Таловская Марина Александровна - магистрант Института кибернетики Томского политехнического университета; e-mail: lull@sibmail.com;

Кочегурова Елена Алексеевна - канд. техн. наук, доц. Института кибернетики Томского политехнического университета; e-mail: kocheg@mail.ru

Дата поступления - 25.09.12 г.