自适应课程报告_第1页
自适应课程报告_第2页
自适应课程报告_第3页
自适应课程报告_第4页
自适应课程报告_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、自适应信号课程结课论文学号、专业: 姓 名: 论 文 题 目: 自适应噪声抵消及LMS算法报告 指 导 教 师: 所 属 学 院: 信息与通信学院 成绩评定教师签名 桂林电子科技大学研究生院2013年 12月 13日 自适应噪声抵消系统及LMS算法实验报告一、 基本知识1.1 自适应滤波器抵消系统自适应噪声抵消系统的核心是自适应滤波器,自适应算法对其参数进行控制,以实现最佳滤波。因为这种方法比其他方法多用了一个参考噪声作为辅助输入,从而获得了比较全面的关于噪声的信意,因而能得到更好的降嗓效果。特别是在辅助输入噪声与语音中的噪声完全相关的情况下,自适应噪声抵消法能完全排除噪声的随机性,彻底地抵消

2、语音中的噪声成分,从而无论在信噪比SNR(Signal to Noise Ratio)方面还是在语音可懂度方面都能获得较大的提高。自适应噪声抵消器的原理如图l所示:å·°原始输入参考输入实际响应系统输出(误差信号)自适应滤波器噪声源信号源图3.5.1 自适应对消系统原始输入为受扰信号: ;参考输入为,与相关,而与信号 不相关。图中自适应滤波器接收误差的控制,调整权矢量,使得它的输出趋于等于与它相关的 ,于是 作为与之差就接近等于信号 。自适应滤波器实质上就是一种能调节其自身传输特性以达到最优的维纳滤波器。自适应滤波器的特性变化是由自适应算法通过调整滤波器系数来实现

3、的。一般而言,自适应滤波器由两部分组成,一是滤波器结构,二是调整滤波器系数的自适应算法。自适应滤波器不需要关于输入信号的先验知识,计算量小,特别适用于实时处理。自适应滤波器主要有无限冲激响应(IIR)和有限冲激响应(FIR)两种类型,滤波器结构的选择对算法的处理起着重要的影响。IIR型结构滤波器的传输函数既有零点又有极点,它可以用不高的阶数实现具有陡峭通带特性,缺点是稳定性不好,且相位特性难于控制。FIR滤波器是全零点滤波器,它是稳定的,且能实现线性的相位特性,实现时可以利用流水线技术提高速度。所以本文选择FIR滤波器,其横向型结构形式简单,易于实现;可以用流水线提高性能,后面的自适应滤波器仿

4、真都是采用横向型结构。1.2 LMS算法最陡下降法迭代公式,其中性能曲面上某点的梯度LMS算法的核心思想是: 计算梯度时, 用平方误差代替均方误差即 比较两种算法可见:是单个平方误差序列的梯度, 而是多个平方误差序列统计平均的梯度, 因此, 是的估计. LMS算法是用梯度估计值代替其精确值, 调整权系数时不需要计算的期望值, 因此实现比较简单.由上可得LMS算法的基本公式为FIR滤波器中第i个权系数的计算公式为实现上式的权系数控制电路如图对LMS算法, 迭代运算中权矢量的增量为, 对其中的各个分量,误差信号是相同的; 而是随机变量, 因而不再是确定函数, 而是随机变量.1.3 格型LMS算法简

5、介用最陡下降法,二阶FIR的LMS自适应滤波器消除正弦干扰二、 程序2.1 实验一:基于lms算法的干扰自适应抵消clear all;close all;sysorder=40;                            %自适应滤波器阶数N=1000;   

6、;                               %信号长度1000个点Fs=100;                

7、0;                 %采样频率T=N/Fs;                               

8、60;  %终了时间t=1/Fs:1/Fs:T;                           %为保证相同长度,取正弦信号起始点及步长f=2;               

9、                      %信号初始频率ff=4;                           

10、;         %相位偏移s = rand(N,1);                           %高斯白噪声,长度为N%s=cos(2*pi*f*t);      

11、               %若不用白噪声而使用另一个正弦信号,则令s为一个正弦yy=cos(4*pi*f*t);                      %单频信号,与s叠加构成x(t),即为d(t)yyy=2*cos(4*pi*f*t+ff)

