- •ПРЕДИСЛОВИЕ
- •ВВЕДЕНИЕ
- •Глава 1. СУБПОЛОСНОЕ КОДИРОВАНИЕ
- •1.1. Требования, предъявляемые к преобразованиям
- •1.2. Линейные преобразования конечных сигналов
- •1.2.4. Обратное преобразование
- •1.2.5. Ортогональное преобразование
- •1.3. Некоторые примеры преобразований
- •1.3.1. Преобразование Габора
- •1.3.2. Дискретное косинусное и перекрывающееся ортогональное преобразования
- •1.3.3. Пирамида Лапласа
- •1.4. Квадратурно – зеркальные фильтры
- •1.4.1. Построение КЗФ
- •1.4.2. Асимметричная система
- •1.5. О преимуществе преобразования при помощи блоков фильтров перед преобразованием Фурье
- •Глава 2. ОСНОВЫ ТЕОРИИ ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ
- •2.1. Непрерывное вейвлет-преобразование
- •2.2. Кратномасштабное представление функций
- •2.2.1. Представление функций при помощи вейвлетов
- •2.4. Дискретное вейвлет-преобразование
- •2.4.1. Матричное описание DWT
- •2.4.2. Описание DWT посредством блоков фильтров
- •2.5. Гладкость базисных функций
- •Глава 3. ВЕЙВЛЕТ – ДЕКОМПОЗИЦИЯ СИГНАЛОВ ПРОИЗВОЛЬНОЙ ДЛИНЫ
- •3.1. Условия полного восстановления сигнала
- •3.2. Методика расчета фильтров, позволяющих осуществить полное восстановление сигнала
- •3.3. Продолжения сигналов, сохраняющие свойство полного восстановления
- •3.3.1. Периодическое продолжение
- •3.3.2. Симметричное продолжение
- •3.4. Эффективный метод продолжения для декомпозиции сигнала произвольной длины
- •3.5. Симметрично-периодическое продолжение сигнала
- •Глава 4. СРАВНЕНИЕ ВЕЙВЛЕТ-ФИЛЬТРОВ С ФИЛЬТРАМИ, ПРИМЕНЯЕМЫМИ ПРИ СУБПОЛОСНОМ КОДИРОВАНИИ
- •4.1. Критерии для расчета фильтров
- •4.2. Построение обычных фильтров: фильтры Джонстона
- •4.3. Расчет вейвлет-фильтров
- •4.3.1. Расчет фильтров Добеши
- •4.3.2. Расчет пары биортогональных фильтров
- •4.4. Критерий оптимизации блоков фильтров, используемых при кодировании изображения
- •4.4.1. Выигрыш от субполосного кодирования
- •4.4.2. Оптимальное распределение бит
- •4.5. Сравнение характеристик обычных и вейвлет-фильтров
- •Глава 5. АДАПТИВНЫЕ ОРТОГОНАЛЬНЫЕ ПРЕОБРАЗОВАНИЯ
- •5.1. Пакеты вейвлетов (алгоритм одиночного дерева)
- •5.2. Алгоритм двойного дерева
- •5.3. Частотно-временное дерево
- •5.4. Сравнение обсуждаемых алгоритмов
- •5.4.1. Размерность библиотеки базисов
- •5.4.2. Вычислительная сложность алгоритмов
- •5.4.3. Эффективность кодирования изображений
- •Глава 6. ЛИФТИНГОВАЯ СХЕМА
- •6.1. Этап разбиения
- •6.2. Этап предсказания
- •6.3. Различные операторы предсказания
- •6.4. Этап обновления
- •Глава 7. ЦЕЛОЧИСЛЕННОЕ ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЕ
- •7.1. Целочисленные вейвлет-преобразования
- •7.2. Лифтинговая схема и целочисленная биортогональная фильтрация
- •7.3. Метод коррекции ошибок для получения целочисленного вейвлет-преобразования
- •Глава 8. МУЛЬТИВЕЙВЛЕТЫ
- •8.1. Блоки мультифильтров
- •8.1.1. Основы теории блоков фильтров, изменяющихся во времени
- •8.1.2. Построение блоков мультифильтров
- •8.1.3. Итерирование блоков мультифильтров
- •8.2. Мультивейвлеты
- •8.3. Обработка сигналов в базисе мультивейвлетов
- •8.4. Сбалансированные мультивейвлеты
- •Глава 9. ПОТЕНЦИАЛЬНЫЕ ХАРАКТЕРИСТИКИ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ С ПРИМЕНЕНИЕМ ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ
- •9.1. Основные формулы и теоремы теории связи, относящиеся к кодированию с преобразованием при высоких скоростях
- •9.1.1. Скалярное квантование с ограниченной энтропией
- •9.1.2. Зависимость искажения от скорости
- •9.2. Сжатие изображения при низких скоростях кодирования
- •9.2.1. Функция искажение-скорость
- •9.2.2. Оптимальный относительный размер интервала квантования
- •9.2.3. Практическая проверка точности аналитических выражений
- •Глава 10. ПРИМЕНЕНИЕ ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ ДЛЯ СЖАТИЯ ИЗОБРАЖЕНИЯ
- •10.1. Базовый вейвлет-кодер изображения
- •10.1.1. Выбор вейвлетов для сжатия изображения
- •10.1.2. Осуществление преобразования на границах изображения
- •10.1.3. Квантование
- •10.1.4. Энтропийное кодирование
- •10.1.5. Распределение бит
- •10.1.6. Меры искажения, взвешенные с учетом восприятия человеком
- •10.3. Кодирование посредством нульдерева
- •10.3.1. Алгоритм Льюиса и Ноулеса
- •10.3.2. Алгоритмы Шапиро и Саида-Перельмана
- •10.3.3. Оптимизация нульдеревьев по критерию скорость-искажение
- •10.4. Частотно, пространственно-частотно-адаптивные кодеры
- •10.5. Использование зависимостей между вейвлет-коэффициентами внутри субполос
- •10.5.1. Решетчатое квантование
- •10.5.2. Субполосные кодеры с РК
- •10.5.3. Моделирование и оценивание смеси распределений
- •10.6. Современные направления исследований
- •Глава 11. ВИДЕОКОДЕКИ СЕМЕЙСТВА ADV6ХХ ПРОИЗВОДСТВА ФИРМЫ ANALOG DEVICES
- •11.1. Принципы работы ADV601
- •11.2. Использование микросхемы ADV601
- •ЗАКЛЮЧЕНИЕ
2∑(hn+2k hp+2k + gn+2k g p+2k )= δn, p , |
(2.49) |
|
k |
|
|
2∑hn+2k hn+2 p |
= 2∑ gn+2k gn+2 p = δk , p , |
(2.50) |
n |
n |
|
2∑hn+2k hn+2 p = 0 . |
(2.51) |
|
n |
|
|
Выражение (2.48) для временной области эквивалентно выражениям (2.26) и (2.36) для частотной. Равенства (2.49) и (2.50) уже появлялись ранее, но в менее общей форме ((2.24) и (2.34), соответственно).
2.4. Дискретное вейвлет-преобразование
На практике DTWS должно применяться к сигналам конечной длины. Таким образом, его необходимо модифицировать, чтобы из сигнала какой-то длины получать последовательность коэффициентов той же длины. Получившееся преобразование называется дискретное вейвлет-преобразование
(DWT).
Вначале опишем DWT в матричном виде, а затем – на основе банков фильтров, что наиболее часто используется при обработке сигналов.
В обоих случаях мы предполагаем, что базисные функции φ(x) и ψ (x) компактно определены. Это автоматически гарантирует финитность последовательностей hn и gn . Далее предположим, что сигнал, подвергаемый
преобразованию, имеет длину N = 2d , d Z + .
2.4.1. Матричное описание DWT
Обозначим через вектор ν j последовательность конечной длины cj ,n для некоторого j . Этот вектор преобразуется в вектор ν j+1 , содержащий последовательности cj+1,n и d j+1,n , каждая из которых половинной длины. Преобразование может быть записано в виде матричного умножения ν j +1 = M jν j , где матрица M j - квадратная и состоит из нулей и элементов hn , умножен-
ных на 2 . В силу свойств hn , полученных в разделе 2.3, матрица M j явля-
ется ортонормированной, и обратная ей матрица равна транспонированной. В качестве иллюстрации рассмотрим следующий пример. Возьмем фильтр длиной L = 4 , последовательность длиной N = 8 , а в качестве начального
42
значения - j = 0 . Последовательность gn получим из hn по формуле (2.35), где t = L /(2 −1) = 4 . Тогда операция матрично-векторного умножения будет представлена в виде
c1,0c1,1c1, 2c1,3d1,0d1,1d1,2d1,3
|
|
|
h0 |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
= |
2 |
h2 |
|
|
|
|
||
|
|
|
|
h3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
h |
|
|
|
|
|
1 |
|
|
|
|
|
h1 |
h2 |
h3 |
|
|
|
|
h0 |
h1 |
h2 |
h3 |
|
|
|
|
h0 |
h1 |
h2 |
h3 |
|
|
|
|
h0 |
− h2 |
h1 |
− h0 |
|
|
|
|
h3 |
− h2 |
h1 |
− h0 |
|
− h0 |
|
|
h3 |
− h2 |
h1 |
|
|
|
|
h3 |
cc
h c
c
c
− h0 c
− h2 ch3 c
0,0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
. (2.52)
Обратное преобразование есть умножение ν j+1 на обратную матрицу
M Tj :
c |
0,0 |
|
|
|
h0 |
|
|
|
|
h2 |
h3 |
|
|
|
|
|
|
|
h1 |
|
c1,0 |
|
|||||
|
|
|
|
|
|
|
h1 |
|
|
|
|
h3 |
− h2 |
|
|
|
|
|
|
|
|
|
|
|
|
||
c |
0,1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
− h0 |
c1,1 |
|
|||||||||
c |
0, 2 |
|
|
|
|
h |
|
h |
|
|
|
|
h |
|
h |
|
|
|
|
|
|
|
c1,2 |
|
|||
|
|
|
|
|
|
|
|
2 |
|
0 |
|
|
|
1 |
|
|
3 |
|
|
|
|
|
|
|
|
|
|
c |
|
|
= |
2 |
|
h |
|
h |
|
|
|
− h |
|
− h |
|
|
|
|
|
|
c |
|
|
||||
|
c |
0,3 |
|
|
3 |
h |
1 |
|
|
|
|
0 |
h |
2 |
h |
|
|
|
|
|
1,3 |
. (2.53) |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d |
|
|
|||||
|
0, 4 |
|
|
|
|
|
|
2 |
|
|
|
|
|
|
1 |
|
|
3 |
|
|
|
|
1,0 |
||||
c |
0,5 |
|
|
|
|
|
|
h3 |
h1 |
|
|
|
− h0 |
− h2 |
|
|
d |
1,1 |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
h2 |
|
|
|
|
|
|
h1 |
|
h3 |
|
|
|
|
|
||
c |
0,6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d |
1,2 |
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
h |
|
h |
|
|
|
|
|
− h |
|
− h |
|
|
|
|
|
|
c |
0,7 |
|
|
|
|
|
|
|
|
|
3 |
1 |
|
|
|
|
|
|
|
0 |
|
2 |
d |
1,3 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таким образом, выражение (2.51) - это один шаг DWT. Полное DWT заключается в итеративном умножении верхней половины вектора ν j+1 на квадратную матрицу M j +1 , размер которой 2d − j . Эта процедура может по-
вторяться d раз, пока длина вектора не станет равна 1.
В четвертой и восьмой строках матрицы (2.51) последовательность hn
циркулярно сдвинута: коэффициенты, выходящие за пределы матрицы справа, помещены в ту же строку слева.~Это означает, что DWT есть точно один период длины N DTWS сигнала c0,n , получаемого путем бесконечного пе-
43
риодического продолжения c0,n . Так что DWT, будучи определенным таким
образом, использует периодичность сигнала, как и в случае с DFT. Матричное описание DWT кратко и ясно. Однако при обработке сигналов
DWT чаще всего описывается посредством блок-диаграммы, аналогичной диаграмме системы анализа-синтеза (см. рис.1.1).
2.4.2. Описание DWT посредством блоков фильтров
Рассматривая в главе 1 субполосные преобразования, мы интерпретировали равенства, аналогичные (2.45) и (2.46), как фильтрацию с последующим прореживанием в два раза. Так как в данном случае имеется два фильтра hn
и gn , то банк фильтров – двухполосный и может быть изображен, как показано на рис.2.5.
Фильтры F и E означают фильтрацию фильтрами h−n и g−m , соответст-
венно. В нижней ветви схемы выполняется низкочастотная фильтрация. В результате получается некоторая аппроксимация сигнала, лишенная деталей низкочастотная (НЧ) субполоса. В верхней части схемы выделяется высокочастотная (ВЧ) субполоса. Отметим, что при обработке сигналов константа
21/ 2 всегда выносится из банка фильтров и сигнал домножается на 2 (см. рис.3.2, глава 3).
Итак, схема рис.2.5 делит сигнал уровня j = 0 на два сигнала уровня j = 1. Далее, вейвлет-преобразование получается путем рекурсивного при-
менения данной схемы к НЧ части. При осуществлении вейвлетпреобразования изображения каждая итерация алгоритма выполняется вначале к строкам, затем – к столбцам изображения (строится так называемая пирамида Маллата). В видеокодеках ADV6xx применена модифицированная пирамида Маллата, когда на каждой итерации не обязательно выполняется преобразование и по строкам, и по столбцам. Это сделано для более полного учета зрительного восприятия человека.
|
|
2 ↓ |
|
|
2 ↑ |
|
|
|
21/ 2 G |
|
|
|
|
|
21/ 2 E |
||
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21/2 H |
|
2 ↓ |
|
|
2 ↑ |
|
|
21/2 F |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
Рис. 2.5. Схема двухполосного банка фильтров
44
Получившееся преобразование аналогично (2.51). Однако существуют некоторые различия. При фильтрации сигнала конечной длины мы сталкиваемся с проблемой его продолжения на границе. Матричное выполнение DWT эквивалентно периодическому продолжению сигнала на границе. Этот тип продолжения является обязательным для ортогональных фильтров. В случае применения биортогональных фильтров появляются некоторые другие возможности в силу симметричности их характеристик. Подробнее этот вопрос будет рассматриваться в главе 3.
Схему, выполняющую DWT, можно представить еще и как показано на рис.2.6. Здесь рекурсивная фильтрация и прореживание заменены одной операцией фильтрации и одной операцией прореживания на каждую субполосу.
Определение итерационных фильтров hnj и gnj легче всего дать в частотной области:
j |
|
|
H j (ω )= H (ω )× H (2ω )× H (4ω )×...× H (2 j −1 ω )= ∏ H (2m −1 ω ), |
|
|
m=1 |
(2.54) |
|
j |
||
|
||
G j (ω ) = G(ω )× H (2ω )× H (4ω )×...× H (2 j −1 ω )= G(ω )×∏ H (2 m−1 ω ). |
|
|
m=2 |
|
21/ 2 G
2G2
23 / 2 G3
22 G4
22 H 4
|
|
|
|
|
к |
|
2 ↓ |
|
|
|
|
||
|
|
|||||
|
|
|
|
|
а |
|
|
|
|
|
|
||
4 ↓ |
||||||
|
|
|
|
н |
||
|
|
|
|
|
||
|
|
|
|
|
||
8 ↓ |
||||||
|
|
|
|
а |
||
|
|
|
|
|
||
|
||||||
16 ↓ |
|
|||||
|
|
|
|
л |
||
|
|
|
|
|||
|
|
|
|
|
||
|
|
|||||
16 ↓ |
|
|||||
|
|
|
|
|
||
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 2.6. Эквивалентная схема вейвлет-преобразования
45
В пределе итерационный фильтр H j (2− j ω ) сходится к Φ(ω ) в соответствии с (2.22):
|
j |
j |
|
|
lim H j (2− j ω )= lim ∏ H (2m−1− j ω )= lim ∏ H (2− p ω )= Φ(ω ). |
(2.55) |
|||
j →∞ |
j →∞ |
j→∞ |
|
|
|
m=1 |
p=1 |
|
|
Во временной |
области это |
означает, что |
график последовательности |
|
2 j hnj , построенной против 2− jn , сходится к φ(x) |
при j, стремящемся к беско- |
нечности. На рис.2.7 это изображено для фильтра Добеши длиной 4. Определение DWT может быть дано по аналогии с DFT. Предположим,
что сигнал, подвергаемый преобразованию, cn имеет длину |
N = 2d . Перио- |
|||||||||
|
|
|
|
|
|
|
|
~ |
с периодом N. |
|
дически продолжим его. Получим периодический сигнал cn |
||||||||||
Тогда |
|
|
|
|
|
|
|
|
|
|
(DWTc )j ,k |
= 2 |
j / 2 |
∞ |
~ |
|
при |
1 |
≤ j < d, |
|
|
j |
, |
|
|
|||||||
|
∑ g n −2 j k cn |
|
≤ k < N 2 |
− j |
, |
|||||
|
|
|
n =−∞ |
|
|
|
0 |
|
||
(DWTc )j ,k |
|
|
∞ |
|
|
|
j = d, |
|
(2.56) |
|
= 2 |
j / 2 |
~ |
|
при |
|
|
||||
j |
, |
|
|
|||||||
|
∑ hn −2 j k cn |
|
|
|
|
|||||
|
|
|
n =−∞ |
|
|
|
k = 0. |
|
|
Заметим, что в действительности суммы конечные, так как итерируемые фильтры имеют конечную длину. Ряд DTWS может быть записан аналогично выражению (2.56):
∞ |
|
|
(DTWSc )j ,k = 2 j / 2 ∑ g nj−2 j k cn , |
j ≥ 0, k Z. |
(2.57) |
n =−∞
Отметим, что (2.57) не есть дискретизированная версия непрерывного ряда CTWS (2.10), так как вместо функции ψ (x) здесь мы имеем последова-
тельность 2 j / 2 gn . Однако с учетом (2.33) и (2.54) дискретная формула сходится в пределе к непрерывной.
46