Смекни!
smekni.com

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

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– массив, содержащий значения исходного вейвлета;

intsize – требуемый размер вейвлета.

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

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 – массив, содержащий значения смаштабированного вейвлета;

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

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

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. Назначение

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

2.8.2. Исходные данные

Исходными данными служат файлы «.dat», содержащие данные исходного сигнала или вейвлета. Описание формата этих файлов представлено в п.2.1.2.

2.8.3. Контрольный пример

В качестве исходного сигнала была выбрана дискретизированная синусоида. После загрузки в программу анализируемый сигнал выглядит следующим образом (рис. 2.5).

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

Рис.2.5


Для анализа входного сигнала был выбран вейвлет – аналог так называемой «мексиканской шляпы» /1/. В нашем случае к «мексиканской шляпе» были добавлены две краевые составляющие. Полученный вейвлет представлен на рис. 2.6.

Вейвлет

Рис. 2.6

После расчёта и визуализации результат вейвлет-анализа исходного сигнала выглядит следующим образом (рис.2.7). Как видно на результирующей картине ярко выделены минимумы и максимумы исходного сигнала.

Результат вейвлет анализа

Рис. 2.7

2.8.4. Тестирование программного обеспечения подсистемы вейвлет-нализа