12、;           %参考输入信号,与yy频率相同,振幅相位不同d=s'+yy;                                 %若使用白噪声,则使用

13、该句,d相当于x(t)%d=s+yy;                                 %若将白噪声设为正弦信号,则用该句,d相当于x(t)totallength=size(d,1);      

14、0;          %得到信号长度w =zeros(sysorder,1);                 %设置维纳滤波器初始值w0(0)w1(0)w2(0)w3(0)w4(0)%-设置循环,使得信号逐段输入并一步更新-%for i = sysorder : N

15、u = yyy(i:-1:i-sysorder+1);        %u为yyy的进入处理的部分值y(i)= u*w;                           %y为自适应滤波器的输出,逼近yye(i) =

16、 d(i) - y(i)                  %得到滤波后的信号误差if i < 1000                     

17、0;    %设置步长参数的变化界限mu=0.0005;     elsemu=0.00001;     endw = w + mu * u' * e(i);              %LMS核心算法:自适应滤波器抽头系数的更新end%-%y=y/m

18、ax(y);                              %信号归一化处理,y逼近于yye=e/max(e);               

19、60;              %信号归一化处理,e逼近于s%-画图比较各信-%subplot(5,1,1);plot(s);title('宽带信号');subplot(5,1,2);plot(yy);title('窄带信号');subplot(5,1,3);plot(d);title('混和信号');subplot(5,1,4);plot(y);title('滤波器输出信号(应与窄带信号近似)');

20、subplot(5,1,5); plot(e);title('误差信号(应与宽带信号近似)');2.2 实验二、消噪算法的收敛曲线仿真g=100;              %统计仿真次数为g N=1024;            %输入信号抽样点数 k=128;    &

21、#160;         %滤波器阶数 pp=zeros(g,N-k);      %将每次独立循环的误差结果存于矩阵pp中,以便后面对其平均 u=0.00026;           %滤波器收敛因子 for q=1:g     t=1:N;   

22、;  a=1; s=a*sin(0.05*pi*t);       %输入单信号s     figure(1);    subplot(311) plot(s);                  %信号s时域波形 &#

23、160;  title('信号s时域波形');     xlabel('n');    axis(0,N,-a-1,a+1); xn=awgn(s,5);             %加入均值为零的高斯白噪声   %设置初值   y=zeros(1,N);  

24、           %输出信号y  y(1:k)=xn(1:k);            %将输入信号xn的前k个值作为输出y的前k个值     w=zeros(1,k);            %设置抽头加

25、权初值     e=zeros(1,N);              %误差信号    %用LMS算法迭代滤波     for i=(k+1):N         XN=xn(i-k+1):(i);   

26、60;     y(i)=w*XN'         e(i)=s(i)-y(i);         w=w+u*e(i)*XN; end pp(q,:)=(e(k+1):N).2;end  subplot(312) plot(xn);      &#

27、160;                    %信号s时域波形 title('信号s加噪声后的时域波形'); subplot(313) plot(y);                 

