自適應(yīng)濾波算法的仿真及工程實(shí)現(xiàn)
自適應(yīng)濾波理論是20世紀(jì)50年代末開始發(fā)展起來的。它是現(xiàn)代信號處理技術(shù)的重要組成部分,對復(fù)雜信號的處理具有獨(dú)特的功能。自適應(yīng)濾波器在信號處理中屬于隨機(jī)信號處理的范疇。對于隨機(jī)數(shù)字信號的濾波處理,通常有維納(Weiner)濾波器、卡爾曼(Kal-man)濾波器和自適應(yīng)(Adaptive)濾波器。維納濾波器的權(quán)系數(shù)是固定的,適用于平穩(wěn)隨機(jī)信號;卡爾曼濾波器的權(quán)系數(shù)是可變的,適用于非平穩(wěn)隨機(jī)信號。但是,只有在對信號和噪聲的統(tǒng)計(jì)特性先驗(yàn)已知的情況下,這兩種濾波器才能獲得最優(yōu)濾波。但在實(shí)際應(yīng)用中,常無法確定這些統(tǒng)計(jì)特性的先驗(yàn)知識,或統(tǒng)計(jì)特性是隨時(shí)間變化的,因此,在許多情況下,維納濾波器或卡爾曼濾波器實(shí)現(xiàn)不了最優(yōu)濾波,而自適應(yīng)濾波不要求已知信號和噪聲的統(tǒng)計(jì)特性,因而可以提供理想的濾波性能。當(dāng)前,自適應(yīng)濾波技術(shù)已廣泛應(yīng)用于自適應(yīng)噪聲對消、語音編碼、自適應(yīng)網(wǎng)絡(luò)均衡器、雷達(dá)動目標(biāo)顯示、機(jī)載雷達(dá)雜波抑制、自適應(yīng)天線旁瓣對消等眾多領(lǐng)域。
在一些信號和噪聲特性無法預(yù)知或它們是隨時(shí)間變化的情況下,自適應(yīng)濾波器通過自適應(yīng)濾波算法調(diào)整濾波器系數(shù),使得濾波器的特性隨信號和噪聲的變化而變化,以達(dá)到最優(yōu)濾波的效果。這里在對自適應(yīng)濾波算法研究的基礎(chǔ)上,給出了不同信噪比情況下,LMS算法的仿真實(shí)現(xiàn)及基于DSP的工程實(shí)現(xiàn),并對兩種實(shí)現(xiàn)方法的結(jié)果進(jìn)行了驗(yàn)證、分析比較。
1 自適應(yīng)濾波理論
所謂自適應(yīng)濾波,就是利用前一時(shí)刻已獲得的濾波器參數(shù)等結(jié)果,自動調(diào)節(jié)現(xiàn)時(shí)刻的濾波器參數(shù),以適應(yīng)信號和噪聲未知或隨時(shí)間變化的統(tǒng)計(jì)特性,從而實(shí)現(xiàn)最優(yōu)濾波。自適應(yīng)濾波器由兩個(gè)部分組成:一是濾波器的結(jié)構(gòu);二是調(diào)節(jié)濾波器系數(shù)的自適應(yīng)算法。自適應(yīng)濾波器的特點(diǎn)是自動調(diào)節(jié)自身的沖激響應(yīng),達(dá)到最優(yōu)濾波,此算法適用于平穩(wěn)和非平穩(wěn)隨機(jī)信號,并且不要求知道信號和噪聲的統(tǒng)計(jì)特性。
1.1 自適應(yīng)濾波器結(jié)構(gòu)
自適應(yīng)濾波器主要有無限沖激響應(yīng)(IIR)和有限沖激響應(yīng)(FIR)兩種類型。濾波器結(jié)構(gòu)的選擇對算法的處理起著重要的影響;IIR型結(jié)構(gòu)濾波器的傳輸函數(shù)既有零點(diǎn)又有極點(diǎn),它可以用不高的階數(shù)實(shí)現(xiàn)具有陡峭通帶特性,缺點(diǎn)是穩(wěn)定性不好,且相位特性難于控制。FIR濾波器是全零點(diǎn)濾波器,它是穩(wěn)定的,且能實(shí)現(xiàn)線性的相位特性,因此,自適應(yīng)濾波器的結(jié)構(gòu)通常采用F1R型濾波器的橫向結(jié)構(gòu),結(jié)構(gòu)如圖1所示。
式中:n為時(shí)間序列;N為濾波器階數(shù);x(n)=[x(n),x(n-1),…,x(n-N+1)]T為輸入矢量;W(n)=[ω0(n),ω1(n),…,ωN-1(n)]T為權(quán)系數(shù)矢量。
1.2 LMS自適應(yīng)濾波算法
LMS自適應(yīng)濾波算法是根據(jù)最小均方誤差準(zhǔn)則進(jìn)行設(shè)計(jì)的,LMS算法的目的是通過調(diào)整系數(shù),使輸出誤差序列的均方值最小化,并且根據(jù)這個(gè)數(shù)據(jù)來修改權(quán)系數(shù)。誤差序列的均方值ε表示為:
式中:d(n)為理想信號;e(n)為輸出誤差序列。將式(1)中的y(n)代人式(2)中有:
式中:R=E[X(n)XT(n)]為N×N自相關(guān)矩陣,表示輸入信號采樣值間的相關(guān)性矩陣。P=E[d(n)X(n)]為N×1互相關(guān)矩陣,表示理想信號d(n)與輸入信號矢量的相關(guān)性。
在均方誤差最小時(shí),最佳權(quán)系數(shù)應(yīng)滿足如下方程:
即:
這是一個(gè)線性方程組,如果R矩陣為滿秩矩陣,則有R-1存在,可得到權(quán)系數(shù)的最佳值滿足:
由式(6)可以知道,求出R和P就可以得到W*。由前幾式可知,R是X(n)的自相關(guān)矩陣,P是d(n)與 X(n)的互相關(guān)矢量。
LMS算法是以最陡下降法為原則的迭代算法,即W(n+1)矢量是W(n)矢量按均方誤差性能平面的復(fù)斜率大小調(diào)節(jié)響應(yīng)一個(gè)增量,即:
式中:u表示自適應(yīng)步長;(n)為n次迭代的梯度,表示為:
由式(7)產(chǎn)生了求解最佳權(quán)系數(shù)W*方法的兩種方法,一種是最陡梯度法,其基本思路為:設(shè)定初始權(quán)系數(shù)W(0),用式(7)迭代公式計(jì)算,迭代直到W(n+1)與 W(n)誤差小于規(guī)定范圍。其中(n)的E[]計(jì)算可用下面的估計(jì)值表達(dá)式來計(jì)算:
式中K取值應(yīng)足夠大。如果用瞬時(shí)-2e(n)X(n)來代替上面對-2E[e(n)X(n)]的估計(jì)運(yùn)算,就產(chǎn)生另一種算法:隨機(jī)梯度法,即Widrow-Hoff的LMS算法。迭代公式表示為:
[!--empirenews.page--]
2 仿真及工程實(shí)現(xiàn)
2.1 LMS算法的仿真實(shí)現(xiàn)
假定輸入信號由正弦波信號和高斯白噪聲組成。其中正弦波信號的頻率f0=1 000 Hz,幅度A=2,F(xiàn)IR濾波器的階數(shù)N為128;當(dāng)白噪聲的均值為0,其方差δ分別為0.64,2,6.32,即信噪比(SNR)分別為5 dB,0 dB,-5 dB時(shí),采用LMS算法進(jìn)行濾波的結(jié)果分別如圖2~圖4所示。
2.2 LMS算法的DSP實(shí)現(xiàn)
設(shè)定采樣數(shù)據(jù)的點(diǎn)數(shù)為1 024點(diǎn),濾波器的全系數(shù)設(shè)定為128階,自適應(yīng)步長為5×10-5。設(shè)定輸入信號為正弦波+噪聲信號,其中正弦波的周期T=256 s,幅度A=200,正弦波信號功率Ps=20 000;噪聲設(shè)定為零均值,方差δ分別為2 000,6 330,20 000,相應(yīng)的信噪比 SNR=10 dB,5 dB,0 dB,根據(jù)自適應(yīng)迭代公式(8),使用DSP編程實(shí)現(xiàn)自適應(yīng)濾波算法,由DSP的CCS開發(fā)環(huán)境圖形分析工具得到測試結(jié)果如圖5~圖7所示。
根據(jù)圖7比較分析可以得出:
(1)無論是使用Matlab仿真方法還是使用DSP方法實(shí)現(xiàn)LMS算法,隨著信噪比的降低,自適應(yīng)濾波效果減弱。
(2)在信噪比位于0 dB之上時(shí),兩種方法都可以取得較好的濾波效果。
(3)在信噪比位于0 dB(或0 dB以下),仿真方法可以取得較好的濾波效果,但工程上卻不能實(shí)現(xiàn),即當(dāng)信噪比位于0 dB時(shí),LMS算法已失去工程上的應(yīng)用價(jià)值。
3 結(jié) 語
這里在對自適應(yīng)濾波理論研究的基礎(chǔ)上,對LMS自適應(yīng)濾波算法進(jìn)行了研究,給出了不同信噪比條件下,LMS算法的仿真實(shí)現(xiàn)及基于DSP的工程實(shí)現(xiàn),并對兩種實(shí)現(xiàn)結(jié)果進(jìn)行了分析比較,通過如圖7所示,LMS算法在信噪比較高時(shí),除噪效果非常顯著,當(dāng)信噪比較低的時(shí)候,仿真上可以得到的比較理想的濾波效果,工程上卻無法實(shí)現(xiàn)。該結(jié)論對于指導(dǎo)自適應(yīng)濾波理論的工程實(shí)踐具有指導(dǎo)作用。