cwtfilterbank

Непрерывный банк фильтров преобразования вейвлета

Описание

Использовать cwtfilterbank для создания непрерывной группы фильтров преобразования вейвлета (CWT). Вейвлет по умолчанию, используемый в банке фильтров, является аналитическим вейвлетом Морзе (3,60). Можно варьировать параметры временной полосы и симметрии для вейвлетов Морса, чтобы настроить вейвлет Морса для ваших потребностей. Можно также использовать аналитический вейвлет Морле (Габора) или бамповый вейвлет. При анализе нескольких сигналов во временной частоте для повышения вычислительной эффективности можно предварительно вычислить фильтры один раз, а затем передать группу фильтров как вход в cwt. С помощью банка фильтров можно визуализировать вейвлеты по времени и частоте. Можно также создать банки фильтров с определенной частотой или областями значений периодов и измерить 3-dB полосы пропускания. Коэффициент качества для вейвлетов можно определить в группе фильтров.

Создание

Описание

пример

fb = cwtfilterbank создает непрерывную группу фильтров преобразования вейвлета (CWT) fb. Фильтры нормированы так, что пиковые величины для всех полос пропускания приблизительно равны 2. Набор фильтров по умолчанию предназначен для сигнала с 1024 выборками. Банк фильтров по умолчанию использует аналитический вейвлет Морзе (3,60). Банк фильтров использует шкалы по умолчанию: приблизительно 10 вейвлет-полосных фильтров на октаву (10 голосов на октаву). Ширина полосы пропускания самой высокой частоты спроектирована так, что величина падает до половины пикового значения на частоте Найквиста.

Как реализовано, CWT использует L1 нормализацию. При L1 нормализации колебательные компоненты равной амплитуды в разных шкалах имеют равную величину в CWT. L1 нормализация обеспечивает более точное представление сигнала. Амплитуды колебательных компонентов согласуются с амплитудами соответствующих коэффициентов вейвлета. См. Синусоидные и Вейвлет коэффициентные амплитуды.

fb может использоваться как вход для cwt.

пример

fb = cwtfilterbank(Name,Value) создает банк фильтров CWT fb со свойствами, заданными одним или несколькими Name,Value аргументы в виде пар. Свойства могут быть заданы в любом порядке как Name1,Value1,...,NameN,ValueN. Заключайте каждое имя свойства в кавычки.

Примечание

Вы не можете изменить значение свойства существующего банка фильтров. Для примера, если у вас есть банк фильтров fb с SignalLength 2000 года необходимо создать второй банк фильтров fb2 обработать сигнал с помощью 2001 выборок. Вы не можете назначить другое SignalLength на fb.

Свойства

расширить все

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

Пример: 'SignalLength',1700

Типы данных: double

Вейвлет анализа, используемый в группе фильтров, указывается как 'Morse', 'amor', или 'bump'. Эти строки задают аналитические Морзе, Морлет (Габор) и bump вейвлет, соответственно. Вейвлет по умолчанию является аналитическим вейвлетом Морса (3,60).

По умолчанию для вейвлетов Морса частотная характеристика уменьшается до 50% от пиковой величины в Nyquist. Для Морле и вейвлеты частотная характеристика уменьшается до 10% от пиковой величины. Можно изменить процент затухания путем установки банка фильтров FrequencyLimits свойство. Посмотрите cwtfreqbounds.

Для вейвлетов Морзе можно также параметризовать вейвлет с помощью TimeBandwidth или WaveletParameters свойства.

Пример: 'Wavelet','bump'

Количество голосов в октаве для использования в CWT, заданное в виде четного целого числа от 4 до 48. Шкалы CWT дискретизированы с использованием заданного количества голосов на октаву. Энергетическое распространение вейвлета по частоте и времени автоматически определяет минимальную и максимальную шкалы.

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

Пример: 'VoicesPerOctave',20

Типы данных: single | double

Частота дискретизации в герцах, заданная как положительная скалярная величина. Если не задано, частоты находятся в циклах/выборке, и частота Найквиста ½. Чтобы задать шкалы в периодах, используйте SamplingPeriod и PeriodLimits свойства.

Вы не можете задать оба SamplingFrequency и SamplingPeriod свойства.

