实验二 自适应滤波信号
一、实验目的:
1.利用自适应LMS算法实现FIR最佳维纳滤波器。
2.观察影响自适应LMS算法收敛性,收敛速度以及失调量的各种因素,领会自适应信号处理方法的优缺点。
3.通过实现AR模型参数的自适应估计,了解自适应信号处理方法的应用。
二、实验原理及方法
自适应滤波是一种自适应最小均方误差算法(LMS),这种算法不像维纳滤波器需要事先知道输入和输出信号的自相关和互相关矩阵,它所得到的观察值
,滤波器等价于自动“学习”所需要的相关函数,从而调整FIR滤波器的权系数,并最终使之收敛于最佳值,即维纳解。
下面是自适应FIR维纳滤波器的LMS算法公式:
(2-1)
(2-2)
(2-3)
其中FIR滤波器共有M+1个权系数,
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示FIR滤波器第m个权系数在第n步的估计值。
因此,给定初始值
,每得到一个样本
,可以递归得到一组新的滤波器权系数,只要步长
满足
(2-4)
其中
为矩阵R的最大特征值,当
时,
收敛于维纳解。
现在我们首先考察只有一个权系数h的滤波器,如图2.1所示。假如信号
由下式确定:
(2-5)
(2-6)
其中h为标量常数,
与
互不相关,我们希望利用
和
得到
的估计。
图1
利用公式(2-1),(2-2),(2-3),我们可以得到下面的自适应估计算法:
(2-7)
(2-8)
其框图如图所示。
图2
选择
的初始值为
,对式2-8取数学期望可得
(2-9)
其中
(2-10)
因此,只要满足
(2-11)
的条件,
总归可以收敛于最佳值
,从而
也逐渐收敛于
。
自适应信号处理的一个重要应用是用来进行参数估计。下面是利用LMS算法实现AR模型参数的估计。
如果信号
为一个M阶的AR模型,即
(2-12)
通过解Yule-Walker方程可以得到AR模型的参数估计,同样,利用LMS算法,我们也可以对AR模型的参数估计进行自适应估计,其算法如下:
(2-13)
(2-14)
(2-15)
这种算法的实现框图如图2.3所示。
图3
同样可以证明,只要步长
值选择合适,当
时,上述自适应算法得到的
也收敛于AR模型的参数
。
三、实验结果及分析
1.
时
和
的比较:
图4 自适应滤波器
和
的比较
图1是
时
和
的比较,由图可以看出
的均值刚开始一直在变化,然后逐渐趋于稳定,最后收敛于最佳值。
2. 自适应滤波器的效果
和
的比较:
图5
和
的比较
图2是
时
和
的比较比较,由于滤波器逐渐收敛于最佳值,所以随着L的增大滤波效果越好。
3.利用实验一中的维纳滤波器估计的
和
估计的到的
与2中的估计进行比较:
图6 自适应滤波器和维纳滤波器的估计比较
图3是利用卷积得到的
时的
和有2中得到的
进行比较,可得出自适应滤波算法大大改善了滤波性能。
4、
的情况
图7
时自适应滤波器的性能
的情况
图8
时自适应滤波器的性能
的情况
图9
时自适应滤波器的性能
由图4-图6可知,当
增大时,自适应滤波器的性能随之降低。当
时滤波器失配。
5、
时:
图10
时自适应滤波器的性能
由图7可知,其他条件不变的情况下,随着
的减小,
收敛的更快,失调量越大。
6. 自适应AR模型:当
时
和
的估计情况:
图11
和
的估计情况
7. 通过实验一解Yule-Walker方程的方法解的
和
的估计值和通过自适应AR模型得到的估计值的比较
图12 Yule-Walker方程得到的估计值和自适应AR模型得到的估计值的比较
8、
时自适应AR的估计情况:
图13
时a1和a2的估值
图10是
时的a1和a2的估计值,由图可以看出,虽然a1和a2的估计值都逐渐收敛,但是已经产生了很大的误差,收敛速度比
时的情况慢,失调量也变大。
四、思考
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
1、s(n)和w(n)的方差越大,收敛速度越快,失调量也越大;在噪声方差越大时,随即起伏项越大,表现为权值振动也就越大,为了追求更快的收敛性,往往增大
值,但
值越大,就使得失调系数也就越大,在有限次起动迭代过程中,也就很难收敛到较稳态值,所以必须选择合适的
值。
2、定义权矢量A=[
]
且X(n)=[X(n-1),X(n-2),
,X(n-m)]
误差信号为:
误差平方和为
上式两边去数学期望得均方误差为
定义互相关函数行向量
:
和自相关函数矩阵
则均方误差(3-3)式可表示为
这说明均方误差是权系数向量A的二次函数,它是一个中间向上凹的抛物形曲面,是具有唯一最小值的函数。调节权系数使均方误差为最小,相当于沿抛物形曲面下降找最小值。可以用梯度来求该最小值。
将(3-6)对权系数A求导,得到均方误差函数的梯度
EMBED Equation.3
令
,即可求出最佳权系数向量
(3-8)
将A带入(3-3)式得最小均方误差
(3-9)
根据最陡下降法,“下一时刻”权系数向量
应该等于“现在时刻”权系数向量
加上一个负均方误差梯度
的比例项,即
(3-10)
式中,
是一个控制收敛速度与稳定性的常数,称之为收敛因子。
一种
的近似计算方法是:直接取
作为均方误差
的估计值,即
(3-11)
式中
为
(3-12)
将式(3-12)带入式(3-11)得梯度估值
于是Widrow-Hoff LMS算法最终为
其中X(n)相当于y(n)的时刻以前的输入,即y(n-m)
故
五、程序源代码
a)自适应滤波器:
%% 数字信号处理: 自适应信号滤波器 (1)
close all;
clear;
clc;
%% input parameter
L=input('样本个数L= ');
u=input('\n步长u= ');
sigam=input('\n方差sigam=');
h=input('\n一阶自适应滤波器的参数h=');
h_=zeros(1,L);
h_(1)=input('\n估计之前估计一阶自适应滤波器的参数h_=');
%%
xn=randn(1,L);
wn=sigam*randn(1,L);
sn=h*xn;
yn=sn+wn;
figure(1)
stem(sn,'r')
hold on
stem(yn,'b')
title('原信号(红色)和观测信号(蓝色)')
R=mean(xn.*xn);
% R=1/L*sum((xn).*(xn))
sn_=zeros(1,L);
% E_h_=zeros(1,L);
for ii=1:L
sn_(ii)=h_(ii)*xn(ii);
% E_h_(ii)=h+(h_(1)-h)*(1-2*u*R)^ii;
h_(ii+1)=h_(ii)+2*u*(yn(ii)-h_(ii)*xn(ii))*xn(ii);
end
E_h_=h+(h_(1)-h)*(1-2*u*R).^(1:L);
figure(2)
stem(E_h_,'r')
hold on
stem(h_(2:L+1),'b')
title('自适应滤波器估计h期望(红色)和其估计值h(蓝色)')
figure(3)
stem(sn,'r')
hold on
stem(sn_,'b')
title('原信号(红色)滤波后的信号(蓝色)')
sn_n=conv(xn,h)
figure(4)
stem(sn_,'b')
hold on
stem(sn_n,'r')
title('自适应滤波器得到的原信号(绿色)维纳滤波器得到的原信号(红色)')
b)自适应AR模型:
%% 数字信号处理:自适应滤波器 (2)
%
%
%
%%
close all;
clear;
clc;
%% input parameter
L=100;
sigam=0.01;
M=2;
p=2;
u=0.01;
a1=-1.3;
a2=0.8;
a=zeros(M,L);
% a1_=zeros(1,L);
% a2_=zeros(1,L);
wn=sqrt(sigam)*randn(1,L);
A=[1,a1,a2];
yn=filter(1,A,wn);
% yn=zeros(1,L);
% yn(1)=wn(1);
% yn(2)=-a1*yn(1)+wn(2);
% for kk=3:L
% yn(kk)=-a1*yn(kk-1)-a2*yn(kk-2)+wn(kk);
% end
yn_=zeros(1,L);
en=zeros(1,L);
for n=1:L
for m=1:M
if n-m>0
yn_(n)=yn_(n)-a(m,n)*yn(n-m);%滤波器输出
end
end
en(n)=yn(n)-yn_(n);%计算误差
for m=1:M
if n-m>0
a(m,n+1)=a(m,n)-2*u*en(n)*yn(n-m);%更新权值
end
end
end
%%
%for in=1:L-1
% if in==1
% yn_(in)=-a1_(in)*0;
% en(in)=yn(in)-yn_(in);
% a1_(in+1)=a1_(in)-2*u*en(in)*0;
% a2_(in+1)=0;
% elseif in==2
% yn_(in)=-a1_(in)*yn(in-1)-a2_(in)*0;
% en(in)=yn(in)-yn_(in);
% a1_(in+1)=a1_(in)-2*u*en(in)*yn(in-1);
% a2_(in+1)=a2_(in)-2*u*en(in)*0;
% else
% yn_(in)=-a1_(in)*yn(in-1)-a2_(in)*yn(in-1);
% en(in)=yn(in)-yn_(in);
% a1_(in+1)=a1_(in)-2*u*en(in)*yn(in-1);
% a2_(in+1)=a2_(in)-2*u*en(in)*yn(in-2);
% end
%end
figure(1)
%stem(a1,'r')
%hold on
stem(a(1,1:L),'b')
title('a1的值(red)及其迭代估计值(blue)')
figure(2)
%stem(a2,'r')
%hold on
stem(a(2,1:L),'b')
title('a2的值(red)及其迭代估计值(blue)')
%% 维纳滤波器
Wn=randn(L,1);
AA=[1,a1,a2];
sn=filter(1,AA,Wn);
r_ss = xcorr(sn,'unbiased');
p=p+1;
R_ss=zeros(p);
for i=1:p
R_ss(i,:)=r_ss(L-i+1:L+p-i);
end
I=zeros(1,p);
for i=1:p
if i==1
I(i)=sigam;
else
I(i)=0;
end
end
A=inv(R_ss)*I';
A1=[a(1,100),a(2,100)];
figure(3),clf
stem(A(2:p),'*r')
hold on
stem(A1,'*b')
axis([-1 5 -2 2 ])
title('自适应AR估计的a(红色)和Yule-Walker方程法估计的a(蓝色)')
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
+
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
……
+
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
……
� EMBED Equation.3 ���
� EMBED Equation.3 ���
� EMBED Equation.3 ���
图2.8 L个� EMBED Equation.3 ���
图2.9利用卷积得到的L个� EMBED Equation.3 ���
_1416245928.unknown
_1416671353.unknown
_1416671839.unknown
_1416672812.unknown
_1416674926.unknown
_1416676024.unknown
_1416676442.unknown
_1416676153.unknown
_1416675828.unknown
_1416675860.unknown
_1416674070.unknown
_1416674174.unknown
_1416674061.unknown
_1416672351.unknown
_1416672692.unknown
_1416672794.unknown
_1416672567.unknown
_1416672106.unknown
_1416672193.unknown
_1416671992.unknown
_1416671501.unknown
_1416671606.unknown
_1416671679.unknown
_1416671698.unknown
_1416671526.unknown
_1416671370.unknown
_1416671482.unknown
_1416671359.unknown
_1416505501.unknown
_1416665845.unknown
_1416669480.unknown
_1416669548.unknown
_1416669528.unknown
_1416669547.unknown
_1416669490.unknown
_1416666164.unknown
_1416666625.unknown
_1416666138.unknown
_1416506971.unknown
_1416507644.unknown
_1416507846.unknown
_1416508393.unknown
_1416663950.unknown
_1416664111.unknown
_1416665179.unknown
_1416663975.unknown
_1416663900.unknown
_1416508572.unknown
_1416508120.unknown
_1416508184.unknown
_1416508088.unknown
_1416507786.unknown
_1416507826.unknown
_1416507728.unknown
_1416507559.unknown
_1416507608.unknown
_1416507035.unknown
_1416507457.unknown
_1416505879.unknown
_1416506825.unknown
_1416506877.unknown
_1416505951.unknown
_1416506795.unknown
_1416505780.unknown
_1416505807.unknown
_1416505652.unknown
_1416323718.unknown
_1416504771.unknown
_1416504827.unknown
_1416504859.unknown
_1416504810.unknown
_1416414617.unknown
_1416504691.unknown
_1416414587.unknown
_1416413038.unknown
_1416247301.unknown
_1416247392.unknown
_1416315807.unknown
_1416318629.unknown
_1416315429.unknown
_1416247352.unknown
_1416247071.unknown
_1416247104.unknown
_1416247285.unknown
_1416247113.unknown
_1416247092.unknown
_1416246088.unknown
_1416247017.unknown
_1416247001.unknown
_1416245975.unknown
_1416242308.unknown
_1416245074.unknown
_1416245178.unknown
_1416245464.unknown
_1416245903.unknown
_1416245421.unknown
_1416245133.unknown
_1416245146.unknown
_1416245099.unknown
_1416244790.unknown
_1416244946.unknown
_1416245006.unknown
_1416244812.unknown
_1416243060.unknown
_1416243162.unknown
_1416242742.unknown
_1416242764.unknown
_1416242491.unknown
_1416242657.unknown
_1416242324.unknown
_1416241912.unknown
_1416242202.unknown
_1416242256.unknown
_1416242296.unknown
_1416242243.unknown
_1416242047.unknown
_1416242145.unknown
_1416241946.unknown
_1416239952.unknown
_1416241786.unknown
_1416241874.unknown
_1416240368.unknown
_1416240219.unknown
_1416240297.unknown
_1416155365.unknown
_1416155515.unknown
_1416155157.unknown