exponenta event banner

getCenterFrequencies

Центральные частоты фильтров

Синтаксис

Описание

пример

cf = getCenterFrequencies(obj) возвращает центральные частоты фильтров, созданных obj, в Гц.

Примеры

свернуть все

Создать gammatoneFilterBank и получают центральные частоты фильтров в наборе фильтров.

gammaFiltBank = gammatoneFilterBank;

cf = getCenterFrequencies(gammaFiltBank)
cf = 1×32
103 ×

    0.0500    0.0822    0.1181    0.1581    0.2027    0.2525    0.3081    0.3700    0.4391    0.5162    0.6022    0.6980    0.8050    0.9242    1.0573    1.2056    1.3711    1.5557    1.7616    1.9912    2.2473    2.5329    2.8515    3.2069    3.6032    4.0453    4.5384    5.0883    5.7017    6.3858    7.1489    8.0000

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

diff(hz2erb(cf))
ans = 1×31

    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130    1.0130

Создание octaveFilterBank и получают центральные частоты фильтров в наборе фильтров.

octFiltBank = octaveFilterBank;

cf = getCenterFrequencies(octFiltBank)
cf = 1×10
104 ×

    0.0032    0.0063    0.0126    0.0251    0.0501    0.1000    0.1995    0.3981    0.7943    1.5849

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

diff(log10(cf))
ans = 1×9

    0.3000    0.3000    0.3000    0.3000    0.3000    0.3000    0.3000    0.3000    0.3000

Создание октавной полосы пропускания splMeter и получить центральные частоты набора октавных фильтров. Округление центральных частот до двух значащих цифр для отображения.

SPL = splMeter('SampleRate',44100,'Bandwidth','1 octave');
cf = getCenterFrequencies(SPL);
round(cf,2,'significant')
ans = 1×10

          32          63         130         250         500        1000        2000        4000        7900       16000

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

свернуть все

Объект для получения частот центра банка фильтров, указанный как объект gammatoneFilterBank, octaveFilterBank, или splMeter.

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

свернуть все

Фильтрация центральных частот банка в Гц, возвращает скаляр или вектор.

Представлен в R2019a