Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
llama / llama_master_thesis_MPiTK_2006_VM-1.pdf
Скачиваний:
18
Добавлен:
16.04.2013
Размер:
1.6 Mб
Скачать

Московский государственный институт электронной техники (технический университет)

Кафедра высшей математики №1

Коплович Дмитрий Михайлович

Разработка алгоритма цифровой видеокомпрессии на основе дискретного вейвлет-преобразования для программноаппаратных систем

диссертация на соискание степени магистра по направлению 552800 «Информатика и вычислительная техника», магистерская программа

552821 «Цифровая обработка сигналов»

Научный руководитель:

д.ф.-м.н., проф. Умняшкин С.В.

Москва, 2006

Содержание

 

Введение ......................................................................................................................

4

Цель и описание диссертационной работы..........................................................

5

Постановка задачи..............................................................................................

5

Структура диссертационной работы.................................................................

5

Положения, выносимые на защиту.......................................................................

6

1. Сжатие статических изображений и видеосигналов...........................................

7

1.1. Основные понятия ...........................................................................................

7

1.2. Понятие контекстного кодирования..............................................................

9

1.3. Обзор методов цифровой видеокомпрессии...............................................

10

1.3.1. Общие идеи..............................................................................................

10

1.3.2. Motion JPEG.............................................................................................

12

1.3.3. H.261.........................................................................................................

12

1.3.4. MPEG-2 ....................................................................................................

13

1.3.5. MPEG-4 ....................................................................................................

13

1.3.6. H.264.........................................................................................................

14

1.4. Методы компенсации движения ..................................................................

15

1.4.1. Общие идеи..............................................................................................

15

1.4.2. Полный перебор......................................................................................

17

1.4.3. Перебор соседних блоков.......................................................................

17

1.4.4. Трехшаговый алгоритм Koga и др. .......................................................

18

1.4.5. Алгоритмы diamond search и cross-diamond search..............................

18

1.5. Выводы............................................................................................................

21

2. Алгоритм видеокомпрессии.................................................................................

22

2.1. Общая схема...................................................................................................

22

2.2. Компенсация движения.................................................................................

23

2.3. Кодирование векторов движения.................................................................

29

2.4. Уточняющее изображение............................................................................

31

2.5. Кодирование цветоразностной информации ..............................................

41

2.6. Вывод информации в битовый поток..........................................................

41

2.7. Выводы............................................................................................................

42

 

2

3. Тестирование алгоритма......................................................................................

43

3.1. Общая схема тестирования...........................................................................

43

3.2. Настройки кодека MPEG-2 ...........................................................................

44

3.3. Настройки алгоритма.....................................................................................

44

3.4. Результаты тестирования..............................................................................

45

3.5. Выводы............................................................................................................

56

4. Оптимизация вычислений....................................................................................

57

4.1. Общие направления оптимизации ...............................................................

57

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

58

4.3. Оптимизация алгоритма SPIHT....................................................................

58

4.4. Выводы............................................................................................................

60

Заключение................................................................................................................

61

Литература.................................................................................................................

62

Приложение. Исходные коды некоторых подпрограмм.......................................

65

3

Введение

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

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

Кинофильмы на DVD практически вытеснили аналоговые видеокассеты так же, как до этого аудиокассеты уступили место компакт-дискам и записям в формате

MP3.

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

Все это было бы невозможным без развития важного направления цифровой обработки сигналов – методов сжатия изображений и видео. Один DVD емкостью 4 гигабайта может хранить чуть больше 2 минут SD-видеозаписи (720 на 576 пикселов) без сжатия и несколько часов сжатой записи, причем невооруженным глазом разница в качестве между ними незаметна.

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

4

реальном времени и сохраняющим их в циклический архив на массиве жестких дисков.

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

Цель и описание диссертационной работы

Постановка задачи

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

Работа посвящена решению следующих задач:

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

реализация алгоритма видеокодека и его оптимизация;

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

Структура диссертационной работы

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

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

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

5

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

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

Вприложении приведены исходные коды некоторых подпрограмм, входящих

всостав видеокодека.

Положения, выносимые на защиту

На защиту выносятся следующие положения:

алгоритм кодирования видеопотока на основе двумерного ДВП и межкадровой компенсации движения;

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

6

1.Сжатие статических изображений и видеосигналов

1.Сжатие статических изображений и видеосигналов

1.1. Основные понятия

Дискретным полутоновым изображением будем называть матрицу X ,

состоящую из N строк и M столбцов, элементы которой представляют собой отсчеты функции яркости Y (u,v) монохроматического светового источника:

xkl =Y (k u ,l v ),

(1)

k = 0,1,, N 1, l = 0,1,M 1,

 

где u , v – выбранные шаги дискретизации.

Элементы матрицы X будем называть точками изображения, или пикселами. Модель (1) описывает изображение, обладающее «фотографическими» свойствами, которые определяют его визуально полутоновый характер [1].

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

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

7

1. Сжатие статических изображений и видеосигналов

Принципиальная возможность сокращения объема данных заключается в том, что изображения (в том числе и цифровые) обладают высокой степенью избыточности с точки зрения содержания информации. Это связано, во-первых, с тем, что между близкими отсчетами функции яркости (соседними элементами матрицы X ) имеется сильная статистическая зависимость. Из теории информации известно, что наличие зависимости между элементами сообщения приводит к уменьшению количества информации, переносимой этим сообщением при том же его объеме (то есть объем сообщения используется неэффективно) [2].

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

Общая схема методов сжатия изображений в большинстве случаев состоит из следующих шагов:

1.Снижение межэлементной корреляции.

2.Квантование элементов данных.

3.Кодирование данных.

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

8

1. Сжатие статических изображений и видеосигналов

Среди дискретных преобразований, имеющих быстрые алгоритмы вычислений, хорошее приближение к оптимальному преобразованию Карунена-Лоэва [4] дает

дискретное косинусное преобразование (ДКП) [5]. ДКП используется в первой спецификации JPEG [6] и остается основой многих стандартов видеокомпрессии. Однако все большее распространение получают методы сжатия на основе

дискретного вейвлет-преобразования [8], взятого за основу нового стандарта

JPEG 2000 [9].

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

Последний этап – это непосредственное кодирование данных. Для этого используются алгоритмы статистического кодирования [10]: LZW, Хаффмана, арифметическое кодирование и др. Указанные алгоритмы выполняют сжатие данных без потерь информации.

1.2.Понятие контекстного кодирования

Влитературе по сжатию данных понятие контекста носит очень широкий смысл. Например, в задачах сжатия текста под контекстом некоторого символа понимается набор, состоящий из определенного числа символов, непосредственно предшествующих данному. Число символов, входящих в контекст, определяет максимальный порядок моделирования. В сжатии изображений бывает, что в контекст входят не сами символы, которые имеются в потоке данных, а некоторые функции от них, например, логическая функция проверки на нулевое значение. Общим является то, что всегда есть некоторый символ, контекст которого рассматривается, а число объектов, составляющих контекст, конечно. Одно из наиболее общих понятий контекста состоит в следующем [11]: контекст i -го

символа si

есть результат отображения f (s j , s j

,, s j

), r > 0 , где

s j

, s j

,, s j

,

 

1

2

r

1

2

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.

Соседние файлы в папке llama