• 大小: 33KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-25
  • 语言: 其他
  • 标签: matlab  

资源简介

LMS_Identify.m实现了LMS算法和NLMS算法的性能比较,文档详细描述了LMS自适应滤波器对信号滤波的步骤以及归一化LMS算法(NLMS)基于信号功率的自适应步长的调节函数

资源截图

代码片段和文件信息

%% 利用LMS算法进行系统识别
%定义输入信号
x = 0.1*randn(2501);
%创建一个12阶低通滤波器为未知的系统滤波器
[berrres] = fircband(12[0 0.4 0.5 1][1 1 0 0][1 0.2]{‘w‘‘c‘});
%定义期望信号
d = filter(b1x);
%定义步长
mu = 0.8;

lms = dsp.LMSFilter(‘Length‘13‘StepSize‘mu...
    ‘WeightsOutputPort‘true);%初始权值取默认值0
[yew] = lms(xd);

stem([b.‘ w])
title(‘利用LMS算法进行系统识别‘)
legend(‘实际的滤波器权值‘‘估计的滤波器权值‘...
       ‘Location‘‘NorthEast‘)
  
%使用NLMS法   
lms2 = dsp.LMSFilter(‘Length‘13‘StepSize‘mu‘Method‘...
   ‘Normalized LMS‘‘WeightsOutputPort‘true);%NLMS
[y2e2w2] = lms2(xd);
figure
plot([ee2]);
title(‘比较LMS和NLMS的性能‘)
legend(‘LMS法的滤波器误差‘‘NLMS法的滤波器误差‘...
       ‘Location‘‘NorthEast‘)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件         789  2018-05-27 22:00  LMS_Identify.m
     文件       35616  2019-04-12 20:27  LMS算法与NLMS算法滤波比较说明.docx

评论

共有 条评论