28、60;          %信号s时域波形 title('自适应滤波后的输出时域波形'); for b=1:N-k     bi(b)=sum(pp(:,b)/g;            %求误差统计平均 end figure(2);   &#

29、160;                       %算法收敛曲线 t=1:N-k; plot(t,bi,'r'); title('收敛曲线'); hold on           &

30、#160;                %将每次循环的图形显示结果保存下来2.3、实验三、最陡下降法,LMS法时在迭代过程中的轨迹曲线clear all; N=1000; %信号点数 k=2; %滤波器阶数q=0.4;%步长  s=sqrt(0.05)*randn(1,N); %原始信号 n=1:N; y=s(n)+sin(2*pi*n/16+pi/10); %叠加噪声后的期

31、望输出信号 x=sqrt(2)*sin(2*pi*n/16); %相关噪声输入  figure(1); subplot(3,1,1); plot(n,s); title('原始宽带信号S(n)'); subplot(3,1,2); plot(n,y); title('叠加噪声后输出信号y(n)'); subplot(3,1,3); plot(n,x); title('相关噪声输入信号x(n)');   %设置

32、初值并进行两种算法的迭代 hn=zeros(2,N); %存放最陡下降法下H(n)迭代数据hn(:,1)=3 -4' vg=-2.7362 -3.5320' Rxx=1 0.9239',0.9239 1' Ryx=0.6725 0.5377' echo off; for i=1:N-1 %最陡下降法,第n=i-1次迭代     vg=2*Rxx*hn(:,i)-2*Ryx;&#

33、160;   hn(:,i+1)=hn(:,i)-1/2*q*vg; end;  hm=zeros(2,N); %存放LMS算法下H(n)迭代数据 h=3 -4' hm(:,1)=h; for i=2:N %XN=x(i+1:i)'     u=x(i:-1:i-1);     en=y(i)-u*h;     

34、h=h+q*en*u'     hm(:,i)=h; end; %绘制图像 h0,h1 = meshgrid(-2:.1:4 , -4:.1:2); J = 0.55+h0.*h0+h1.*h1+2*cos(pi/8)*h1.*h0-sqrt(2)*h0*cos(pi/10)-sqrt(2)*h1*cos(9*pi/40); v=0:0.1:2;%等值曲线取值figure(2); %surf(h0,h1,J);

35、0;      %误差曲面 contour(h0,h1,J,v);     %等值曲线 xlabel('h0'); ylabel('h1'); hold on; plot(hn(1,:),hn(2,:),'g'); plot(hm(1,:),hm(2,:),'r'); title('最陡下降法, LMS法时H(n)的在叠代过程中的轨迹曲线'

36、;); legend('等值曲线','最陡下降法轨迹','LMS算法1次轨迹','NorthEastOutside');2.3 实验四、LLMS算法与LMS的比较clc;close all;clear all;a1 = 1.558;a2 = -0.81;N = 924;M = 100;for m = 1:M v = randn(1,N); x(1) = v(1); x(2) = a1*x(1)+v(2); for n = 3:N x(n)=a1*x(n-1)+a2*x(n-2)+v(n); end ef = zeros(

37、3,N); eb = zeros(3,N); ef(1,:) = x; eb(1,:) = x; k = zeros(3,N); u = 0.003; for p = 2:3; for n =2:N ef(p,n) = ef(p-1,n)-k(p,n)*eb(p-1,n-1); eb(p,n) = eb(p-1,n-1)-k(p,n)*ef(p-1,n); k(p,n+1) = k(p,n) + 2*u*(ef(p,n)*eb(p-1,n-1)+eb(p,n)*ef(p-1,n); end end for n= 1:N w1(n) = k(2,n)*(1-k(3,n); w2(n) = k(3

38、,n); end WW1(m,:) = w1; WW2(m,:) = w2;endEWW1 = mean(WW1);EWW2 = mean(WW2);plot(EWW1)hold onplot(w1,'r')hold onplot(EWW2)plot(w2,'k')xlabel('n')ylabel('w')title('compare LLMS and LMS')w3 = zeros(1,N+1);w4 = zeros(1,N+1);for n = 3:N y(n) = w3(n)*x(n-1)+w4(n)*x(

39、n-2); e(n) = x(n)-y(n); w3(n+1) = w3(n)+2*u*e(n)*x(n-1); w4(n+1) = w4(n)+2*u*e(n)*x(n-2);endplot(w3,'y')hold onplot(w4,'y')b1 = zeros(1,N+1);b2 = zeros(1,N+1);for n= 1:N+1 b1(n)=a1; b2(n)=a2;endhold onplot(b1,'g')plot(b2,'g')legend('LLMS-EWW1','LLMS-w1'

40、;,'LLMS-EWW2','LLMS-w2','LMS-w3','LMS-w4','a1','a2')2.4 实验五、RLS与LLMS、LMS比较clc;close all;clear all;a1 = 1.558;a2 = -0.81;N = 924;M = 100;for m = 1:M v = randn(1,N); x(1) = v(1); x(2) = a1*x(1)+v(2); for n = 3:N x(n)=a1*x(n-1)+a2*x(n-2)+v(n); end lu = 0.99 w = zeros(2,N); c = 200*ey

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论