Matlab 2019 bにおける最小平均二乗誤差フィルタ(dsp.LMSFilter)の詳細設定
アクティブノイズ低減設計に関する最小平均二乗誤差アルゴリズム(LMS)2019 bバージョンでAudioToolboxが追加した新しい機能設定
注意:本プログラムは2016 bバージョン以前と互換性がありません
アクティブノイズ低減設計の中で最も核心的なアルゴリズムはLMSにすぎず、本当に古典的で、現在主流の多くはLMSアルゴリズムの進化である.後でLMS functionの作成について説明しますが、ここではLMSフィルタを迅速に構築し、シミュレーション設計を行う方法についてのみ説明します.
各パラメータの意味をもっと詳しく知る必要がある場合は、私のブログに注目してください.その後、アクティブなノイズ低減におけるLMSアルゴリズムと派生アルゴリズムを詳しく書きます.
注意:本プログラムは2016 bバージョン以前と互換性がありません
アクティブノイズ低減設計の中で最も核心的なアルゴリズムはLMSにすぎず、本当に古典的で、現在主流の多くはLMSアルゴリズムの進化である.後でLMS functionの作成について説明しますが、ここではLMSフィルタを迅速に構築し、シミュレーション設計を行う方法についてのみ説明します.
%% Least mean square filter
%2020/3/16
lms = dsp.LMSFilter
%%
lms.Method='Normalized LMS';% LMS,(Normalized LMS ; Sign-Data LMS ; Sign-Error LMS ; Sign-Sign LMS)
lms.Length=16;% FIR L,
lms.StepSizeSource='Property';%'Property' , 'Input port'
lms.StepSize=0.1;% mu , , 'maxstep' , 'Property'
%[mumax,mumaxmse] = maxstep(lmsFilt,x);%
lms.LeakageFactor=1;% , 1 LMS, , [0,1] LMS
lms.InitialConditions=[1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 ];% w , Length ,0 0
Flag_updates_weight=lms.AdaptInputPort;% w , 'true' , 0
Flag_Reset_weight=lms.WeightsResetInputPort;% w , 'true' , , weightsResetCondition , w weightsResetCondition
lms.WeightsResetCondition='Non-zero';% w , 'Rising edge', ‘Falling edge'
lms.WeightsOutput='Last'; % ,'All'
%%
lms.RoundingMethod='Floor';%
lms.OverflowAction='Wrap';%
lms.StepSizeDataType='Same word length as first input';%
%%
% [y,err,wts] = lms(x,d,mu,a,r);% x, d, mu( StepSizeSource Input port ),
% a( AdaptInputPort='ture' ), r, y, err, wts
%%
[mumax,mumaxmse] = maxstep(lms,x);%lms ,x , NLMS mumax=2,mumin=2
%%
[mmseemse,meanw,mse,tracek] = msepred(lms,x,d,m);
% mmse
% , ,
% , 。
% 。
%msepred mmse 。
% emse
% 。
%meanw
% , 。
% LMS 。 m = 1, m×n。M ( ),
%x. N FIR , lmsFilt length 。 m > 1, m /m×n。
%tracek
% LMS , 。
% 。 .
Copyright © 2020 by RichardYang. All rights reserved.
, , 。
各パラメータの意味をもっと詳しく知る必要がある場合は、私のブログに注目してください.その後、アクティブなノイズ低減におけるLMSアルゴリズムと派生アルゴリズムを詳しく書きます.