exponenta event banner

iirparameq

Биквадный цифровой фильтр параметрического эквалайзера БИХ

iirparameq функция будет удалена в следующей версии. Существующий код, использующий функцию, продолжает выполняться. Для нового кода используйте designParamEQ вместо этого используется функция из Audio Toolbox™.

Описание

пример

[SOS,SV] = iirparameq(N,G,Wo,BW) возвращает коэффициенты Nth порядковый цифровой параметрический эквалайзер IIR biquad с коэффициентом усиления G, центральная частота Woи полоса пропускания BW. Коэффициенты возвращаются в матрице секции второго порядка, SOSи вектор значений масштаба между каждой стадией биквада, SV.

пример

[SOS,SV,B,A] = iirparameq(N,G,Wo,BW) дополнительно возвращает матрицу числительных секций четвертого порядка, B, и матрицу A из знаменателей разделов четвертого порядка, A. Они могут использоваться вместо биквадной реализации и полезны для случая Wo = 0.5.

Примеры

свернуть все

Вычислите матрицу сечения второго порядка и масштабные значения параметрического эквалайзера.

[SOS,SV] = iirparameq(6,5,0.0042,0.0028)
SOS =

    1.0000   -1.9892    0.9894    1.0000   -1.9911    0.9912
    1.0000   -1.9926    0.9929    1.0000   -1.9941    0.9944
    1.0000   -1.9964    0.9965    1.0000   -1.9967    0.9968

SV =

    1.0009
    1.0000
    1.0009
    1.0000

Вычислите числительные и знаменательные коэффициенты секций четвертого порядка параметрического эквалайзера.

[SOS,SV,B,A] = iirparameq(6,5,0.0042,0.0028)
SOS =

    1.0000   -1.9892    0.9894    1.0000   -1.9911    0.9912
    1.0000   -1.9926    0.9929    1.0000   -1.9941    0.9944
    1.0000   -1.9964    0.9965    1.0000   -1.9967    0.9968

SV =

    1.0009
    1.0000
    1.0009
    1.0000

B =

    1.0009   -1.9911    0.9903         0         0
    1.0009   -3.9927    5.9729   -3.9715    0.9903

A =

    1.0000   -1.9911    0.9912         0         0
    1.0000   -3.9908    5.9729   -3.9733    0.9912

Проектирование двух эквалайзеров, центрированных на частоте 100 Гц и 1000 Гц соответственно, с коэффициентом усиления 5 дБ и коэффициентом добротности 1,5 для системы, работающей на частоте 48 кГц.

Fs  = 48e3;
N   = 6;
G   = 5;
Q   = 1.5;
Wo1 = 100/(Fs/2);
Wo2 = 1000/(Fs/2);
% Obtain the bandwidth of the equalizers from the center frequencies and
% Q-factors.
BW1 = Wo1/Q;
BW2 = Wo2/Q;
% Design the equalizers and obtain their SOS and SV values.
[SOS1,SV1] = iirparameq(N,G,Wo1,BW1);  
[SOS2,SV2] = iirparameq(N,G,Wo2,BW2);

Проектирование биквадных фильтров с использованием полученных значений SOS и SV.

BQ1 = dsp.BiquadFilter('SOSMatrix',SOS1,'ScaleValues',SV1);
BQ2 = dsp.BiquadFilter('SOSMatrix',SOS2,'ScaleValues',SV2);

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

fvtool(BQ1,BQ2,'Fs',Fs,'FrequencyScale','Log');
legend('Equalizer centered at 100 Hz','Equalizer centered at 1000 Hz');

Figure Filter Visualization Tool - Magnitude Response (dB) contains an axes and other objects of type uitoolbar, uimenu. The axes with title Magnitude Response (dB) contains 2 objects of type line. These objects represent Equalizer centered at 100 Hz, Equalizer centered at 1000 Hz.

Проектирование фильтра выемки восьмого порядка и сравнение его с традиционным фильтром выемки второго порядка, разработанным с IIRNOTCH.

Fs  = 44.1e3;
N   = 8;
G   = -inf;
Q   = 1.8;
Wo  = 60/(Fs/2); % Notch at 60 Hz
BW  = Wo/Q; % Bandwidth occurs at -3 dB for this special case
[SOS1,SV1] = iirparameq(N,G,Wo,BW);  
[NUM,DEN]  = iirnotch(Wo,BW); 
SOS2 = [NUM,DEN];

Проектируйте фильтры-пробки с использованием значений SOS и SV.

