Содержание к диссертации
Введение
ГЛАВА 1. Исследование методов кодирования на основе устранения статистической и психофизиологической избыточностей внутрикадрового и межкадрового направлений видеоинформационного сигнала 15
1.1 Характеристики параметров зрительной системы человека 15
1.2 Алгоритмы энтропийного кодирования при сжатии спектра видеоинформационного сигнала 24
1.3 Методы кодирования с потерями
1.3.1 Методы внутрикадрового кодирования с потерями на основе ДКП 40
1.3.2 Методы внутрикадрового кодирования с потерями на основе вейвлет преобразований 47
1.3.3 Внутрикадровое предсказание 65
1.3.4 Межкадровое предсказание и кодирование
1.4 Перспективные направления совершенствования алгоритмов сжатия видеоинформационных сигналов 73
1.5 Выводы 76
ГЛАВА 2. Формирование сигналов управления для адаптивного преобразования видеоинформационного сигнала 79
2.1 Современные методы противошумовой обработки сигналов 79
2.1.1 Фильтры пространственной области 83
2.1.2 Фильтры области преобразования 94
2.1.3 Фильтры на основе обучающегося словаря 100
2.2 Апертурная коррекция 103
2.3 Разработка метода противошумовой коррекции 108
2.4 Формирование сигналов управления для адаптивного преобразования видеоинформационного сигнала 119
2.5 Выводы 128
ГЛАВА 3. Реализация методов сжатия видеоинформационных сигналов 132
3.1 Реализация метода внутрикадрового кодирования на основе управляющих сигналов с итерационным методом шумовой коррекции 132
3.1.1 Метод внутрикадрового кодирования на основе управляющих сигналов с итерационным методом шумовой коррекции 132
3.1.2 Структура и алгоритм работы кодера внутрикадрового кодирования на основе управляющих сигналов с итерационным методом шумовой коррекции 133
3.1.3 Структура и алгоритм работы декодера внутрикадрового кодирования на основе управляющих сигналов с итерационным методом шумовой коррекции 141
3.2 Реализация метода межкадрового кодирования с предсказанием на основе
управляющих сигналов с итерационным методом шумовой коррекции 143
3.2.1 Метод межкадрового кодирования с предсказанием на основе управляющих сигналов с итерационным методом шумовой коррекции 144
3.2.2 Структура и алгоритм работы кодера межкадрового кодирования с предсказанием на основе управляющих сигналов с итерационным методом шумовой коррекции 145
3.2.3 Структура и алгоритм работы декодера межкадрового кодирования с предсказанием на основе управляющих сигналов с итерационным методом шумовой коррекции 156
3.3 Выводы 157
ГЛАВА 4. Результаты работы и экспериментального исследования разработанных методов формирования управляющих сигналов, внутрикадрового и межкадрового кодирования 159
4.1 Выбор исходных данных 159
4.2 Результаты моделирования работы внутрикадрового сжатия с внедрением разработанного метода кодирования 161
4.3 Результаты моделирования работы межкадрового сжатия с внедрением разработанного метода кодирования 172
4.4 Выводы 178
Заключение 180
Список литературы
- Методы внутрикадрового кодирования с потерями на основе вейвлет преобразований
- Фильтры пространственной области
- Метод внутрикадрового кодирования на основе управляющих сигналов с итерационным методом шумовой коррекции
- Результаты моделирования работы межкадрового сжатия с внедрением разработанного метода кодирования
Методы внутрикадрового кодирования с потерями на основе вейвлет преобразований
Конечной точкой приема видеоинформационного сигнала является зрительная система человека, которая регистрирует и обрабатывает эту информацию, представляя ее в виде изображений. По этой причине при проектировании новейших видеоинформационных систем или модифицировании существующих очень важно учитывать особенности зрительной системы человека. Учитывая данные особенности, становится возможным формировать набор критериев верности воспроизведения изображения на выходе видеоинформационной системы и дешифруемости этого изображения человеком.
Зрительная система человека состоит из глаз, зрительного нерва и мозга [48], совместная работа которых обеспечивает формирование объемных изображений окружающего мира.
Глаз, как и объектив телевизионной камеры, представляет собой оптический приемник и является тонким и сложным механизмом. От качества приходящего на вход приемника сигнала (в нашем случае сигнала изображения), согласованности его характеристик с обрабатывающей системой приемника и точности обработки этим приемником будет зависеть степень верности формирования изображения в мозгу.
Для того чтобы понять, как обеспечить согласованность приходящего сигнала с характеристиками глаза, рассмотрим основные элементы глаза и принцип их работы.
Глаз человека состоит из таких основных элементов как склера, зрачок, хрусталик и сетчатка. Склера служит биологическим корпусом глаза, который содержит в себе остальные из, перечисленных выше, элементов. Зрачок представляет собой диафрагму, регулирующую количество пропускаемого света. Хрусталик является линзой, обеспечивающей фокусировку глаза на объекты. Сетчатку можно описать как световоспринимающую матрицу, которая состоит из двух видов активных анализирующих элементов – палочек и колбочек.
Благодаря результатам физиологических исследований глаза известно, что палочки активируются в темноте или в сумеречное время и воспринимают только оттенки серого. Колбочки участвуют в дневном зрении, воспринимают цвет и, соответственно, их разрешающая способность намного выше, чем у палочек. Кроме того, в связи с работой в разных условиях, максимальная чувствительность палочек и колбочек достигается на разных длинах волн. По этой причине чувствительность глаза человека зависит от длины волны. Диапазон длин волн, в котором глаз способен регистрировать сигналы, составляет от 380 нм до 760 нм. Наибольшая чувствительность, а следовательно разрешающая способность глаза, достигается на длине волны 555 нм (зелено-желтый цвет), при дневном зрении, и на длине волны 515 нм, при сумеречном зрении. По мере удаления от этого значения, в обе стороны спектра, чувствительность глаза падает и начинает стремиться к нулю, начиная со значений длин волн 380 нм – фиолетовый цвет и 760 нм – красный цвет. Все, что лежит по обе стороны границ данного диапазона, называется ультрафиолетовым и инфракрасным излучением соответственно [1].
Спектральная характеристика - это зависимость спектральной плотности мощности излучения от частоты (длины волны) излучения. Применительно к глазу человека, спектральную характеристику называют кривой видности. Соответственно для зрения человека различают две кривых видности – для дневного и ночного зрения. У разных наблюдателей, кривые видности различны, поэтому существуют их среднее представление, приведенное на рисунке 1.1. Рисунок 1.1. Кривые видности человеческого зрения в области длин волн Из-за сдвига между кривыми дневного зрения и ночного зрения, который можно наблюдать на зависимостях рисунка 1.1, колбочки регистрируют сине-фиолетовый цвет как светлый оттенок серого, а красный – темный. Этот сдвиг называется сдвигом Пуркинье [3] .
Кроме этого, значение дневной чувствительности глаза к излучению, к примеру, с длиной волны 520 нм абсолютно идентично чувствительности к излучению с длиной волны 690 нм, а значение чувствительности глаза к излучению с длиной волны 480 нм идентично чувствительности к излучению с длиной волны 630 нм. Таким образом, объекты, имеющие разные значения яркости, глазом могут восприниматься как одинаково яркие или же воздействие одинаково ярких объектов, к примеру, с синим и зеленым цветами, будет восприниматься не одинаково [2, 3].
В связи с изложенным выше можно также отметить, что, в зависимости от регистрируемой зрительной системой яркости, имеет место адаптация глаза. Адаптация происходит за счет манипулирования размером зрачка глаза, а также переходом с колбочкового зрения на палочковое или наоборот. При этом существует темновая адаптация, под которой подразумевается переход от воздействия яркого света к менее яркому, и световая адаптация - от темного к яркому.
Фильтры пространственной области
После назначения соответствующей модели кодер переходит к третьему этапу. Если кодер принял решение использования упрощенной модели кодирования, то второй этап опускается. Упрощенный режим кодирования активируется в случае, если значение вероятности текущего символа равно значению вероятности предыдущего символа или распределение вероятностей символов одинаково.
Третий этап представляет собой кодирование с использованием арифметического метода сжатия. Кодирование здесь выполняется либо с учетом вероятностной модели, присвоенной на предыдущем этапе при стандартном режиме кодирования, либо без нее в случае упрощенного режима. В последнем случае кодирование выполняется намного быстрее с наименьшими затратами вычислительных ресурсов.
Степень сжатия, которая достигается алгоритмом CABAC, является одной из самых высоких, что делает его очень привлекательными методом для сжатия видеоинформационных сигналов. Однако, как было отмечено ранее, арифметический метод сжатия – это один из самых затратных в области вычислительных ресурсов. По этой причине эффективное применение метода сжатия CABAC возможно только с использования довольно мощных аппаратных средств, как на стороне кодера, так и на стороне декодера.
Таким образом, при выборе используемого метода кодирования следует учитывать уровень сложности вычислений и выигрыш в степени сжатия. В подавляющем большинстве наиболее эффективным методом энтропийного сжатия, с точки зрения соотношения сложность вычислений/степень сжатия, является алгоритм Хаффмана, что дает ему преимущество над другими методами сжатия. Однако, в настоящее время большинство современных аппаратных платформ обладают достаточным объемом вычислительной мощности и для выполнения арифметического кодирования.
Рассмотрим применение алгоритма Хаффмана на примере формата сжатия JPEG [10], т.к. принципы именно этого стандарта в настоящее время часто используются при устранении внутрикадровой избыточности в видеоинформационном сигнале.
В стандарте JPEG энтропийное сжатие является последнем этапом в сжатии изображения. Предшествующие этапы кодирования доступно описаны в литературе [11,12].
Как известно, изображение, при кодировании в JPEG, разделятся на блоки размером 8x8 пикселей, называемые также MCU (Минимально кодируемая единица) [10] блоками, которые можно представить в виде квадратных матриц размером 8х8. После процедуры ДКП в такой матрице содержатся значения составляющих спектра MCU блока, который она представляет. Кодированию методом Хаффмана подвергается последовательно каждая из матриц с использованием одной таблицы кодов Хаффмана для всех MCU. В таблице кодов Хаффмана приведены соответствия между значениями составляющих спектра и описывающими их кодами переменной длины (набор бит). Кодек JPEG может использовать стандартные таблицы, приведенные в приложении (K) к спецификации стандарта JPEG, либо сформировать оригинальную таблицу, либо оптимизировать с учетом специфики кодируемого сигнала изображения стандартную. В первом случае исключается операция набора статистических данных по изображению и формирования на их основе дерева Хаффмана, что приводит к снижению вычислительной нагрузки и уменьшению времени, необходимого для кодирования изображения. В остальных случаях, в ущерб количеству вычислений и скорости кодирования, достигается наиболее эффективное сжатие изображений за счет того, что таблица кодов Хаффмана будет составлена с учетом особенностей ансамбля кодируемых сигналов изображений.
Для возможности последующего декодирования изображения на приемной стороне канала связи, таблицы кодов Хаффмана введены в выходной сигнал цифрового потока кодера. При этом в передаваемой таблице записываются только количество бит кодов переменной длины и соответствующие этим длинам значения коэффициентов матриц, а не фактическое перечисление “битовая строка - значение коэффициента”. Пример такой таблицы в декодированном, с использованием программы JPEGsnoop, виде приведен на рисунке 1.11. Рисунок 1.11. Декодированная таблица Хаффмана, записанная в файл JPEG Для оптимального кодирования значений кодов переменной длины, полученных в результате кодирования Хаффмана, чаще всего пользуются таблицами в количестве до 4 штук, начало которых обозначено маркером DHT (FFC4).
Количество используемых таблиц поясним следующим образом: начальным этапом кодирования изображения в JPEG является перевод цветового пространства RGB в YCrCb, поэтому одна таблица содержит матрицы значений коэффициентов яркостных составляющих Y, вторая - цветовых компонентов CrCb.
Кроме этого, при кодировании коэффициенты каждой матрицы блока 8х8 подразделяются на AC и DC коэффициенты.
DC коэффиценты - это коэффициенты постоянных составляющих или коэффициенты низких частот. В верхним, левым, значением M(0,0). Предварительно, перед кодированием, значение коэффициента М(0,0) меняется на величину: ; М(0,0)И_І - значение каждой матрице M, размером 8х8, DC коэффициент представлен крайним коэффициента М(0,0) в предыдущем, по порядку, блоке.
Этот шаг позволяет уменьшить общее число двоичных символов для представления всех коэффициентов М(0,0) всех блоков изображения [1].
Остальные 63 коэффициента блока, AC коэффициенты, кодируются независимо от коэффициентов в других блоках. Таким образом, две таблицы используют для DC коэффициентов Y и CrCb составляющих, еще две для - АС коэффициентов Y и CrCb составляющих.
На приемной стороне канала связи декодер считывает данные из этих таблиц и на их основе реконструирует деревья Хаффмана, далее составляет таблицу кодов Хаффмана, в которой отражено соответствие между кодами переменной длины и конкретными значениями коэффициентов ДКП.
В JPEG предусмотрено и использование арифметического сжатия вместо кодирования Хаффмана, но применяется оно крайне редко по ряду причин, основные из которых перечислены выше, а другие связаны с отсутствием поддержки этого кодирования большинством декодеров и наличием патентных ограничений.
Метод внутрикадрового кодирования на основе управляющих сигналов с итерационным методом шумовой коррекции
Фильтр LSSC [69] также относится к представителям фильтров на основе обучающегося словаря и является улучшением предыдущего фильтра. В данном фильтре предложено использование комбинации методов нелокальной обработки и модифицированного разреженного кодирования. В отличие от фильтра K-SVD, предполагается, что схожие патчи в изображении должны иметь и схожие разреженные вектора. Совмещая метод нелокальной обработки с процессом разреженного кодирования, можно существенно увеличить скорость поиска необходимых патчей в неструктурированном словаре. Однако недостаток, связанный с уточнением процедуры определения и структурирования состава данных обучающегося словаря, в этом фильтре также не был устранен, являясь причиной появления артефактов.
Стоит уделить внимание и фильтру CSR [71], алгоритм которого также пошел по пути объединения в себе нескольких наиболее удачных методов противошумовой обработки. В этом фильтре объединены принцип обучающегося словаря из фильтра K-SVD и принцип структурной кластеризации (формирование групп) из фильтра BM3D [71]. При этом CSR отличается от предыдущих двух фильтров тем, что не требует какого-либо первоначального словаря. Словарь данного фильтра начинает обучаться в процессе обработки изображения с шумами. Кроме этого, в CSR, для более эффективного описания нелокального разрежения, используется нормировка в пространстве L1. Менее удачным решением следует признать использование пространство L2 в фильтре LSSC.
Таким образом, фильтры на основе обучающегося словаря позволяют проводить противошумовую обработку изображения адаптивно к структуре изображения. Первым представителям данных фильтров, таким, как K-SVD, удалось добиться удовлетворительных результатов шумоподавления. Их большим минусом стало то, что сходные по параметрам патчи могли получить очень разную разреженную декомпозицию. Дальнейшие фильтры улучшили результаты шумоподавления с введением кластеризации в разреженных декомпозициях. При этом минусом здесь стало то, что производительность сильно зависела от заданных параметров начального словаря, которые формировались для высококачественного изображения, а не для изображений с шумами. Общим и главным недостатком всех фильтров на основе обучающегося словаря является крайне высокая степень вычислительной сложности, которая обусловлена тем, что алгоритмы данных фильтров являются результатами симбиоза двух и более методов обработки изображения, описанных ранее. Кроме этого, алгоритмы для достижения, хотя бы, удовлетворительных результатов используют более одной итерации обработки.
Завершая обзор современных методов противошумовой обработки сигналов можно отметить следующие важные для разработки новых методов моменты: - нелокальные и одновременно итерационные методы обработки зарекомендовали себя как наиболее эффективные при подавлении шума, чем локальные, вследствие того, что самоподобие присутствующее в изображении в целом, позволяет качественнее реализовать усреднение аддитивного Гауссовского шума по сравнению с полиномиальной аппроксимацией и аппроксимацией на основе кернфункций; - адаптивные базисные функции, применяемые в преобразованиях, эффективнее представляют изображение, чем фиксированные (периодичные) базисные функции; - эффективность LSSC фильтра в некоторых случаях выше, чем у BM3D; - мульти-масштабный анализ с переменным разрешением, предоставляемым ДВП, зачастую эффективнее, чем одномасштабный, с фиксированным разрешением; - производительность BM3D фильтра, в большинстве случаев, превосходит фильтр LPG-PCA; - представление исходного изображения в качестве модели этого изображения, но с избыточностью, положительно сказывается на эффективности шумоподавления; так, фильтр KSPR показывает лучшие итоговые результаты шумоподавления при высоких уровнях шума в сравнении с фильтром MSKR. Соответственно, на основании вышесказанного, можно заключить, что в области шумоподавления наиболее эффективными на сегодняшний момент являются фильтры LSSC, CSR и BM3D. Однако процесс реализации алгоритмов почти всех фильтров является требовательным к вычислительным и временным ресурсам.
Видеоинформационный сигнал в своем составе, помимо составляющих шума, содержит искажения, вызванные апертурой элемента захвата передаваемой сцены. Соответственно формирование видеоинформационного сигнала всегда неизбежно связано с появлением в составе этого сигнала апертурных искажений [82]. Апертурные искажения приводят к падению на высоких частотах уровня составляющих пространственного направления изображения кадра, что ухудшает характеристики видеоизображения в этом направлении [83].
Недостатком коррекции такого рода является увеличение, пропорционально графику на рисунке 2.9, наряду с полезными составляющими сигнала уровня составляющих шума, локализованного в ВЧ области корректируемого сигнала, что приводит к повышению заметности шума на изображении. Кроме того, для эффективной коррекции, апертурные искажения, локализация которых отмечается только в пространственной области видеоинформационного сигнала, необходимо корректировать по горизонтальному и вертикальному направлениям. Однако, с целью увеличения быстродействия формирующего видеосигнал оборудования и упрощения его конструкции, апертурную коррекцию обычно используют только в горизонтальном направлении. Это приводит к характерным искажениям в случае обработки мало интенсивных и зашумлённых сигналов, т.к. отсутствует адаптивность коррекции к структуре самого сигнала. В силу сказанного выше, можно отметить, что апертурная коррекция существенно влияет на уровень шумов в видеоизображении и, соответственно, на качество формирования сигналов управления. Наибольшую заметность это влияние приобретает в условиях низкой средней освещённости контролируемой сцены.
Таким образом, всегда необходимо учитывать не идеальность работы корректирующих апертурные искажения устройства, и, в случае необходимости реализации эффективного сжатия видеосигнала, принимать меры по устранению остаточных апертурных искажений в процессе преобразования, обработке видеоинформационного сигнала, а также при формировании для него управляющих сигналов.
Один из наиболее эффективных методов коррекции апертурных искажений был предложен в [84]. В данной работе получены расчётные данные, при анализе которых получило подтверждение предположение о том, что корректировка искажений будет выполняться эффективнее, если общий спектр частот видеоинформационного сигнала разбить на два (низкочастотный и высокочастотный) и более поддиапазонов частот, а затем, дальнейшую, корректирующую искажения, обработку проводить над каждым из поддиапазонов.
Результаты моделирования работы межкадрового сжатия с внедрением разработанного метода кодирования
Анализируя полученные графики на рисунках 4.4, 4.6, 4.8, можно отметить, что при сжатии изображений кадров формата высокой четкости разработанным методом с использованием только основного изображения, объем занимаемых и требуемых для передачи данных на порядок меньше, чем при кодировании этих же изображений с использованием алгоритмов JPEG. При сжатии с минимальными потерями в качестве декодированного изображения, разница между результатами работы алгоритмов, в занимаемом объеме сжатых данных, составляет 24,9 %. При сжатии с высокой степенью потерь в качестве декодированного изображения, разница в объеме сжатых данных составляет 31 %.
Для форматов стандартной четкости, разработанный метод с использованием только основного изображения, так же показал свою эффективность в сравнении с методом JPEG, однако эффективность кодирования становится менее выраженной с уменьшением значений размера формата. Так для видеопоследовательности “foreman”, имеющей формат 352х288 пикселей выигрыш в сравнении с JPEG составит от 3,6 % до 6,7 %, а для изображения “Lena” форматом 512x512 пикселей выигрыш будет в пределах от 13,3 % до 14,3 % в зависимости от заданной степени потерь в качестве изображения.
Следовательно, разработанный метод, с использованием основного изображения, позволяет сформировать для передачи данные, служащие для декодирования передаваемого изображения кадра, объем которых составит на 31 % меньше, в сравнении с объемом, занимаемым данными полученными методом JPEG в видеоинформационном сигнале формата высокой четкости 1280x800 пикселей.
Также обратим внимание на графики, представленные на рисунках 4.5, 4.7, 4.9. Здесь видно, что использование разработанного метода, при котором, помимо данных об основном изображении, также осуществляется передача данных корректирующей информации, позволяет добиться большей эффективность в сравнении с методом JPEG только при кодировании с невысокими степенями потерь в качестве декодированного изображения. Увеличение же степени потерь до высоких значений приводит к тому, что эффективность кодирования методом JPEG оказывается уже выше. Так, при низких потерях выигрыш при сжатии разработанным методом составляет до 25 %, при высоких же значениях потерь проигрыш составляет 22 %.
Для субъективной оценки результатов работы разработанных методов, в таблицах 4.3 – 4.5 представлены декодированные изображения, сжатия которых производилось разработанными методами и методом JPEG.
Приведенные выше изображения позволяют отметить, что в разработанном методе искажения в изображениях, при высоких степенях сжатия, проявляются в виде артефактов – блоков с размазанными границами. Размазанность этих границ проявляется за счет отсутствия резких отличий в оттенках артефактов и смежных с ними областей. Изображения, кодирование которых происходит с использованием алгоритмов JPEG, при высоких степенях сжатия, приобретают хорошо заметные и сильно выделяющиеся артефакты, т.к. оттенки артефактов и смежных областей сильно контрастируют между собой. Таким образом, изображения сжатые разработанным методом, выглядят более естественными и являются комфортными для восприятия их глазом человека, в отличие от тех же изображений, но сжатых алгоритмом JPEG.
Результаты моделирования работы межкадрового сжатия с внедрением разработанного метода кодирования
Разработанный метод обеспечивает малое время поиска векторов движения и малый объем данных при межкадровой обработке. Моделирование проводилось с использованием базового алгоритма сжатия, стандартов семейства MPEG, с полным перебором зоны поиска и c использованием разработанного метода кодирования, в котором также происходит полный перебор зоны поиска. Оценка эффективности работы нового метода производилась сравнением времени работы выше перечисленных алгоритмов и количеством полученных векторов движения. Для полной оценки эффективности работы алгоритмов и увеличения точности получаемых данных обработке подвергались одиннадцать последовательных кадров. Для видеопоследовательности “Rebecca Black Reacts to Friday ” - это кадры 226 – 236, для видео последовательности “Foreman” – это кадры 95 – 104. Результаты работы представлены в таблицах 4.6 и 4.7.