強明輝 郭 俊
(1.蘭州理工大學電氣工程與信息工程學院 蘭州 730050)(2.甘肅省工業過程先進控制重點實驗室 蘭州 730050)(3.蘭州理工大學電氣與控制工程國家級實驗教學示范中心 蘭州 730050)
無人機廣泛應用于國民經濟的各個領域,無人機飛行安全越來越受到人們的廣泛關注。傳感器是測量無人機姿態信息的核心,傳感器為無人機的飛行提供安全、可靠、全面的數據信息[1]。無人機的安全飛行很大程度上取決于傳感器是否故障。而無人機經常會飛行在具有強干擾、強震動等惡劣的環境中,因此,傳感器的工作狀態會受到一定程度的干擾[2]。尤其是用于慣性導航的加速度計和陀螺儀等傳感器,使傳感器回傳給控制系統的數據信息發生異常波動,波動幅度過大會造成故障診斷系統的誤報警,向無人機飛行控制系統提供了不準確的數據信息[3]。為了保證傳感器檢測數據信號的準確性,需要對傳感器輸出的數據信息進行預處理,去除掉其中的噪聲信號,減小故障診斷系統的誤判率。
本文在研究了中值濾波、小波濾波優缺點后,改進小波濾波閾值函數,并將中值濾波和改進的小波濾波相結合的濾波方法,對慣導傳感器中采集到的數據進行處理,消除脈沖噪聲和隨機噪聲帶來的影響,取得了良好的過濾效果。
針對無人機在飛行過程中陀螺儀和加速度計等傳感器容易受到外界溫度、電磁等因素的影響,使自身輸出信號中含有大量的隨機噪聲信號,影響故障診斷系統的判斷。改進了小波濾波閾值函數,設計了中值濾波和改進的小波濾波相結合的濾波方法,對無人機傳感器檢測的數據信息進行預處理。其數據預處理流程如圖1所示。
中值濾波法是一種非線性平滑技術,它將每一像素點的灰度值設置為該點某鄰域窗口內的所有像素點灰度值的中值[4]。中值濾波的基本原理是把數字序列中一點的值用該點的一個鄰域中各點值的中值代替,讓周圍的數字值接近的真實值,從而消除孤立的噪聲點。對于傳感器檢測的參數序列,可以采用中值濾波方法,有效濾除脈沖干擾[5]。

小波變換是信號分析的一種形式,小波分析是將信號分解成一系列小波函數的疊加,這些小波函數是由一個母小波函數經過平移與尺度伸縮得來的[7]。用不同壓縮尺度的小波函數與信號比較獲得相似系數,最終遍歷整個信號,完成小波變換。這樣用不規則的小波函數來逼近尖銳變化的信號能夠得到信號更好的局部特性[8]。一般通過信號函數與小波函數的內積來表示小波變換,如式(1)。

式中ψa'b表示基本小波函數,a為尺度因子,改變小波的形狀,b為位移因子,改變小波的位移。
但是在每個可能的縮放因子和平移參數下計算小波系數,其計算量相當大,將產生驚人的數據量,而且有許多數據是無用的。所以在離散小波變換中將縮放因子和平移參數都選擇為2j的倍數,可以有效降低數據量。離散小波變換中,Mallat濾波算法應用最為廣泛。該算法利用高通和低通濾波器,將信號分解為一個近似值A和一個細節值D。在使用實際濾波器對真實信號進行變換時,根據尼奎斯特采樣定理,得到離散小波變換的近似系數cA和細節系數cD[9]。小波分解過程如圖2所示。

圖2 小波分解過程
在小波域,有效信號對應的系數一般比較大,而噪聲信號對應的系數較小[10]。所以在獲得各尺度系數之后,低頻系數直接置零,只針對高頻信號進行閾值處理。通過這種方法能夠有效去除信號中存在的隨機噪聲,并且只對原始信號的特征產生較小的影響[11]。最后利用最底層低頻系數和每一層的高頻系數進行小波重構,獲得去噪之后的信號。
小波去噪需要進行小波基函數與分解層數的選擇、閾值函數與門限值的選取,其中小波基函數與分解層數選擇相對固定,而針對高頻系數選取的不同閾值函數處理方式往往對小波去噪效果的影響比較大。傳統的閾值函數主要有硬閾值函數(2)和軟閾值函數(3):

硬閾值函數直接通過判斷系數與閾值的大小進行賦值,在均方誤差意義上優于軟閾值法,但是因為硬閾值函數在ω=λ處不連續,所以信號在改點會產生附加震蕩,產生跳躍點,不具有原始信號的平滑性。軟閾值在判斷了系數值大于閾值之后利用兩者之差作為新的系數,軟閾值函數估計得到的小波系數整體連續性較好,從而使估計信號不會產生附加震蕩,但是會壓縮信號,不利于重構后的信號向原始信號的逼近,會產生一定的偏差,直接影響到重構的信號與真實信號的逼近程度[12]。
本文結合軟硬閾值函數在進行小波系數處理過程中存在的相關問題,采用新的小波閾值函數(4)進行小波系數的重構。

