文 豪, 高 勇
(四川大學(xué)電子信息學(xué)院, 四川成都 610065)
隨著自動駕駛技術(shù)的不斷發(fā)展,自動駕駛安全問題日益突出。為了減少交通事故的發(fā)生,確保道路安全,可以使用雷達(dá)來檢測周圍環(huán)境并及時(shí)發(fā)現(xiàn)危險(xiǎn)。汽車工業(yè)中最常用的是調(diào)頻連續(xù)波(Frequency Modulated Continuous Wave,FMCW)雷達(dá)[1],此類雷達(dá)從接收信號中可以估計(jì)附近目標(biāo)(例如,車輛、行人或其他障礙物)的距離和速度。隨著越來越多的汽車使用雷達(dá),不同車輛的雷達(dá)之間產(chǎn)生相互干擾的可能性大大增加,導(dǎo)致檢測性能下降。事實(shí)上,射頻干擾(RFI)會大幅度提高本底噪聲,潛在目標(biāo)可能被噪聲隱藏,從而降低目標(biāo)檢測方法的靈敏度[2]。
經(jīng)典的抗干擾方法有很多[3-7],干擾抑制可在極化、時(shí)域、頻域、編碼域或空間域中處理,關(guān)于這些方法的詳細(xì)分析可在文獻(xiàn)[8]中找到。當(dāng)發(fā)射信號為線性調(diào)頻信號(Chirp信號)時(shí),目前最常見的消除干擾的方法是通過各種方法檢測出接收信號中受干擾影響的部分[9],并在時(shí)域內(nèi)將其替換為零,然后對邊界進(jìn)行可選的平滑處理,這通常被稱為歸零法。雖然這種方法相當(dāng)簡單,但它會去除部分有用的信號,當(dāng)干擾持續(xù)時(shí)間較長時(shí)會失效。文獻(xiàn)[10]提出了一種卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)來解決射頻干擾(Radio Frequency Interference,RFI)問題,旨在降低本底噪聲的同時(shí)保留檢測到的目標(biāo)信號分量。文獻(xiàn)[11]提出了一種帶門控循環(huán)單元(Gated Recurrent Unit, GRU)的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)模型,并將其應(yīng)用在時(shí)域上抑制干擾。與之前的信號處理方法相比,性能更好,處理時(shí)間更短。文獻(xiàn)[12]在文獻(xiàn)[11]的基礎(chǔ)上增加了新的注意力機(jī)制,該方法取得了比文獻(xiàn)[11]更好的結(jié)果,實(shí)驗(yàn)證明注意力機(jī)制可以提升模型性能。文獻(xiàn)[13]提出了兩個(gè)用于汽車?yán)走_(dá)干擾抑制新的全卷積網(wǎng)絡(luò)(Fully Convolutional Network,F(xiàn)CN)模型,它們能夠?qū)⑹芨蓴_影響的短時(shí)傅里葉變換(Short-Time Fourier Transform,STFT)頻譜圖轉(zhuǎn)換為相應(yīng)的干凈距離像。這些模型雖然對真實(shí)數(shù)據(jù)有泛化能力,但它們并不能估計(jì)目標(biāo)相位。在文獻(xiàn)[14]中Ristea等人擴(kuò)展了他們在文獻(xiàn)[13]中的工作,引入了一種旨在提高神經(jīng)網(wǎng)絡(luò)權(quán)值信噪比的訓(xùn)練機(jī)制WeNoRT(Weight Noise Reduction Training),它可以同時(shí)估計(jì)有多個(gè)干擾時(shí)汽車?yán)走_(dá)信號的目標(biāo)幅度和相位。語音分離方向的最新進(jìn)展[15-17]引起了本文作者對時(shí)域方法的興趣,與頻域、時(shí)頻域等方法相比,時(shí)域方法能更好地保留信號的幅度和相位信息。
本文使用的自注意雙路徑循環(huán)神經(jīng)網(wǎng)絡(luò)(DPRNN-SelfAttention)可以組織任意類型的RNN層對長序列輸入進(jìn)行建模。它將輸入信號分成較短的塊,并將兩個(gè)RNN(塊內(nèi)RNN和塊間RNN)分別用于局部和全局建模。在DPRNN-SelfAttention塊中,塊內(nèi)RNN首先獨(dú)立處理本地塊信息,然后塊間RNN聚合來自所有塊的信息以執(zhí)行整個(gè)序列的信息處理。該網(wǎng)絡(luò)以帶干擾的接收信號的實(shí)部、虛部作為輸入,輸出是抑制干擾后的實(shí)部、虛部,通過輸出的實(shí)部和虛部可以簡單計(jì)算出相位估計(jì)值。雖然以前的深度學(xué)習(xí)方法研究的是單個(gè)干擾的雷達(dá)干擾抑制[9-11],但本文目標(biāo)是解決存在多個(gè)干擾的抗干擾問題。為了實(shí)現(xiàn)這一目標(biāo),本文使用了文獻(xiàn)[14]提出的大規(guī)模數(shù)據(jù)集,該數(shù)據(jù)集模擬了多個(gè)干擾源存在的現(xiàn)實(shí)汽車場景,在訓(xùn)練過程中考慮了多達(dá)3個(gè)干擾。本文還介紹了一種新的損失函數(shù),相比于平均絕對誤差(Mean Absolute Error, MAE)或均方誤差(Mean Squared Error,MSE),能更好地提升模型性能。
在FMCW雷達(dá)[1]中,發(fā)射信號STX(t)是線性調(diào)頻脈沖(Chirp信號),如圖1(a)所示。發(fā)射信號STX(t)定義如下:
(1)
式中,t為時(shí)域變量,f0為初始時(shí)刻t=0的頻率,Tchirp為Chirp持續(xù)時(shí)間(掃頻時(shí)間),α為Chirp斜率(調(diào)頻斜率),α=BSW/Tchirp,其中BSW為掃頻帶寬。
接收天線接收目標(biāo)反射的信號SRX(t),對于單個(gè)目標(biāo),其定義如下:
(2)
接收信號進(jìn)一步與發(fā)射信號混頻后經(jīng)過低通濾波器后得到差頻信號(Beat Signal),如圖1(b)所示,其頻率fb=α·τ。差頻信號也可以表示為
(3)
圖1 FMCW信號時(shí)頻圖
如圖2所示,來自FMCW雷達(dá)的單個(gè)干擾類似于式(2)描述為
(4)
式中,AI為干擾幅度,Δτ為干擾源相對于FMCW雷達(dá)發(fā)射開始時(shí)間的傳播延遲時(shí)間,并且干擾源的調(diào)頻斜率αI=BI/TI,其中BI為干擾源的帶寬,TI為掃頻時(shí)間。
圖2 有干擾的FMCW差頻信號
在存在相互干擾的情況下,接收機(jī)接收到反射信號和干擾的混合信號,即
(5)
其中,根據(jù)文獻(xiàn)[3]中的推導(dǎo),干擾持續(xù)時(shí)間TINT=t2-t1。
在存在多個(gè)目標(biāo)和干擾源的情況下,接收機(jī)的接收信號定義如下:
(6)
式中,Nt為目標(biāo)數(shù),Nint為干擾源數(shù)目。非相干干擾信號SRFI(t)(其線性調(diào)頻速率與發(fā)射信號不同)與發(fā)射信號混合后的接收信號,其帶寬受到抗混疊濾波器的限制[3]。
本文目標(biāo)是使用深度學(xué)習(xí)方法抑制雷達(dá)干擾,并能估計(jì)目標(biāo)的幅度、相位。在文獻(xiàn)[17]的啟發(fā)下,本文在時(shí)域音頻分離網(wǎng)絡(luò)(Time-domain Audio Separation Network, TasNet)[16]的基礎(chǔ)上使用DPRNN改進(jìn)的DPRNN-SelfAttention代替一維CNN。圖3是本文模型的系統(tǒng)流程圖。在圖3中可以看到DPRNN-SelfAttention由3個(gè)階段組成:分割、塊處理和重疊相加。分割階段將輸入序列拆分成互相重疊的塊,并將所有塊拼接成一個(gè)三維張量。然后將張量傳遞給堆疊起來的DPRNN-SelfAttention塊,以交替方式迭代應(yīng)用局部(塊內(nèi))和全局(塊間)建模。最后一層的輸出通過重疊相加轉(zhuǎn)換回序列輸出。
2.1.1 分割
對于序列輸入W∈N×L,其中N代表特征維度,L是時(shí)間步長,分割階段將W拆分成大小為F的塊,塊每次移動大小為P。第一個(gè)和最后一個(gè)塊用零填充,使得W中的每個(gè)樣本都出現(xiàn)且只出現(xiàn)在F/P個(gè)塊中,產(chǎn)生E個(gè)相等大小的塊DE∈N×F(e= 1,…,E),接著將所有塊拼接得到一個(gè)三維張量Y=[D1,…,DE]∈N×H×E。
2.1.2 塊處理
分割輸出Y被傳遞到M個(gè)DPRNN-SelfAt-tention塊的堆棧中。每個(gè)塊將輸入的三維張量轉(zhuǎn)換成另一個(gè)具有相同形狀的張量。本文將每個(gè)塊Bm(m=1,…,M)的輸入張量表示為Ym∈N×F×E,其中Y1=Y。每個(gè)塊包含兩個(gè)子模塊分別對應(yīng)塊內(nèi)處理和塊間處理,塊內(nèi)RNN始終是雙向的,并且被應(yīng)用于Ym的第二維度,即在E個(gè)塊中的每個(gè)塊內(nèi):
圖3 DPRNN-SelfAttention系統(tǒng)流程圖
Um=fm(Ym[:,:,i]),i=1,…,E
(7)
式中,Um=H×F×E是RNN的輸出,fm(·)是RNN定義的映射函數(shù),Ym[:,:,i]∈N×F是由i定義的序列。
此外,由于干擾發(fā)生在整個(gè)序列中,因此模型需要捕捉每個(gè)塊的塊內(nèi)全部時(shí)間步長之間的關(guān)系。在文獻(xiàn)[12]的啟發(fā)下,本文在塊內(nèi)RNN層后添加了注意力塊。注意力塊的關(guān)鍵是縮放點(diǎn)積注意力(scaled dot-product attention):
(8)
式中,Q(Query)、K(Key)和V(Value)分別為查詢、鍵和值向量,dk為鍵向量的維數(shù)。通過使用注意力塊,模型可以更好地學(xué)習(xí)塊內(nèi)時(shí)間步長之間的關(guān)系。
然后應(yīng)用線性全連接(Fully-Connected,F(xiàn)C)層將Um的特征維度轉(zhuǎn)換回Ym的特征維度:
(9)
(10)
式中,z,r∈N×1是縮放因子,ε是保證數(shù)值穩(wěn)定性的一個(gè)小正數(shù),⊙表示Hadamard乘積,μ(·)和σ(·)是的均值和方差:
(11)
(12)
接著在LN輸出及輸入Ym之間添加一個(gè)殘差連接:
(13)
(14)
式中,Vm∈H×F×E是RNN的輸出,是由RNN定義的映射函數(shù),N×E是由所有E個(gè)塊的第i個(gè)時(shí)間步長定義的序列。由于塊內(nèi)RNN是雙向的,中的每個(gè)時(shí)間步長都包含其所屬塊的全部信息,這使得塊間RNN可以執(zhí)行全序列級別的建模。與分塊內(nèi)RNN一樣,Vm上也應(yīng)用了線性FC層和LN操作。DPRNN-SelfAttention塊Bm輸出和之間還添加了一個(gè)殘差連接,當(dāng)m 2.1.3 重疊相加 最后一個(gè)塊的輸出表示為YM+1∈N×F×E,最后把E個(gè)塊重疊相加后轉(zhuǎn)換回長序列,輸出為Q∈N×L。 本文使用了Log-Cosh損失和多尺度STFT損失 (multi-resolution STFT loss)的線性組合,以便適當(dāng)?shù)赜?xùn)練模型并獲得最優(yōu)結(jié)果。 Log-Cosh損失函數(shù)是一種比MSE更為平滑的損失函數(shù),利用雙曲余弦計(jì)算預(yù)測誤差: (15) 單個(gè)STFT損失定義為 (16) (17) (18) 其中‖·‖F(xiàn)和‖·‖1分別代表F范數(shù)以及L1范數(shù),STFT(·)表示STFT幅度,N表示元素個(gè)數(shù)。 多尺度STFT損失是不同分析參數(shù)(即FFT采樣點(diǎn)、窗長和幀移)的STFT損失的總和。設(shè)Z為STFT損失的數(shù)量,多尺度STFT輔助損失(Laux)表示為 (19) 在基于STFT的信號時(shí)頻表示中,存在時(shí)間分辨率和頻率分辨率之間的權(quán)衡; 例如,增加窗口大小可提供更高的頻率分辨率,同時(shí)降低時(shí)間分辨率。 通過將多個(gè)STFT損失與不同的分析參數(shù)結(jié)合起來,幫助神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)信號的時(shí)頻分布信息從而可以更好地去除信號中的干擾分量。此外,它還可以防止神經(jīng)網(wǎng)絡(luò)過擬合固定的STFT表示。 本文最終的損失函數(shù)被定義為多尺度STFT輔助損失和Log-Cosh損失的線性組合: (20) 式中,λ表示平衡兩個(gè)損失項(xiàng)的超參數(shù)。 汽車?yán)走_(dá)干擾抑制(Automotive Radar Interference Mitigation Version 2,ARIM-v2)數(shù)據(jù)集[14]是一個(gè)公開用于汽車?yán)走_(dá)抗干擾任務(wù)的大型數(shù)據(jù)庫,由144 000個(gè)無線電信號樣本組成,這些樣本模擬了存在一個(gè)或多個(gè)干擾源的復(fù)雜現(xiàn)實(shí)汽車場景。數(shù)據(jù)集被分為120 000個(gè)樣本的訓(xùn)練集和24 000個(gè)樣本的測試集。每個(gè)樣本由以下參數(shù)的隨機(jī)選擇值生成:信噪比(Signal to Noise Ratio,SNR)、信號干擾比 (Signal to Interference Ratio,SIR)、相對干擾斜率β=αI/α(干擾源線性調(diào)頻速率αI和信號線性調(diào)頻速率α的比值)、目標(biāo)數(shù)量、每個(gè)目標(biāo)的幅度、相位和距離,其參數(shù)設(shè)置如表1、表2所示。干擾源的數(shù)量和信噪比(SNR)值是使用最小值和最大值之間的固定步長來選擇的。表2中的其他參數(shù)是在最小值和最大值之間均勻分布的隨機(jī)變量。 表1 模擬真實(shí)汽車?yán)走_(dá)參數(shù)設(shè)置 DPRNN-SelfAttention可應(yīng)用于任何需要長序列建模的系統(tǒng),本文研究了其在時(shí)域音頻分離網(wǎng)絡(luò)(TasNet)[15]中的應(yīng)用,可在ARIM-v2數(shù)據(jù)集上完成雷達(dá)抗干擾任務(wù)。TasNet包含3個(gè)部分:1)線性一維卷積編碼器;2)分離器;3)線性一維轉(zhuǎn)置卷積解碼器。本文使用與文獻(xiàn)[16]相同的編碼器和解碼器設(shè)計(jì),濾波器的數(shù)量設(shè)置為64。在分離器中疊加使用6個(gè)DPRNN-SelfAttention塊,使用Bi-GRU[12]作為塊內(nèi)和塊間RNN,每個(gè)方向有128個(gè)隱藏單元。輸入信號是有干擾的帶噪差頻信號,其特征維度N為1,長度L為1 024,因此本文將DPRNN-SelfAttention的塊大小F設(shè)為64,標(biāo)簽信號是對應(yīng)的帶噪的差頻信號。 表2 ARIM-v2數(shù)據(jù)庫樣本參數(shù)設(shè)置 所有模型均在Intel Core i7 CPU和NVIDIA RTX 3080Ti GPU上訓(xùn)練,多尺度STFT損失由表3中描述的三種不同尺度STFT損失的總和計(jì)算,根據(jù)多次實(shí)驗(yàn)的結(jié)果將超參數(shù)λ設(shè)為0.000 01。模型使用RAdam優(yōu)化器來穩(wěn)定訓(xùn)練,激活函數(shù)為relu,學(xué)習(xí)率設(shè)為0.000 01。 表3 多尺度STFT損失不同尺度參數(shù)設(shè)置 表4中的結(jié)果顯示,本文方法輸出與標(biāo)簽相當(dāng)接近。ARIM-v2模擬了多個(gè)干擾存在的復(fù)雜場景,在該場景中,諸如歸零法之類的傳統(tǒng)方法似乎無法抑制多個(gè)干擾源造成的影響。就目標(biāo)相位MAE而言,本文方法是歸零法的近六分之一,本文模型對目標(biāo)幅度MAE的估計(jì)比歸零法要好近16倍。另外一個(gè)顯著的不同之處在于平均信噪比的提高,本文的網(wǎng)絡(luò)比歸零法要好4.42 dB。 表4 本文模型與歸零法、DPRNN模型在ARIM-v2測試集上的結(jié)果(符號↑表示值越大越好,符號↓表示值越小越好) 圖4(a)為無干擾的標(biāo)簽信號(藍(lán)色),圖4(b)為有干擾的輸入信號(綠色),圖4(c)為使用本文方法進(jìn)行干擾抑制后的輸出信號(紅色)。圖4(d)、(e)、(f)是它們分別經(jīng)過快速傅里葉變換(Fast Fourier Transform, FFT)后的距離幅度圖。圖4(c)中可以看出輸入信號經(jīng)過本文方法抑制干擾后,干擾都被成功分離出去,恢復(fù)成與標(biāo)簽信號相似的信號,其距離幅度圖如圖4(f)所示,與標(biāo)簽信號的距離幅度圖即圖4(d)非常相似,預(yù)測的目標(biāo)幅度和標(biāo)簽幅度值之間的差值很小。 (a) 標(biāo)簽信號(無干擾) (b) 輸入信號(有干擾) (c) 輸出信號(抑制干擾后) (d) 標(biāo)簽經(jīng)過FFT后的距離幅度圖 (e) 輸入經(jīng)過FFT后的距離幅度圖 (f) 輸出經(jīng)過FFT后的距離幅度圖圖4 干擾抑制前后的差頻信號及其距離幅度圖 圖5中將本文方法與歸零法在只有一個(gè)干擾時(shí)的干擾抑制結(jié)果進(jìn)行了對比,其中圖5(a)、(d)、(g)是有干擾的輸入信號(綠色)、標(biāo)簽信號(藍(lán)色);圖5(b)、(e)、(h)是它們分別經(jīng)過歸零法(粉紅色)抑制干擾后的輸出結(jié)果;圖5(c)、(f)、(i) 是它們分別使用本文方法(紅色)進(jìn)行干擾抑制后的結(jié)果。除了相對干擾斜率β不同,其他參數(shù)條件都相同。參數(shù)β量化了相對于標(biāo)簽信號的干擾時(shí)間長度,更準(zhǔn)確地說,β越接近1, 干擾持續(xù)時(shí)間越長,β=1時(shí)表示相干干擾。在圖5中,可以觀察到本文方法成功產(chǎn)生了與標(biāo)簽相似的預(yù)測信號,而歸零法隨β增加效果逐漸變差。 圖6中將本文方法與歸零法在有多個(gè)干擾時(shí)的干擾抑制結(jié)果進(jìn)行了對比,其中參數(shù)Nint代表干擾數(shù)目。在圖6中觀察到歸零法隨著干擾數(shù)目增加效果逐漸變差直至失效;而本文方法成功完成存在多個(gè)干擾時(shí)的干擾抑制任務(wù)。從圖5、圖6中可看出當(dāng)干擾持續(xù)時(shí)間較短時(shí),本文方法表現(xiàn)出與基線方法(歸零法)相似的性能,但在有多個(gè)干擾源或干擾持續(xù)時(shí)間長的困難情況時(shí),本文方法明顯優(yōu)于歸零法。 (a) SNR=20 dB,SIR=10 dB,β=0.5 (b) 歸零法,參數(shù)設(shè)置與(a)相同 (c) 本文方法,參數(shù)設(shè)置與(a)相同 (d) SNR=20 dB,SIR=10 dB,β=0.7 (e) 歸零法,參數(shù)設(shè)置與(d)相同 (f) 本文方法,參數(shù)設(shè)置與(d)相同 (g) SNR=20 dB,SIR=10 dB,β=0.9 (h) 歸零法,參數(shù)設(shè)置與(g)相同 (i) 本文方法,參數(shù)設(shè)置與(g)相同圖5 歸零法與本文方法的干擾抑制結(jié)果對比(一個(gè)干擾) (a) 干擾數(shù)Nint=2 (b) 歸零法,參數(shù)設(shè)置與(a)相同 (c) 本文方法,參數(shù)設(shè)置與(a)相同 (d) 干擾數(shù)Nint=3 (e) 歸零法,參數(shù)設(shè)置與(d)相同 (f) 本文方法,參數(shù)設(shè)置與(d)相同圖6 歸零法與本文方法的干擾抑制結(jié)果對比(多個(gè)干擾) (a) 干擾數(shù)Nint=1 (b) 干擾數(shù)Nint=1 (c) 干擾數(shù)Nint=1 (g) 干擾數(shù)Nint=3 (h) 干擾數(shù)Nint=3 (i) 干擾數(shù)Nint=3圖7 歸零法、DPRNN與本文方法的干擾抑制結(jié)果對比 本文將自注意雙路徑循環(huán)神經(jīng)網(wǎng)絡(luò)(DPRNN-SelfAttention)用于汽車?yán)走_(dá)干擾抑制,仿真實(shí)驗(yàn)表明了該方法的有效性。引入的損失函數(shù),即Log-Cosh損失和多尺度STFT損失的線性組合,能讓模型更有效地學(xué)習(xí)FMCW雷達(dá)差頻信號的時(shí)頻分布信息從而提升性能。本文在一系列綜合實(shí)驗(yàn)中將DPRNN-SelfAttention模型與基線方法(歸零法)[9]、DPRNN[16]進(jìn)行了對比,結(jié)果表明DPRNN-SelfAttention效果更為優(yōu)越。目前由于實(shí)驗(yàn)室條件限制并未開展實(shí)際的車輛實(shí)驗(yàn)驗(yàn)證,未來工作將檢驗(yàn)本文模型在真實(shí)汽車?yán)走_(dá)場景中的泛化能力。2.2 損失函數(shù)
3 實(shí)驗(yàn)設(shè)計(jì)與結(jié)果分析
3.1 數(shù)據(jù)集
3.2 模型配置
3.3 測量指標(biāo)
3.4 實(shí)驗(yàn)結(jié)果與分析
4 結(jié)束語