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

В этом примере показано, как использовать когерентность вейвлета и перекрестный спектр вейвлета, чтобы идентифицировать локализованное временем общее колебательное поведение в двух временных рядах. Пример также сравнивает когерентность вейвлета и перекрестный спектр против их дубликатов Фурье. У вас должен быть Signal Processing Toolbox™, чтобы запустить примеры с помощью mscohere (Signal Processing Toolbox) и cpsd (Signal Processing Toolbox).

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

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

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

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

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

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 objects. Axes object 1 with title X Signal contains an object of type line. Axes object 2 with title Y Signal contains an object of type line.

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

figure
wcoherence(x1,y1,1000)

Figure contains an axes object. The axes object 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 object. The axes object 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 object. The axes object with title Cross-Spectrum Phase contains 4 objects of type line.

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

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

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

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

Figure contains an axes object. The axes object 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 object. The axes object with title Wavelet Coherence contains 158 objects of type image, line, patch.

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

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

Загрузите и постройте область Эль-Ниньо 3 данных и deseasonalized Весь индийский индекс Ливня от 1 871 до последних 2003. Данные производятся ежемесячно. Нино 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 objects. Axes object 1 with title El Nino Region 3 -- SST Anomalies contains an object of type line. Axes object 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 object. The axes object with title Wavelet Coherence contains 61 objects of type image, line, patch.

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

Найдите когерентные колебания в мозговом действии

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

Для примера рассмотрите спектроскопию в ближней инфракрасной области (NIRS) данные полученный в двух испытуемых людях. NIRS измеряет мозговое действие путем использования различных характеристик поглощения окисленного и deoxygenated гемоглобина. Данные взяты из 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 object. The axes object 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 object. The axes object 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 object. The axes object with title Wavelet Coherence contains 4 objects of type image, line.

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

Заключения

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

Приложение

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

Ссылки

[1] Цуй, X., Д. М. Брайант и А. Л. Рейсс. "ОСНОВАННОЕ НА БИК-СПЕКТРОСКОПИИ Гиперсканирование Показывает Увеличенную Межабонентскую Когерентность в Превосходящей Лобной Коре во время Сотрудничества". Нейроизображение. Издание 59, Номер 3, 2012, стр 2430–2437.

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

[3] Maraun, D., Дж. Кертс и М. Холшнайдер. "Неустановившиеся Гауссовы процессы в области вейвлета: синтез, оценка и тестирование значения". Физический Анализ E. Издание 75, 2007, стр 016707 (1) –016707 (14). doi:10.1103/PhysRevE.75.016707.

[4] Торренс, C. и П. Уэбстер. "Межпроисходящие каждые десять лет Изменения в Системе ENSO-муссона". Журнал Климата. Издание 12, Номер 8, 1999, стр 2679–2690. doi:10.1175/1520-0442 (1999) 012 <2679:ICITEM> 2.0. CO; 2.

Смотрите также