exponenta event banner

Сравнение частотно-временного содержания в сигналах с вейвлет-когерентностью

Этот пример показывает, как использовать вейвлет-когерентность и вейвлет-перекрестный спектр для идентификации локализованного во времени общего колебательного поведения в двух временных рядах. Пример также сравнивает когерентность импульса и перекрестный спектр с их аналогами Фурье. Для выполнения примеров необходимо иметь Toolbox™ обработки сигналов mscohere(Панель инструментов обработки сигналов) и cpsd(Панель инструментов обработки сигналов).

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

Для совместно стационарных временных рядов стандартными методами характеристики коррелированного поведения во времени или частоте являются взаимная корреляция, перекрестный спектр (Фурье) и когерентность. Однако многие временные ряды являются нестационарными, что означает, что их частотное содержание изменяется с течением времени. Для этих временных рядов важно иметь меру корреляции или когерентности во временной-частотной плоскости.

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

Обнаружение общих локализованных во времени колебаний и определение фазового запаздывания

В первом примере используют два сигнала, состоящих из локализованных во времени колебаний на частоте 10 и 75 Гц. Сигналы имеют длительность шесть секунд и дискретизируются при частоте 1000 Гц. Колебание 10-Hz в двух сигналах перекрывается между 1,2 и 3 секундами. Перекрытие для 75-Hz колебаний происходит между 0,4 и 4,4 секундами. 10 и 75-Hz компоненты задерживаются на 1/4 цикла в Y-сигнале. Это означает, что между 10 и 75-Hz компонентами в двух сигналах имеется фазовое запаздывание δ/2 (90 градусов). Оба сигнала искажаются аддитивным белым гауссовым шумом.

load wcoherdemosig1
subplot(2,1,1)
plot(t,x1)
title('X Signal')
grid on
ylabel('Amplitude')
subplot(2,1,2)
plot(t,y1)
title('Y Signal')
ylabel('Amplitude')
grid on
xlabel('Seconds')

Figure contains 2 axes. Axes 1 with title X Signal contains an object of type line. Axes 2 with title Y Signal contains an object of type line.

Получить когерентность импульса и отобразить результат. Введите частоту дискретизации (1000 Гц) для получения частотно-временного графика вейвлет-когерентности. В областях частотно-временной плоскости, где когерентность превышает 0,5, по фазе из вейвлет-перекрестного спектра указывают относительное отставание между когерентными компонентами. Фаза обозначена стрелками, ориентированными в определенном направлении. Заметим, что отставание 1/4 цикла в Y-сигнале на конкретной частоте обозначено стрелкой, направленной вертикально.

figure
wcoherence(x1,y1,1000)

Figure contains an axes. The axes with title Wavelet Coherence contains 237 objects of type image, line, patch.

Две локализованные во времени области когерентного колебательного поведения на частоте 10 и 75 Гц очевидны на графике вейвлет-когерентности. Фазовое соотношение показано ориентацией стрелок в областях высокой когерентности. В этом примере видно, что вейвлет-кросс-спектр фиксирует β/2 (1/4 цикла) фазовое отставание между двумя сигналами на частоте 10 и 75 Гц.

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

Повторите тот же анализ, используя квадрат когерентности Фурье и перекрестный спектр.

figure
mscohere(x1,y1,500,450,[],1000)

Figure contains an axes. The axes with title Coherence Estimate via Welch contains an object of type line.

[Pxy,F] = cpsd(x1,y1,500,450,[],1000);
Phase = (180/pi)*angle(Pxy);
figure
plot(F,Phase)
title('Cross-Spectrum Phase')
xlabel('Hz')
ylabel('Phase (Degrees)')
grid on
ylim([0 180])
xlim([0 200])
hold on
plot([10 10],[0 180],'r--')
plot([75 75],[0 180],'r--')
plot(F,90*ones(size(F)),'r--')
hold off

Figure contains an axes. The axes with title Cross-Spectrum Phase contains 4 objects of type line.

