Вы находитесь на странице: 1из 8

Эффективные алгоритмы локального дискретного вейвлет-преобразования с базисом Хаара В.Н.

Копенков

ЭФФЕКТИВНЫЕ АЛГОРИТМЫ ЛОКАЛЬНОГО ДИСКРЕТНОГО


ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ С БАЗИСОМ ХААРА
В.Н. Копенков
Институт систем обработки изображений РАН
Самарский государственный аэрокосмический университет им. С.П. Королева,

В работе предлагаются два новых быстрых алгоритма вычисления локального дискрет-


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

Введение только известные сведения из теории вейвлетов,


Вейвлет-анализ является в настоящее время од- доступные, например, в монографиях [1,2].
ним из наиболее эффективных инструментов, пред- Во втором разделе приводится описание прямого
назначенных для исследования локальных про- и быстрого алгоритма вычисления дискретного
странственных и частотных характеристик сигналов вейвлет-преобразования, приводятся выражения для
[1,2]. В настоящей работе для решения задач ло- его вычислительной сложности.
кального вейвлет-анализа данных предполагается В третьем разделе дается определение локально-
заменить известную иерархическую вычислитель- го дискретного вейвлет-преобразования одномерно-
ную конструкцию, присущую хорошо известным го сигнала, приводится выражения для сложности
алгоритмам расчета дискретного вейвлет-преобразо- реализации локального вейвлет-преобразования в
вания (ДВП), таким как «algorithme a trous» [3] и случае, применения известных алгоритмов, описан-
быстрый алгоритм дискретного ортогонального ных во втором разделе. Этот раздел содержит оче-
вейвлет-разложения С.Малла [2] (БВП). Замена кон- видное развитие известных результатов.
струкции предполагает ее трансформацию от иерар- В четвертом разделе предлагается алгоритм, ко-
хической схемы вычислений, используемой в из- торый является адаптацией быстрого алгоритма
вестных алгоритмах, к схеме, в которой вычисление дискретного вейвлет-преобразования одномерного
коэффициентов для вейвлетов каждого уровня про- сигнала, приведенного во втором разделе, на случай
изводится последовательно для всех его позиций на локальной обработки сигнала. Приводятся выраже-
цифровом сигнале в рекурсивном режиме [4-6]. ния для вычислительной сложности предложенного
Данное изменение вычислительной конструкции алгоритма.
вейвлет-преобразования позволяет отойти от «блоч- В пятом разделе приводится описание нового ре-
ного» характера вычислений [1,2], который обычно курсивного алгоритма локального дискретного
приводит либо к избыточной в вычислительном вейвлет-разложения одномерного сигнала на основе
плане схемы последовательного вычисления базиса Хаара, приводятся выражения для его вычис-
вейвлет-преобразования (для сильно перекрываю- лительной сложности.
щихся блоков анализа), либо к снижению каче- В шестом разделе представлено обобщение Раз-
ственных показателей анализа (при расположении работанных алгоритмов на случай работы с 2D сиг-
блоков вейвлет-преобразования без перекрытий). налами (изображениями). Так же приводятся выра-
Изменение вычислительной конструкции в парал- жения для вычислительной сложности всех алго-
лельную или параллельно-рекурсивную форму, ко- ритмов в этом случае.
торая хорошо приспособлена к задаче локального В седьмом разделе производится аналитическое
«скользящего» анализа цифровых сигналов и изоб- сравнение алгоритмов: модифицированного алгорит-
ражений [4-6], приводит, в частности, к существен- ма быстрого дискретного вейвлет-преобразования,
ному снижению сложности обработки. описанного в четвертом разделе, и рекурсивного,
Работа организована следующим образом. описанного в пятом разделе. Выводится выражение,
В первом разделе приводится определение которое определяет область «предпочтения» каждого
вейвлетов, дискретного вейвлет-преобразования из алгоритмов. Приводится ряд возможностей рекур-
одномерного сигнала, дается вид вейвлет-базисов сивного алгоритма, которые, наряду с характеристи-
Хаара. Этот раздел является вводным и содержит ками его сложности, позволяют утверждать о его
преимуществе по сравнению с модифицированным

78
2008 Компьютерная оптика, том 32, №1

алгоритмом быстрого дискретного вейвлет- кретный сигнал x ( n ) представляется как кусочно-


преобразования. Аналогичные выражения и расчет
постоянная функция и, следовательно, интерпрети-
области предпочтения приведены и для 2D случая.
руются как функция пространства V0 .
1. Вейвлет-преобразование (ВП) и базис Хаара
Для сигнала x ( n ) ( n ≥ 0 ) с нулевым средним
1.1 Непрерывный случай
дискретное вейвлет-преобразование задается выра-
Функция ψ (t ) называется вейвлетом (всплес- жением:
ком), если для нее выполняются следующие условия m +1 N −1
−   n
[1,2]: Wx (k , m) = 2
n =0
2
∑ x ( n ) ψ  2
− k  ( m, k ≥ 0 ) .(4)

m +1

• ψ ( t ) ∈ L2 ( R ) , Для сигналов со средним, отличным от нулево-


∞ го, для обратимости преобразования (4) добавляется
• ∫ ψ ( t ) dt = 0 . значение скалярного преобразования со скейлинг-
−∞
функцией максимального масштаба (берется из раз-
Функцию двух переменных a, b , задаваемую
меров сигнала).
выражением
2. Алгоритм быстрого вейвлет-преобразования
1 ∞  b −t 
Wx (b, a ) =
a ∫−∞
x( t ) ψ 
 a 
 dt , (1) Расчета коэффициентов вейвлет-преобразования
непосредственно по выражению (4) является доста-
называют вейвлет-преобразованием функции точно трудоемкой процедурой. Действительно, в
x(t) ∈ L2 ( R ) [1,2]. ортогональном (безизбыточном) представлении (4)
Вейвлеты вида {2 m /2
ψ ( 2m t − k ) } для фиксиро- дискретного сигнала длины N = 2L участвуют N − 1
вейвлетов различных масштабов m = 1, L и одна
ванного m являются базисом подпространства
скейлинг-функция размера N. Каждый вейвлет мас-
Wm = Vm \ Vm −1 ( m = 0, ± 1, ... ) в ортогональном
штаба m имеет размер S ( m ) = 2m (число ненулевых
кратномасштабном анализе (ОКА), который опреде-
отсчетов), число вейвлетов этого масштаба –
лен следующим образом [1,2].
Определение. Система подпространств K ( m ) = N 2 m = 2 L − m . Поэтому для расчета коэффи-
Vm ⊂ L ( R ) ( m = 0, ±1,... ) в пространстве L2 ( R ) назы-
2 циентов ортогонального вейвлет-преобразования
(4), то есть соответствующих скалярных произведе-
вается ОКА, если она удовлетворят условиям:
ний для всех вейвлетов и скейлинг-функции, требу-
Vm ⊂ Vm +1 , ется, очевидно
v(t ) ∈ Vm ⇔ v (2t ) ∈ Vm +1 , L L
U ( N ) = N + ∑ S ( m ) K ( m ) = N + ∑ N = N (log2 N + 1)
v(t ) ∈ V0 ⇔ v (t + 1) ∈ V0 , m =1 m =1

∪V m = L ( R ),
2
∩V m =∅, операций сложения (нормирующие множители
m m здесь и далее не учитываем, умножение на единицу
∃ ϕ (t ) ∈ V0 , называемая скейлинг-функцией, также игнорируется).
Идея ускорения расчета преобразования (4) за-
такая что {ϕ ( t − m )}m =0, ±1, ... – ортонормирован- ключается в простом использовании того факта, что
ный базис V0 . пространства Vm есть прямая сумма пространств
Одним из наиболее известных вейвлет-базисов Wm −1 , Vm −1 : Vm = Wm −1 ⊕ Vm −1 . Тогда, имея текущее
является базис Хаара [1,2], скейлинг-функция кото- представление функции в пространстве Vm , мы мо-
рого определяется следующим образом: жем получить с помощью проекций представления в
1, t ∈ [0,1), пространствах Wm −1 ,Vm −1 [1-3].
ϕ (t ) =  (2)
 0, t ∉ [0,1). Соответствующий быстрый алгоритм ДВП имеет
вид [1-3]:
Вейвлеты Хаара имеет вид [1,2]: На 1-ом уровне:
 1, t ∈ [0, 1 2 ) , w1+ ( k ) = x ( 2k ) + x ( 2k + 1)
 ,
ψ (t ) =  −1, t ∈ [1 2 , 1) , (3) w1− ( k ) = x ( 2k ) − x ( 2k + 1)
 0, t ∉ [0,1).
 k = 0, N 2 − 1 = 0, K (1)
1.2 Дискретный случай На 2-ом уровне:
Отсчеты дискретного сигнала x ( n ) интерпрети- w2+ ( k ) = w1+ ( 2k ) + w1+ ( 2k + 1)
, k = 0, K ( 2 ) − 1
руются как коэффициенты разложения этого сигна- w2− ( k ) = w1+ ( 2k ) − w1+ ( 2k + 1)
ла по скейлинг-функциям (2). Таким образом, дис-

79
Эффективные алгоритмы локального дискретного вейвлет-преобразования с базисом Хаара В.Н. Копенков

На L-ом уровне: мер M 1 = 2 L1 (1 ≤ L1 ≤ L2 ) , который ограничивает


wL+ ( 0 ) = wL+−1 (0 ) + w L+ −1 (1)
k = 0, K ( L ) − 1 = 0 . минимальный уровень вейвлетов в разложении (4).
,
wL− ( 0 ) = wL+−1 ( 0 ) − wL+ −1 (1) Тогда вычислительная сложность БВП для диапазо-
Эту расчетную процедуру иногда называют на уровней [ L1 , L2 ] составит:

U2* ( L1 , L2 ) = 2 ( 2 L2 − 1)
быстрым вейвлет-преобразованием (БВП), а иногда
– алгоритмом Малла, по имени человека, доказав- (8)
шего теорему, которая показывает корректность операций сложения и не зависит от положения
именно такой процедуры расчета [2]. «нижнего» уровня L1 .
Вычислительная сложность такого алгоритма,
очевидно, составляет [1-3] 4. Модификация алгоритма быстрого
вейвлет-преобразования
L
 L

U1 ( N ) = 2∑ K ( m ) = 2 N  ∑ 2 − m − 1 = 2 ( N − 1) (5) Алгоритм БВП допускает ряд модификаций, ко-
m =1  m=0  торые позволяют избавиться от избыточных опера-
операций сложения, необходимых для вычисления ций, связанных с повторными расчетами на пере-
всех коэффициентов дискретного ортогонального крывающихся областях локального анализа. Моди-
ВП. В дальнейшем мы будем пользоваться выраже- фикации заключается в следующем:
нием для приведенной вычислительной сложности, • построение вейвлет-разложения только для L2
то есть числу операций, приходящихся на один от-
счет исходного сигнала. В этом случае, получаем уровней ( M = 2 L2 ) ;
следующее выражение для вычислительной слож- • учитывается, что вычисление коэффициентов
ности:
уровня l ≥ L1 невозможно производить без расчета
U1 ( N ) N −1
U1* = =2 ≈ 2. (6) коэффициентов w +j (…) уровней j = 1, l − 1 . Поэтому
N N N →∞
для уровней j ∈ [1, L1 − 1] производится расчет толь-
3. Локальное ДВП цифрового сигнала
ко коэффициентов w +j (…) ;
На практике часто приходится использовать не
полное разложение сигнала, а его локальное разло- • для уровней l ∈ [ L1 , L2 ] производится вычисле-
жение. При локальном разложении каждый возмож- ние и wl− (…) , и wl+ (…) .
ный фрагмент сигнала длины M 2 = 2 L2 должен
• для вейвлета l-го уровня ( l ∈ [0, L2 ]) рассчиты-
быть подвергнут разложению по заданной системе
функций. Такую обработку обычно называют обра- вать столько разложений, сколько допускает шири-
боткой в скользящем окне [4-6], поскольку область на вейвлета K ( l ) , то есть N − S ( l ) + 1 . Поскольку
на предыдущем шаге уже получено N − S ( l − 1) + 1
обработка из M 2 отсчетов последовательно сдвига-
ется, занимая все возможные положения на оси дис-
кретного аргумента. Обработка в скользящем окне коэффициентов w +j (…) для всех возможных поло-
является неотъемлемой частью целого ряда при- жений вейвлета (m-1)-ого уровня, то такая процеду-
кладных задач, таких как обнаружение и распозна- ра расчета становится правомерной;
вание локальных объектов/сигналов, локальный В итоге, учитывая, что для получения двух ко-
анализ, адаптивные преобразования и других [4,5]. эффициентов wl− (…) и wl+ (…) требуется две опе-
При использовании для расчета коэффициентов
рации сложения, а для получения одного коэффици-
локального вейвлет-преобразования алгоритма БВП,
описанного во втором разделе настоящей работы, ента wl+ (…) – одна операция, получим следующее
сложность обработки в пересчете на число обла- выражение для сложности:
стей/фрагментов анализа составляет, очевидно 1  L1 −1 L2

U3* ( L1 , L2 ) =  ∑ ( N − S ( m ) + 1) + 2 ∑ ( N − S ( m ) + 1) 
( N − M 2 + 1) U 1 ( M 2 ) N  m =1 
U2* ( M 2 ) = = 2 ( M 2 − 1)
m = L1
(7)
( N − M 2 + 1) в случае если ( L1 ≥ 2 ) .
операций сложения. Преобразование приведенной формулы дает сле-
Следует отметить, что в большинстве практиче- дующее явное выражение для вычислительной
ских задач локального анализа сигналов и изобра- сложности модифицированного алгоритма:
жений нет необходимости получать все возможные ( N + 1)( 2 L2 − L1 + 1) + 2 ( 2 L −1 − 2 L +1 + 1)
1 2