Пример: 'SamplingFrequency',5

Типы данных: single | double

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

Если вы задаете пределы частоты вне допустимой области значений, cwtfilterbank обрезает пределы до минимального и максимального значений. Использовать cwtfreqbounds для определения пределов частоты для различных параметризаций вейвлет.

Если используется период дискретизации в банке фильтров, вы не можете задать FrequencyLimits свойство.

Пример: 'SamplingFrequency',20,'FrequencyLimits',[1 5]

Типы данных: double

Период дискретизации, заданный как скалярная длительность. Вы не можете задать оба SamplingFrequency и SamplingPeriod свойства.

Пример: 'SamplingPeriod',seconds(0.5)

Типы данных: duration

Пределы периода набора вейвлет, заданные как двухэлементные duration массив с положительным строго увеличением записей. Первый элемент PeriodLimits задает наибольшую пиковую частоту полосы пропускания и должна быть больше или равной удвоенному значению SamplingPeriod. Логарифм основы 2 отношения минимального периода к максимальному периоду должен быть меньше или равен -1/ NV, где NV - количество голосов на октаву. Максимальный период не может превысить длину сигнала, разделенную на продукт двух временных стандартных отклонений вейвлет и пиковой частоты вейвлета.

Если вы задаете пределы периода вне допустимой области значений, cwtfilterbank обрезает пределы до минимального и максимального значений. Использовать cwtfreqbounds для определения пределов периода для различных параметризаций вейвлет.

Если используется частота дискретизации в банке фильтров, вы не можете задать PeriodLimits свойство.

Пример: 'SamplingPeriod',seconds(0.1),'PeriodLimits',[seconds(0.2) seconds(1)]

Типы данных: duration

Продукт с временной пропускной способностью для Morse вейвлетов, заданный как положительная скалярная величина. Это свойство действительно только тогда, когда Wavelet свойство 'morse'. Это свойство задает продукт полосы времени вейвлета Морса с параметром симметрии (гамма), фиксированным на 3. TimeBandwidth является положительным числом, строго большим 3 и меньшим или равным 120.

Чем больше продукт полосы времени, тем больше разброс вейвлет во времени и более узкий вейвлет по частоте. Стандартное отклонение вейвлета Морса во времени приблизительно sqrt(TimeBandwidth/2). Стандартное отклонение частоты приблизительно 1/2*sqrt(2/TimeBandwidth). См. Обобщенные Морзе и Аналитические Вейвлеты Морле.

The TimeBandwidth и WaveletParameters не могут быть заданы оба свойства.

В обозначении Морзе Вейвлетов, TimeBandwidth является P2.

Пример: 'TimeBandwidth',20

Типы данных: double

Параметры Морзе вейвлет, заданные как двухэлементный вектор. Первый элемент является параметром симметрии (гамма), который должен быть больше или равен 1. Вторым элементом является продукт временной полосы, который должен быть строго больше гаммы. Отношение продукта полосы времени к гамме не может превышать 40.

Когда гамма равна 3, вейвлет Морса идеально симметричен в частотный диапазон. Перекос равен 0. Значения гаммы, больше 3, приводят к положительной перекосности, в то время как значения гаммы, меньше 3, приводят к отрицательной перекосности. WaveletParameters действителен только в том случае, если Wavelet для свойства задано значение 'Morse'.

Для получения дополнительной информации см. Morse Wavelets.

The WaveletParameters и TimeBandwidth не могут быть заданы оба свойства.

Пример: 'WaveletParameters',[4,20]

Краевое расширение сигнала, заданное как 'reflection' или 'periodic'. Определяет, как данные обрабатываются на контуре.

Пример: 'Boundary','periodic'

Функции объекта

wtНепрерывное вейвлет с набором фильтров
freqzЧастотные характеристики банка фильтров CWT
timeSpectrumУсредненные по времени вейвлеты спектра
scaleSpectrumУсредненные по шкале вейвлеты спектра
waveletsCWT-фильтр, вейвлеты временной области банка
scalesШкалы банка фильтров CWT
waveletsupportВремя в банке фильтров CWT поддержек
qfactorКоэффициент качества банка фильтров CWT
powerbwПропускная способность банка фильтров CWT 3 дБ
centerFrequenciesCWT фильтр банка полосно-пропускающих частот
centerPeriodsCWT фильтр банка полосно-пропускающих периоды

Примеры

свернуть все

Создайте непрерывный банк фильтров преобразования вейвлета.

fb = cwtfilterbank
fb = 
  cwtfilterbank with properties:

      VoicesPerOctave: 10
              Wavelet: 'Morse'
    SamplingFrequency: 1
       SamplingPeriod: []
         PeriodLimits: []
         SignalLength: 1024
      FrequencyLimits: []
        TimeBandwidth: 60
    WaveletParameters: []
             Boundary: 'reflection'

Постройте график частотной характеристики величины.

freqz(fb)

Figure contains an axes. The axes with title CWT Filter Bank contains 71 objects of type line.

Создайте две синусоиды с частотами 16 и 64 Гц. Данные отбираются с частотой дискретизации 1000 Гц. Постройте график сигнала.

Fs = 1e3;
t = 0:1/Fs:1-1/Fs;
x = cos(2*pi*64*t).*(t>=0.1 & t<0.3)+sin(2*pi*16*t).*(t>=0.5 & t<0.9);
plot(t,x)
title('Signal')

Figure contains an axes. The axes with title Signal contains an object of type line.

Создайте банк фильтров CWT для сигнала. Постройте график частотных характеристик вейвлетов в группе фильтров.

fb = cwtfilterbank('SignalLength',numel(t),'SamplingFrequency',Fs);
freqz(fb)
title('Frequency Responses — Morse (3,60) Wavelet')

Figure contains an axes. The axes with title Frequency Responses — Morse (3,60) Wavelet contains 71 objects of type line.

Аналитический вейвлет Морзе (3,60) является вейвлет по умолчанию в группе фильтров. Вейвлет имеет продукт временной полосы, равное 60. Создайте вторую группу фильтров, идентичную первой группе фильтров, но вместо этого используйте аналитический вейвлет Морса (3,5). Постройте график частотных характеристик вейвлетов во второй группе фильтров.

fb3x5 = cwtfilterbank('SignalLength',numel(t),'SamplingFrequency',Fs,...
    'TimeBandwidth',5);
figure
freqz(fb3x5)
title('Frequency Responses — Morse (3,5) Wavelet')

Figure contains an axes. The axes with title Frequency Responses — Morse (3,5) Wavelet contains 96 objects of type line.

Заметьте, что частотные характеристики шире, чем в первой группе фильтров. Вейвлет Морса (3,60) лучше локализован по частоте, чем вейвлет Морса (3,5). Примените каждую группу фильтров к сигналу и постройте график получившихся скалограмм. Заметьте, что вейвлет Морса (3,60) имеет лучшее разрешение частоты, чем вейвлет Морса (3,5).

figure
cwt(x,'FilterBank',fb)
title('Magnitude Scalogram — Morse (3,60)')

Figure contains an axes. The axes with title Magnitude Scalogram — Morse (3,60) contains 3 objects of type image, line, area.

figure
cwt(x,'FilterBank',fb3x5)
title('Magnitude Scalogram — Morse (3,5)')

Figure contains an axes. The axes with title Magnitude Scalogram — Morse (3,5) contains 3 objects of type image, line, area.

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

Создайте сигнал, состоящий из двух синусоидов с непересекающейся поддержкой во времени. Одна синусоида имеет частоту 32 Гц и амплитуду, равную 1. Другая синусоида имеет частоту 64 Гц и амплитуду, равную 2. Дискретизация сигнала выполняется в течение одной секунды при частоте 1000 Гц. Постройте график сигнала.

frq1 = 32;
amp1 = 1;
frq2 = 64;
amp2 = 2;

Fs = 1e3;
t = 0:1/Fs:1;
x = amp1*sin(2*pi*frq1*t).*(t>=0.1 & t<0.3)+amp2*sin(2*pi*frq2*t).*(t>0.6 & t<0.9);

plot(t,x)
grid on
xlabel('Time (sec)')
ylabel('Amplitude')
title('Signal')

Figure contains an axes. The axes with title Signal contains an object of type line.

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

fb = cwtfilterbank('SignalLength',numel(x),'SamplingFrequency',Fs,...
    'FrequencyLimits',[20 100]);
