数字信号处理2自适应信号滤波

上传人:suns****4568 文档编号:91141078 上传时间:2019-06-26 格式:DOC 页数:14 大小:552KB
返回 下载 相关 举报
数字信号处理2自适应信号滤波_第1页
第1页 / 共14页
数字信号处理2自适应信号滤波_第2页
第2页 / 共14页
数字信号处理2自适应信号滤波_第3页
第3页 / 共14页
数字信号处理2自适应信号滤波_第4页
第4页 / 共14页
数字信号处理2自适应信号滤波_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《数字信号处理2自适应信号滤波》由会员分享,可在线阅读,更多相关《数字信号处理2自适应信号滤波(14页珍藏版)》请在金锄头文库上搜索。

1、实验二 自适应信号滤波实验报告班 级: 姓 名: 学 号: 实验二 自适应信号滤波一、实验目的1 利用自适应LMS算法实现FIR最佳维纳滤波器。2 观察影响自适应 LMS算法收敛性,收敛速度以及失调量的各种因素,领会自适应信号处理方法的优缺点。3 通过实现AR模型参数的自适应估计,了解自适应信号处理方法的应用。二、实验原理如果信号是由有用信号和干扰信号组成,即(21)利用维纳滤波方法可以从信号中得到有用信号的最佳估计。假如最佳维纳滤波器由一个FIR滤波器所构成,则其最佳权系数向量h可表示为 (22)其中 (23)(24) (25) (26)但是实际中,一般很难知道准确的统计量R和r,因此,若设

2、计一个维纳滤波器,事先要估计出R和r。同时,当R和r改变时(如果信号或干扰是非平稳的),需要重新计算h,这是非常不方便的。虽然卡尔曼滤波方法无需事先知道R和r,但它必须知道系统的状态方程和噪声的统计特性,这在实际中也是很难办到的。根据卡尔曼滤波的思想,Widrow等提出了一种自适应最小均方误差算法(LMS),这种算法不需要事先知道相关矩阵R和r,当得到一个观察值,滤波器自动“学习”所需要的相关函数,从而调整FIR滤波器的权系数,并最终使之收敛于最佳值,即维纳解。下面是自适应FIR维纳滤波器的LMS算法公式: (27)(28) (29)因此,给定初始值,每得到一个样本,可以递归得到一组新的滤波器

3、权系数,只要步长满足 (210)其中为矩阵R的最大特征值,当时,收敛于维纳解。 为说明自适应滤波方法的基本原理,我们首先考察一个最简单的滤波器,它仅有一个权系数(如图2.1所示)。假如信号由下式确定: (211)(212)图2.1其中为常数,与互不相关,我们希望利用和得到的估计。 利用公式(2-7),(2-8)和(2-9),我们可以得到下面的自适应估计算法: (213) (214)其框图如图2.2所示。 图2.2 选择的初始值为,对式(2-14)取数学期望可得: (215) 其中 (216)因此,只要满足 (217) 的条件,总归可以收敛于最佳值h,从而也逐渐地收敛于。自适应信号处理方法的应用

4、十分广泛,其中一个非常重要的方面是用来进行参数估计。本实验第二部分就是利用LMS算法实现AR模型参数的估计。 我们已经知道,如果信号为一个M阶的AR模型,即 (218)通过解Yule-Walker方程可以得到AR模型的参数估计,同样,利用LMS算法,我们也可以对AR模型的参数估计进行自适应估计,其算法如下: (219) (220) (221)这种算法的实现框图如图2.3所示。 图2.3 同样可以证明,只要步长值选择合适,当时,上述自适应算法得到的也收敛于AR模型的参数。三、实验步骤及结果分析 1 仔细阅读有关自适应滤波的内容,根据图2.4给出的框图,编制自适应滤波的通用程序。程序代码见附录一。

5、2 运行自适应滤波程序,观察并记录:1)和有何差异,分析原因。2)自适应滤波效果如何(比较和)?1)实验结果如图1所示:从图中可以看出,随着样本个数L的增多,趋近于h=-0.8,而在h附近波动。由(2-15)得到,当时,的值就随着n的增大而趋近于h2)实验结果如图2所示:随着L的增大,s(n)的估计值与真实值在图中可以看出越来越接近。图1 h(n)估计值及估计值的期望 图2 s(n)及估计值3 根据框图2.4产生100个样本和,利用实验一维纳滤波估计和,即将作为自适应滤波系统的输入,作为参考信号,自适应估计得出,再将与估计出的相卷积得到的估计。并与步骤2中的结果比较。由维纳滤波原理,期望找到使

6、得取最小值的。由此可得: 则: 由代码运算可见,1000次运算的维纳滤波算法估计的h的均值为-0.8008,而用使用步骤2中的方法1000次平均为-0.7991。维纳滤波出来的结果略优于自适应滤波估计出的h。4 改变,其它条件同步骤2,运行自适应滤波程序,观察并记录值的大小对的收敛性,收敛速度以及失调量的影响。当时,估计出的随迭代次数的变化如图3所示,s(n)的估计值与真值的差异如图4所示:图3 h(n)估计值及估计值的期望 图4 s(n)及估计值当时,如图5,图6所示: 图5 h(n)估计值及估计值的期望 图6 s(n)及估计值当时,如图7,图8所示: 图7 h(n)估计值及估计值的期望 图

7、8 s(n)及估计值由上可见,当步长越小时,收敛速度越慢,当超过1时,不再收敛。这是因为时才收敛,而这里R=1。而失调量M随着的增大而变大5 改变,其它条件同步骤2,运行程序,观察的方差对自适应算法的收敛性,收敛速度以及失调量的影响。时,实验结果如图9所示:1)对自适应算法的收敛速度没有影响。这是因为时间常数只取决于和,是特征值,因为与不相关,所以R与无关,即对R没有影响,也就对没有影响,所以与无关,对收敛速度没有影响。2)对收敛性无影响。只要即可收敛,与无关。3)对失调量也没有影响。失调量与噪声无关,所以对失调量无影响。图9 h(n)估计值及估计值的期望 图10 的收敛情况6 仔细阅读有关自

8、适应系统仿真的内容,按照图2.5给出的框图,编制自适应AR模型参数估计程序。程序代码见附录二。7 运行自适应AR模型参数估计程序,选择,,观察并记录的收敛情况及 和。参数取时,的收敛情况如图10所示。8 利用100个,通过实验一解Yule-Walker方程的方法,得和估计和,与步骤7中的和比较,有什么差别?为什么? 条件同步骤7时,使用实验一的解Yule-Walker方程方法,作1000次实验取平均获得的估计如下:,而用自适应的参数估计方法进行1000次的参数估计值平均值为。可见该估计值比自适应系统仿真算法得到的和 要更接近理想值和。9. 改变噪声的方差,其它条件同步骤7,观察的方差对自适应算

9、法的收敛性,收敛速度以及失调量的影响。当时,的收敛情况如图11:图11 图12当样本个数L=2000时,的收敛情况如图12:1)由上可见,估计值收敛很慢。如果对于原来的步长收敛的话,那么改变噪声方差,对收敛性没有影响。 2)变小,时间常数变大,收敛速度变慢。 3)按照失调量的定义,由于使用估计的梯度代替统计梯度,导致权值向量的随机起伏,这种随机起伏表现在均方误差上即为失调量。噪声方差的减小会使失调量减小,原因是噪声方差减小后,梯度估计更加准确,所以权值波动减小,进而均方误差波动减小,失调量减小,从表达式上看就是自相关矩阵的迹减小。四、思考题1 在公式(2-11)中,和的方差变化对自适应算法的收

10、敛性,收敛速度,失调量以及值的选择范围有何影响?答:由于与的线性关系,方差增大即的方差增大;而的方差增大会导致自相关矩阵的迹的增大,进而使得失调量增大,的收敛范围减小,收敛速度加快。由上可知,收敛性,收敛速度,失调量,的收敛范围只与有关,所以的方差变化对收敛性,收敛速度,失调量没有影响。2 推导公式(2-19)至公式(2-21)答:由LMS算法的原理:的取值应该向均方误差对的负梯度方向变化。五、附录附录一(自适应滤波源代码)clc;clear;%hewne=zeros(1000,1);%hee=zeros(1000,1);%for c=1:1000%sigma2=0.01;%L=100;%u=

11、0.03;%h=-0.8;sigma2=input(噪声方差=);L=input(样本个数=);u=input(步长=);h=input(h初始值=);%he(L,1)=0;%x=randn(L,1);%w=sqrt(sigma2)*randn(L,1);%s=h*x;%y=s+w;figure(1)plot(1:L),s,r-*);hold onplot(1:L),y,b);title(s与y序列值);xlabel(自变量);ylabel(函数值);legend(s序列,y序列);%Rxx=xcorr(x,unbiased);%Rxy=xcorr(x,y,unbiased);%hewn=Rx

12、y(L)/Rxx(L);%for i=1:L% se(i)=he(i)*x(i);% he(i+1)=he(i)+2*u*(y(i)-he(i)*x(i)*x(i); % Ehe(i)=(1-2*u*Rxx(L)i*(0-h)+h;%endfigure(2)plot(1:L),s,r-*);hold onplot(1:L),se,b);title(s与se序列值);xlabel(自变量);ylabel(函数值);legend(s序列,se序列);%figure(3)plot(1:L),s,r-*);hold onplot(1:L),se,b);title(Ehe与he序列值);xlabel(迭代次数);ylabel(函数值);legend(Ehe序列,he序列);%hewne(c)=hewn;%hee(c)=he(L);%end%ehewn=mean(hewne)%ehe=mean(hee)附录二(AR模型参数估计源代码)clc;clear;%aee=zeros(1000,2);%aewne=zeros(1000,2);%for c=1:1000%M=2;%u=0.01;%sigm

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号