資源簡介
matlab中實現rls自適應二階濾波器代碼matlab中實現rls自適應二階濾波器代碼matlab中實現rls自適應二階濾波器代碼
代碼片段和文件信息
Fs?=?40000;?????????????????????????????????????????????????????%設置采樣頻率
t?=?0:1/Fs:3.5;??
t?=?t‘;
Size_t?=?size(t1);
F1?=?20000;
F2?=?0;
F3?=?0;
F4?=?1000;
Signal?=?sin(2*pi*F1*t)?+?0.5*sin(2*pi*F2*t)?+?0.25*sin(2*pi*F3*t);?%生成信號
noise_amp?=?1;???????????????????????????????????????????%定義噪聲的標準差
noise1?=?noise_amp*randn(Size_t1);??????????????????????%生成高斯白噪聲
noise2?=?noise_amp*randn(Size_t1);
noise3?=?5*sin(2*pi*F4*t+pi/2);
noise?=?noise2;
Signal_noise?=?Signal?+?0.2*noise;???????????????????????????%加入高斯白噪聲
%Signal_noise(2:end)?=?Signal_noise(2:end)?+?0.15*noise(1:end-1);
%Signal_noise(3:end)?=?Signal_noise(3:end)?+?0.1*noise(1:end-2);
subplot(211);
plot(tSignal);
title(‘原始信號‘);
subplot(212);
plot(tSignal_noise);
title(‘加入干擾噪聲的信號‘);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%計算rls算法
M?=?3;???????????????????????%定義FIR濾波器階數
lamda?=?1;????????????????%定義遺忘因子
Signal_Len?=?Size_t?-?M?-1;???%定義信號數據的個數
I?=?eye(M);???????????????????%生成對應的單位矩陣
c?=?1;??????????
評論
共有 條評論