figure
freqz(fb)

Figure contains an axes. The axes with title CWT Filter Bank contains 24 objects of type line.

Использование cwt и банк фильтров для построения графика скалограммы сигнала.

figure
cwt(x,'FilterBank',fb)

Figure contains an axes. The axes with title Magnitude Scalogram contains 3 objects of type image, line, area.

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

Этот пример показывает, как изменить параметр временной полосы обобщенного вейвлета Морса, чтобы аппроксимировать аналитический вейвлет Морле.

Обобщенные морсовские вейвлеты являются семейством точно аналитических вейвлетов. Morse вейвлетов имеют два параметра, симметрию и продукт с временной полосой пропускания. Можно варьировать эти параметры, чтобы получить аналитические вейвлеты с различными свойствами и поведением. Для получения дополнительной информации смотрите Morse Wavelets и ссылки в нем.

Загрузка данных сейсмографа, зарегистрированных во время землетрясения в Кобе в 1995 году. Данные представляют собой сейсмографические (вертикальное ускорение, нм/кв.с) измерения, зарегистрированные в Университете Тасмании, Хобарт, Австралия, 16 января 1995 года, начиная с 20:56:51 (GMT) и продолжаясь в течение 51 минут с 1 секундными интервалами. Создайте банк фильтров CWT с настройками по умолчанию, которые можно применить к данным. Используйте банк фильтров, чтобы сгенерировать скалограмму.

load kobe
fb = cwtfilterbank('SignalLength',numel(kobe),'SamplingFrequency',1);
cwt(kobe,'FilterBank',fb)

Figure contains an axes. The axes with title Magnitude Scalogram contains 3 objects of type image, line, area.

Величина вейвлет велика в частотной области значений от 10 мГц до 100 мГц. Создайте новую группу фильтров с пределами по частоте, установленными на эти значения. Сгенерируйте скалограмму.

fb2 = cwtfilterbank('SignalLength',numel(kobe),'SamplingFrequency',1,...
    'FrequencyLimits',[1e-2 1e-1]);
cwt(kobe,'FilterBank',fb2)
title('Default (3,60) Morse')

Figure contains an axes. The axes with title Default (3,60) Morse contains 3 objects of type image, line, area.

По умолчанию cwtfilterbank использует (3,60) вейвлет Морса. Создайте банк фильтров с помощью аналитического вейвлета Морле с теми же пределами частоты. Сгенерируйте скалограмму и сравните с скалограммой, сгенерированной (3,60) вейвлетом Морса.

fbMorlet = cwtfilterbank('SignalLength',numel(kobe),'SamplingFrequency',1,...
    'FrequencyLimits',[1e-2 1e-1],...
    'Wavelet','amor');
cwt(kobe,'FilterBank',fbMorlet)
title('Analytic Morlet')

Figure contains an axes. The axes with title Analytic Morlet contains 3 objects of type image, line, area.

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

Создайте банк фильтров с помощью вейвлета Морса со значением временной полосы 30 [2] с пределами частоты, как указано выше. Сгенерируйте скалограмму данных сейсмографа. Обратите внимание, что происходит мазок по частоте, почти идентичный результатам Морле.

fbMorse = cwtfilterbank('SignalLength',numel(kobe),'SamplingFrequency',1,...
    'FrequencyLimits',[1e-2 1e-1],...
    'TimeBandwidth',30);
cwt(kobe,'FilterBank',fbMorse)
title('(3,30) Morse')

Figure contains an axes. The axes with title (3,30) Morse contains 3 objects of type image, line, area.

Теперь исследуйте вейвлеты, связанные с fbMorlet и fbMorse фильтровать банки. Из обеих групп фильтров получайте частоты вейвлет-центра, частотные характеристики фильтра и вейвлеты во временной области. Подтвердите, что центральные частоты почти идентичны.

cfMorlet = centerFrequencies(fbMorlet);
[frMorlet,fMorlet] = freqz(fbMorlet);
[wvMorlet,tMorlet] = wavelets(fbMorlet);
cfMorse = centerFrequencies(fbMorse);
[frMorse,fMorse] = freqz(fbMorse);
[wvMorse,tMorse] = wavelets(fbMorse);

