盧佳敏 宋三明 景 嚴 張 瑤 谷 浪魯 帆 胡志強 李 碩
(1 中國科學院沈陽自動化研究所 機器人學國家重點實驗室 沈陽 110016)
(2 中國科學院機器人與智能制造創(chuàng)新研究院 沈陽 110169)
(3 中國科學院大學 北京 100049)
(4 中國科學院聲學研究所 北京 100190)
水中機動目標在航行時會輻射出具有特殊頻譜分布的噪聲,因此可以通過噪聲分析來估計航行器的噸位、槳葉數(shù)等物理特征和軸頻、航速等運動狀態(tài)[1?2],進而實現(xiàn)合作或對抗場景下的態(tài)勢感知。軸頻是螺旋槳轉速的最直接反映[3],對水下目標探測具有重要的意義,本文將重點研究如何從水聽器陣列接收到的噪聲中估計軸頻信息。
軸頻也稱為基頻,在數(shù)值上等于目標螺旋槳主軸的轉動頻率[4],常用DEMON 譜分析法提取調制譜特征,以獲取基頻及其諧波在內的低頻線譜,進而檢測目標的基頻、葉頻或槳葉數(shù)目。文獻[5–6]評估了不同解調分量得到的DEMON譜的鑒別能力。文獻[7–11]研究了DEMON 譜凈化與增強,提高了線譜的信噪比與基頻估計的精度。其中,文獻[7]基于線譜之間的倍頻關系,提出基于最大公約數(shù)的基頻提取方法,文獻[12–13]對此進行了拓展并提出相應的改進方法。這些算法需要人為設置參數(shù)進行特征提取和基頻估計,對信噪比較敏感。實際接收到的目標噪聲信號,受到不同海洋波導傳輸過程的乘性作用和加性干擾,其信噪比變化大[14?15]。
深度學習具有較強的泛化能力,近年來逐漸被研究人員引入水下目標識別領域。文獻[16]通過提取DEMON 譜中各諧波之間的結構特征關系建立模板庫,根據(jù)模板庫對深度神經(jīng)網(wǎng)絡(Deep neural networks,DNN)進行訓練,并識別螺旋槳的葉片數(shù)目。文獻[17]將梅爾頻率倒譜系數(shù)(Melfrequency cepstrum coefficient,MFCC)和頻譜包絡特征輸入卷積神經(jīng)網(wǎng)絡(Convolutional neural networks,CNN)和深度置信網(wǎng)絡(Deep belief networks,DBN),對船舶目標進行分類。文獻[18]提出一個類似方案,將線性預測倒譜系數(shù)(Linear predictive cepstral coefficient,LPCC)和MFCC 串聯(lián)后輸入DBN 網(wǎng)絡。文獻[19]將梅爾頻率特征分別輸入支持向量機(Support vector machine,SVM)和VGGish 網(wǎng)絡中,對生物、潛艇和船只3 種目標噪聲進行分類。文獻[20]使用堆疊降噪自編碼器(Stacked denoising auto encoder,SDAE)對原始信號數(shù)據(jù)進行降維和逐層特征提取,然后使用SVM和BP 網(wǎng)絡進行分類。文獻[21]開展了基于長短時記憶(Long short-term memory,LSTM)網(wǎng)絡的聲學目標分類,發(fā)現(xiàn)時域、頻域和MFCC 三種特征具有相當?shù)姆诸愋阅?。隨后,他們對DEMON 譜和MFCC等特征進行融合,提高了LSTM 網(wǎng)絡的分類準確率[22]。
大多數(shù)現(xiàn)有水下目標分類算法首先通過波束形成將水聽器陣列信號約減為一維信號,然后提取頻域特征輸入深度網(wǎng)絡進行訓練。本文開展基于深度學習的基頻估計,但是重點考慮如下兩個問題:
(1)在特征提取時,絕大多數(shù)研究都采用了MFCC特征。MFCC反映能量在不同頻率區(qū)間的分布,本質上是對噪聲信號頻譜包絡的一種描述,關注的是連續(xù)譜而非調制譜特征。
(2)在波束形成時,會丟失很多細節(jié)信息,且會引入新的陣形估計誤差。
對于問題(1),由于調制譜是由基頻及其諧頻決定的,而一般采用DEMON 譜來提取調制譜,所以本文在估計基頻時候選擇DEMON 譜作為網(wǎng)絡的輸入。需要注意的是,在目標航速很低時噪聲的調制效應很弱,因此調制譜分析更適合分析非低速航行下的目標噪聲。
對于問題(2),一種更加合理的選擇是將水聽器陣列采集的多通道信號直接用于特征提取。然而,多通道數(shù)據(jù)不僅會導致特征數(shù)急速增長,而且還會引入隨機噪聲的譜特征。本文擬采用CNN 網(wǎng)絡對多通道特征進行二次特征提取,實現(xiàn)特征降維和凈化。最后,將多個時間窗對應的二次特征輸入LSTM網(wǎng)絡實現(xiàn)基頻估計。
本文提出的基頻檢測算法流程如圖1所示。首先,對每個通道的噪聲信號作加窗分幀處理,在每個時間窗內提取DEMON 譜特征;然后,利用梳狀濾波器對DEMON 譜特征中包含的倍頻關系進行增強;最后,將同一時間窗內所有通道特征組成二維矩陣經(jīng)卷積層處理后輸入LSTM網(wǎng)絡。
本文采用分類網(wǎng)絡來估計基頻。把基頻取值范圍分成幾個頻段,每個頻段當作一個類別,將基頻估計問題轉化為分類問題。需要說明的是,也可以采用回歸網(wǎng)絡進行基頻估計。但是,在很多研究領域中,回歸網(wǎng)絡或者分類網(wǎng)絡在性能上并不存在本質的區(qū)別[23?24]。下面將詳細介紹算法各個步驟的具體實現(xiàn)方法。
DEMON譜的計算流程如圖2所示。
圖2 DEMON 譜計算流程圖Fig.2 The DEMON spectrum extraction procedure
調制信號對不同頻帶噪聲的信號調制強度是不同的[7]??梢詫⑿盘柕念l譜劃分成多個頻段,然后將不同頻段的線譜進行融合來提高線譜質量。具體包括如下幾個步驟:(1)在高頻端選取若干個子帶,對原始噪聲信號進行時域帶通濾波;(1)對每個子帶進行平方解調,得到時域包絡;(2)對包絡做快速傅里葉變換(Fast Fourier transform,FFT)得到頻譜,并利用雙向α濾波器去除趨勢項得到各個子帶的線譜;(3)根據(jù)線譜根數(shù)將各子帶的線譜進行加權融合,得到最終的線譜特征??紤]到水中運動目標的實際工況,后面實驗中將基頻的搜索范圍限制在5~10 Hz之間。而且,由于DEMON譜的線譜階數(shù)不會太高[7],本文以10 階為限,僅保留100 Hz以下的DEMON譜。
受到不穩(wěn)定調制的影響,線譜之間的倍頻關系可能會減弱或消失。本文采用文獻[25]提出的梳狀濾波器對倍頻關系進行增強。梳狀濾波器由許多按等頻率間隔排列的通帶和阻帶組成,能夠很好地保留信號中的倍頻關系。
對于理想的DEMON 譜,其對數(shù)頻域上基頻及倍頻的分布可以表示為
其中,b為線譜幅度,k表示第k個諧頻,f0為基頻,N(q)為加性噪聲。
理想狀態(tài)下,各次諧波線譜之間遵守嚴格的倍數(shù)關系。當梳狀濾波器h(q)的第一個通帶移動至某個線譜頻率處時,其余各通帶會落在該頻率對應的各次諧波上,對各個諧頻進行累積。在第一個通帶位于基頻f0處時達到峰值。相應的理想濾波器h(q)可以用式(2)描述:
但在實際中,基頻及諧頻之間的倍頻關系并不嚴格,如諧頻位置存在偏差或存在一定的譜峰寬度。因此,DEMON 譜不能直接用式(1)描述,相應的也不能用式(2)的濾波器進行濾波。一種考慮了偏差和譜峰寬度的濾波器為
其中,g(q)為
參數(shù)K是諧波個數(shù),γ代表譜峰寬度。在后面的實驗中K取10,γ取1.8,取β,使
利用梳狀濾波器進行濾波時,首先將特征信號映射至對數(shù)域,q=logf,然后將DEMON譜與濾波器做卷積得到增強后的線譜特征:
梳狀濾波前后的DEMON 譜如圖3所示,濾波后諧波結構(線譜間的倍頻關系)明顯增強。
圖3 梳狀濾波器對DEMON 譜的增強效果Fig.3 Enhancement to DEMON spectrum by the comb filtering
提取DEMON 譜特征后,可以通過訓練分類網(wǎng)絡來估計基頻。作者在文獻[26]中提出過一種基于CNN 網(wǎng)絡的檢測方法,利用小波變換對DEMON譜特征去噪,然后將將凈化譜特征輸入CNN 網(wǎng)絡來估計基頻。但是,去噪可能會造成譜特征信息的丟失,而且單純采用CNN 網(wǎng)絡需要對較長的時間序列進行融合,影響實時性。本文去掉了去噪步驟,同時在CNN 網(wǎng)絡上增加了LSTM 網(wǎng)絡,以期利用LSTM 網(wǎng)絡的時序建模能力去捕獲低信噪比條件下基頻及其倍頻的統(tǒng)計特性,提高基頻估計的穩(wěn)定性和實時性。
LSTM是循環(huán)神經(jīng)網(wǎng)絡(Recurrent neural network,RNN)的一種改進結構,具有RNN 處理時間序列信號能力的同時解決了RNN 存在的長時依賴問題,被廣泛用于處理各種語聲任務。LSTM 基本單元結構如圖4所示。其中,xt為各時間步輸入LSTM 單元的特征,ht是各時間步LSTM 單元的輸出,sig為sigmoid函數(shù)。
圖4 LSTM 基本單元Fig.4 Cell of LSTM
網(wǎng)絡的整體結構如圖5所示,包含一個擁有8個3×3 卷積核的卷積層、一個卷積核尺寸為2×2的池化層、一個含有256 個神經(jīng)元的LSTM 層以及一個大小為128的隱藏層和大小為25的softmax 分類層。注意,輸出是one-hot 向量,當基頻的真實值落在相應頻率范圍內時,該類值為1,其余為0。損失函數(shù)采用交叉熵函數(shù),網(wǎng)絡使用mini-batch 進行訓練。其中卷積層對輸入的多通道DEMON譜特征進行降維,LSTM層用于提取輸入信號的時序特征,隨后輸入分類網(wǎng)絡進行分類。
圖5 網(wǎng)絡結構示意圖Fig.5 The proposed deep-learning network structure
訓練深度網(wǎng)絡需要大量標定好的數(shù)據(jù)。但是,真實艦船噪聲數(shù)據(jù)往往比較稀缺,而且實測數(shù)據(jù)標定是一項繁瑣且容易出錯的工作。因此本文首先使用仿真數(shù)據(jù)對網(wǎng)絡進行訓練,在湖試中利用實測艦船噪聲數(shù)據(jù)對預訓練好的網(wǎng)絡進行微調后,再進行基頻估計。本節(jié)介紹艦船噪聲信號的仿真方法。
對于仿真艦船噪聲信號來說,周期性局部平穩(wěn)過程[14]和準周期性隨機聲脈沖序列模型[15]是描述其時域信號較為客觀接近實際的兩種數(shù)理模型。準周期性隨機聲脈沖序列模型可以模擬以不同噪聲源為主導的不同工況下的目標輻射噪聲信號,其脈沖形狀和脈沖出現(xiàn)的周期性程度可取不同值,使其具有不同的寬帶連續(xù)譜形狀和不同線譜幅度、調制深度,具有良好的普適性,因此本文根據(jù)文獻[15]對目標噪聲信號進行仿真。
艦船噪聲的頻譜可以看作由連續(xù)譜和線譜疊加組成,噪聲的時域波形可以看作由準周期性隨機脈沖聲序列構成,其中第n個聲脈沖的出現(xiàn)時刻(脈沖前沿)為
其中,T為聲脈沖序列之間的平均間隔,Δn為脈沖序列在周期點附近的隨機擺幅,服從均值為零、方差為δΔ的正態(tài)分布。
準周期性隨機聲脈沖序列指出噪聲輻射線譜相對于連續(xù)譜的幅值僅取決于脈沖的隨機擺幅,脈沖序列的準周期性越差,則線譜幅值越低。對于不同工況的船舶,通過選擇周期性隨機序列脈沖的各個參數(shù)可以獲得不同頻率和幅度的線譜,以及譜峰頻率不同、連續(xù)譜形狀和衰減規(guī)律不同的功率譜[15]。
以聲脈沖形狀為指數(shù)衰減型為例給出具體實現(xiàn)過程。第n個聲脈沖的形狀為[15]
其中,γ為衰減系數(shù),τ是脈沖持續(xù)時間。脈沖幅度分布遵循式(9):
每個脈沖的起始時間在槳葉周期附近服從高斯分布:
圖6給出一段仿真信號的頻譜。
圖6 一段基頻為5 Hz 的噪聲仿真信號的頻譜Fig.6 The frequency spectrum of a synthesized ship-radiated noise signal with the shaft frequency being 5 Hz
海洋環(huán)境噪聲和水聲信道傳輸過程會降低接收點處接收信號的信噪比,本節(jié)介紹如何仿真受海洋環(huán)境影響的接收點信號。
本文主要面向接收點與目標之間距離為中近距離的情形,側重考慮隨距離變化的聲能平均傳播損失、海底與海面反射引起的相干多途干擾以及海洋環(huán)境噪聲加性干擾。采用基于射線聲學的bellhop模型對傳播損失和多途干擾進行仿真,聲源深度10 m,接收6 元陣,接收深度10 m,為垂直線陣,接收陣水平距離2000 m,海水密度1.0 g/cm3,海底聲速1680 m/s,海底密度1.8 g/cm3,吸收系數(shù)0.6 dB/λ。聲速剖面分別選用等聲速梯度剖面、負聲速梯度剖面、含有溫躍層的淺海聲速剖面、深海Munk 聲速剖面等,水深分別選用50 m、500 m、5000 m,來模擬不同環(huán)境下的相干多途傳播信道。聲源使用2.1 節(jié)中合成的仿真信號。海洋環(huán)境噪聲使用不同信噪比高斯白噪聲模擬。
合成的仿真噪聲數(shù)據(jù)與真實工況下的噪聲并不完全一致,但可以使用仿真數(shù)據(jù)完成網(wǎng)絡訓練后,再利用真實數(shù)據(jù)對網(wǎng)絡進行微調來彌補二者之間的差別。
本文設計了4個實驗來測試本文提出的基頻檢測算法。
(1)分別采用本文提出的深度學習算法(數(shù)據(jù)驅動)和傳統(tǒng)的模型驅動方法對仿真噪聲信號進行基頻檢測,以測試數(shù)據(jù)驅動方法在抗噪性和適應性上的提升。
(2)本文在文獻[26]的基礎上,去掉了去噪步驟,增加了LSTM網(wǎng)絡。為此,本文設計了一組對比實驗來比較二者在準確性和實時性上的性能差異。
(3)為了測試LSTM 網(wǎng)絡在提取時序譜特征上的可行性,分別采用CNN 和CNN+LSTM 網(wǎng)絡開展時序基頻檢測。實驗中保持兩者卷積層部分的結構相同。
(4)分別采用本文提出的深度學習算法(數(shù)據(jù)驅動)和傳統(tǒng)的模型驅動方法對外場實測噪聲數(shù)據(jù)進行基頻檢測,以測試本文方法在實測數(shù)據(jù)上的檢測性能。
在仿真數(shù)據(jù)準備階段,總共生成了長度大約為12 h 的數(shù)據(jù),采樣頻率為10 kHz,數(shù)據(jù)的基頻范圍在5~10 Hz 之間,按0.2 Hz 的間隔劃分為25 個類別。估計的基頻值定義為預測類別的中點。例如:劃分到5~5.2 Hz 類別的基頻預測值為5.1 Hz。仿真的噪聲數(shù)據(jù)中槳葉數(shù)的取值為3~7 葉。此外,本文將80%的樣本作為訓練數(shù)據(jù)集,剩余20%的數(shù)據(jù)作為測試樣本集。評價指標包括:P,定義為誤差小于0.1 Hz 的預測值比例,計算公式為P=(N ?Ne)/N ×100%,其中Ne為預測誤差超過0.1 Hz 的數(shù)據(jù)個數(shù),N為總數(shù)據(jù)量;平均誤差,其中fig表示第i段數(shù)據(jù)的真實基頻值,fip表示第i段數(shù)據(jù)的預測基頻值。
傳統(tǒng)檢測方法存在對先驗知識的依賴,尤其DEMON 譜提取過程和倍頻統(tǒng)計步驟需要人工設定很多參數(shù)。本文方法簡化預處理過程,并利用神經(jīng)網(wǎng)絡建模的方式降低檢測算法對先驗知識的依賴。為了比較兩類方法的性能,本文選取文獻[12]和文獻[13]中提出的兩種基于DEMON 譜的基頻提取算法作為對比。這兩種方法計算基頻時,首先利用波束形成將陣列信號約減為一維信號,再進行計算。
表1 給出了兩種不同信噪比(Signal to noise ratio,SNR)背景噪聲強度下對仿真數(shù)據(jù)進行基頻檢測的結果,兩種模型驅動算法的檢測性能相當,而本文方法在誤差小于0.1 Hz 的預測值比例P上有較大提升,且平均誤差更小。相對于傳統(tǒng)方法從DEMON 譜提取人工特征然后計算基頻而言,基于深度網(wǎng)絡的方法提取DEMON 譜的高層特征再進行基頻估計,能夠降低噪聲的影響,從而改善檢測結果。而傳統(tǒng)方法提取的淺層特征對噪聲線譜的抗干擾能力相對較弱,因此對于SNR 較低、線譜質量較差的DEMON 譜,本文方法能夠取得較常規(guī)方法更好的檢測結果。但是,當DEMON譜質量較好,干擾線譜很少的時候,常規(guī)方法也能獲得比較理想的檢測結果。
表1 本文方法與傳統(tǒng)方法的對比結果Table 1 Comparison between classic methods and the proposed method
文獻[26]提出了一種基于CNN 網(wǎng)絡的基頻檢測方法。而本文優(yōu)化了網(wǎng)絡結構,去掉了DEMON譜去噪和多幀融合步驟,使得特征提取部分更加簡單。兩種方法的檢測結果對比如表2所示。
表2 與文獻[26]進行對比Table 2 Comparison with the method in Ref.[26]
從表2 可以看出,當信號輸入時長上由20 s 下降至6 s 時,本文的檢測算法幾乎達到同樣的準確率;而輸入時長增加至10 s時,誤差小于0.1 Hz的預測值比例P會略高于CNN網(wǎng)絡。因此,盡管簡化了預處理程序,但是LSTM 網(wǎng)絡卻能夠以較短的信號輸入時長獲得大致相同的P值;從不同時長的檢測結果能夠看出,本文的方法在時效性上有了較大的提升。對于本文提出的算法,對比時長為3 s 和6 s的實驗結果,可以發(fā)現(xiàn)時長較長的信號能夠提供更多穩(wěn)定的檢測結果。由于計算代價和信號長度成正比,這也提示我們可以通過調整輸入信號的時長來滿足不同任務對準確率和實時性的不同需求。
為了驗證LSTM 網(wǎng)絡從時序DEMON 譜中提取統(tǒng)計特征的能力,分別采用CNN和CNN+LSTM網(wǎng)絡進行基頻檢測。表3 列出了兩種網(wǎng)絡結構在不同的輸入信號長度上的實驗結果。CNN 的輸入為一幀語音信號計算的DEMON譜,添加LSTM層的網(wǎng)絡每輸入5 個時間幀輸出一個檢測結果,其中幀間重疊為50%。
表3 CNN 與CNN+LSTM 的實驗結果對比Table 3 Comparison between CNN and CNN + LSTM
當幀長為1 s時,CNN網(wǎng)絡的P值在53%左右,添加LSTM 結構后增加至74%;當幀長增加至2 s時,前者的P值上升至75%左右,而后者提高至84%左右。由實驗結果能夠看出,隨著幀長的增加,輸入網(wǎng)絡的特征信息將增多,基頻的檢測精度上升;而在相同的幀長情況下,添加LSTM 層后精度有較大的提升,表明LSTM 網(wǎng)絡能夠較大幅度提升基頻檢測的準確率。
分別利用湖試數(shù)據(jù)和海試數(shù)據(jù)對所提算法進行測試。其中,湖試數(shù)據(jù)于千島湖外場實驗中獲得,目標船只噸位為幾十噸級,接收距離約1 km,共采集216 段數(shù)據(jù);海試數(shù)據(jù)于三亞外場實驗中獲得,為百噸級漁船噪聲,接收距離約2 km,共采集162段數(shù)據(jù)。兩次實驗的接收陣均為24 陣元的水平線陣,陣元距離1.875 m,位于水下15 m,采樣頻率為20 kHz。數(shù)據(jù)共包含5 種不同轉速,基頻范圍為5~10 Hz。對使用湖試數(shù)據(jù)進行基頻估計前,先利用實測噪聲數(shù)據(jù)對神經(jīng)網(wǎng)絡的權值進行微調學習。為了擴充數(shù)據(jù)集,本文采用加噪、平移、縮放等方式對實測數(shù)據(jù)進行數(shù)據(jù)集擴充。使用20%的數(shù)據(jù)作為訓練集,其余80%數(shù)據(jù)作為測試集。
將無目標情況下采集到的背景噪聲放大后疊加到原始信號上,疊加后信號的信噪比大約為0 dB,用于驗證加噪情況下算法的性能。
表4 給出了兩組外場實驗數(shù)據(jù)的基頻檢測結果。其中原始數(shù)據(jù)中目標距離較近,信號的信噪比相對較高。因此,本文方法及常規(guī)基頻檢測方法均獲得了較好的檢測結果,但本文方法的平均誤差更小。對于加噪后的信號,本文方法較常規(guī)方法在精度上有較大的提升,并且平均誤差在可接受的范圍;常規(guī)方法的精度較低且常出現(xiàn)倍頻半頻錯誤的緣故導致平均誤差很大。
表4 本文方法與傳統(tǒng)方法在實測數(shù)據(jù)上的檢測性能對比Table 4 Comparison between classic methods and the proposed method on the field dataset
圖7 給出了一段實測噪聲的時域波形及其DEMON 譜,從DEMON 譜中能夠看到較多的干擾線譜。表5 給出了該段數(shù)據(jù)分別使用3 種方法得到的檢測結果??梢钥吹剑R?guī)方法由于受到干擾線譜的影響,估計出的基頻值誤差較大。
圖7 某段基頻為8.4 Hz 的漁船噪聲數(shù)據(jù)Fig.7 A segment of sea trial data with shaft frequency being 8.4 Hz
表5 圖7 的基頻檢測結果Table 5 Fundamental frequency detection results of the signal segment in Fig.7
本文提出了一種基于CNN 和LSTM 網(wǎng)絡的水下目標輻射噪聲基頻檢測方法。在網(wǎng)絡輸入上,與傳統(tǒng)方法利用波束形成融合多通道信息不同,本文提取每個通道的DEMON 譜并以二維矩陣的方式直接送入網(wǎng)絡中,充分利用各個通道的信息;在特征提取部分,去掉了先前工作中的去噪和多幀融合步驟,在簡化預處理步驟的同時提高算法的實時性,也擺脫了傳統(tǒng)模型驅動算法在預處理過程中對先驗知識的依賴。最后,將經(jīng)過CNN+LSTM 提取的特征輸入全連接層實現(xiàn)基頻估計。仿真實驗和實驗數(shù)據(jù)表明,本文方法能夠較好適應模擬的不同環(huán)境和不同信噪比的目標噪聲,具有良好泛化性能,可望實際推廣;在一定信噪比下,能夠從時序DEMON 譜特征中估計出較為準確的基頻值,可供進一步研究和應用參考。
需要注意的是,本文主要關注較高航速下目標噪聲的基頻檢測。當航行速度很低時,無法從DEMON 譜中提取到基頻的調制信息,所以本文算法不適用于低速狀態(tài)的航行器的基頻檢測。且限于實測數(shù)據(jù)規(guī)模的限制,本文使用仿真數(shù)據(jù)進行訓練。仿真數(shù)據(jù)并不能完好地模擬實測數(shù)據(jù),因此對實測數(shù)據(jù)的檢測結果可能有一定的影響。后續(xù)工作中隨著實測數(shù)據(jù)數(shù)量的增加,將盡可能利用實測數(shù)據(jù)對網(wǎng)絡進行訓練,進一步提高網(wǎng)絡的性能。