摘 要:三維電子羅盤在長距離數(shù)據(jù)傳輸過程中,將受到外界噪聲的干擾。該噪聲不僅含有高斯噪聲,還含有脈沖噪聲。介紹一種抑制噪聲干擾的復(fù)合數(shù)據(jù)濾波方法,即先利用一種非線性濾波器中值濾波器,消除脈沖噪聲,然后再利用FIR低通濾波器,對(duì)其進(jìn)行平滑處理。與傳統(tǒng)的直接采用線性濾波器的濾波結(jié)果相比較,該方法的濾波效果更為理想。
關(guān)鍵詞:電子羅盤;非線性濾波器;FIR;中值濾波器
中圖分類號(hào):TN9117文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004-373X(2008)22-148-03
Application of Multi-filter in Processing of Data Received from
Three-dimension Digital Compass
ZHANG Lei,PAN Zhongming
(School of Mechatronics Engineering and Automation,National University of Defense Technology,Changsha,410073,China)
Abstract:In the processing of three-dimension compass transmits bearing data through a long distance,some noise to the measurement data can be got.The noise consists of Gauss noise and pulse noise as well.The noise restraining method introduced in this paper is filtering the pulse noise first by a nonlinear median filter,and then smoothing the filtered data by a FIR low-pass filter.Comparing the results coming out from a conventional linear filter,the introduced filtering method is much better.
Keywords:digital compass;nonlinear filter;FIR;median filter
1 引 言
三維電子羅盤(如圖1所示)內(nèi)置三個(gè)正交磁場傳感器,輸出的指向是羅盤指北軸線在水平面的投影與地磁北線在水平面投影的夾角。另外,三維電子羅盤還內(nèi)置一個(gè)雙軸傾角傳感器,用于補(bǔ)償傾斜和俯仰角度對(duì)羅盤指向的影響。目前,三維電子羅盤在車載定點(diǎn)雙向衛(wèi)星通信設(shè)備、船載和車載的衛(wèi)星電視接收設(shè)備、車載定向無線電檢測設(shè)備和車載雷達(dá)等定位設(shè)備中得到了廣泛的應(yīng)用。
圖1 三維電子羅盤實(shí)物圖
電子羅盤是用來檢測磁場的,所以它對(duì)于外界干擾和地球磁場無法做到實(shí)時(shí)準(zhǔn)確的區(qū)分,即使其內(nèi)部帶有一定的消除干擾磁場的能力。因此在使用羅盤的過程中,要想保證羅盤的精度必須做到2個(gè)要點(diǎn):提供干擾磁場小的位置和減小羅盤的線加速度與轉(zhuǎn)動(dòng)加速度。由于實(shí)際需求,電子羅盤的輸出數(shù)據(jù)必須通過一根長達(dá)2 m的傳輸線送給控制電路。這樣,傳輸線將會(huì)給羅盤輸出的方位數(shù)據(jù)帶來一定的噪聲誤差,其中不僅包含有高斯噪聲,也包含有脈沖噪聲。對(duì)于數(shù)據(jù)的遠(yuǎn)距離傳輸,傳統(tǒng)的方法是采用線性濾波器濾除其中的噪聲和干擾。線性濾波器如FIR濾波器,對(duì)濾除高斯噪聲(中拖尾概率分布噪聲)和均勻噪聲(短拖尾概率分布噪聲)效果明顯,但對(duì)于脈沖噪聲(長拖尾概率分布噪聲)的濾除就不那么令人滿意。而非線性濾波器在濾除脈沖噪聲方面有較強(qiáng)的優(yōu)勢,中值濾波器就是其中一種應(yīng)用比較廣泛、抑噪效果良好的非線性濾波器,在圖像處理、地震數(shù)據(jù)分析等方面都得到了廣泛的應(yīng)用。
2 濾波原理
文中采用2次濾波的方法,即先運(yùn)用中值濾波器濾除數(shù)據(jù)中的脈沖噪聲,然后再運(yùn)用FIR濾波器對(duì)數(shù)據(jù)進(jìn)行平滑處理。
2.1 中值濾波器的定義及性質(zhì)
定義[1]設(shè)濾波器窗口A的長度為n=2k+1(奇數(shù))或n=2k(偶數(shù)),觀測值個(gè)數(shù)Nn,即x1,x2,…,xN。當(dāng)窗口A在觀測值序列上移動(dòng)時(shí),標(biāo)準(zhǔn)中值濾波器輸出med(xi)為:
med(xi)=x(k), 若 n=2k+112[x(k)+x(k+1)],若 n=2k
其中x(k)表示窗口內(nèi)2k+1(或2k)個(gè)觀測值中第k個(gè)最大或最小的數(shù)值,即將任一時(shí)刻窗口內(nèi)的觀測數(shù)據(jù)重新按數(shù)值大小排序,然后取中間的數(shù)據(jù)作為本次中值濾波器的輸出。
根據(jù)上述定義,窗口n=2k+1的一維中值濾波器的輸入xi與輸出yi關(guān)系為:
yi=med(xi-k,…,xi,…,xi+k),i∈Z
上式定義的中值濾波器也稱作滑動(dòng)中值濾波器。
由中值濾波器的定義可知其具有去除脈沖噪聲而保護(hù)信號(hào)細(xì)節(jié)(如邊緣等)的性質(zhì),即:假設(shè)中值濾波器的窗口長度n=2k+1,若信號(hào)中脈沖寬度大于或等于k+1,則濾波后該脈沖將得到保留;若信號(hào)中脈沖寬度小于k+1,濾波后該脈沖將會(huì)被去除。
在使用滑動(dòng)中值濾波器對(duì)有限長度的信號(hào)進(jìn)行處理時(shí),為保持濾波前后的數(shù)據(jù)長度一致,需要對(duì)原輸入信號(hào)進(jìn)行擴(kuò)展。一般在運(yùn)用中值濾波器時(shí),為了方便把窗口的長度定為奇數(shù),即n=2k+1。擴(kuò)展信號(hào)長度時(shí),需要在原輸入信號(hào)的兩端分別擴(kuò)展k個(gè)與原信號(hào)兩端同樣的信號(hào),從而構(gòu)成一組新的輸入數(shù)據(jù),然后對(duì)新的輸入數(shù)據(jù)進(jìn)行中值濾波。但是,如果在對(duì)輸入信號(hào)進(jìn)行實(shí)時(shí)濾波處理,就不能確切地知道信號(hào)的末端,所以只能在信號(hào)的起始端進(jìn)行信號(hào)的擴(kuò)展,即在原輸入信號(hào)的前面增加2k個(gè)與原起始端同樣的信號(hào)。
2.2 窗口長度的選定
運(yùn)用中值濾波器的關(guān)鍵是要確定濾波窗口的大小,如果窗口太小,則不能有效濾除混雜在信號(hào)中的脈沖噪聲;如果窗口太大,對(duì)濾波性能的提高沒有多大幫助,反而會(huì)增加運(yùn)算量。因此,選擇一個(gè)合適的窗口長度對(duì)于中值濾波器來說是必不可少的。若采用試探法,通過比較濾波后的效果來確定窗口長度,就會(huì)顯得相當(dāng)繁瑣。齊春等人[2]提出利用零交叉的方法來確定脈沖寬度,經(jīng)實(shí)驗(yàn)表明可行,不僅窗口長度的選擇比較合適,而且操作起來也比較方便。其基本原理如下:
對(duì)于連續(xù)可導(dǎo)函數(shù)f(x),其極大值和極小值所在的點(diǎn)滿足一階導(dǎo)數(shù)等于零,即:
df(x)dx=0
在極值的兩端,函數(shù)f(x)的變化趨勢是要么上升要么下降,則其一階導(dǎo)數(shù)大于零或者小于零,即:
df(x)dx>0或 df(x)dx<0
因此,零交叉就是需要求出函數(shù)f(x)的一階導(dǎo)數(shù)df(x)dx=0時(shí)的x的集合x|df(x)dx=0。
由此就可以確定谷值點(diǎn)和峰值點(diǎn)的位置。在正弦波形中,由于對(duì)稱性,峰值點(diǎn)與谷值點(diǎn)的寬度與兩個(gè)零值點(diǎn)之間的寬度(脈沖寬度)相同。而在非正弦波形中,也可以做這樣一個(gè)近似,實(shí)驗(yàn)表明效果良好。
3 實(shí)驗(yàn)數(shù)據(jù)處理與分析
在實(shí)際使用三維電子羅盤時(shí),需要精確知道安裝該羅盤的設(shè)備現(xiàn)在處于什么方位,因此必須對(duì)當(dāng)前位置進(jìn)行多次測量,經(jīng)過一定的數(shù)據(jù)處理后得到比較精確的方位。在實(shí)驗(yàn)中,固定羅盤的位置,連續(xù)從羅盤讀取500個(gè)數(shù)據(jù)。圖2表明在電子羅盤的輸出數(shù)據(jù)中含有一定的脈沖噪聲及其他類型的噪聲,這嚴(yán)重影響了方位數(shù)據(jù)的精度,不能滿足實(shí)際應(yīng)用中對(duì)方位的要求,因此必須對(duì)原始羅盤數(shù)據(jù)進(jìn)行濾波處理。
圖2 原始羅盤輸出數(shù)據(jù)波形
圖3是對(duì)原始數(shù)據(jù)運(yùn)用30階FIR低通濾波器濾波后的波形??梢钥吹?,原始數(shù)據(jù)中的噪聲得到了很大程度的抑制,但脈沖噪聲的處理效果卻不是十分另人滿意。在實(shí)驗(yàn)中相應(yīng)提高FIR濾波器的階數(shù),脈沖噪聲還是不能有效的濾除。
圖3 直接FIR低通濾波后的數(shù)據(jù)波形
由于原始信號(hào)全部來自于一個(gè)固定的方位,所以圖2的波形沿著縱坐標(biāo)向下平移1個(gè)方位真值大小的數(shù)值,得到的波形就是傳輸線所帶來的噪聲波形。利用零交叉的方法計(jì)算出原始信號(hào)中脈沖信號(hào)的最大寬度k,并以n=2k+1作為中值濾波器的窗口長度,對(duì)原始數(shù)據(jù)進(jìn)行中值濾波后的結(jié)果如圖4所示??梢钥闯?,脈沖噪聲得到了很好的抑制,而且其他噪聲也被有效地濾除。但此時(shí)的波形還是有一些臺(tái)階和小的毛刺,再次利用5階FIR低通濾波器對(duì)其進(jìn)行平滑處理(見圖5),得到的基本上是一條直線段,這與原始數(shù)據(jù)的理想情況是一致,因?yàn)閷?shí)驗(yàn)中采集的數(shù)據(jù)來源于同一個(gè)方位。
圖4 中值濾波后的數(shù)據(jù)波形
圖5 平滑處理后的數(shù)據(jù)波形
中值濾波器是一種非線性濾波器,主要是從時(shí)域上處理問題,對(duì)于頻域上重疊的信號(hào)有可能很好地將其分開。如疊加在方波上的高頻噪聲,只要選取好濾波窗口的長度,就可以完全將高頻噪聲濾除,而保留方波信號(hào)。若采用一般線性濾波器,則會(huì)顯得力不從心,抑制高頻噪聲的同時(shí)也削弱了方波信號(hào)。中值濾波最重要的一點(diǎn),就是如何選取好濾波窗口的長度。合適的窗口長度,將會(huì)使得脈沖噪聲得到有效濾除。因此,中值濾波器對(duì)噪聲的分布和平穩(wěn)性沒有特殊要求,而常見的線性濾波器如FIR濾波器只對(duì)高斯噪聲和均勻噪聲有很好的濾除效能??梢哉f,中值濾波器有很強(qiáng)的適應(yīng)性和魯棒性。另外,中值濾波器又稱為滑動(dòng)中值濾波器,因此可以對(duì)信號(hào)進(jìn)行實(shí)時(shí)濾波處理,而且計(jì)算量相對(duì)較小。最后,中值濾波器適合處理變化比較緩慢的信號(hào)。
4 結(jié) 語
三維電子羅盤在長距離數(shù)據(jù)傳輸過程中,將受到外界噪聲的干擾。該噪聲不僅含有高斯噪聲,還含有脈沖噪聲。鑒于線性濾波器在濾除脈沖噪聲時(shí)不盡如人意的情況,采用在圖像處理領(lǐng)域廣泛使用的非線性濾波器——中值濾波器。實(shí)驗(yàn)表明,在對(duì)羅盤輸出數(shù)據(jù)進(jìn)行中值濾波和FIR平滑處理后,數(shù)據(jù)的精度得到很大提高,并通過與直接采用FIR低通濾波器濾波后的結(jié)果進(jìn)行比較,發(fā)現(xiàn)中值濾波的方法更為理想,并在某電子設(shè)備中得到了應(yīng)用。
參考文獻(xiàn)
[1]陳賀新.非線性濾波器與數(shù)字圖像處理[M].北京:國防工業(yè)出版社,1997.
[2]齊春,邸雙亮,梁德群,等.基于自適應(yīng)中值濾波的腦事件關(guān)聯(lián)電位單次提?。跩].中國生物醫(yī)學(xué)工程學(xué)報(bào),2003,22(3):220-227.
[3]Emmanuel C Ifeachor,Barrie W Jervis.數(shù)字信號(hào)處理實(shí)踐方法[M].2版.羅鵬飛,楊世海,朱國富,等譯.北京:電子工業(yè)出版社,2004.
[4]張志涌.精通MATLAB 6.5版[M].北京:北京航空航天大學(xué)出版社,2003.
[5]Alfredo Restrepo(Palacios),Lil-iana Chacon.A Smoothing Property of the Median Filter[J].IEEE Transantions on Signal Processing,1994,42(6):1 553-1 555.
[6]Awomir Jezewski,Krzysztof Strzecha.Fast Implementation of Median Filter[J].CADSM′2003,Lviv-Siasko,Ukraine,2003:18-22.
[7]朱明武,李永新,卜雄洙.測試信號(hào)處理與分析[M].北京:北京航空航天大學(xué)出版社,2006.
[8]程佩青.數(shù)字信號(hào)處理教程[M].2版.北京:清華大學(xué)出版社,2001.
[9]劉麗梅.中值濾波技術(shù)發(fā)展研究[J].云南師范大學(xué)學(xué)報(bào),2004,24(1):23-27.
[10]Tukey J W.Nonlinear Method for Smoothing Data Conference Record[M].New York: Eascon Publisher,1974.
[11]Thomas A Nodes.Median Filters:Some Modification and Their Pro-Perties[J].IEEE.Trans.on Acoust Speech and Signal Processing,1982,30(5):739-746.
[12]劉利群,韓震宇,李紹卓.FIR濾波器的設(shè)計(jì)及DSP實(shí)現(xiàn).現(xiàn)代電子技術(shù),2007,30(22):38-40.
作者簡介
張 雷 男,1985年出生,安徽阜南人,碩士研究生。從事數(shù)字化測試方面的研究。
潘仲明 男,1959,福建福州人,教授。主要從事壓電傳感與驅(qū)動(dòng)技術(shù)、自適應(yīng)信號(hào)處理研究。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文