disp(['Number of Center Frequencies: ',num2str(length(cfMorlet))]);
Number of Center Frequencies: 34
disp(['Maximum difference: ',num2str(max(abs(cfMorlet-cfMorse)))]);
Maximum difference: 2.7756e-17

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

wv = 13;
figure
plot(fMorlet,frMorlet(wv,:));
hold on
plot(fMorse,frMorse(wv,:));
grid on
title('Frequency Response')
xlabel('Frequency')
ylabel('Amplitude')
legend('Morlet','(3,30) Morse')

Figure contains an axes. The axes with title Frequency Response contains 2 objects of type line. These objects represent Morlet, (3,30) Morse.

Постройте график вейвлетов временной области, сопоставленных с той же центральной частотой. Подтвердите, что они почти идентичны.

figure
subplot(2,1,1)
plot(tMorlet,real(wvMorlet(wv,:)))
hold on
plot(tMorse,real(wvMorse(wv,:)))
grid on
title('Real')
legend('Morlet','(3,30) Morse')
xlim([-100 100])
subplot(2,1,2)
plot(tMorlet,imag(wvMorlet(wv,:)))
hold on
plot(tMorse,imag(wvMorse(wv,:)))
grid on
title('Imaginary')
legend('Morlet','(3,30) Morse')
xlim([-100 100])

Figure contains 2 axes. Axes 1 with title Real contains 2 objects of type line. These objects represent Morlet, (3,30) Morse. Axes 2 with title Imaginary contains 2 objects of type line. These objects represent Morlet, (3,30) Morse.

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

Создайте два банка фильтров. Один банк фильтров имеет значение по умолчанию TimeBandwidth значение 60. Вторая группа фильтров имеет TimeBandwidth значение 10. The SignalLength для обоих банков фильтров это 4096 выборки.

sigLen = 4096;
fb60 = cwtfilterbank('SignalLength',sigLen);
fb10 = cwtfilterbank('SignalLength',sigLen,'TimeBandwidth',10);

Получите вейвлеты временной области для банков фильтров.

[psi60,t] = wavelets(fb60);
[psi10,~] = wavelets(fb10);

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

sca60 = scales(fb60);
sca10 = scales(fb10);
[~,idx60] = min(abs(sca60-1));
[~,idx10] = min(abs(sca10-1));
m60 = psi60(idx60,:);
m10 = psi10(idx10,:);

Поскольку продукт с временной пропускной способностью больше для fb60 filter bank, проверьте m60 вейвлет имеет под своей огибающей больше колебаний, чем m10 вейвлет.

subplot(2,1,1)
plot(t,abs(m60))
grid on
hold on
plot(t,real(m60))
plot(t,imag(m60))
xlim([-30 30])
legend('abs(m60)','real(m60)','imag(m60)')
title('TimeBandwidth = 60')
subplot(2,1,2)
plot(t,abs(m10))
grid on
hold on
plot(t,real(m10))
plot(t,imag(m10))
xlim([-30 30])
legend('abs(m10)','real(m10)','imag(m10)')
title('TimeBandwidth = 10')

Figure contains 2 axes. Axes 1 with title TimeBandwidth = 60 contains 3 objects of type line. These objects represent abs(m60), real(m60), imag(m60). Axes 2 with title TimeBandwidth = 10 contains 3 objects of type line. These objects represent abs(m10), real(m10), imag(m10).

Выравнивание peaks m60 и m10 частотные характеристики величины. Проверьте частотную характеристику m60 вейвлет уже частотной характеристики для m10 вейвлет.

cf60 = centerFrequencies(fb60);
cf10 = centerFrequencies(fb10);

m60cFreq = cf60(idx60);
m10cFreq = cf10(idx10);

freqShift = 2*pi*(m60cFreq-m10cFreq);
x10 = m10.*exp(1j*freqShift*(-sigLen/2:sigLen/2-1));

figure
plot([abs(fft(m60)).' abs(fft(x10)).'])
grid on
legend('Time-bandwidth = 60','Time-bandwidth = 10')
title('Magnitude Frequency Responses')

Figure contains an axes. The axes with title Magnitude Frequency Responses contains 2 objects of type line. These objects represent Time-bandwidth = 60, Time-bandwidth = 10.

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

