dsp. ParametricEQFilter

(Чтобы быть удаленным) Настраиваемый фильтр параметрического эквалайзера второго порядка

Совместимость

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

Описание

Объект ParametricEQFilter является настраиваемым, фильтром параметрического эквалайзера второго порядка.

Применять фильтр к каждому каналу входа:

  1. Задайте и настройте свой фильтр эквалайзера. Смотрите Конструкцию.

  2. Вызовите step, чтобы отфильтровать каждый канал согласно свойствам dsp.ParametricEQFilter. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

При запуске в R2016b, вместо того, чтобы использовать метод step, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Конструкция

H = dsp.ParametricEQFilter возвращает фильтр параметрического эквалайзера второго порядка, который независимо фильтрует каждый канал входа в зависимости от времени, с помощью значений по умолчанию для Bandwidth, CenterFrequency и PeakGaindB. center frequency и bandwidth заданы в Гц и настраиваемые. peak gain (падение) задан в дБ и также настраиваемый. bandwidth измеряется в среднем арифметическом между peak gain в модулях неограниченной власти и один.

H = dsp.ParametricEQFilter('Specification', 'Quality factor and center frequency') задает добротность (Q фактор) фильтра. Q factor задан как центральная частота/пропускная способность. Более высокий Q factor соответствует более узкому пику/падению. Фактором Q должно быть скалярное значение, больше, чем 0. Фактор Q является настраиваемым.

H = dsp.ParametricEQFilter('Specification', 'Coefficients') задает значения усиления для пропускной способности и центральной частоты. Это удаляет вычисления тригонометрии, включенные, когда свойства настраиваются. CenterFrequencyCoefficient должен быть скаляром между-1 и 1 с-1 соответствием 0 Гц и 1 соответствием частоте Найквиста. BandwidthCoefficient должен быть скаляром между-1 и 1 с-1 соответствием самой большой пропускной способности и 1 соответствием самой маленькой пропускной способности. В этом режиме пиковое усиление задано в линейных модулях, а не дБ.

H = dsp.ParametricEQFilter('Name', Value, ...) возвращает фильтр параметрического эквалайзера с каждым заданным набором имени свойства к заданному значению. Можно задать несколько аргументов пары "имя-значение" в любом порядке как ('Name1',Value1,...,'NameN',ValueN).

Свойства

Specification

Разработайте параметры или коэффициенты, которые задают фильтр

Выберите одно из следующих значений Specification. Используйте соответствующие настраиваемые свойства задать фильтр:

  • Bandwidth and center frequency — Используйте Bandwidth, CenterFrequency и PeakGaindB.

  • Quality factor and center frequency — Используйте QualityFactor, CenterFrequency и PeakGaindB.

  • Coefficients — Используйте BandwidthCoefficient, CenterFrequencyCoefficient и PeakGain.

Значением по умолчанию является Bandwidth and center frequency.

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

Bandwidth

пропускная способность фильтра

Задайте пропускную способность фильтра в виде конечного положительного числа, которое является меньше чем половиной частоты дискретизации входного сигнала в Гц. Это свойство применимо, если Specification установлен в Bandwidth and center frequency. Значение по умолчанию составляет 2 205 Гц. Это свойство является настраиваемым.

BandwidthCoefficient

Коэффициент для пропускной способности фильтра

Задайте значение, которое определяет пропускную способность фильтра в виде конечного числа в области значений [-1 1]:

  • -1 соответствует максимальной пропускной способности (SampleRate/4).

  • 1 соответствует минимальной пропускной способности (0 Гц, то есть, фильтру allpass).

Это свойство только применимо, если Specification установлен в Coefficients. Значение по умолчанию 0.72654. Это свойство является настраиваемым.

CenterFrequency

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

Задайте центральную частоту фильтра в виде конечного положительного числа, которое является меньше чем половиной частоты дискретизации входного сигнала в Гц. Это свойство только применимо, если Specification установлен в Bandwidth and center frequency или Quality factor and center frequency. Значением по умолчанию является Гц 11025. Это свойство является настраиваемым.

CenterFrequencyCoefficient

Коэффициент для центральной частоты фильтра

Задайте значение, которое определяет центральную частоту фильтра в виде конечного числа между-1 и 1:

  • - 1 соответствует минимальной центральной частоте (0 Гц).

  • 1 соответствует максимальной центральной частоте (SampleRate/2 Гц).

Это свойство только применимо, если Specification установлен в Coefficients. Значением по умолчанию является 0, который соответствует SampleRate/4 Гц.

Это свойство является настраиваемым.

PeakGain

Достигните максимума или опустите усиление фильтра в линейных модулях