коэффициенты разложения [4,5]. Обычно диапазон U *


3 ( L1 , L2 ) = .
интересующих функций разложения уже, обычно он N
Что можно записать в виде выражения:
ограничен (по частоте) снизу и сверху. Снизу – мак-
симальными размерами объектов, сверху – их ми- U3* ( L1 , L2 ) ≈ 2 L2 − L1 + 1 , (9)
N →∞
нимальными размерами и размерами их существен-
ных деталей. Поэтому введем в рассмотрение раз-

80
2008 Компьютерная оптика, том 32, №1

которое уже зависит и от «верхнего» L2 , и от «ниж- здесь и далее не учитываем, умножение на единицу
также игнорируется). Таким образом:
него» L1 уровней ВП.
U ( N , N ) = 2 N (2 N − 1) .
5. Рекурсивный алгоритм локального ДВП
Для снижения сложности локального ДПВ мож- Идея ускорения расчета преобразования анало-
но использовать рекурсивные методы обработки [4- гична 1D случаю, а различие состоит в том, чтобы
6]. В рекурсивных методах сложность алгоритма использовать четыре отсчета для получения четырех
обработки не зависит от размера области определе- выходных отсчетов.
ния функции разложения, а определяется разност-
ным уравнением [4-6]. Для базиса Хаара применимо
следующее разностное уравнение, которое позволя-
ет вычислять коэффициенты разложения для каждой
функции независимо и последовательно, по мере
движения области анализа:
wl− ( n ) = wl− ( n − 1) − x ( n + 2 l −1 ) + 2 x ( n ) − x ( n − 2 l −1 − 1)

для всех l ∈ [ L1 , L2 ]
Как видно из приведенной формулы пересчета
коэффициентов вейвлет-преобразования, для расче-
та локального ДВП необходимо
U4* ( L1 , L2 ) = 3 ( L2 − L1 + 1) (10)
арифметических операций сложения (умножение на
«2» не считается за операцию, поскольку может
Рис. 1. Пример разложения 2D сигнала до третьего
быть реализована операций побитового сдвига). уровня вейвлет-коэффициентов
6. Обобщение алгоритмов на 2D случай Соответствующий быстрый алгоритм ДВП имеет
6.1 Быстрый алгоритм ДВП вид:
N
Разработанные быстрые алгоритмы локального На 1-ом уровне: k , j = 0, − 1 = 0, K (1) − 1
ДВП можно обобщить на 2D случай, то есть на слу- 2
чай работы с изображениями. При КМА таких сиг- w1++ ( k , j ) = ( x ( 2k ,2 j) + x ( 2k ,2 j + 1)) + ( x ( 2k + 1,2 j) + x ( 2k + 1,2 j + 1))
налов обычно используется схема посторочно- w1+− ( k , j ) = ( x ( 2k, 2 j) − x ( 2k , 2 j + 1)) + ( x ( 2k + 1, 2 j ) − x ( 2k + 1,2 j + 1))
столбцовой развертки сигнала. То есть сначала
w1−+ ( k , j ) = ( x ( 2k, 2 j) + x ( 2k , 2 j + 1)) − ( x ( 2k + 1, 2 j ) + x ( 2k + 1,2 j + 1) )
находится ДВП по строкам, а потом по столбцам
изображения. w1−− ( k , j ) = ( x ( 2k , 2 j) − x ( 2k ,2 j + 1)) − ( x ( 2k + 1,2 j ) − x ( 2k + 1, 2 j + 1))
Для удобства изложения допустим, что произво- На 2-ом уровне: k , j = 0, K ( 2 ) − 1
дится вычисление ДВП для изображения размера
NхN (в случае размера NxM все выкладки аналогич- w ( k, j) = (w1++ ( 2k,2j) + w1++ ( 2k,2 j +1) ) + (w1++ ( 2k +1,2j) + w1++ ( 2k +1,2 j +1) )
++
2

ны), где N = 2L . Тогда в разложении участвуют 2 ( k, j) = ( w1 ( 2k,2 j) − w1 ( 2k,2 j +1) ) + (w1 ( 2k +1,2 j) − w1 ( 2k +1,2 j +1) )
w+− ++ ++ ++ ++

