Частотно-временные гребни от вейвлета synchrosqueezing
[___]= wsstridge(___,
возвращает частотно-временной гребень с дополнительными опциями, заданными одним или несколькими Name,Value
)Name,Value
парные аргументы.
Функция использует оштрафованный прямой обратный жадный алгоритм, чтобы извлечь гребни максимальной энергии из матрицы частоты времени. Алгоритм находит максимальный частотно-временной гребень путем минимизации –ln A в каждом моменте времени, где A является абсолютным значением матрицы. Минимизация –ln A эквивалентна максимизации значения A. Алгоритм опционально ограничивает скачки в частоте со штрафом, который пропорционален расстоянию между интервалами частоты.
Следующий пример иллюстрирует алгоритм частотно-временного гребня с помощью штрафа, который является два раза расстоянием между интервалами частоты. А именно, расстояние между элементами (j,k)
и (m,n)
задан как (j-m)2
. Матрица частоты времени имеет три интервала частоты и три временных шага. Столбцы матрицы соответствуют временным шагам, и строки матрицы соответствуют интервалам частоты. Значения во второй строке представляют синусоиду.
Предположим, что у вас есть матрица:
1 4 4 2 2 2 5 5 4
Обновите значение для (1,2) элемент можно следующим образом.
Оставьте значения в первом моменте времени неизменными. Начните алгоритм с (1,2) элемент матрицы, которая представляет первый интервал частоты в точке второго раза. Значение интервала равняется 4. Оштрафуйте значения в первом столбце на основе их расстояния от (1,2) элемент. Применение штрафа первому столбцу производит
original value + penalty × distance 1 + 2 × 0 = 1 2 + 2 × 1 = 4 5 + 2 × 4 = 13
1 4 4 2 13 5
Добавьте минимальное значение в столбце 1 к текущему значению интервала, 4. Обновленное значение для (1,2) становится 5, который прибыл из интервала 1.
Обновите значения для остающихся элементов в столбце 2 можно следующим образом.
Повторно вычислите первоначальный столбец 1 значение с фактором штрафа использование того же процесса как на Шаге 2a. Получите остающиеся вторые значения столбцов с помощью того же процесса в качестве на Шаге 2b. Например, при обновлении (2,2) элемент, который имеет значение интервала 2, применяя штраф выражениям столбца
original value + penalty × distance 1 + 2 × 1 = 3 2 + 2 × 0 = 2 5 + 2 × 1 = 7
1 5(1) 4 2 4(2) 2 5 9(2) 4
Повторите Шаг 2 для третьего столбца. Но теперь штраф применяется к обновленному второму столбцу. Например, при обновлении (1,3) элемент, штраф
5 + 2 × 0 = 5 4 + 2 × 1 = 6 9 + 2 × 4 = 17
1 5(1) 9(1) 2 4(2) 6(2) 5 9(2) 10(2)
При запуске в последнем столбце матрицы найдите минимальное значение. Идите назад вовремя через матрицу путем движения от текущего интервала до начала координат того интервала в предыдущем моменте времени. Отслеживайте индексы интервала, которые формируют путь, составляющий гребень. Алгоритм сглаживает переход при помощи интервала источника вместо интервала с минимальным значением. В данном примере гребенчатыми индексами является 2
, 2, 2
, который совпадает с энергетическим путем синусоиды в строке 2 матрицы, показанной на Шаге 1.
Если вы извлекаете несколько гребней, алгоритм удаляет первый гребень из матрицы частоты времени и повторяет процесс.
[1] Daubechies, я., Дж. Лу и H.-T. Ву. "Вейвлет Synchrosqueezed преобразовывает: подобный эмпирическому разложению моды инструмент". Примененный и Вычислительный Гармонический Анализ. Издание 30, Номер 2, 2011, стр 243–261.
[2] Thakur, G., Э. Бревдо, N. S. Fučkar и H.-T. Ву. "Алгоритм Synchrosqueezing для изменяющегося во времени спектрального анализа: свойства Робастности и новые приложения палеоклимата". Обработка сигналов. Издание 93, Номер 4, 2013, стр 1079–1094.