Загрузка данных сейсмографа, зарегистрированных во время землетрясения в Кобе в 1995 году. Данные представляют собой сейсмографические (вертикальное ускорение, нм/кв.с) измерения, зарегистрированные в Университете Тасмании, Хобарт, Австралия, 16 января 1995 года, начиная с 20:56:51 (GMT) и продолжаясь в течение 51 минут с 1 секундными интервалами. Создайте банк фильтров CWT, который можно применить к данным.

load kobe
fb = cwtfilterbank('SignalLength',numel(kobe),'SamplingFrequency',1);

Используйте cwt и возьмите CWT данных 250 раз. Отображение использованного времени.

num = 250;
tic;
for k=1:num
    cfs = cwt(kobe);
end
toc
Elapsed time is 6.551628 seconds.

Теперь используйте wt функция объекта банка фильтров для взятия CWT данных. Подтвердите, что использование банка фильтров происходит быстрее.

tic;
for k=1:num
    cfs = wt(fb,kobe);
end
toc
Elapsed time is 3.782376 seconds.

В этом примере показано, как построить график скалограммы CWT в подграфике рисунка.

Загрузите речевую выборку. Данные дискретизированы с частотой дискретизации 7418 Гц. Постройте график скалограммы CWT по умолчанию.

load mtlb
cwt(mtlb,Fs)

Figure contains an axes. The axes with title Magnitude Scalogram contains 3 objects of type image, line, area.

Получите непрерывное вейвлет сигнала и частоты CWT.

[cfs,frq] = cwt(mtlb,Fs);

The cwt функция устанавливает оси времени и частоты в скалограмме. Создайте вектор, представляющий шаги расчета.

tms = (0:numel(mtlb)-1)/Fs;

На новом рисунке постройте график исходного сигнала в верхней подграфике и скалограммы в нижней подграфике. Постройте график частот в логарифмической шкале.

figure
subplot(2,1,1)
plot(tms,mtlb)
axis tight
title('Signal and Scalogram')
xlabel('Time (s)')
ylabel('Amplitude')
subplot(2,1,2)
surface(tms,frq,abs(cfs))
axis tight
shading flat
xlabel('Time (s)')
ylabel('Frequency (Hz)')
set(gca,'yscale','log')

Figure contains 2 axes. Axes 1 with title Signal and Scalogram contains an object of type line. Axes 2 contains an object of type surface.

Совет

  • Первый раз, когда вы используете банк фильтров, чтобы взять CWT сигнала, вейвлет сконструированы, чтобы иметь тот же тип данных, что и сигнал. Предупреждающее сообщение генерируется, когда вы применяете тот же банк фильтров к сигналу с другим типом данных. Изменение типов данных сопряжено со стоимостью перепроектирования или изменения точности набора фильтров. Для оптимальной эффективности используйте последовательный тип данных.

  • При выполнении нескольких CWT, например, внутри цикла for-loop, рекомендуемый рабочий процесс должен сначала создать cwtfilterbank Объект и затем используйте wt функция объекта. Этот рабочий процесс минимизирует накладные расходы и максимизирует эффективность. Смотрите Использование банка фильтров CWT на нескольких временных рядах.

Вопросы совместимости

расширить все

Не рекомендуемый запуск в R2018b

Ссылки

[1] Лилли, Дж. М. и С. К. Олхеде. Обобщенные морсовые вейвлеты как суперсемейство аналитических вейвлетов. Транзакции IEEE по обработке сигналов. Том 60, № 11, 2012, стр. 6036-6041.

[2] Лилли, Дж. М. и С. К. Олхеде. «Высшие Свойства аналитических вейвлетов». Транзакции IEEE по обработке сигналов. Том 57, № 1, 2009, с. 146-160.

[3] Lilly, J. M. jLab: Пакет анализа данных для Matlab, версия 1.6.2. 2016. http://www.jmlilly.net/jmlsoft.html.

[4] Лилли, Дж. М. «Элементный анализ: основанный на вейвлет метод для анализа локализованных во времени событий в шумных временных рядах». Труды Королевского общества А. Том 473:20160776, 2017, стр. 1-28. dx.doi.org/10.1098/rspa.2016.0776.

Расширенные возможности

.
Введенный в R2018a