用途:使用 DSP System Toolbox 的 System object 实现自适应滤波器,覆盖系统辨识、逆系统辨识、噪声或干扰抵消、回声消除、主动噪声控制(ANC)、自适应预测和算法性能评估,也用于从已弃用的 adaptfilt.* 对象迁移。
主要能力:提供 dsp.LMSFilter、dsp.RLSFilter、dsp.AffineProjectionFilter、dsp.FilteredXLMSFilter、dsp.FrequencyDomainAdaptiveFilter、dsp.BlockLMSFilter、dsp.AdaptiveLatticeFilter、dsp.FastTransversalFilter 等对象,以及 maxstep() 和 msesim()。按场景选择:白输入用 LMS 的 Normalized LMS;相关输入用仿射投影;快速收敛或跟踪时变系统用 RLS;ANC 用 FilteredXLMSFilter;长滤波器用频域自适应滤波,低延迟用分区约束 FDAF。
使用方式:遵循五步流程——分析问题、选择对象与方法、配置、流式循环处理、验证收敛并提取权重。步长可用 maxstep() 取 muMaxMSE 的约 30%;滤波器长度设为未知系统阶数加一。冻结自适应用 AdaptInputPort=true(FDAF 用 LockCoefficients)。权重提取因对象而异:LMS 用第三个输出 [y,e,w],RLS 用 Coefficients,FDAF 用 FFTCoefficients 加 IFFT。
限制:不要手写权重更新循环;不要使用 R2020a 已移除的 adaptfilt.*;dsp.LMSFilter 和 FDAF 没有 Coefficients 属性;maxstep() 仅适用于部分 LMS 变体和 BlockLMS;Sign-Data/Sign-Sign LMS 不支持 maxstep();RLS 用 ForgettingFactor 而非步长;静态滤波器设计、卡尔曼滤波、深度学习去噪和 Simulink 模块不属于本技能范围。