用巴特沃兹带阻滤波器给一个加了100Hz的正弦噪音进行特定频率滤波。为什么已经调节到了噪音频率,但是就是不能用呢?求大神
代码如下:
clear;
[x,fs]=audioread('qinshixiang.wav');
%sound(x,fs);
N=length(x);
n=1:N;
c=10*sin(2*pi*100*n./fs); %0.1pi0.2pi=11000
x1=x'+c; %加入噪音
%sound(x1,fs);
subplot(2,2,1);stem(n,x);
title('原始信号');xlabel('n')
X=fft(x);magX=abs(X(1:(N+1)/2+1));
k=0:1:(N+1)/2;w=2*pi/N*k;
subplot(2,2,2);stem(w/pi,magX);title('原始信号幅频')
subplot(2,2,3);stem(n,x1'); %怀疑原程序没有矩阵倒过来
title('加入噪音的信号');xlabel('n');
X1=fft(x1');magX1=abs(X1(1:(N+1)/2+1)); %这里fft参数怀疑也没倒过来
subplot(2,2,4);stem(w/pi,magX1);title('加入噪声后信号幅频');xlabel('以pi为单位的频谱');
%带阻滤波器设计
wp=2*pi*[0.00150,0.002