基于 MATLAB 实现用于主动噪声控制的 Kalman 滤波方法:动态噪声消除
系统与控制
2024-02-13 v1 系统与控制
音频与语音处理
信号处理
摘要
本文详细描述了用于主动控制系统中的 Kalman 滤波器代码。传统的主动噪声控制方法通常采用自适应滤波器,例如滤波参考最小均方(FxLMS)算法,以适应初级噪声和声学环境的变化。然而,FxLMS 算法缓慢的收敛特性通常会影响动态噪声的降噪效果。因此,本研究建议在主动噪声控制(ANC)系统中采用 Kalman 滤波器,以提高动态噪声的降噪效能。该 ANC 应用有效地将 Kalman 滤波器与一种新颖的动态 ANC 模型相结合。数值模拟表明,在处理动态噪声时,所提出的 Kalman 滤波器相比 FxLMS 算法展现出更优的收敛性能。代码可在 \href{https://github.com/ShiDongyuan/Kalman_Filter_for_ANC.git}{GitHub} 和 \href{https://www.mathworks.com/matlabcentral/fileexchange/159311-kalman-filter-for-active-noise-control}{MathWorks} 上获取。
引用
@article{arxiv.2402.06896,
title = {Implementation of Kalman Filter Approach for Active Noise Control by Using MATLAB: Dynamic Noise Cancellation},
author = {Guo Yu},
journal= {arXiv preprint arXiv:2402.06896},
year = {2024}
}
备注
Submitted to Asia-Pacific Signal and Information Processing Association