張江輝,陳翠華,寧全利,馬麗芳
(解放軍陸軍 軍官學(xué)院,合肥 230031)
數(shù)據(jù)平滑處理是數(shù)字信號處理中經(jīng)常遇到的問題,其目的是消除數(shù)據(jù)中夾雜的噪聲,還原信號固有特征,為目標(biāo)特征提取和分析奠定良好基礎(chǔ)。數(shù)據(jù)平滑處理一般通過濾波的方法實(shí)現(xiàn)。濾波器的構(gòu)造主要考慮兩點(diǎn):一是濾波窗口,也即處理的臨域,理論上,濾波窗口越大,參與濾波運(yùn)算的統(tǒng)計(jì)數(shù)據(jù)越多,濾波效果越好,但實(shí)際上,由于實(shí)時(shí)處理的需要,濾波窗口通常是一定的;二是濾波算法,均值和中值濾波是數(shù)據(jù)平滑中較常用的兩種算法。本文在闡述上述兩種濾波器數(shù)據(jù)自動(dòng)平滑處理的基礎(chǔ)上,引入了卡爾曼濾波器原理,并通過試驗(yàn)對3 種濾波器在數(shù)據(jù)自動(dòng)平滑處理中的性能進(jìn)行了對比分析。
均值濾波器是線性平滑濾波器,其原理是通過計(jì)算濾波器窗口內(nèi)數(shù)據(jù)均值,將當(dāng)前數(shù)據(jù)和均值相比較,大于均值的去除,小于等于均值保留。由于均值受數(shù)據(jù)跳動(dòng)的影響較大,當(dāng)濾波窗口內(nèi)的奇異值較多時(shí),均值就會(huì)偏向奇異值,導(dǎo)致濾波錯(cuò)誤。
為了實(shí)現(xiàn)對數(shù)據(jù)平滑的自適應(yīng)處理,并改善均值濾波的效果,對均值濾波器進(jìn)行了如下改進(jìn):計(jì)算濾波窗口內(nèi)數(shù)據(jù)均值和方差δ,設(shè)定閾值區(qū)間為-δ+[]δ ,對于落在這個(gè)區(qū)間的數(shù)據(jù),認(rèn)為是正常數(shù)據(jù),否則使用均值代替該值。
式(1)中:N 為參與濾波計(jì)算數(shù)據(jù)個(gè)數(shù),xi為原始數(shù)據(jù)。
改進(jìn)后的均值濾波算法可表示:
中值濾波是一種非線性濾波器,其原理是用一個(gè)奇數(shù)點(diǎn)的滑動(dòng)窗口,將窗口內(nèi)各點(diǎn)的中值作為基準(zhǔn),當(dāng)前值和中值比較差別較大的認(rèn)為是噪聲進(jìn)行濾除,否則予以保留。如果取窗口點(diǎn)數(shù)為一奇數(shù)m,它的中值濾波就是從輸入數(shù)據(jù)中抽取m 個(gè)數(shù),并將這m 個(gè)點(diǎn)的值按其數(shù)值大小進(jìn)行排序,取其序號為中心點(diǎn)的那個(gè)數(shù)作為濾波輸出,中值運(yùn)算可表示:
式(3)中:xi數(shù)據(jù)序列,xm為中值,A 為中值濾波窗口,v 為濾波半徑,Med 為取中值運(yùn)算。中值濾波算法可表示:
1960 年,匈牙利數(shù)學(xué)家卡爾曼發(fā)表了著名的用遞歸方法解決離散數(shù)據(jù)線性濾波問題的論文:《A New Approach to Linear Filtering and Prediction Problems》(線性濾波與預(yù)測問題的新方法)。隨著計(jì)算機(jī)技術(shù)的進(jìn)步,卡爾曼濾波器在數(shù)字信號處理中得到了廣泛應(yīng)用。
卡爾曼濾波是以最小均方誤差為估計(jì)的最佳準(zhǔn)則,尋求一套遞推估計(jì)的算法,其基本思想是采用信號與噪聲的狀態(tài)空間模型,利用前一時(shí)刻地估計(jì)值和現(xiàn)時(shí)刻的觀測值來更新對狀態(tài)變量的估計(jì),得到現(xiàn)時(shí)刻的估計(jì)值。
一個(gè)線性動(dòng)態(tài)系統(tǒng)可用線性差分方程組描述:
式(5)中:Xk為n 維向量,表示系統(tǒng)第k 時(shí)刻狀態(tài);Yk為m 維系統(tǒng)觀測向量;Φk,k-1是一個(gè)n×n 階矩陣,它反應(yīng)了系統(tǒng)從k-1 時(shí)刻的狀態(tài)到第k 時(shí)刻狀態(tài)的變換;Wk表示第k 時(shí)刻作用于系統(tǒng)的隨機(jī)干擾,稱為模型噪聲,一般假設(shè)為高斯白噪聲序列,具有已知的零均值和協(xié)方差矩陣Qk;Hk為m ×n 階觀測矩陣,表示了狀態(tài)向量Xk到觀測向量Yk的轉(zhuǎn)換;Vk為m 維觀測噪聲,同樣假設(shè)其為高斯白噪聲序列,具有已知的零均值和協(xié)方差矩陣Rk。
經(jīng)推導(dǎo)(過程略),可得如下卡爾曼濾波遞推公式:
式(6)中:Qk為n×n 階模型噪聲Wk的協(xié)方差陣;Rk為m ×m 階觀測噪聲Vk的協(xié)方差陣;Gk為n×m 階增益矩陣;~Xk為n 維向量,表示第k 時(shí)刻經(jīng)濾波后的估計(jì)值;Ck為k 時(shí)刻n×n 階的估計(jì)協(xié)方差矩陣;Pk+1是k +1 時(shí)刻n ×n 階估計(jì)協(xié)方差矩陣。
一般情況下,對于一個(gè)線性定常系統(tǒng),Φk,k-1=Φ,Hk=H,即轉(zhuǎn)移矩陣均為常陣;而如果模型噪聲Wk和觀測噪聲Vk都是平穩(wěn)隨機(jī)序列,則Qk和Rk也都是常陣。此時(shí),常增益的離散卡爾曼濾波是漸近穩(wěn)定的。
某型制導(dǎo)炮彈出炮口后彈體轉(zhuǎn)速穩(wěn)定在7 轉(zhuǎn)/s 左右,通過彈載陀螺輸出信號可估算出彈體實(shí)時(shí)旋轉(zhuǎn)角度。理論上由于彈體轉(zhuǎn)速較穩(wěn)定,相鄰兩個(gè)時(shí)刻角度間隔變化幅度很小,如以20 ms 為采樣周期,相鄰時(shí)刻角度間隔約在50°附近變化。但由于噪聲信號的影響,測量出的彈體旋轉(zhuǎn)角度變化較劇烈,給實(shí)時(shí)角度估算帶來干擾,需進(jìn)行平滑濾波處理。
為此,使用均值、中值和卡爾曼濾波器分別對數(shù)據(jù)進(jìn)行了處理。這3 種濾波器均為自適應(yīng)濾波器,能夠?qū)崿F(xiàn)數(shù)據(jù)自動(dòng)平滑處理,為滿足實(shí)時(shí)處理的需要,也為比較3 種濾波器性能,試驗(yàn)統(tǒng)一采用1 ×5 的濾波器窗口。
所處理的數(shù)據(jù)時(shí)間長度為26 s,每秒50 個(gè)采樣數(shù)據(jù),共1 300 個(gè)數(shù)據(jù)。其中,均值濾波的結(jié)果如圖1 所示,中值濾波結(jié)果如圖2 所示。
圖1 均值濾波效果
在卡爾曼濾波中,系統(tǒng)初值設(shè)定為50,系統(tǒng)狀態(tài)向量和觀測向量維數(shù)均為1,系統(tǒng)當(dāng)前預(yù)測值和前一預(yù)測值相等,狀態(tài)轉(zhuǎn)移矩陣為H =1,觀測矩陣Φ =1;模型噪聲協(xié)方差Q =0.002 5,觀測噪聲協(xié)方差R =0.25,估計(jì)誤差的協(xié)方差P =2.5,卡爾曼濾波結(jié)果如圖3 所示。
圖2 中值濾波效果
圖3 卡爾曼濾波效果
由上述試驗(yàn)可以看出,原始數(shù)據(jù)存在大量的跳躍點(diǎn),干擾了正確角度的估算。通過采用均值、中值和卡爾曼濾波處理,均實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)平滑輸出。
均值、中值和卡爾曼濾波均可實(shí)現(xiàn)數(shù)據(jù)的自動(dòng)平滑處理。從濾波效果上看,均值濾波受噪聲干擾影響較明顯,特別是噪聲點(diǎn)變化劇烈的地方(圖1 中1 000 ~1 300 區(qū)域),濾波輸出的跳躍性較大,中值濾波器和卡爾曼濾波器在效果較好,且卡爾曼濾波輸出較中值濾波輸出的數(shù)據(jù)平滑性更好;從算法復(fù)雜度來講,均值濾波和中值濾波算法較簡單,運(yùn)行速度快,卡爾曼濾波由于涉及較多的矩陣運(yùn)算,算法運(yùn)行效率較低。實(shí)際應(yīng)用中,應(yīng)從處理精度、實(shí)時(shí)性等方面綜合考慮,選用合適的濾波器進(jìn)行數(shù)據(jù)平滑濾波。
本文主要討論了均值、中值和卡爾曼濾波在一維數(shù)據(jù)的平滑處理中的應(yīng)用,二維或多維數(shù)據(jù)處理可轉(zhuǎn)化成一維數(shù)據(jù)進(jìn)行處理,或參照上述思路處理。
[1]張麗芹,李保平,易娟,鄧國衛(wèi).基于捷聯(lián)式圖像尋的器的目標(biāo)識別與跟蹤技術(shù)[J].彈箭與制導(dǎo)學(xué)報(bào),2009(5):28-29.
[2]邢慧,顏景龍,張樹江.基于Kalman 濾波的穩(wěn)像技術(shù)研究[J].兵工學(xué)報(bào),2007(2):175-176.
[3]王向華,覃征.基于多次卡爾曼濾波的目標(biāo)自適應(yīng)跟蹤算法與仿真分析[J].系統(tǒng)仿真學(xué)報(bào),2008,20(23):6458-6460.
[4]徐士良.C 常用算法程序集[M].第2 版.北京:清華大學(xué)出版社,2003.
[5]張江輝,王曙光.彈載圖像信息處理技術(shù)[M].炮兵學(xué)院出版社,2009.
[6]王帥,魏國.卡爾曼濾波在四旋翼飛行器姿態(tài)測量中的應(yīng)用[J].兵工自動(dòng)化,2011(1):73-74.
[7]王建東,王亞飛,張晶.基于卡爾曼濾波器的運(yùn)動(dòng)目標(biāo)跟蹤算法[J].數(shù)字通信,2009,36(6):53-57.