Квадрат когерентности Фурье, полученный из mscohere(Панель инструментов обработки сигналов) четко идентифицирует когерентные колебания на частоте 10 и 75 Гц. На фазовом графике поперечного спектра Фурье вертикальные красные пунктирные линии обозначают 10 и 75 Гц, в то время как горизонтальная линия обозначает угол 90 градусов. Вы видите, что фаза перекрестного спектра выполняет разумную задачу захвата относительного фазового запаздывания между компонентами.

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

Следующий пример повторяет предыдущий при изменении фазового соотношения между двумя сигналами. При этом 10-Hz составляющая в Y-сигнале задерживается на 3/8 цикла (3δ/4 радиана). Составляющая 75-Hz в Y-сигнале задерживается на 1/8 цикла (δ/4 радиан). Постройте график вейвлет когерентности и пороговое значение фазового отображения, чтобы показать только области, где когерентность превышает 0,75.

load wcoherdemosig2
wcoherence(x2,y2,1000,'phasedisplaythreshold',0.75)

Figure contains an axes. The axes with title Wavelet Coherence contains 158 objects of type image, line, patch.

Фазовые оценки, полученные из вейвлет-перекрестного спектра, фиксируют относительное отставание между двумя временными рядами на частоте 10 и 75 Гц.

При необходимости просмотра данных в терминах периодов, а не периодичности можно использовать объект длительности MATLAB для предоставления wcoherence с временем выборки.

wcoherence(x2,y2,seconds(0.001),'phasedisplaythreshold',0.75)

Figure contains an axes. The axes with title Wavelet Coherence contains 158 objects of type image, line, patch.

Заметим, что конус влияния перевернулся, потому что когерентность импульса теперь нанесена на график в терминах периодов.

Определение когерентных колебаний и задержки в климатических данных

Загрузить и построить график данных региона Эль-Нино 3 и десезонализировать индекс всех индийских осадков с 1871 по конец 2003 года. Данные отбираются ежемесячно. Временной ряд Nino 3 является рекордом ежемесячных аномалий температуры морской поверхности в градусах Цельсия, зарегистрированных от экваториального Тихого океана на долготе от 90 градусов к западу до 150 градусов к западу и широтах от 5 градусов к северу до 5 градусов к югу.

load ninoairdata
figure
subplot(2,1,1)
plot(datayear,nino)
title('El Nino Region 3 -- SST Anomalies')
ylabel('Degrees Celsius')
axis tight
subplot(2,1,2)
plot(datayear,air)
axis tight
title('Deseasonalized All Indian Rainfall Index')
ylabel('Millimeters')
xlabel('Year')

Figure contains 2 axes. Axes 1 with title El Nino Region 3 -- SST Anomalies contains an object of type line. Axes 2 with title Deseasonalized All Indian Rainfall Index contains an object of type line.

Постройте график вейвлет-когерентности с фазовыми оценками. Для этих данных более естественно смотреть на колебания с точки зрения их периодов в годах. Введите интервал выборки (период) как объект длительности с единицами года, чтобы выходные периоды были в годах. Показать относительное отставание между двумя временными рядами климата только в том случае, когда квадрат величины когерентности превышает 0,7.

figure
wcoherence(nino,air,years(1/12),'phasedisplaythreshold',0.7)

Figure contains an axes. The axes with title Wavelet Coherence contains 61 objects of type image, line, patch.

На графике показаны локализованные во времени участки сильной когерентности, происходящие в периоды, которые соответствуют типичным циклам El Nino от 2 до 7 лет. График также показывает, что существует приблизительная задержка цикла 3/8-1/2 между двумя временными рядами в эти периоды. Это указывает на то, что периоды потепления моря в соответствии с Эль-Нино, зарегистрированные у берегов Южной Америки, коррелируют с количеством осадков в Индии примерно в 17 000 км, но этот эффект задерживается примерно на 1/2 цикла (1-3,5 года).

Поиск когерентных колебаний в активности мозга

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

Например, рассмотрим данные спектроскопии ближнего инфракрасного диапазона (NIRS), полученные у двух людей. NIRS измеряет активность мозга, используя различные характеристики поглощения кислородсодержащего и дезоксигенированного гемоглобина. Данные взяты из Cui, Bryant, & Reiss [1] и были любезно предоставлены авторами для этого примера. Место записи было верхней лобной корой для обоих субъектов. Данные дискретизируются при частоте 10 Гц. В эксперименте испытуемые альтернативно сотрудничали и соревновались в выполнении задачи. Период выполнения задачи составил примерно 7,5 секунды.

load NIRSData
figure
plot(tm,NIRSData(:,1))
hold on
plot(tm,NIRSData(:,2),'r')
legend('Subject 1','Subject 2','Location','NorthWest')
xlabel('Seconds')
title('NIRS Data')
grid on
hold off

Figure contains an axes. The axes with title NIRS Data contains 2 objects of type line. These objects represent Subject 1, Subject 2.

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

[wcoh,~,F,coi] = wcoherence(NIRSData(:,1),NIRSData(:,2),10,'numscales',16);
helperPlotCoherence(wcoh,tm,F,coi,'Seconds','Hz')

Figure contains an axes. The axes with title Wavelet Coherence contains 2 objects of type image, line.

На графике вы видите область сильной когерентности в течение всего периода сбора данных около 1 Гц. Это является результатом сердечных ритмов двух субъектов. Кроме того, вы видите области сильной когерентности около 0,13 Гц. Это представляет собой когерентные колебания в мозге субъектов, вызванные задачей. Если более естественно просматривать вейвлет-когерентность в терминах периодов, а не частот, можно ввести интервал выборки как объект длительности. wcoherence обеспечивает преобразование масштаба в период.

[wcoh,~,P,coi] = wcoherence(NIRSData(:,1),NIRSData(:,2),seconds(0.1),...
    'numscales',16);
helperPlotCoherence(wcoh,tm,seconds(P),seconds(coi),...
    'Time (secs)','Periods (Seconds)')

Figure contains an axes. The axes with title Wavelet Coherence contains 4 objects of type image, line.

Опять же, обратите внимание на когерентные колебания, соответствующие сердечной активности субъектов, происходящие на протяжении записей с периодом приблизительно в одну секунду. Связанная с задачей активность также очевидна с периодом приблизительно 8 секунд. Обратитесь к Cui, Bryant и Reiss [1] за более подробным вейвлет-анализом этих данных.

Заключения

В этом примере вы научились использовать вейвлет-когерентность для поиска локализованного во времени когерентного колебательного поведения в двух временных рядах. Для нестационарных сигналов часто является более информативным, если у вас есть мера когерентности, которая обеспечивает одновременную информацию о времени и частоте (периоде). Относительная фазовая информация, полученная из волнового перекрестного спектра, может быть информативной, когда один временной ряд непосредственно влияет на колебания в другом.

Приложение

В этом примере используется следующая вспомогательная функция.

Ссылки

[1] Кюи, Х., Д. М. Брайант и А. Л. Рейсс. «Гиперсканирование на основе NIRS выявляет повышенную межличностную когерентность в верхней лобной коре во время сотрудничества». Нейроизображение. Том 59, номер 3, 2012, стр. 2430-2437.

[2] Гринстед, А., Дж. К. Мур и С. Джевреева. «Применение кросс-вейвлет-преобразования и вейвлет-когерентности к геофизическим временным рядам». Нелинейные процессы в геофизике. Том 11, 2004, стр. 561-566. doi: 10.5194/npg-11-561-2004.

[3] Мараун, Д., Дж. Куртс и М. Хольшнайдер. «Нестационарные гауссовы процессы в вейвлет-области: синтез, оценка и проверка значимости». Физический обзор Е. Том 75, 2007, стр. 016707 (1) -016707 (14). doi:10.1103/PhysRevE.75.016707.

[4] Торренс, C. и П. Уэбстер. «Интердекадные изменения в системе ЭНСО-Муссон». Журнал климата. Том 12, номер 8, 1999, стр. 2679-2690. doi: 10,1175/1520-0442 (1999) 012 < 2679: ICITEM > 2,0 .CO; 2.

См. также