





摘 要:在研究LMS自適應(yīng)濾波理論的基礎(chǔ)上,建立LMS自適應(yīng)濾波器的數(shù)學(xué)模型,利用MATLAB中DSP-Builder庫設(shè)計(jì)了一種LMS自適應(yīng)音頻濾波器,并用FPGA實(shí)現(xiàn)。實(shí)驗(yàn)結(jié)果表明選擇合適的步長(zhǎng)因子有助于改善濾波器性能,可實(shí)現(xiàn)對(duì)音頻信號(hào)的自適應(yīng)濾波。
關(guān)鍵詞:自適應(yīng)濾波器;最小均方誤差;現(xiàn)場(chǎng)可編程門陣列
中圖分類號(hào):TN911.7文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-7394(2015)02-0042-05
0 引言
自適應(yīng)信號(hào)處理是信號(hào)處理領(lǐng)域的一個(gè)非常重要的分支,可在不具備輸入信號(hào)特征的先驗(yàn)知識(shí)的情況下,在未知的環(huán)境中跟蹤輸入信號(hào)的時(shí)變特性,完成對(duì)信號(hào)的自適應(yīng)濾波等處理[1-2]。LMS算法是由Widrow和Hoff于1960年提出。由于一般梯度估值會(huì)給濾波帶來一些不利的影響,因此最小均方算法采用了隨機(jī)梯度,具有計(jì)算簡(jiǎn)單、易于實(shí)現(xiàn)等優(yōu)點(diǎn),因而被廣泛應(yīng)用在通信、語音和圖像處理、生物工程等領(lǐng)域。本文主要是在研究LMS自適應(yīng)濾波理論的基礎(chǔ)上,建立LMS自適應(yīng)濾波器的結(jié)構(gòu)模型,使用DSP-Builder的設(shè)計(jì)LMS自適應(yīng)濾波器,并通過仿真實(shí)驗(yàn)來研究LMS自適應(yīng)濾波器的性能。
1 LMS算法構(gòu)成濾波器的結(jié)構(gòu)
根據(jù)LMS算法構(gòu)成的自適應(yīng)濾波器框圖如圖1所示[1]。
由于誤差信號(hào)為參數(shù)可調(diào)線性濾波器的輸出與期望信號(hào)相減的結(jié)果,自適應(yīng)算法可以根據(jù)誤差信號(hào)自動(dòng)控制參數(shù)可調(diào)線性濾波器的參數(shù),以實(shí)現(xiàn)自適應(yīng)過程,算法決定了這個(gè)閉合反饋環(huán)路的自適應(yīng)過程所需的時(shí)間[3]。
LMS算法是基于最小均方誤差準(zhǔn)則,在梯度法的基礎(chǔ)上,通過改進(jìn)均方誤差梯度的估計(jì)值計(jì)算方法,取單個(gè)誤差樣本平方的梯度作為均方誤差梯度的估計(jì)值[2]。采用橫向?yàn)V波器結(jié)構(gòu)[2-4],該算法可用以下一組迭代公式來表示,即
2 用DSP-Builder實(shí)現(xiàn)LMS濾波器
利用FPGA設(shè)計(jì)濾波器的流程為:打開MATLAB軟件,打開Simulink,建立MDL文件,調(diào)用DSP-Builder模塊構(gòu)成所需要設(shè)計(jì)算法的結(jié)構(gòu)模型,仿真成功后將MDL文件轉(zhuǎn)換為HDL文件,在ATLERA公司的QUARTUS軟件中完成編譯并下載到FPGA中,從而完成整個(gè)設(shè)計(jì)[9]。
根據(jù)圖2的LMS濾波器結(jié)構(gòu)框圖,使用Matlab/Simulink和Altera/DSP-Builder,設(shè)計(jì)相應(yīng)的LMS自適應(yīng)濾波器。本文采用16階濾波器。LMS自適應(yīng)濾波器的結(jié)構(gòu)模型如圖3到圖5所示,圖3為底層模塊,圖4為8個(gè)底層模塊級(jí)聯(lián),圖5為級(jí)聯(lián)構(gòu)成的16階濾波器。
3 仿真實(shí)驗(yàn)及結(jié)果分析
實(shí)驗(yàn)1:在外部添加測(cè)試電路,如圖6所示,采用正弦波信號(hào)作為輸入并線性疊加高斯噪聲,用示波器觀測(cè)相應(yīng)的濾波輸出波形,通過改變步長(zhǎng)因子得到不同的仿真結(jié)果,如圖7到圖10所示。
根據(jù)圖7到圖10的各組波形圖,比較在4種不同步長(zhǎng)因子情況下的輸出波形,當(dāng)μ=0.01和μ=0.001時(shí),濾波器性能較好。當(dāng)μ=0.01時(shí),收斂速度快,但誤差較大;當(dāng)μ=0.001時(shí),誤差較小,但收斂速度慢。
實(shí)驗(yàn)2:采用實(shí)際的音頻信號(hào)附加正弦噪聲,模擬音頻嘯叫干擾,實(shí)驗(yàn)結(jié)果如圖11所示。
在圖11中,第一個(gè)波形為時(shí)間長(zhǎng)度為15 s的音頻信號(hào),第二個(gè)波形為疊加噪聲后的信號(hào),第3個(gè)波形為濾波后輸出信號(hào),第4個(gè)波形為誤差信號(hào)。記錄的是輸出數(shù)據(jù)與沒有混入噪聲的源音頻數(shù)據(jù)的差距,可以清楚的看到在1秒左右的地方濾波器達(dá)到收斂狀態(tài)。在第5個(gè)輸出的音頻波形中,可以觀察到嘯叫由強(qiáng)轉(zhuǎn)弱最后消失的過程。
4 結(jié)語
借助于DSP-Builder建立硬件模型,最終可利用FPGA實(shí)現(xiàn)。通過改變LMS濾波器步長(zhǎng),由此驗(yàn)證了最小均方算法在自適應(yīng)濾波上的有效性,當(dāng)步長(zhǎng)因子在一定范圍內(nèi)時(shí),LMS自適應(yīng)濾波器可以有效的濾除噪聲,將該濾波器用于抑制音頻嘯叫,取得較好的濾波效果。
參考文獻(xiàn):
[1]Simon Haykin.自適應(yīng)濾波器原理[M].4版.鄭寶玉,等譯.北京:電子工業(yè)出版社,2006.
[2]杜勇.數(shù)字濾波器的MATLAB與FPGA實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2012.
[3]何振亞.自適應(yīng)信號(hào)處理[M].北京:科學(xué)出版社,2002.
[4]施國(guó)勇.數(shù)字信號(hào)處理FPGA電路設(shè)計(jì)[M].北京:高等教育出版社,2010.
[5]王榮海.基于System Generator的數(shù)字音頻濾波器設(shè)計(jì)[J].兵工自動(dòng)化,2013,32(6):86-89.
[6]李麗.自適應(yīng)語音消噪算法的研究與應(yīng)用[J].計(jì)算機(jī)工程與科學(xué),2014,36(9):1 629-1 632.
[7]袁鵬飛,楊燕翔,廖國(guó)軍,等.語音去噪LMS自適應(yīng)濾波器算法的改進(jìn)[J].電子設(shè)計(jì)工程,2011,19(1):80-83.
[8]袁江南,徐敏.基于DSP Builder的LMS自適應(yīng)濾波器設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用,2009,29(12):338-340.
[9]潘松,黃繼業(yè),王國(guó)棟.現(xiàn)代DSP技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003.
Abstract:Based on the study of LMS adaptive filter theory,the paper built a mathematical model of the LMS adaptive filter,designed a LMS adaptive audio filter with the DSP-Builder library in MATLAB/Simulink,and realized with the FPGA.Experimental results show that the selection of appropriate step factor does help to improve the performance of the filter,which can realize the adaptive filter for audio signal.
Key words:adaptive filter;least mean square(LMS);field programmable gate array(FPGA)
責(zé)任編輯 祁秀春