1、给出自适应滤波器的设计思路;
2、在同一幅图中绘出受干扰观测信号和滤波处理后输出信号的波形图、自适应滤波器的权系数和均方误差;
3、给出自适应滤波开始时的输出信号波形图;4、给出自适应滤波稳定后的输出信号波形图;
5、实验报告要求:给出求解思路和结果分析,给出MATLAB实现源程序和程序注解。
*********************************************************************
1、解题思路
图1-1自适应滤波器原理图
按照图1-1所示的自适应滤波器原理图搭建系统。2、
程序代码
%采样点数%噪声信号
%期望信号
%从生成的期望信号中采出一个N行1列的列向量来形成dn矩阵%期望信号与噪声叠加后的实际信号
%从实际信号中采样得到X矩阵对应的列向量%初始化权系数矩阵,将这个列向量赋0%初始化输出信号矩阵,将列向量全赋0%滤波器的阶数
%输入信号相关矩阵的最大特征值%收敛因子0%误差序列,en(k)表示第k次迭代时预期输出与实际输入的误差%均方误差,用以判别输出信号对期望信号的偏离程度,从而度%每一行代表一个加权参量,每一列代表-次迭代,初始为0
%以下从for到end为循环迭代求解的过程,以第k次迭代进行
clearall;N=1500;
v=normrnd(0,5^0.5,1,N);n=1:N;
d=5*sin(0.05*n);dn=reshape(d,N,1);x=d+v;
X=reshape(x,N,1);W=zeros(N,1);y=zeros(N,1);M=200;
r=max(eig(X*X.'));u=rand()*(1/r);en=zeros(M,1);ee=zeros(M,1);量系统性能的好坏W=zeros(M,N);fork=M:N
描述
x=X(k:-1:k-M+1);%滤波器M个抽头的输入y=W(:,k-1).'*x;%滤波器的输出en(k)=dn(k)-y;%第k次迭代的误差
W(:,k)=W(:,k-1)+2*u*en(k)*x;%滤波器权值计算的迭代式ee(k)=en(k)*en(k);%求en的平方,以便于求均方误差end
yn=inf*ones(size(X));%求最优时滤波器的输出序列fork=M:length(X)
x=X(k:-1:k-M+1);yn(k)=W(:,end).'*x;end
figure(1)subplot(211)plot(ee)
title('均方误差');subplot(212)plot(W);
title('权系数')figure(2)subplot(211)plot(en)
title('均方误差信号');subplot(212)plot(v);
title('噪声信号');figure(3)subplot(221)plot(yn)
title('输出信号');subplot(222)plot(X)
title('观测信号');subplot(223)plot(dn);
title('期望信号');subplot(224)plot(en)
3、title('误差信号');实验结果及分析
实验结果如图3-1所示
图3-1输出的波形
从生成的仿真图像我们可以发现滤波器最终实现了自适应滤波的功能。
因篇幅问题不能全部显示,请点此查看更多更全内容