我正在尝试将两个过滤器组合成一个过滤器命令来解决家庭作业问题并寻求建议。只要有人能指出我正确的方向,我不一定需要明确的答案。
在下面的代码中,假设 'y' 是一个已预加载 (10kHz) 的声音文件。此外,hlpf 和 hnotch 滤波器分别协同工作,以产生去除噪音和哔哔声的音频信号。但是,当我尝试将两者组合成一个过滤器时,我没有达到这个结果。这是我的代码:
Fs = 10000;
f0 = 1000; %#notch frequency
fn = Fs/2; %#Nyquist frequency
freqRatio = f0/fn; %#ratio of notch freq. to Nyquist freq.
notchWidth = 0.1; %#width of the notch
%Compute zeros
zeros = [exp( sqrt(-1)*pi*freqRatio ), exp( -sqrt(-1)*pi*freqRatio )];
%Compute poles
poles = (1-notchWidth) * zeros;
b = poly( zeros ); %# Get moving average filter coefficients
a = poly( poles ); %# Get autoregressive filter coefficients
hnotch = [poly(poles)];
alpha = 0.42;
hlpf = fir1(100, alpha);
hcombo = conv(hlpf,hnotch);
s2 = filter(hcombo,1,y);
soundsc(s2,Fs)
任何帮助将不胜感激。