蘇理云,石 林
(重慶理工大學 理學院, 重慶 400054)
微弱信號是被深埋在噪聲背景下極其微弱的有用信號,它可以從相對性(信號幅值相對于噪聲很微弱,如在早期故障階段的機械設備,各類對應故障的特征信號以某種方式混合在正常信源信號中,導致特征信號十分微弱;而設備在工作時,又會被強噪聲干擾)和絕對性(信號幅值極小)這2個方面理解[1]。隨著科學與技術的不斷發(fā)展,人們對被噪聲掩蓋下的微弱信號(如微振動、弱磁等)的檢測越來越重視[2]。微弱信號的檢測主要有2個特點:第一,在信噪比(signal-to-noise ratio,SNR)較低的情況下檢測微弱信號;第二,要求檢測具有時效性,但工程中采集的數據長度或持續(xù)時間會受到一定的限制[3]。混沌時間序列的預測是基于Takens定理[4]的理論依據上進行的,大多微弱信號的檢測[5-15]都是通過解析噪聲和信號的不同之處,抑制噪聲,剝離出微弱信號。卡爾曼濾波算法被廣泛用于通信、導航以及跟蹤領域,它可以對采集的實時數據進行動態(tài)處理,利用線性系統觀察和檢測輸入、輸出數據,最后得到系統的最優(yōu)估計[16]。為了更好地抑制混沌噪聲,提高信號的檢測能力,構建了一種基于卡爾曼濾波的混沌噪聲背景下微弱脈沖信號的檢測模型。首先,對觀測信號建立一步預測模型,進行單步預測,得到預測誤差。然后,給定一個閾值,從預測誤差中檢測微弱脈沖信號是否存在。
關于混沌噪聲背景下微弱脈沖信號的檢測,可以表示為以下的假設檢驗問題:
(1)
其中:y(t)為觀測信號,c(t)為混沌噪聲背景信號,s(t)為目標信號且與混沌噪聲背景下的信號c(t)獨立,N(t)表示均值為0的白噪聲。
由于目標信號s(t)是微弱脈沖信號且被混沌噪聲背景信號c(t)淹沒,要想更好地剝離出目標信號s(t),就要去除混沌噪聲背景信號c(t)的干擾,則上述的假設檢驗問題就可以轉化為:
(2)
卡爾曼濾波的循環(huán)遞歸過程如下:
2) 在第t步:
3) 以觀測的yt更新αt:
4) 獲得Pt:
5) 向前投影:
帶有線性趨勢的ARIMA模型為:
yt=βt+αt+εt
(3)
αt~ARIMA(0,d,0)(p,0,q)
狀態(tài)空間模型為:
yt=Ztαt+εt,εt~N(0,Ht)
(4)
αt+1=Ttαt+Rtηt,ηt~N(0,Qt)
(5)
a1~N(a1,P1),yt:p×1,αt+1:m×1,ηt:k×1
其中:Zt、Tt、Rt為確定模型形式的參數,而a1、P1、P1linf為初始值;a1為可選的m×1矩陣,給出初始狀態(tài)向量α1的期望值;P1為可選的m×m矩陣,給出α1的協方差矩陣,在漫反射情況下,P1的非漫反射部分;P1linf為可選的m×m矩陣,給出P1的漫反射部分,其為對角矩陣,對角元素上的矩陣對應于擴散初始狀態(tài),如果P1inf(i,i)>0,則P1對應的行和列應為零;而Ht和Qt為待估計的參數。
結合狀態(tài)空間模型,利用卡爾曼濾波得到了單步預測誤差,怎樣在這些誤差中快速準確地找到被淹沒的微弱脈沖信號,就需要給定一個判斷規(guī)則。這里,給定一個閾值:
(6)
圖1 微弱脈沖信號的檢測流程框圖
Lorenz方程為:
(7)
其中:σ=10,b=8/3,r=28。
初始條件設定為:x=1,y=1,z=1,采樣時間t=0.01 s,產生了10 000個數據點,選取第二個分量作為混沌噪聲背景c(t)。為了確保系統完全進入混沌狀態(tài),這里舍去了前面3 000個點,選取4 000個連續(xù)序列作為混沌噪聲背景,記為{c(t),t=1,2,3,…,4 000}。
微弱脈沖信號由2個周期微弱的脈沖信號疊加組成,即有s(t)=a1s1(t)+a2s2(t),其中:
(8)
(9)
生成長度為4 000的時間序列,記為{s(t),t=1,2,3,…,4 000},這里,T1=550,T2=650,a1=2,a2=3。此時,信噪比為-80.12 dB。
圖2 信號時序圖及單步預測誤差
基于卡爾曼濾波建立的單步預測模型為帶有線性趨勢的ARIMA模型yt=βt+αt+εt,αt~ARIMA(0,1,0)(4,0,5)和狀態(tài)空間模型,給定的初始值為:
由圖3可知,不管是有線性趨勢的ARIMA模型,還是狀態(tài)空間模型,經由卡爾曼濾波進行估計之后的效果都非常好,估計值與觀測值幾乎沒有差別,表明了卡爾曼濾波的適用性和優(yōu)越性。
由表1的檢測結果可知,15個微弱脈沖信號中有11個被模型檢測正確,t為1 650和3 300時存在的微弱脈沖信號未被模型檢測到。模型錯誤檢測了2個不存在的信號,t為686和3 252時沒有信號但模型錯誤檢測出了信號的存在。
圖3 預測誤差與觀測信號曲線
表1 有線性趨勢的ARIMA模型的檢測結果
由表2的檢測結果可知,14個微弱脈沖信號中有11個被模型檢測正確,t為1 650和3 300時存在的微弱脈沖信號未被模型檢測到。模型錯誤檢測了1個不存在的信號,t為686時沒有信號但模型錯誤檢測出了信號的存在。表3為不同模型檢測數量統計,表4為不同模型的檢測精度。
表2 狀態(tài)空間模型的檢測結果
表3 不同模型檢測數量統計
表4 不同模型的檢測精度
基于卡爾曼濾波,提出了一種混沌噪聲背景下微弱脈沖信號的檢測方法。在信噪比為-80.12 dB時,基于卡爾曼濾波的狀態(tài)空間模型檢測精度高達91.67%,F1得分達到了0.88,一般的ARIMA模型和基于卡爾曼濾波的有線性趨勢的ARIMA模型的檢測精度都為84.62%,F1得分都是0.85,但基于卡爾曼濾波的有線性趨勢的ARIMA模型的均方根誤差(RMSE)是3個模型中最小的,為0.02。綜上,卡爾曼濾波在檢測被混沌噪聲淹沒的微弱脈沖信號上具有極大的適用性和優(yōu)越性,檢測精度提高了8.33%,檢測性能提高了4.00%。