exponenta event banner

filterbank

Банки фильтров вейвлет-временного рассеяния

Описание

filters = filterbank(sf) возвращает блоки фильтров, используемые при вычислении коэффициентов рассеяния. filters - массив ячеек структурных массивов с элементами нордера, где norder - количество порядков рассеяния. Первый элемент filters содержит фильтр масштабирования, phift, используемый при вычислении коэффициентов рассеяния 0-го порядка. Последующие элементы filters содержат вейвлет-фильтры, psiftи фильтр масштабирования, phift, для соответствующих банков фильтров разложения рассеяния.

Точность phift и psift зависит от точности, заданной в сети рассеяния sf.

[filters,f] = filterbank(sf) возвращает частоты, соответствующие ячейкам DFT в psift и phift поля filters. Если указать частоту выборки при построении sf, f измеряют в герцах. В противном случае f измеряют в циклах/образце.

пример

[filters,f,filterparams] = filterbank(sf) возвращает параметры фильтра для каждого элемента filters. filterparams является массивом ячеек с элементами norder. Каждый элемент filterparams является таблицей MATLAB ®.

[___] = filterbank(sf,order) возвращает банки фильтров, используемые для вычисления указанного order коэффициенты рассеяния. order - целое число от 0 до nфильтров включительно, где nфильтры - количество банков фильтров в сети рассеяния. Эти входные аргументы могут использоваться с любым из выходных синтаксисов, показанных ранее.

Примеры

свернуть все

Создайте сеть вейвлет-временного рассеяния для сигнала, дискретизированного на частоте 25 Гц.

sf = waveletScattering('SamplingFrequency',25)
sf = 
  waveletScattering with properties:

          SignalLength: 1024
       InvarianceScale: 20.4800
        QualityFactors: [8 1]
              Boundary: 'periodic'
     SamplingFrequency: 25
             Precision: 'double'
    OversamplingFactor: 0
          OptimizePath: 0

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

[filters,f,fparams] = filterbank(sf);

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

coefOrder = 1;
wvFilters = filters{coefOrder+1}.psift;
wvcenFrq = fparams{coefOrder+1}.omegapsi;
plot(f,wvFilters)
hold on
cf = plot(wvcenFrq,max(wvFilters),'rx');
grid on
title('Wavelet Filters')
xlabel('Hz')
ylabel('Magnitude')
legend(cf,'Center Frequencies')

Figure contains an axes. The axes with title Wavelet Filters contains 42 objects of type line. This object represents Center Frequencies.

Входные аргументы

свернуть все

Сеть вейвлет-временного рассеяния, заданная как waveletScattering объект.

Порядок коэффициентов рассеяния, определяемый как положительное целое число между 0 и nфильтрами включительно, где nфильтры - количество блоков фильтров в разложении рассеяния sf.

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

Выходные аргументы

свернуть все

Фильтрация банков с использованием при вычислении коэффициентов рассеяния, возвращаемых в виде массива ячеек структурных массивов. filters имеет элементы norder, где norder - количество порядков рассеяния. Первый элемент filters - структура с одним полем phift. phift содержит масштабный фильтр, используемый при вычислении коэффициентов рассеяния 0-го порядка. Последующие элементы filters содержат вейвлет-фильтры, psiftи фильтр масштабирования, phiftдля соответствующих банков фильтров сети рассеяния в полях структуры.

Точность phift и psift зависит от точности, заданной в сети рассеяния sf.

Частоты, соответствующие ячейкам DFT в psift и phift поля filters. Если указать частоту выборки при построении sf, f измеряют в герцах. В противном случае f измеряют в циклах/образце.

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

Параметры банка фильтров для каждого элемента filters, возвращено в виде массива ячеек. filterparams имеет элементы norder, где norder - количество порядков рассеяния.

Первый элемент filterparams - таблица MATLAB со следующими переменными:

  • boundary - расширение сигнала, используемое в фильтрах, возвращаемое как 'periodic' или 'reflection'.

  • precision - Точность, используемая в фильтрах, возвращаемая как 'double' или 'single'.

  • sigmaphi - стандартное отклонение времени функции масштабирования, возвращаемое в виде скаляра. Если указана частота выборки, sigmaphi в секундах. В противном случае sigmaphi находится в образцах.

  • freqsigmaphi - среднеквадратичное отклонение частоты функции масштабирования, возвращаемое как скаляр. Если указана частота выборки, freqsigmaphi в герцах. В противном случае freqsigmaphi находится в циклах/образце.

  • phiftsupport - частотная поддержка функции масштабирования, возвращаемая в виде скаляра. Если указана частота выборки, phiftsupport в герцах. В противном случае phiftsupport находится в циклах/образце.

  • phi3dBbw - 3-dB полоса пропускания функции масштабирования, возвращаемая как скаляр.

Последующие элементы filterparams включают дополнительные переменные для параметров вейвлета:

  • J - целое число логарифмически разнесенных вейвлет-фильтров в наборе фильтров рассеяния.

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

  • freqsigmapsi - среднеквадратические отклонения вейвлет-частоты, возвращаемые в виде вектора.

  • timesigmapsi - стандартные отклонения вейвлет-времени, возвращаемые в виде вектора.

  • psi3dBbw - Полосы пропускания вейвлет- 3-dB, возвращаемые в виде вектора.

  • psiftsupport - поддерживает вейвлет-частота, возвращаемая в виде вектора.

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.
Представлен в R2018b