exponenta event banner

freqz

Вычислительная частотная характеристика

Описание

пример

[H,f] = freqz(obj) возвращает матрицу комплексных частотных откликов для каждого фильтра, разработанного obj.

пример

[H,f] = freqz(obj,ind) возвращает частотную характеристику фильтров с индексами, соответствующими элементам в векторе ind.

пример

[H,f] = freqz(___,Name,Value) указывает параметры, использующие один или несколько Name,Value аргументы пары.

пример

freqz(___) без выходных аргументов строит график частотной характеристики набора фильтров.

Примеры

свернуть все

Создать gammatoneFilterBank объект. Звонить freqz для получения сложной частотной характеристики, H, набора фильтров и вектора частот, f, при котором вычисляется отклик. Постройте график частотно-амплитудной характеристики блока фильтров.

gammaFiltBank = gammatoneFilterBank;
[H,f] = freqz(gammaFiltBank);

plot(f,abs(H))
xlabel('Frequency (Hz)')

Figure contains an axes. The axes contains 32 objects of type line.

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

[H,f] = freqz(gammaFiltBank,10);

plot(f,abs(H))
xlabel('Frequency (Hz)')

Figure contains an axes. The axes contains an object of type line.

Чтобы указать количество точек БПФ, используемых для вычисления частотной характеристики, используйте NFFT пара имя-значение. Укажите, что частотная характеристика вычисляется с использованием 128-точечного БПФ. Постройте график частотной характеристики величины.

[H,f] = freqz(gammaFiltBank,'NFFT',128);

plot(f,abs(H))
xlabel('Frequency (Hz)')

Figure contains an axes. The axes contains 32 objects of type line.

Чтобы визуализировать только частотную характеристику величины, вызовите freqz без каких-либо выходных аргументов. Постройте график частотной характеристики амплитуды в дБ фильтров 20, 21 и 22 с использованием 1024-точечного ДПФ.

freqz(gammaFiltBank,[20,21,22],'NFFT',1024)

Figure contains an axes. The axes contains 3 objects of type line.

Создание octaveFilterBank объект. Звонить freqz для получения сложной частотной характеристики, H, набора фильтров и вектора частот, f, при котором вычисляется отклик. Постройте график частотной характеристики величины в дБ.

octFiltBank = octaveFilterBank;
[H,f] = freqz(octFiltBank);

plot(f,20*log10(abs(H)))
xlabel('Frequency (Hz)')
ylabel('Magnitude (dB)')
set(gca,'XScale','log')
axis([10 octFiltBank.SampleRate/2 -100 2])

Figure contains an axes. The axes contains 10 objects of type line.

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

[H,f] = freqz(octFiltBank,5);

plot(f,20*log10(abs(H)))
xlabel('Frequency (Hz)')
ylabel('Magnitude (dB)')
set(gca,'XScale','log')
axis([10 octFiltBank.SampleRate/2 -100 2])

Figure contains an axes. The axes contains an object of type line.

Чтобы указать количество точек БПФ, используемых для вычисления частотной характеристики, используйте NFFT пара имя-значение. Укажите, что частотная характеристика вычисляется с использованием 8192-точечного БПФ. Постройте график частотной характеристики величины в дБ.

[H,f] = freqz(octFiltBank,'NFFT',8192);

plot(f,20*log10(abs(H)))
xlabel('Frequency (Hz)')
ylabel('Magnitude (dB)')
set(gca,'XScale','log')
axis([10 octFiltBank.SampleRate/2 -100 2])

Figure contains an axes. The axes contains 10 objects of type line.

Чтобы визуализировать только частотную характеристику величины, вызовите freqz без каких-либо выходных аргументов. Постройте график частотной характеристики амплитуды в дБ фильтров 4, 5 и 6 с использованием 1024-точечного ДПФ.

freqz(octFiltBank,[4,5,6],'NFFT',1024)

Figure contains an axes. The axes contains 3 objects of type line.

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

свернуть все

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

Индексы фильтров для вычисления частотных откликов из, заданного как вектор строки целых чисел со значениями в диапазоне [1, N]. N - общее количество фильтров, разработанных obj.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'NFFT',2048

Число ячеек DFT, указанное как положительное целое число.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

свернуть все

Комплексная частотная характеристика каждого фильтра, возвращаемая в виде матрицы M-by-N. M - количество ячеек DFT, указанное NFFT. N - число фильтров, которое равно length(ind) или, если ind не указано, общее количество фильтров в банке фильтров.

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

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

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

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