而該閾值函數需要滿足以下幾個方面的特征。首先,閾值函數在其定義域內要保證連續,這樣才能夠避免在重構的過程中出現震蕩的問題;其次,閾值函數重構的信號應該能夠無限地逼近原始信號,而在數學表達式中表現為其漸近線能夠接近y=x這條線,這樣可以避免在信號重構過程中出現較大的偏離[13]。


根據式(6)~(9)可知,新閾值函數漸近線的斜率為1,截距為0,漸近線為y=x,也就是說,重構的小波信號可以無限地接近原始信號。


為了驗證改進閾值小波去噪的效果,本文先對硬閾值、軟閾值和改進閾值去噪的實驗結果進行分析。
在Matlab仿真平臺上利用wnoise函數生成含有噪聲的信號,其中信噪比設置為6。再利用小波濾波對該信號進行濾波,小波濾波的過程分別選擇硬閾值、軟閾值與改進閾值函數,對比三種不同的閾值函數的濾波效果,同時利用均方誤差和信噪比對濾波效果進行比較,觀察三種不同閾值函數的差異。
式(10)和(11)分別為信噪比和均方誤差計算公式。

其中,yi表示原始信號,表示去噪之后的信號,信噪比和均方誤差能夠反映信號去噪效果,信噪比越大說明混在信號中的噪聲越少,而均方誤差越小,說明去噪之后的信號與原來的信號能夠更加接近,信號精度更高。
在進行小波處理的過程中,為了驗證閾值函數的效果,確保其他的變量都保持一致,其中小波基函數選擇sym6,小波分解層數選擇6層,小波閾值函數門限值

圖3 原始信號
通過圖像觀察發現,三種濾波方式都能夠起到較好的濾波效果,可以去除大多數的隨機噪聲信號。但是硬閾值和軟閾值濾波方式存在著較大的均方誤差,信噪比較小。而改進閾值明顯均方誤差較小,信噪比較為突出。所以改進閾值函數的小波濾波具有更好的去除隨機噪聲的效果。同時,在三種濾波圖像中,通過觀察橫坐標470和890附近可以看出,改進的閾值函數能夠保留更多的原始信號的細節,而硬閾值和軟閾值函數的去噪過程中都沒有被保留下來,或者效果不夠明顯,說明在信號的還原度方面,改進閾值函數也存在優勢。

圖4 加入噪聲的信號

圖5 改進閾值函數濾波信號

圖6 軟閾值函數濾波信號

圖7 硬閾值函數濾波信號

表1 不同閾值函數的處理結果
通過上述的分析,本文驗證了改進閾值函數的小波濾波在處理隨機噪聲中的效果,既能夠避免硬閾值帶來的數據震蕩,又能夠防止軟閾值出現的信號失真,在保證信號連續的過程中更好的還原信號。在對無人機導航傳感器進行數據預處理的過程中,可以將其與中值濾波結合,去除數據中含有的脈沖噪聲和隨機噪聲。本文含噪信號的產生模型可以用f(t)=x(t)+n(t)+p(t)來表示,其中x(t)表示通過模擬無人機飛行產生的飛行傳感器數據,這里用經度位置來代替,n(t)是利用Matlab仿真軟件中的wnoise函數生成的隨機噪聲信號,p(t)是在固定位置加入的脈沖信號。

圖8 傳感器原始經度信號

圖9 含有噪聲的經度信號

圖10 混合濾波處理后的經度信號

圖11 中值濾波處理后的經度信號

圖12 改進閾值函數的小波濾波處理后的經度信號

表2 不同濾波對傳感器數據處理的結果
通過對信號圖像和數據的分析本文發現,只通過中值濾波能夠去除信號中含有的脈沖噪聲,但是對隨機噪聲去除效果不明顯,而只通過小波濾波能夠去除其中大部分的隨機噪聲信號,并且對脈沖噪聲有一定的抑制作用,但是脈沖噪聲去除并不徹底,同時在濾波的過程中受到脈沖噪聲的干擾,容易出現信號的失真現象,偏離原始信號較多。而通過混合濾波既能夠去除其中的脈沖噪聲,又能夠很好地過濾隨機噪聲,同時在還原信號的過程中更加接近原始信號。再對三種濾波方式的信噪比和均方誤差的比較發現,混合濾波的效果更佳。
針對無人機導航傳感器在工作的過程中其數據中容易摻雜大量的隨機噪聲和脈沖噪聲。在進行故障診斷的過程中,這些噪聲容易引起系統的誤報警,所以針對這一問題,本文研究了無人機傳感器數據預處理方法,對中值濾波、小波濾波和改進小波濾波方法就行了分析研究,經過仿真分析,效果不夠理想。最后,采用中值濾波和改進小波濾波相結合的混合濾波方法,仿真結果表明,該方法可以更好地去除檢測數據噪聲干擾,提高了傳感器檢測數據處理的精度和可靠性。