Задайте пик фильтра или усиление падения в линейных модулях. Значение, больше, чем, каждый повышает сигнал. Значение меньше чем один ослабляет сигнал. Значение по умолчанию равняется 2 (6,0206 дБ). Это свойство является настраиваемым.

PeakGaindB

Достигните максимума или опустите усиление фильтра в дБ

Задайте пик фильтра или усиление падения в дБ. Положительное значение повышает сигнал. Отрицательная величина ослабляет сигнал. Значением по умолчанию является дБ 6.0206. Это свойство является настраиваемым.

QualityFactor

Добротность параметрического фильтра EQ

Задайте Добротность (Q фактор) фильтра. Фактор Q задан как центральная частота, разделенная на пропускную способность. Более высокий фактор Q соответствует более узкому пику или падению. Это свойство только применимо, если Specification установлен в Quality factor and center frequency. Значение по умолчанию равняется 5. Это свойство является настраиваемым.

SampleRate

Введите частоту дискретизации

Задайте частоту дискретизации входа в виде конечного числа в Гц. Значением по умолчанию является Гц 44100.

Методы

getBandwidthПреобразуйте добротность или коэффициент пропускной способности к пропускной способности в Гц
getCenterFrequencyПреобразуйте центральный коэффициент частоты в частоту в Гц
getOctaveBandwidthИзмерьтесь пропускная способность параметрического эквалайзера просачиваются октавы
getPeakGainПреобразуйте пик или отметьте усиление от дБ до абсолютных единиц
getPeakGaindBПреобразуйте пик или отметьте усиление от абсолютных единиц до дБ
getQualityFactorПреобразуйте пропускную способность в добротность
сбросСбросьте состояния объекта ParametricEQFilter
шагФильтр вводится с объектом ParametricEQFilter
tf Вычислите передаточную функцию
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

развернуть все

Создайте объект ParametricEQFilter, где центральная частота и пропускная способность фильтра эквалайзера составляют 5 000 Гц и 500 Гц соответственно. Частота дискретизации для фильтра является значением по умолчанию, 44 100 Гц.

h = dsp.ParametricEQFilter('CenterFrequency',5000,...
       'Bandwidth',500);

Создайте объекты оценить и отобразить передаточную функцию фильтра.

htf = dsp.TransferFunctionEstimator('FrequencyRange','onesided',...
         'SpectralAverages',50);
hplot = dsp.ArrayPlot('PlotType','Line','YLimits',[-15 15],...
       'SampleIncrement',44100/1024);

Сгенерируйте случайный сигнал и отфильтруйте сигнал.

for i=1:1000
   x = randn(1024,1);       % Random signal
   y = h(x);           % Filter signal
   H = htf(x,y);       % Estimate transfer function
   magdB = 20*log10(abs(H));% Convert to dB
   hplot(magdB);       % Display transfer function
    
   if (i==1)                % Pause to display initial transfer function
      pause;  
   end
   if (i==500)              % Tune filter
      h.CenterFrequency = 10000;
      h.Bandwidth = 2000;
      h.PeakGaindB = -10;
   end
 end

Программное обеспечение отображает начальную оценку передаточной функции.

Чтобы продолжиться, нажмите любую клавишу.

В i=500 настраивается фильтр. Центральная частота, пропускная способность и пиковое усиление фильтра теперь имеют различные значения. Программное обеспечение отображает новую передаточную функцию.

Алгоритм

Параметрический эквалайзер формируется линейной комбинацией пика и фильтра метки. Смотрите раздел Algorithm dsp.NotchPeakFilter для деталей.

H(z)=Hnotch(z)+GHpeak(z)

Вот график этих двух случаев (повышение и сокращение) значения, в квадрате из передаточных функций:

Передаточная функция может быть записана как:

H(z)=(1+Gγ1+γ)2(потому чтоω01+γ)z1+(1Gγ1+γ)z212(потому чтоω01+γ)z1+(1γ1+γ)z2whereγ=загар(Δω2)andGB2=1+G22

G является усилением параметрического эквалайзера, и Гбайт является усилением пропускной способности, то есть, уровнем усиления, на котором измеряется пропускная способность Δω.

dsp.NotchPeakFilter, который делает большую часть работы, реализован разъединенным способом так, чтобы центральная частота могла быть настроена независимо от пропускной способности. Обратите внимание на то, что фактор Q задан как центральная частота/пропускная способность.

Ссылки

[1] Orfanidis, Софокл Дж. Введение в обработку сигналов верхний Сэддл-Ривер, NJ: Prentice Hall, 1996

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

развернуть все

Предупреждает запуск в R2019a

Введенный в R2014a

Для просмотра документации необходимо авторизоваться на сайте