2 (
N − 1 вейвлетов различных масштабов m = 1, L и w−+ k, j) = (w1++ ( 2k,2 j) + w1++ ( 2k,2 j +1) ) − (w1++ ( 2k +1,2 j) + w1++ ( 2k +1,2j +1))

2 ( k, j) = (w1 ( 2k,2 j) − w1 ( 2k,2 j +1) ) − (w1 ( 2k +1,2 j) − w1 ( 2k +1,2 j +1) )


w−− ++ ++ ++ ++
одна скейлинг-функция размера N для определенно-
го количества строк матрицы соответствующего …
масштабу, и соответствующего количества столб-
цов. Каждый вейвлет масштаба m имеет размер На L-ом уровне: k , j = 0, K ( L ) − 1 = 0
S ( m ) = 2m (число ненулевых отсчетов), число wL+ + ( 0,0 ) = ( wL+−+1 ( 0,0 ) + wL++−1 ( 0,1)) + ( wL++−1 (1,0 ) + wL+−+1 (1,1))

вейвлетов этого масштаба – K ( m ) = N 2 m = 2 L − m , wL+ − ( 0, 0 ) = ( wL+−+1 ( 0,0 ) − wL+−+1 ( 0,1)) + ( wL+−+1 (1,0 ) − w +L−+1 (1,1) )
кроме того, количество строк и столбцов матрицы, wL− + ( 0, 0 ) = ( wL+−+1 ( 0,0 ) + w+L−+1 ( 0,1)) − ( wL+−+1 (1,0 ) + w+L−+1 (1,1) )
для которых необходимо рассчитать ДВП, эквива- wL− − ( 0, 0) = ( wL++−1 ( 0,0 ) − wL+−+1 ( 0,1)) − ( wL+−+1 (1, 0 ) − wL+−+1 (1,1))
лентно C ( m ) = N 2 m = 2 L − m . Эта расчетная процедура является аналогом про-
Поэтому для расчета коэффициентов ортого- цедуры БВП, построенной для 2D случая. Ее вычис-
нального вейвлет-преобразования (4), то есть соот- лительную сложность представима в виде:
ветствующих скалярных произведений для всех L
 L 
