Назад

Анализ алгоритма вейвлет преобразований и его реализация на языке C

Авторы статьи: Zhao Hong-tu, Xi Dong-mei

Автор перевода: П.Ю. Гаврютченков

Источник: Analysis on Algorithm of Wavelet Transform And Its Realization in C Language

Аннотация

Вейвлет анализ - отрасль математики, которая сформировалась и развилась в конце 1980-х. С развитием и созреванием вейвлет теории и заявления, вейвлет преобразования широко применялись к большинству аспектов инженера, но обычно только используя комплект вейвлет инструментов MATLAB, чтобы сделать программу. Чтобы отразить, что алгоритм и коннотация вейвлет преобразований глубоки, мы должны написать программу сами, чтобы осознать некоторые функции. В этой статье мы введем теорию, и анализ алгоритма Mallat вейвлет преобразований. И затем, мы дадим блок-схему программы этого алгоритма, который написан на языке C. Наконец мы возьмем вейвлет DB2, например, чтобы программировать вейвлет преобазования на языке C, и используем MATLAB, чтобы нарисовать формы волны этого алгоритма, использую комплект вейвлет инструментов MATLAB, чтобы сравнить результаты.

1. Введение

Вейвлет анализ – отрасль математики, которая сформировалась и развилась в конце 1980-х. С развитием и созреванием теории вейвлет и заявления, в настоящее время это относилось к обработке сигнала, обработке изображения и сжатию, сплаву данных, и т.д. Соответствуйте Фурье, преобразовывают, анализ вейвлет указывает на особенности сигнала и во временном интервале и в области частоты, и у этого есть хорошие местные особенности. Они более способствуют для нас аналитическим сигналам.

В 1910 Морской туман выдвинул самую простой вейвлет - вейвлет Морского тумана, затем Morlet во-первых предложил формулу вейвлет перевода и расширения, это использовалось в геологическом исследовании. В 1988 Маллэт предложил аналитическую теорию мультирезолюции (MRA), она объединяет несколько несвязанных областей вместе, таких как фильтрация зеркального отображения распознавания речи, кодирования подгруппы и метода пирамиды обработки изображения. В 1995 Свелденс предложил “lifiting вейвлет” и понятие второго вейвлетовского поколения.

Реализация на алгоритм вейвлет преобразования не дана в общих книгах, только использует комплект вейвлет инструментов MATLAB, чтобы сделать программу. Чтобы отразить, что алгоритм и коннотация вейвлет преобразования глубока, мы должны написать программу сами, чтобы осознать некоторые функции. Таким образом в этой статье, мы введем теорию, и анализ алгоритма Маллэта вейвлет преобразований. И затем, мы дадим блок-схему программы из этого алгоритма, который понят на языке C. Наконец мы возьмем вейвлет DB2, например, чтобы программировать вейвлет преобразования на языке C, и использующий MATLAB, чтобы привлечь числа формы волны использования этого алгоритма и комплекта вейвлет инструментов MATLAB, чтобы сравнить результаты.

2. Анализ алгоритма MALLAT

А. Алгоритм Mallat

Алгоритм Mallat может понять разложение и реконструкцию сигнала, который не должен знать его конкретную структуру и коэффициент функций масштаба и вейвлет функций. И этот алгоритм может сделать длину разложения сигнала уменьшенной наполовину каждый раз, таким образом, это - быстрый алгоритм. Число функции двух групп фильтра канала, которое используется, чтобы понять разложение и реконструкцию вейвлет преобразования, показывают в рисунке 1... Вы видите определенный процесс алгоритма в [1]. В рисунке 1, 'h' фильтр нижних частот, ‘g’ - фильтр высоких частот,‘↑2’ пробует, ‘↓2 ’снижается на выборку. Формула Mallat, которая используется в, вычисляет: (1) формула Mallat вейвлет преобразования...Они могут быть преобразованы до...(2) Формула Mallat вейвлет реконструкции:... ( формулы и схему можете увидеть в источнике). В формулах ‘h’ - функция масштаба, ‘g’ - вейвлет функция, ‘nj’, является гладкими коэффициентами j слоя и ‘nj d’, подробные коэффициенты j слоя. Вы видите определенный процесс в [2].

B. Анализ алгоритма

Здесь мы берем DB2 вейвлет для примера, блок-схемы реализации программы на языке C показана на рисунке 2...( схему можете увидеть в источнике)Описание: это должно использовать MATLAB, чтобы сделать груз оригинальным сигналом, который будет произведен к .dat файлы прежде C требование программы .dat файл. В программе C результаты вейвлет преобразования DB2 должны поместить в другой .dat файл. Таким образом мы можем использовать MATLAB, чтобы назвать .dat файл и привлечь числа формы волны алгоритма.

3. Реализация алгоритма mallat на языке C

В разделе A главы 2, формула Mallat вейвлет разложения и реконструкции дала, берут вейвлет DB2 для примера, формула может быть преобразована до...Коэффициенты функции вейвлет масштаба DB2...Его коэффициенты вейвлет функции...От формулы мы можем знать, если начальная последовательность 1ja дана, последовательность ja, 1ja может быть вычислена. Мы можем использовать периодическое продолжение в границе данных. Посредством анализа выше, мы можем собрать программу C вейвлет преобразования, как следует...Реализация периодического продолжения в границе [3] [4] через (2 * j) % n во множестве. Вейвлет реконструкция – обратный курс вейвлет разложения, его конкретная реализация больше не будет перечислять. У читателя, который интересуется им, может быть попытка (формулы, схемы, код, можете посмотреть в источнике)

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

Управляйте программой C выше и назовите .dat файлы, который произведен этой программой через MATLAB. Результат вейвлет разложения DB2 показывают в рисунке 3. Чтобы сформировать контраст, мы также используем комплект инструментов MATLAB, чтобы понять вейвлет разложение DB2, и его результат также показывают в рисунке 3. От фигур мы видим, что два числа формы волны подобны. Это показывает, что алгоритм, который мы подняли, выполним, и Cprogram, который мы собрали, может понять успешный алгоритм. Это - программа запроса .dat файлы, и привлеките числа формы волны через MATLAB [5]...(код приведен в источнике). Эта статья только дает реализацию языка C одномерного вейвлет преобразования. И двумерное вейвлет преобразование может быть понято на языке C, основанном на нем. Мы надеемся, что это поможет читателям, которые хотят достигнуть вейвлет преобразования сами.

Ссылки

[1] Sun Yankui. Wavelet analysis and application. Mechanical industry press. March 2005.

[2] Zheng Zhizhen, Shen Ping, etc. Wavelet transform and MATLAB tools. Earthquake press. October 2001.

Контакты: