1-D вейвлета вейвлет-пакетов

Теперь мы обращаемся к инструменту Wavelet Packet 1-D, чтобы проанализировать синтетический сигнал, который является суммой двух линейных щебетаний.

Запуск инструмента Wavelet Packet 1-D Tool

  1. Из MATLAB® приглашение, тип waveletAnalyzer. Появится Wavelet Analyzer.

    Выберите меню Вейвлета Packet 1-D элемента.

Импорт сигнала

  1. В командной строке MATLAB введите

    load sumlichr;

  2. В инструменте Wavelet Packets 1-D выберите File > Import from Workspace > Import Signal. Когда появится диалоговое окно Импорт из рабочей области (Import from Workspace), выберите sumlichr переменная. Нажмите кнопку ОК, чтобы импортировать данные.

    The sumlichr сигнал загружается в инструмент Wavelet Packet 1-D.

Анализ сигнала

  1. Установите соответствующие настройки для анализа. Выберите db2 вейвлет, уровень 4, энтропия threshold, и для типа порогового параметра 1. Нажмите кнопку Analyze.

Доступные типы энтропии перечислены ниже.

Напечатать

Описание

Шаннон

Ненормализированная энтропия, включающая логарифм квадратного значения каждой выборки сигнала - или, более формально,

si2log(si2).

Порог

Количество выборок, для которых абсолютное значение сигнала превышает порог

Норма

Концентрация в lp норма с 1 ≤ p.

Журнал энергии

Логарифм «энергии», заданный как сумма по всем выборкам:

log(si2).

SURE (Объективная оценка риска Штейна)

Основанный на пороге метод, в котором порог равен

2loge(nlog2(n))

где n - количество выборок в сигнале.

Пользователь

Критерий типа энтропии, заданный в файле.

Для получения дополнительной информации о доступных типах энтропии, определяемой пользователем энтропии и пороговых параметрах, см. wentropy Страница с описанием и выбор оптимального разложения.

Примечание

Многие возможности доступны с помощью области команды справа от окна Вейвлета Packet 1-D.

Вычисление лучшего дерева

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

  1. Нажмите кнопку «Лучшее дерево».

    После паузы для расчетов инструмент Wavelet Packet 1-D отображает лучшее дерево. Используйте верхний и нижний ползунки, чтобы разделить узлы и панорамировать к конкретным областям дерева, соответственно.

    Обратите внимание, что для этого анализа лучшее дерево и начальное дерево почти одинаковые. Одна ветвь в крайнем правом углу дерева была ликвидирована.

Сжатие сигнала с помощью пакетов Wavelet

Выбор порога для сжатия

  1. Нажмите кнопку «Сжатие».

    Окно Wavelet Packet 1-D Compression появляется с автоматически выбранным приблизительным пороговым значением.

    Самый левый график показывает, как порог (вертикальная черная пунктирная линия) был выбран автоматически (1.482), чтобы сбалансировать количество нулей в сжатом сигнале (синяя кривая, которая увеличивается с увеличением порога) с количеством энергии, удерживаемой в сжатом сигнале (фиолетовая кривая, которая уменьшается с увеличением порога).

    Этот порог означает, что любой сигнальный элемент, значение которого меньше 1,482, будет установлен на нуль, когда мы выполняем сжатие.

    Пороговые элементы управления расположены справа (см. красный ящик на рисунке выше). Обратите внимание, что автоматический порог 1,482 приводит к сохраненной энергии только 81,49%. Это может вызвать неприемлемые величины искажения, особенно в пиковых значениях колеблющегося сигнала. В зависимости от критериев проекта, вы можете выбрать порог, который сохраняет больше энергии исходного сигнала.

  2. Отрегулируйте порог путем ввода 0.8938 в текстовом поле напротив порога ползунка и затем нажмите клавишу Enter.

    Значение 0.8938 это число, которое мы обнаружили с помощью проб, и ошибка дает более удовлетворительные результаты для этого анализа.

    После паузы в окне Wavelet Packet 1-D Compression отображается новая информация.

    Обратите внимание, что, поскольку мы снизили порог с 1.482 до 0.8938,

    • Вертикальная черная пунктирная линия сместилась налево.

    • Сохраненная энергия увеличилась с 81,49% до 90,96%.

    • Количество нулей (эквивалентных величине сжатия) уменьшилось с 81,55% до 75,28%.

Сжатие сигнала

  1. Нажмите кнопку «Сжатие».

    Инструмент Wavelet Packet 1-D сжимает сигнал с помощью выбранного нами критерия порога.

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

Более внимательно рассматривая сжатый сигнал, мы видим, что количество нулей в представлении вейвлет сжатого сигнала составляет около 75,3%, а сохраненная энергия - около 91%.

Если вы пытаетесь сжать тот же сигнал с помощью вейвлетов с точно такими же параметрами, сохраняются только 89% энергии сигнала, и только 59% вейвлет-коэффициентов устанавливаются в нуль. Это иллюстрирует превосходство вейвлета пакетов для выполнения сжатия, по меньшей мере, на определенных сигналах.

Продемонстрировать это себе можно, вернувшись в главное окно Wavelet Packet 1-D, вычислив вейвлет, а затем повторив сжатие.

Шумоподавление сигнала с помощью пакетов вейвлет

Теперь мы используем инструмент Wavelet Packet 1-D, чтобы проанализировать шумный сигнал щебета. Этот анализ иллюстрирует использование объективной оценки риска (SURE) Штейна в качестве принципа для выбора порога, который будет использоваться для шумоподавления.

Этот метод вызывает установку порогового T на

T=2loge(nlog2(n))

где n - длина сигнала.

Более подробное обсуждение критерия SURE появляется в Выборе Оптимального Разложения. На данный момент достаточно сказать, что этот метод хорошо работает, если ваш сигнал нормирован таким образом, что данные соответствуют модели x (t) = f (t) + e (t), где e (t) является Гауссовым белым шумом с нулевым средним и единичным отклонением.

Если вы уже запустили инструмент Wavelet Packet 1-D и он активен на рабочем столе компьютера, перейдите к шагу 3.

Запуск инструмента Wavelet Packet 1-D Tool

  1. Из подсказки MATLAB введите waveletAnalyzer.

    Появится Wavelet Analyzer.

    Выберите меню Вейвлета Packet 1-D элемента.

    Инструмент появится на рабочем столе.

    Импорт сигнала

  2. В командной строке MATLAB введите

    load noischir;

    В инструменте Wavelet Packet 1-D выберите File > Import from Workspace > Import Signal. Когда появится диалоговое окно Импорт из рабочей области (Import from Workspace), выберите sumlichr переменная. Нажмите OK, чтобы импортировать данные

    Примечание

    Можно использовать File > Load > Signal для загрузки сигнала путем перехода к его местоположению.

  3. Длина сигнала составляет 1024. Это означает, что мы должны задать порог критерия SURE, равный sqrt(2.*log(1024.*log2(1024))), или 4.2975.

    Анализ сигнала

  4. Установите соответствующие настройки для анализа. Выберите db2 вейвлет, уровень 4, тип энтропии sure, и пороговый параметр 4.2975. Нажмите кнопку Analyze.

    Существует пауза во время вычисления вейвлета анализа пакетов.

    Примечание

    Многие возможности доступны с помощью области команды справа от окна Вейвлета Packet 1-D. Некоторые из них используются в сиквеле. Для получения более полного описания смотрите Функции Wavelet Packet Tool (1-D и 2D).

    Вычисление лучшего дерева и выполнение шумоподавления

  5. Нажмите кнопку «Лучшее дерево».

    Вычисление лучшего дерева делает расчеты шумоподавления более эффективными.

  6. Нажмите кнопку De-noise. Это поднимает окно Wavelet Packet 1-D Шумоподавление.

  7. Нажмите кнопку De-noise, расположенную в центральной правой части окна Wavelet Packet 1-D Шумоподавление.

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

Вы также можете использовать wpdencmp функция для выполнения вейвлета пакетного шумоподавления или сжатия из командной строки.

Для просмотра документации необходимо авторизоваться на сайте