вейвлетов и скейлинг-функции, требуется: U1 ( N , N ) = 8∑ K ( m ) ⋅ K ( m ) = 8 N 2  ∑ 2 −2 m − 1  .
L L m =1  m=0 
U ( N , N ) = 2( NN + ∑S ( m) K ( m) C(m)) = 2( N 2 + ∑2(m+ L−m+L−m) )
m=1 m =1
Отсюда:
операций сложения (нормирующие множители

81
Эффективные алгоритмы локального дискретного вейвлет-преобразования с базисом Хаара В.Н. Копенков

 N 2 −1 8 2 одного коэффициента wl++ (…) – три операции, по-


U1 ( N , N ) = 8N 2  2 
= ( N − 1) . (11)
 3N  3 лучим следующее выражение для сложности:
 L1 −1 L2
2
 3∑ ( N − S ( m) + 1) + 8 ∑ ( N − S ( m) + 1) 
Если пользоваться выражением для приведенной 2

вычислительной сложности, то есть числу операций,


U3* ( L1, L2 ) =  .
m =1 m= L1
приходящихся на один отсчет исходного сигнала,
N2
получаем следующее выражение:
При выполнении условия ( L1 ≥ 2 ) .
U1 ( N , N ) 8 ( N 2 − 1) 8
U1* = = ⋅ ≈ ≈ 2.66 . (12) Преобразование приведенной формулы дает сле-
N⋅N 3 N 2 N →∞ 3 дующее явное выражение для вычислительной
6.2 Локальное ДВП цифрового сигнала сложности модифицированного алгоритма:
( N +1) (8L2 −5L1 −5) − 2( N +1) (8⋅ 2L −5⋅ 22L1 − 3) + ( 8⋅ 22L2 − 5⋅ 22L1 −11)
Аналогично одномерному случаю, при обработке в 2
2
1
U3* = 3
режиме скользящего окна [4-6], область обработки .
N2
из M 2 × M 2 = 2 L2 × 2L2 отсчетов последовательно Что аналогично выражению (9) в одномерном
сдвигается, занимая все возможные положения случае, зависящему от «верхнего» L2 , и «нижнего»
внутри области по осям дискретного аргумента. L1 уровней ВП:
При использовании для расчета коэффициентов
локального вейвлет-преобразования алгоритма БВП, U3* ( L1 , L2 ) ≈ 8 L2 − 5L1 − 5, (15)
N →∞
сложность обработки в пересчете на число обла-
стей/фрагментов анализа составляет: 6.4 Рекурсивный алгоритм локального ДВП
Аналогично одномерному случаю, можно ис-
( N − M 2 + 1) ⋅ ( N − M 2 + 1)U1 ( M 2 , M 2 )
U2* ( M 2 , M 2 ) = пользовать рекурсивные методы обработки [4-5].
( N − M 2 + 1) ⋅ ( N − M 2 + 1) ,

( M 22 − 1)
8
U2* ( M 2 , M 2 ) = U1 ( M 2 , M 2 ) = (13)
3
операций сложения.
Аналогично выражению (8), при рассмотрении
диапазона ограниченных снизу и сверху вейвлетов,
вычислительная сложность БВП для диапазона
уровней [ L1 , L2 ] составит:

U2* ( L1 , L2 ) = 8 / 3 ( 22 L2 − 1) (14)

операций сложения, не зависящих от положения


«нижнего» уровня L1
6.3 Модификация алгоритма быстрого вейвлет- Рис. 2. Вычисление коэффициентов вейвлет-
преобразования в режиме «скользящего окна».
преобразования
Для базиса Хаара применимо следующее раз-
Рассмотрим модификации, аналогичные одно-
ностное уравнение, которое позволяет вычислять
мерному случаю, для минимизации избыточности
коэффициенты разложения для каждой функции
вычислений:
независимо и последовательно, по мере движения
• построение вейвлет-разложения только для L2 окна анализа:
уровней ( M = 2 L2 ) ;
S +j +L (i) = S j++L (i −1) + x(i + L, j + L) − x(i −1, j + L),
• расчет только коэффициентов w (…) ++
wl++ (i, j) = wl++ (i −1, j) + S +j +L (i) − S +j −1(i),
l для
уровней j ∈ [1, L1 − 1] ;
wl+− (i, j) = wl+− (i −1, j) + 2⋅ S+j+ L/ 2(i) − S+j−1(i) − S j++L(i).
• вычисление w (…) , w (…) , w (…)
+− −+ −−
и w (…)
++
l l l l
S j−+L (i) = S j−+L (i −1) + 2x(i + L, j + L / 2) (16)
для уровней l ∈ [ L1 , L2 ] .
− x(i + L, j + L) − x(i −1, j + L),
• для вейвлета l-го уровня ( l ∈ [0, L2 ]) рассчиты- w −+
l (i, j) = wl−+ (i −1, j) + S−j +L(i) − S−j−1(i),
вать столько разложений, сколько допускает шири-
wl−− (i, j) = wl−− ( i −1, j ) + 2 ⋅ S−j + L/2 (i) − S−j−1(i) − S−j+ L(i).
на вейвлета S ( l ) , то есть ( N − S ( l ) + 1)2 .;
L L /2−1 L
Учитывая, что для получения четырех коэффи-
Sj+ (i) = ∑x(i + n, j), S−j (i) = ∑ x(i + n, j) − ∑ x(i + n, j).
циентов wl+− (…) , wl−+ (…) , wl−− (…) и wl++ (…) тре- n=1 n=1 n=L/ 2
буется восемь операций сложения, а для получения

82
2008 Компьютерная оптика, том 32, №1

Как видно из приведенной формулы пересчета 1024 10 64 6


коэффициентов вейвлет-преобразования, для расче- 2048 11 128 7
та всех коэффициентов локального ДВП необходи- 4096 12 128 7
мо лишь 13 сложений. Для расчета всех уровней Как видно из выражений (11) и приведенной
вейвлетов для всех l ∈ [ L1 , L2 ] необходимо: таблицы, рост числа «предпочтения» уровней ре-
курсивного алгоритма пропорционален росту обще-
U4* ( L1 , L2 ) = 13 ( L2 − L1 + 1) (17) го числа уровней и составляет около 50%, поскольку
арифметических операций сложения для любого 1
L1 ≈ L2 . Это определенно показывает на эффек-
нового положения окна анализа. 2
Необходимо заметить, что существуют некото- тивность рекурсивного алгоритма на тех задачах
рые дополнительные требования к памяти, а именно вейвлет-преобразования, в которых не требуется
необходимо иметь дополнительно 2N ячеек памяти определения всех коэффициентов вейвлет-
для хранения коэффициентов Sk+ ( j ) , Sk− ( j ), k = 1, N преобразования.
Кроме приведенных оценок сложности следует
и некоторое число дополнительных операций свя-
также отметить ряд дополнительных возможностей,
занных с расчетом Sk+ (0) , Sk− (0) , wl+− ( 0, j ) , которые имеет только рекурсивный алгоритм:
wl−+ ( 0, j ) , wl−− ( 0, j ) и wl++ ( 0, j ) . • размер области анализа M 2 не обязательно
должен иметь вид степени двойки;
7. Сравнение рекурсивного и модифицированного • размеры области определения каждой функ-
алгоритмов БВП ции разложения может быть произвольным четным
7.1 Одномерный случай числом;
Полученные быстрые алгоритмы локального ДВП, • производить расчет коэффициентов разложе-
а также выражения для их вычислительной сложности ния можно для каждого вейвлета отдельно. Поэтому
(9) и (10) не позволяют однозначно отдать предпочте- область уровней, для которых производится расчет
ние одному из алгоритмов. В то же время можно ука- вейвлет-преобразования, не обязательно должна
зать области «предпочтения» каждого из алгоритмов, быть интервалом;
то есть тот диапазон параметров L1 , L2 , при которых • рекурсивный алгоритм требует предельно
конкретный алгоритм имеет очевидное преимущество мало памяти. А именно, если отсчеты обрабатывае-
по сложности его выполнения. Для получения границ мого сигнала считаются доступными, то для пере-
области «предпочтения» приравняем выражения (9) и счета коэффициентов вейвлет-преобразования тре-
(10). Тогда получим: буется всего L2 − L1 + 1 ячеек памяти, которые хра-
1 нят собственно значения этих коэффициентов. В
U3* = U4* ⇒ L1 = L2 + 1 или M1 = 2 M 2 . (18) отличие от рекурсивного алгоритма, модифициро-
2 ванный алгоритм требует столько ячеек памяти,
Таким образом, можно указать простую решаю- сколько коэффициентов вейвлет-преобразования
щую процедуру, которая оптимальным образом вы- получается на области анализа M 2 , то есть около
бирает один из предложенных алгоритмов локаль- L2 −1
ного ДВП:
1
∑ (M
m =1
2 − S ( m ) + 1) , что составляет следующее чис-
если L1 ≥ L2 + 1, ( M 1 ≥ 2 M 2 ) то
2 ло: ( M 2 + 1)( L2 − 2 ) + 4 . Очевидно, что для любых
используется рекурсивный алгоритм ДВП,
L2 , L1 справедливо: L2 − L1 + 1 << ( M 2 + 1)( L2 − 2 ) + 4 .
иначе – модифицированный БВП.
Для удобства ниже представлена таблица, в ко- 7.2 Двумерный случай
торой указана область «предпочтения» рекурсивно- Аналогично одномерному случаю, можно рас-
го алгоритма. считать области «предпочтения» каждого получен-
параметры область предпочтения ных быстрых алгоритмы локального ДВП, исполь-
локального ДВП рекурсивного ДВП зуя выражения для их вычислительной сложности
M2 L2 M1 ≥ L1 ≥ (15) и (17). Для получения границ области «предпо-
2 1 - - чтения» приравняем выражения (15) и (17). Тогда
4 2 4 2 получим:
8 3 8 3 5
16 4 8 3 U 3* = U 4* ⇒ L1 = L2 + 1 (M 1 = 2 0.625 M 2 ) . (19)
32 5 16 4 8
64 6 16 4 Решающая процедура, оптимальным образом
128 7 32 5 выбирающая один из алгоритмов локального ДВП,
256 8 32 5 имеет вид:
512 9 64 6

83
Эффективные алгоритмы локального дискретного вейвлет-преобразования с базисом Хаара В.Н. Копенков

5 проект № 06-01-00616-а; и Министерства образо-


если L1 ≥ L2 + 1, то вания и науки РФ, Администрации Самарской
8
используется рекурсивный алгоритм ДВП, области и Американского фонда гражданских ис-
иначе – модифицированный БВП. следований и развития (CRDF Project SA-014-02)
Дополнительные возможности и особенности, в рамках российско-американской программы
присущие рекуррентному алгоритму, описанные для «Фундаментальные исследования и высшее обра-
одномерного случая, естественным образом перено- зование» (BRHE).
сятся и на случай анализа двухмерных сигналов. Литература
Заключение
1. I. Daubechies Ten Lectures on Wavelets // CBMS-NSF
Описанные в статье модифицированный нерекур- Lecture Notes nr. 61, SIAM, 1992. – 377 p.
сивный и рекурсивный алгоритмы расчета ЛДВП поз- 2. S. Mallat A wavelet tour of signal processing // Academ-
воляют сократить количество операций при разложении ic Press, 1999 – 637 p.
сигналов в задачах локального вейвлет-анализа. 3. M. Holschneider, A real-time algorithm for signal analy-
Сравнение полученных выражений для сложно- sis with help of the wavelet transform // M. Holschneider,
R. Kronland-Martinet, J. Morlet, Ph. Tchamitchian Wave-
сти различных алгоритмов вычисления коэффици-
lets, Time-Frequency Methods and Phase Space, Chapter
ентов ЛДВП (5) и (6), (9) и (10), а также (15) и (16) A. Berlin: Springer-Verlag, 1989. - pp. 289-297.
(в двумерном случае) позволяет утверждать о пре- 4. A.V. Chernov Fast Method for Local Image Processing
имуществах рекурсивного алгоритма. Кроме того, and Analysis // A.V. Chernov, V.V. Myasnikov,
ряд дополнительных возможностей рекурсивного V.V. Sergeyev Pattern Recognition and Image Analysis,
алгоритма локального ДВП, описанных выше, явля- Vol.9, No.4, 1999, pp. 572-577.
ется серьезным аргументом для того, чтобы отдать 5. V.V. Myasnikov Methods for Designing Recursive
предпочтение этому алгоритму при решении до- FIR Filters // Proceedings of International Confer-
вольно широкого класса прикладных задач локаль- ence “Computer Vision and Graphics” (ICCVG
2004), Warsaw, Poland, September 22-24, 2004,
ного вейвлет-преобразования.
Springer, pp.845-850.
В дальнейшем предполагается построить расши- 6. Копенков В.Н., Быстрые алгоритмы локального дис-
рение приведенных алгоритмов на случай построения кретного вейвлет-преобразования с базисом Хаара //
вейвлетов с масштабирующим коэффициентом N. Копенков В.Н., Мясников В.В НТК с межд. участием:
Благодарности «ПИТ-2006» Том 2. 2006 г. Самара. стр. 113-118.
Работа выполнена при поддержке Российского
фонда фундаментальных исследований (РФФИ),

84
EFFICIENT ALGORITHMS FOR LOCAL DISCRETE WAVELET TRANSFORM WITH HAAR BASIS
V.N. Kopenkov1,2
1 Image Processing Systems Institute оf the RAS,
2 Samara State Aerospace University

Abstract
In this paper we propose two new fast algorithms for computing a local discrete wavelet
transform of a regular signal as illustrated by Haar wavelet basis, give expressions for their com-
putational complexity, and compare them with each other, as well as with the existing fast wave-
let transform algorithm. We also give recommendations how to use each of the proposed algo-
rithms. In particular, we indicate preference regions for these algorithms, i.e. task options for
calculation of the wavelet transform, for which these algorithms are computationally efficient.
Based on the analysis of algorithms’ complexity, with regard to additional features offered by the
recursive algorithm, we may come to conclusion about its advantages compared with the existing
alternative fast wavelet transform algorithm. We summarized the considered algorithms for a
two-dimensional case.
Keywords: local discrete wavelet transform, computational complexity, recursive algorithm
Acknowledgements: The work was supported by the Russian Foundation for Basic Research
(RFBR project No. 06-01-00616-а), the Ministry of Education and Science of the Russian Feder-
ation, the Samara Region Government and U.S. Civilian Research & Development Foundation
(CRDF Project SA-014-02), and under the Russian-American Basic Research and Higher Educa-
tion Program (BRHE).
Citation: Kopenkov VN. Efficient algorithms for calculating a local discrete wavelet trans-
form based on Haar wavelet basis [In Russian]. Computer Optics 2008; 32(1): 78-84.
References
[1] Daubechies I. Ten Lectures on Wavelets. CBMS-NSF Pattern Recognition and Image Analysis 1999; 9(4):
Lecture Notes nr. 61, SIAM 1992; 377 pp. 572-577.
[2] Mallat S. A wavelet tour of signal processing. [5] Myasnikov VV. Methods for Designing Recursive FIR
Academic Press 1999; 637 pp. Filters. Proceedings of International Conference
[3] Holschneider M, Kronland-Martinet R, Morlet J, “Computer Vision and Graphics” (ICCVG 2004).
Tchamitchian Ph. A real-time algorithm for signal Warsaw, Poland, September 22-24; Springer 2004;
analysis with help of the wavelet transform. Wavelets, 845-850.
Time-Frequency Methods and Phase Space. Berlin: [6] Kopenkov VN, Myasnikov VV. Fast algorithms for
Springer-Verlag 1989; A: 289-297. local discrete wavelet transform with Haar basis [In
[4] Chernov AV, Myasnikov VV, Sergeyev VV. Fast Russian]. Samara International Scientific and Technical
Method for Local Image Processing and Analysis. Conference, PIT 2006; 2: 113-118.