BQ1 = dsp.BiquadFilter('SOSMatrix',SOS1,'ScaleValues',SV1);
BQ2 = dsp.BiquadFilter('SOSMatrix',SOS2);

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

FVT = fvtool(BQ1,BQ2,'Fs',Fs,'FrequencyScale','Log');
legend(FVT,'8th order notch filter','2nd order notch filter');

Figure Filter Visualization Tool - Magnitude Response (dB) contains an axes and other objects of type uitoolbar, uimenu. The axes with title Magnitude Response (dB) contains 2 objects of type line. These objects represent 8th order notch filter, 2nd order notch filter.

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

свернуть все

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

Пример: 6

Пример: 10

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

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

Пример: 2

Пример: -2.2

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

Центральная частота параметрического эквалайзера, заданная как действительный скаляр в диапазоне [0.0 1.0]. Значение 1.0 соответствует δ радиан/выборка.

Пример: 0.0

Пример: 1.0

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

Полоса пропускания параметрического эквалайзера, заданная как действительный скаляр в диапазоне [0.0 1.0]. Значение 1.0 соответствует δ радиан/выборка.

Пример: 0.0

Пример: 1.0

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

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

свернуть все

Матрица сечения второго порядка, возвращаемая в виде вещественного значения Lоколо-6 матрица, где L - количество секций второго порядка фильтра.

Масштабные значения между каждой стадией биквада, возвращаемые как действительный вектор длины L + 1.

Числительные коэффициенты секций четвертого порядка параметрического эквалайзера, возвращаемые в виде вещественного M-by-5 матрица. M - количество секций фильтра четвертого порядка.

Коэффициенты знаменателя секций четвёртого порядка параметрического эквалайзера, возвращаемые в виде вещественного значения Mоколо-5 матрица. M - количество секций фильтра четвертого порядка.

Алгоритмы

свернуть все

Параметрический эквалайзер высокого порядка

Параметрические эквалайзеры - цифровые фильтры, используемые при обработке звука для регулировки частотного содержания звукового сигнала. Параметрические эквалайзеры обеспечивают возможности помимо возможностей графических эквалайзеров, позволяя регулировать коэффициент усиления, центральную частоту и полосу пропускания каждого фильтра. Напротив, графические эквалайзеры позволяют регулировать коэффициент усиления только каждого фильтра. Цифровые параметрические звуковые эквалайзеры обычно реализуются в виде биквадратических (БИХ-фильтров второго порядка) фильтров. Из-за низкого порядка биквадратические фильтры могут иметь относительно большие пульсирующие или переходные области. Когда несколько фильтров соединены каскадом, они могут перекрываться друг с другом. В таких обстоятельствах предпочтительны фильтры высокого порядка. Фильтры высокого порядка обеспечивают более плоские полосы пропускания, более острые края полос и больший контроль над формой каждого фильтра. Кроме того, если порядок фильтра задан равным двум, конструкция меняется на частный случай: традиционный параметрический эквалайзер второго порядка.

На рисунке показана амплитудная характеристика параметрического эквалайзера второго порядка по сравнению с параметрическим эквалайзером высокого порядка.

W0 = 0.3 × δ радиан/выборка - центральная частота эквалайзера, BW = 0.2 radians/sample - полоса пропускания эквалайзера, G = 10 - пиковый коэффициент усиления эквалайзера, G0 = 1, и ГБ = (G02 + G2 )/ 2.

Алгоритм

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

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

Передаточная функция параметрического эквалайзера высокого порядка задается:

H (z) =[b00+b01z−1+b02z−21+a01z−1+a02z−2]r×∏i=1L[bi0+bi1z−1+bi2z−2+bi3z−3+bi4z−41+ai1z−1+ai2z−2+ai3z−3+ai4z−4]

где b00, b01, b02, a01 и a02 - коэффициенты секции второго порядка эквалайзера. bi0, bi1, bi2, bi3, bi4, ai1, ai2 и ai3 - коэффициенты секций четвертого порядка эквалайзера. L = (N -r )/ 2, где r = 1 когда N является нечетным, и r = 0 когда N является четным. Секции четвертого порядка факторизируются в секции второго порядка, чтобы их можно было реализовать с помощью биквад-фильтров.

Для получения дополнительной информации о том, как вычисляются коэффициенты с точки зрения спецификаций конструкции, см. раздел «Конструкции бабочек» в [1].

Ссылки

[1] Софокл Дж. Орфанидис. «Проектирование цифрового параметрического эквалайзера высокого порядка». J. Audio Eng. Soc. Vol. 53, ноябрь 2005, стр. 1026-1046.

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