?? lms_adaptive_filter11.m
字號:
function LMS_adaptive_filter;%定義功能函數
samples_per_period=40;%周期采樣頻率
N=10*samples_per_period-1;%總采樣次數
signal=sin(2*pi*0.02*[0:N-1]);%初始輸入信號
figure;%作圖1的第一子圖
subplot(2,1,1);
plot(signal);
grid;
title('不含噪聲信號');
nvar=0.5;%噪聲方差
noise=nvar*randn(1,N);%噪聲信號
X=signal+noise;%帶加性噪聲的輸入信號
delayX=[0 X];%輸入信號延時
SIGNAL=[signal 0];
M=32;%濾波器長度
mu=0.035;%迭代步長
subplot(2,1,2);%作圖1的第二子圖
plot(delayX);
grid;
title('自適應濾波器含噪聲輸入');
initial_status=initlms(zeros(1,M),mu);%濾波器設初值
[Y,e,initial_status]=adaptlms(X,SIGNAL,initial_status);%LMS自適應濾波器輸出
figure;%作圖2的第一子圖
subplot(2,1,1);
plot(0:N-1,Y,'.',0:N,SIGNAL,'k');
grid;
title('預測信號與實際信號的比較');
legend('預測信號,實際信號');
error=signal-Y;%輸出誤差信號
subplot(2,1,2);%作圖2的第二子圖
plot(error);
grid;
title('自適應濾波器的預測誤差');
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -