Курсовая работа студентки 3 курса Громовой Марии Михайловны
Белорусский государственный университет
Факультет прикладной математики и информатики
Кафедра математической физики
Минск 2003
Введение
Вейвлет-преобразование сигналов (wavelet transform), теория которого оформилась в начале 90-х годов, является не менее общим по областям своих применений, чем классическое преобразование Фурье. Принцип ортогонального разложения по компактным волнам состоит в возможности независимого анализа функции на разных масштабах ее изменения. Вейвлет-представление сигналов (функций времени) является промежуточным между полностью спектральным и полностью временным представлениями.
Компактные волны относительно независимо были предложены в квантовой физике, физике электромагнитных явлений, математике, электронике и сейсмогеологии. Междисциплинарные исследования привели к новым приложениям данных методов, в частности, в сжатии образов для архивов и телекоммуникаций, в исследованиях турбулентности, в физиологии зрительной системы, в анализе радарных сигналов и предсказании землетрясений. К сожалению, объем русскоязычной научной литературы по тематике вейвлет-преобразований (да и нейронных сетей) относительно невелик.
Базовая идея восходит к временам 200-летней давности и принадлежит Фурье: аппроксимировать сложную функцию взвешенной суммой простых функций, каждая из которых, в свою очередь, получается из одной функции-прототипа. Эта функция-прототип выполняет роль строительного блока, а искомая аппроксимация получается комбинированием одинаковых по структуре блоков. При этом, если "хорошая" аппроксимация получается при использовании небольшого числа блоков, то тем самым достигается значительное уплотнение информации. В качестве таких блоков Фурье использовал синусоиды с различными периодами.
Что прежде всего отличает вейвлет-анализ от анализа Фурье? Основным недостатком Фурье-преобразования является его "глобальная" чувствительность к "локальным" скачкам и пикам функции. При этом модификация коэффициентов Фурье (например, обрезание высоких гармоник с целью фильтрации шума) вносит одинаковые изменения в поведение сигнала на всей области определения. Это особенность оказывается полезной для стационарных сигналов, свойства которых в целом мало меняются со временем.
При исследовании же нестационарных сигналов требуется использование некоторых локализованных во времени компактных волн, коэффициенты разложения по которым сохраняют информацию о дрейфе параметров аппроксимируемой функции. Первые попытки построения таких систем функций сводились к сегментированию сигнала на фрагменты ("окна") с применением разложения Фурье для этих фрагментов. Соответствующее преобразование - оконное преобразование Фурье - было предложено в 1946-47 годах Jean Ville и, независимо, Dennis Gabor. В 1950-70-х годах разными авторами было опубликовано много модификаций времени-частотных представлений сигналов.
В конце 70-х инженер-геофизик Морли (Jean Morlet) столкнулся с проблемой анализа сигналов, которые характеризовались высокочастотной компонентой в течение короткого промежутка времени и низкочастотными колебаниями при рассмотрении больших временных масштабов. Оконные преобразования позволяли проанализировать либо высокие частоты в коротком окне времени, либо низкочастотную компоненту, но не оба колебания одновременно. В результате был предложен подход, в котором для различных диапазонов частот использовались временные окна различной длительности. Оконные функции получались в результате растяжения-сжатия и смещения по времени гаусиана. Morlet назвал эти базисные функции вейвлетами (wavelets) - компактными волнами. В дальнейшем благодаря работам Мейера (Yves Meyer), Добеши (Ingrid Daubechies), Койфмана (Ronald Coifman), Маллы (Stephane Mallat) и других теория вейвлетов приобрела свое современное состояние.
Среди российских ученых, работавших в области теории вейвлетов, необходимо отметить С.Б. Стечкина, И.Я. Новикова, В.И. Бердышева.
1. Многомасштабный анализ и вейвлеты
Определение 1. Многомасштабный анализ (multiresolutional analysis) – разложение гильбертова пространства L2(Rd), d³1, в последовательность замкнутых подпространств
, (1.1)
обладающих следующими свойствами:
1. , и полно в L2(Rd),
2. Для любого fÎ L2(Rd), для любого jÎ Z, f(x)ÎVj тогда и только тогда, когда
f(2x) ÎVj-1,
3. Для любого fÎ L2(Rd), для любого kÎ Zd, f(x)ÎV0 тогда и только тогда, когда f(x-k)ÎV0,
4. Существует масштабирующая (scaling) функция jÎV0, что {j(x-k)}kÎZd образует
базис Ритца в V0.
Для ортонормальных базисов можно переписать свойство 4 в виде:
4’. Существует масштабирующая функция jÎV0, что {j(x-k)}kÎZd образует ортонормальный базис в V0.
Определим подпространство Wj как ортогональное дополнение к Vj в Vj-1,
, (1.2)
и представим пространство L2(Rd) в виде прямой суммы
(1.3)
Выбирая масштаб n, можем заменить последовательность (1.1) следующей последовательностью:
(1.4)
и получить
(1.5)
Если имеем конечное число масштабов, то, не нарушая общности, можно положить j=0 и рассматривать
, V0Î L2(Rd) (1.6)
вместо (1.4). В числовой реализации подпространство V0 конечномерно.
Функция j - так называемая масштабирующая (скейлинг-) функция. С ее помощью можно определить функцию y - вейвлет - такую, что набор {y(x-k)}kÎZ образует ортонормальный базис в W0. Тогда
, m=0..M-1. (1.7)
Из свойства 4’ непосредственно следует, что, во-первых, функция j может быть представлена в виде линейной комбинации базисных функций пространства V-1 . Так как функции {jj,k(x)=2-j/2j(2-jx-k)}kÎZ образуют ортонормальный базис в Vj, то имеем
. (1.8)
Вообще говоря, сумма в выражении (1.8) не обязана быть конечной. Можно переписать (1.8) в виде
, (1.9)
где
, (1.10)
а 2p-периодическая функция m0 определяется следующим образом:
. (1.11)
Во-вторых, ортогональность {j(x-k)}kÎZ подразумевает, что
(1.12)
и значит
(1.13)
и . (1.14)
Используя (1.9), получаем
(1.15)
и, рассматривая сумму в (1.15) по четным и нечетным индексам, имеем
. (1.16)
Используя 2p-периодичность функции m0 и (1.14), после замены x/2 на x, получаем необходимое условие
(1.17)
для коэффициентов hk в (1.11). Заметив, что
(1.18)
и определив функцию y следующим образом:
, (1.19)
где
, k=0,…,L-1 , (1.20)
или преобразование Фурье для y
, (1.21)
где
, (1.22)
можно показать, что при каждом фиксированном масштабе jÎZ вейвлеты
{yj,k(x)=2-j/2y(2-jx-k)}kÎZ образуют ортонормальный базис пространства Wj.
Равенство (1.17) определяет пару квадратурных зеркальных фильтров (quadrature mirror filters, QMF) H и G, где и . Коэффициенты QMF H и G вычисляются с помощью решения системы алгебраических уравнений. Число L коэффициентов фильтра в (1.11) и (1.22) связано с числом исчезающих моментов М, и всегда четно.
Выбранный фильтр Н полностью определяет функции j и y и, таким образом, многомасштабный анализ. Кроме того, в правильно построенных алгоритмах значения функций j и y почти никогда не вычисляются. Благодаря рекурсивному определению вейвлетного базиса, все операции проводятся с квадратурными зеркальными фильтрами H и G, даже если в них используются величины, связаные с j и y.
2. Быстрое вейвлет-преобразование
После того, как вычислены коэффициенты hk и gk, т.е. выбран определенный вейвлет, можно проводить вейвлет-преобразование сигнала f(x), поскольку задан ортонормальный базис (yj,k, j j,k). Любая функция f(x)ÎL2(R) полностью характеризуется ее вейвлет-коэффициентами разложения по этому базису и потому может быть представлена формулой
. (2.1)
Зададим все пределы суммирования в формуле (2.1). Функцию f(x) можно рассматривать на любом n-м уровне разрешения jn. Тогда разделение между ее усредненными значениями на этом уровне и флуктуациями вокруг них выглядят как
. (2.4)
На бесконечном интервале первая сумма может быть опущена, и в результате получается «чистое» вейвлет-разложение.
Коэффициенты sj,k и dj,k содердат информацию о составе сигнала на разных масштабах и вычисляются по формулам:
, (2.2)
. (2.3)
Однако при этом компьютерные расчеты занимают довольно длительное время, т.к. при вычислении приходится проводить O(N2) операций, где N – число имеющихся значений функции. Опишем более быстрый алгоритм.
В реальных ситуациях с оцифрованным сигналом мы всегда имеем дело с конечным набором цифр (точек). Поэтому всегда существует наилучший уровень разрешения, когда каждый интервал содержит по одному числу. Соответственно и суммирование по k будет идти в конечных пределах. Удобно изменить шкалу разрешения (или шкалу f), приписав значение j=0 этому наилучшему уровню разрешения. В этом случае легко вычислить вейвлет-коэффициенты для более усредненных уровней j³1. Многомасштабный анализ приводит естественным путем к иерархической и быстрой схеме вычисления вейвлет-коэффициентов заданной функции.
В общем случае итерационные формулы быстрого вейвлет-преобразования имеют вид:
, (2.4)
(2.5)
с
. (2.6)
Эти уравнения обеспечивают быстрые (или пирамидальные) алгоритмы вычисления вейвлет-коэффициентов, поскольку требуют только O(N) операций для своего завершения. Начав с s0,k, мы вычислим все другие вейвлет-коэффициенты, если параметры вейвлета hm и gm известны. Явный вид вейвлета при этом не используется. Простая форма полученных итерационных уравнений служит единственным оправданием введения множителя в функциональное уравнение (1.8). В принципе, коэффициенты hm и gm можно было бы перенормировать. Однако, уравнения (2.4), (2.5) используются на практике значительно чаще других, и поэтому эту нормировку не изменяют. Любые дополнительные сомножители в них могут привести лишь к усложнению численных расчетов.
Остающиеся проблемы связаны с начальными данными. Если известен явный вид функции f(x), то коэффициенты s0,k можно вычислить, используя формулу (2.6). Но ситуация отличается от этой, если доступны только дискретные значения f(x). Чтобы достичь высокой точности, хорошо бы задать очень малые интервалы (плотную решетку), но это зачастую недоступно из-за конечности интервалов сбора информации. В таком случае простейшее принимаемое решение состоит в непосредственном использовании величин f(k) из доступного набора данных в виде коэффициентов s0,k и применении быстрого вейвлет-преобразования с использованием формул (2.4), (2.5). Это безопасная операция, т.к. пирамидальный алгоритм обеспечивает полную реконструкцию сигнала, а коэффициенты s0,k по сути представляют собой локальные средние значения сигнала, взвешенные со скейлинг-функцией.
В общем случае можно выбрать
. (2.7)
Рассмотренная ситуация отвечает условию s0,k=f(k), что соответствует cm=d0m.
Обратное быстрое вейвлет-преобразование позволяет реконструировать функцию по значениям ее вейвлет-коэффициентов.
3. Двумерные вейвлеты
Многомасштабный анализ можно проводить и с многомерными функциями. Существует два способа обобщить его на двумерный случай, но чаще используется построение, заданное тензорными произведениями.
Тривиальный путь построения двумерного ортонормального базиса исходя из одномерного ортонормального вейвлет-базиса yj,k(x)=2j/2y(2jx-k) состоит в том, чтобы путем тензорного произведения образовать соответствующие функции из двух одномерных базисов:
. (3.1)
В этом базисе две переменных x1 и x2 сжимаются по-разному.
Больший интерес для многих приложений имеет другая конструкция, в которой масштабирование полученного ортонормального вейлет-базиса происходит по обеим переменным одинаковым образом и двумерные вейвлеты задаются следующим выражением:
, j,k,lÎZ, (3.2)
но Y уже не является единственной функцией, наоборот, она будет сформирована из трех элементарных вейвлетов. Чтобы создать ортонормальный базис W0, теперь придется использовать три семейства
, , .
Тогда двумерные вейвлеты запишутся в виде
, , .
На двумерной плоскости происходит анализ по горизонталям, вертикалям и диагоналям с одинаковым разрешением в соответствии с тремя выписанными выше вейвлетами.
4. Матричные операции
4.1 Матричное умножение
Существует два возможных способа воздействовать оператором на функцию в рамках вейвлет-теории. Они называются стандартным и нестандартным матричным умножением.
У достаточно гладких функций большинство их вейвлет-коэффициентов достаточно маленькие. Для широкого класса операторов большинство их матричных элементов также оказываются небольшими. Рассмотрим структуру тех элементов матричного представления некоторого оператора Т, которые достаточно велики. Матричные элементы удовлетворяют следующим соотношениям.
при , (4.1.1)
при , (4.1.2)
Топология распределения этих матричных элементов внутри матрицы может оказаться весьма запутанной.
Рассметрим действие оператора Т на функцию f, которое превращает ее в функцию g.
(4.1.3)
Как g, так и f могут быть представлены в виде вейвлет-рядов с вейвлет-коэффициентами (f sj,k;f dj,k) и (g sj,k;g dj,k). На наиболее детальном уровне разрешения jn отличны от нуля только s-коэффициенты, и преобразование имеет вид
. (4.1.4)
На следующем уровне получаем
, (4.1.5)
, (4.1.6)
где
и замена нижних индексов S®D соответствует подстановке j®y под знаком интеграла.
Имеется связь между разными уровнями, потому что все s-коэффициенты на этом (jn-1)-м уровне должны быть разложены с помощью быстрого вейвлет-преобразования на s- и d-коэффициенты более высоких уровней. Поэтому, даже имея почти диагональный вид на начальном этапе, стандартная матрица преобретает затем довольно сложный вид, как это показано на рис.1.
На конечном этапе мы имеем дело с вейвлет-представлением, описываемым формулой (2.1), в которой в векторах остается только один s-коэффициент, представляющий взвешенное среднее функции по всему интервалу ее задания, а SS-переход от f к g описывается верхним левым квадратиком на этом рисунке. В то же время на пути к этой формуле от скейлинг-представления нам приходилось иметь дело со средними величинами на промежуточных уровнях, разлагая их затем на каждом этапе на части, s и d, последующих уровней разрешения. Эти промежуточные s-коэффициенты были опущены, потому что мы заменяли их на s- и d-коэффициенты поледующих уровней. Именно поэтому окончательная матрица при стандартном подходе приобретает такой сложный вид.
Рис.1. Матричное представление при стандартном подходе к вейвлет-анализу.
Части матрицы с ненулевыми вейвлет-коэффициентами заштрихованы.
Рис.2. Нестандартное матричное умножение при вейвлет-анализе.
Различные уровни оказались полностью развязанными, потому что в матрице теперь полностью отсутствуют блоки, которые ранее перепутывали их. Блок с SS-элементами извлечен, а на его место вставлена нулевая матрица. Полная матрица соответстваенно искусственным образом увеличилась. Вместе с ней увеличились и векторы, характеризующие функции f и g. Теперь здесь удерживаются все промежуточные s-коэффициенты вейвлет-разложения функции f. Каждый блок Sj+1 получается из Sj и Dj. В матрице преобразования равны нулю все SS-элементы за исключением их величин на низшем уровне S0S0. Все остальные SD-, DS-, DD-матрицы почти диагональны вследствие конечности области задания вейвлетов и скейлинг функций. Приведенная на рис. 2 форма функции g преобразуется в ее обычное вейвлет-представление из рис. 1 путем разделения каждого Sj в Sj-1 и Dj-1 стандартным методом. Затем эти Sj-1 и Dj-1 добавляются в соответствующие компоненты вектора. Эта процедура итерируется, начиная теперь уже с Sj-1, вполоть до S0, когда мы приходим к обычному вейвлет-представлению функции g. Таким способом мы избавляемся от всех s-коэффициентов за исключением s0. Вычисления можно теперь проделать очень быстро.
4.2 Обращение матрицы
Утверждение 1. Последовательность матриц Xk такова, что
Xk+1=2Xk -XkАXk, (4.2.1)
X0=aА*, (4.2.2)
где А* - сопряженная матрица и a выбирается таким образом, чтобы наибольшее собственное значение матрицы aА*А меньше двух. Тогда последовательность сходится к обобщенной обратной матрице А-1.
Если это утверждение скомбинировать с алгоритмом быстрого матричного умножения, то получается алгоритм для построения обратной матрицы в стандартной форме с трудоемкостью и в нестандартной форме с трудоемкостью , где R – число обусловленности матрицы. С помощью числа R можно оценить соотношение между наибольшим и наименьшим сингулярными числами выше порога точности.
4.3 Вычисление экспоненты, синуса и косинуса от матрицы.
При обращения матрицы использовался ранее известный алгоритм, который выходит на совершенно иной уровень, когда применяется вместе с вейвлет-представлением.
Алгоритм вычисления экспоненты матрицы основывается на тождестве
. (4.3.1)
Во-первых, exp(2-LA) может быть посчитана, например, с помощью ряда Тейлора. Число L выбирается таким образом, чтобы наибольшее сингулярное число матрицы 2-LA было меньше единицы. На втором шаге алгоритма для достижения результата матрица 2-LA возводится в квадрат L раз.
Аналогично, синус и косинус от матрицы могут быть посчитаны с исподьзованием формул двойного угла.
(4.3.2)
, (4.3.3)
при l=0,…,L-1
(4.3.4)
, (4.3.5)
где I – тождество. Снова выбираем L таким образом, чтобы наибольшее сингулярное число матрицы 2-LA было меньше единицы, вычисляем синус и косинус матрицы 2-LA, с помощью рядов Тейлора, а затем используем формулы (4.3.4) и (4.3.5).
Обычно такие алгоритмы требуют по меньшей мере O(N3) операций, так как должне быть выполнено достаточно много операций по умножению густых матриц. Быстрый алгоритм для умножения матриц в стандартной форме уменьшает сложность до не более чем операций, а быстрый алгоритм для умножения матриц в нестандартной форме – до O(N) операций.
Список литературы
Beylkin G. Wavelets and Fast Numerical Algorithms.
Beylkin G. Wavelets, Multiresolution Analysis and Fast Numerical Algorithms.
Дремин И.М., Иванов О.В., Нечитайло В.А. Вейвлеты и их использование // Успехи физических наук – 2001, №5. – С.465-500