Система многомасштабного анализа дискретных сигналов. Подсистема вейвлет-анализа

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



?тогонального вейвелет-анализа, который реализован в данной работе, предназначен для анализа дискретных сигналов в различных масштабах посредством передискретизации ортогонального вейвлета.

2.4.2. Используемая информация

При реализации алгоритма используются размерные характеристики сигнала и вейвлета, а также их значения.

2.4.3. Результаты решения

Результатами решения является матрица, каждую точку которой можно сопоставить конкретному значению входного сигнала и конкретному масштабу вейвлета.

2.4.4. Математическое описание алгоритма вейвлет-анализа

Обобщенное математическое описание вейвлет-анализа приведено в п. 2.1.4.3. Как и в п. 2.3.4, количество точек в строке удваивается. Вследствие этого, исходя из формулы (2.4), получаем следующее:

,(2.6)

где, , результат вейвлет-анализа;

, исходный сигнал;

, вейвелет;

модуль (длина) вектора;

взятие целой части;

остаток от целочисленного деления;

функция вейвлет-анализа, описанная в формуле (2.4);

логическое или;

логическое и.

2.4.5. Алгоритм вейвлет-анализа

  1. i ::= 0;
  2. Если i ? psi_size, то переход к п. 4;
  3. psi_scaled ::= resample(psi, psi_size i);
    resi ::= multiply(y, psi_scaled);
    i ::= i + 1;
  4. Конец.

2.4.6. Требования к контрольному примеру

Контрольный пример должен содержать результаты вейвлет-анализа сигнала, состоящего не менее чем из двух нестационарных составляющих, при помощи вейвлетов, соизмеримых по масштабу с составляющими сигнала.

2.4.7. Список условных обозначений

Алгоритм использует следующие условные обозначения:

y анализируемый сигнал;

psi дискретизированнный исходный вейвлет;

psi_size размер исходного вейвлета;

psi_scaled смаштабированный (передискретизированный) вейвлет;

res результат вейвлет анализа;

resample оператор передискретизации вейвлета (см. п. 2.2);

multiply оператор перемножения сигнала (см. п. 2.3).

2.5. Описание подпрограммы Wavelet.Resample

2.5.1. Вводная часть

Подпрограмма Wavelet.Resample служит для масштабирования дисретизированного вейвлета. Подпрограмма производит изменение шага дискретизации вейвлета и соответсвующее усреднение значения сигнала в полученных интервалах. Текст программы приведен в приложении 1.2.

2.5.2. Функциональное назначение

Подпрограмма Wavelet.Resample предназначена для реализации алгоритма передискретизации сигнала.

2.5.3. Описание информации

Входные данные для данной подпрограммы представлены:

int [] data массив, содержащий значения исходного вейвлета;

int size требуемый размер вейвлета.

Выходные данные для данной подпрограммы представлены:

double [] res передискретизированный вейвлет.

2.5.4. Используемые программы

В подпрограмме не используется других подпрограмм.

2.5.5. Схема подпрограммы Wavelet.Resample

Схема подпрограммы Wavelet.Resample приведена на рис. 2.2.

Схема программы Wavelet.Resample

Рис. 2.2

2.6. Описание подпрограммы Result.FormRow

2.6.1. Вводная часть

Подпрограмма Result.FormRow служит для получения одной строки результата вейвлет-анализа, соответсвующей определенному масштабу вейвлета. Подпрограмма производит перемножение сигнала и вейвлета. Текст программы приведен в приложении 1.3.

2.6.2. Функциональное назначение

Подпрограмма Result.FormRow предназначена для реализации алгоритма перемножения сигнала и вейвлета.

2.6.3. Описание информации

Входные данные для данной подпрограммы представлены:

int [] x массив, содержащий значения анализируемого сигнала;

double [] y массив, содержащий значения смаштабированного вейвлета;

int row номер строки, для который производится расчёт.

Выходные данные для данной подпрограммы представлены:

double [ , ] data матрица, содержащая значения результата вейвлет-анализа.

2.6.4. Используемые программы

В подпрограмме не используется других подпрограмм.

2.6.5. Схема подпрограммы Result.FormRow

Схема подпрограммы Result.FormRow приведена на рис. 2.3.

2.7. Описание подпрограммы Analyzer.Analyze

2.7.1. Вводная часть

Подпрограмма Analyzer.Analyze служит для осуществления вейвлет-анализа. Подпрограмма производит последовательное масштабирование вейвлета и его перемножение с сигналом. Текст программы приведен в приложении 1.4.

2.7.2. Функциональное назначение

Подпрограмма Analyzer.Analyze предназначена для реализации алгоритма вейвлет-анализа.

2.7.3. Описание информации

Входные данные для данной подпрограммы представлены:

int [] data массив, содержащий значения анализируемого сигнала;

int [] wavelet массив, содержащий значения исходного вейвлета.

Выходные данные для данной подпрограммы представлены:

double [ , ] result массив, содержащий значения исходного вейвлета.

Схема программы Result.FormRow

Рис. 2.3

2.7.4. Используемые программы

В подпрограмме используется подпрограммы Wavelet.Resample и Result.FormRow, описанные в п.п. 2.5, 2.6.

2.7.5. Схема подпрограммы Analyzer.Analyze

Схема подпрограммы Analyzer.Analyze приведена на рис. 2.4.

Схема программы Analyzer.Analyze

Рис. 2.4

2.8. Описание контрольного примера

2.8.1. Назначение

Основной целью работы программы служит вейвлет-анализ дискретных сигналов. Результатом работы является матрица вещественных чисел. Так как а