LMS算法Matlab实现.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LMS算法Matlab实现

LMS算法Matlab实现function [yn,W,en]=LMS(xn,dn,M,mu,itr)% LMS(Least Mean Squre)算法% 输入参数:% xn输入的信号序列 (列向量)% dn所期望的响应序列 (列向量)% M 滤波器的阶数 (标量)% mu 收敛因子(步长) (标量) 要求大于0,小于xn的相关矩阵最大特征值的倒数% itr迭代次数 (标量) 默认为xn的长度,Mitrlength(xn)% 输出参数:% W 滤波器的权值矩阵 (矩阵)% 大小为M x itr,% en 误差序列(itr x 1) (列向量) % yn实际输出序列 (列向量)% 参数个数必须为4个或5个ifnargin == 4 % 4个时递归迭代的次数为xn的长度itr = length(xn);elseifnargin == 5 % 5个时满足Mitrlength(xn)ifitrlength(xn) | itrMerror(迭代次数过大或过小!);endelseerror(请检查输入参数的个数!);end% 初始化参数en = zeros(itr,1); % 误差序列,en(k)表示第k次迭代时预期输出与实际输入的误差W = zeros(M,itr); % 每一行代表一个加权参量,每一列代表-次迭代,初始为0% 迭代计算for k = M:itr % 第k次迭代x = xn(k:-1:k-M+1); % 滤波器M个抽头的输入y = W(:,k-1). * x; % 滤波器的输出en(k) = dn(k) - y ; % 第k次迭代的误差% 滤波器权值计算的迭代式W(:,k) = W(:,k-1) + 2*mu*en(k)*x;end% 求最优时滤波器的输出序列yn = inf * ones(size(xn));for k = M:length(xn)x = xn(k:-1:k-M+1);yn(k) = W(:,end).* x;endLMS函数的一个实例:%function main()close all% 周期信号的产生t=0:99;xs=10*sin(0.5*t);figure;subplot(2,1,1);plot(t,xs);grid;ylabel(幅值);title(it{输入周期性信号});% 噪声信号的产生randn(state,sum(100*clock));xn=randn(1,100);subplot(2,1,2);plot(t,xn);grid;ylabel(幅值);xlabel(时间);title(it{随机噪声信号});% 信号滤波xn = xs+xn;xn = xn. ; % 输入信号序列dn = xs. ; % 预期结果序列M = 20 ; % 滤波器的阶数rho_max = max(eig(xn*xn.)); % 输入信号相关矩阵的最大特征值mu = rand()*(1/rho_max) ; % 收敛因子 0 mu 1/rho[yn,W,en] = LMS(xn,dn,M,mu);% 绘制滤波器输入信号figure;subplot(2,1,1);plot(t,xn);grid;ylabel(幅值);xlabel(时间);title(it{滤波器输入信号});% 绘制自适应滤波器输出信号subplot(2,1,2);plot(t,yn);grid;ylabel(幅值);xlabel(时间);title(it{自适应滤波器输出信号});% 绘制自适应滤波器输出信号,预期输出信号和两者的误差figure plot(t,yn,b,t,dn,g,t,dn-yn,r);grid;legend(自适应滤波器输出,预期输出,误差);ylabel(幅值);xlabel(时间);title(it{自适应滤波器});运行后的结果如下:

文档评论(0)

tianma2015 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档