(火箭軍工程大學 導彈工程學院,西安 710025)
無人機產(chǎn)業(yè)的興起為社會提供了諸多便利,但是“黑飛”無人機亦帶來了一系列的安全隱患,進一步引起了國內(nèi)外對反無人機技術(shù)的極大關(guān)注。跳頻通信因具有較強的抗干擾、抗截獲和易組網(wǎng)等能力[1]被廣泛應(yīng)用于無人機的信息傳輸,而跳頻信號的檢測是實現(xiàn)對無人機信號估計與干擾反制的重要前提。
目前,針對跳頻信號的提取檢測方法眾多,可分為非盲檢測算法和盲檢測算法兩類。非盲檢測算法是指預(yù)先知道跳頻信號部分參數(shù),通過已知參數(shù)反映出跳頻信號的某些特征,從而實現(xiàn)對跳頻信號的檢測的一類算法。文獻[2]采用單跳自相關(guān)技術(shù)進行預(yù)檢測處理,在跳速預(yù)知時,算法具有優(yōu)越的抗噪性能。文獻[3]提出基于多跳自相關(guān)的跳頻信號檢測方法,在已知跳頻信號周期的前提下計算出跳頻信號的自相關(guān)函數(shù),通過判別自相關(guān)函數(shù)在不同時延情況下的值來實現(xiàn)跳頻信號的檢測。該算法計算量小,易于工程實現(xiàn)。文獻[4-6]提出基于輻射計的信道化檢測方法,跳頻信道數(shù)已知時利用檢測模型對各信道并行分析處理,根據(jù)各信道的檢測結(jié)果判斷跳頻信號的有無,檢測性能良好,但計算復(fù)雜。文獻[7-8]提出的對跳頻信號進行分層處理的檢測模型,使得利用信道化檢測時接收信道中的無效信道數(shù)量減少,降低了模型計算復(fù)雜度。文獻[9]將接收信號進行主成分分析,降低數(shù)據(jù)維數(shù),再進行數(shù)字信道化處理,通過短時能量對消實現(xiàn)跳頻信號檢測,降低了計算復(fù)雜度。以上方法均屬于非盲檢測,但實際戰(zhàn)場環(huán)境中難以獲取先驗信息,同時也無法實現(xiàn)跳頻信號的非盲檢測。
盲檢測類算法是指在不需跳頻信號任何參數(shù)為先驗信息的情況下對其進行檢測的一類算法。在盲檢測算法中,時頻分析可以清晰地反映跳頻信號的時頻特性,因而被廣泛應(yīng)用。文獻[1]利用短時傅里葉變換和 Wigner-Ville分布組合時頻變換獲取時頻矩陣,去除背景噪聲后進行二值化處理,利用連通域標記算法對同一信號像素點進行標記并提取信息,通過聚類算法實現(xiàn)信號的識別檢測。文獻[10]提出了一種基于局部自適應(yīng)閾值的跳頻信號檢測方法,可以有效地對時頻矩陣進行噪聲處理,但抗噪性能較差,無法實現(xiàn)低信噪比條件下的跳頻信號檢測。文獻[11-12]將時頻圖看作二維圖像,根據(jù)圖像邊緣提取檢測算子,有效去除噪聲,但計算復(fù)雜度高,難以實時處理。文獻[13]對跳頻信號進行稀疏重構(gòu),利用形態(tài)學濾波去除噪聲,算法抗噪性好但復(fù)雜度高,難以工程實現(xiàn)。文獻[14]提出了一種基于滑動相關(guān)與小波變換結(jié)合的跳頻信號檢測方法,可較好地克服信道衰落和傳播損耗的影響,適用于復(fù)雜電磁環(huán)境,但是檢測效果受限于小波基的選取。以上算法均面臨著計算復(fù)雜度高或者抗噪性差的問題,難以應(yīng)用于復(fù)雜的戰(zhàn)場環(huán)境。
針對低信噪比環(huán)境下跳頻信號快速檢測的需求,本文根據(jù)時頻矩陣中隨機噪聲幅值在一定信噪比條件下通常弱于跳頻信號且噪聲點區(qū)域數(shù)據(jù)總是大于信號區(qū)域數(shù)據(jù)點數(shù)[1,12,15]的特點,提出了一種基于時頻矩陣每一頻率分量最大值進行K-means聚類的閾值方法,極大地減少了閾值選取以及數(shù)據(jù)截斷的計算復(fù)雜度,并且實現(xiàn)了低信噪比條件下的跳頻信號檢測。
跳頻信號的數(shù)學表達式為
(1)
式中:k≥1,k為整數(shù);Th為跳頻周期;A為信號幅度;θ為初始相位;fk為第k個時隙的跳頻頻率;rectTh表示矩形窗,且滿足
(2)
由于跳頻頻帶較寬,故接收機接收的信號中往往摻雜著高斯白噪聲,因此實際環(huán)境中跳頻信號的接收模型表達式為
x(t)=s(t)+n(t)=
(3)
式中:n(t)是加性高斯白噪聲。
目前時頻變換方法主要有短時傅里葉變換[16](Short Time Fourier Transform,STFT)、Wigner-Ville分布[17](Wigner-Ville Distribution,WVD)、偽Wigner-Ville分布[18](Peudo Wigner-Ville Distribution,PWVD)和平滑偽Wigner-Ville分布[19](Smooth PWVD,SPWVD) 。STFT 計算復(fù)雜度低,且無交叉項影響;WVD 交叉項嚴重;PWVD 和 SPWVD 通過增加窗函數(shù),對交叉項有一定的抑制作用,但計算復(fù)雜,難以工程實現(xiàn)。基于工程實際的需求,本文選取STFT作為時頻分析工具。
(4)
式中:ω(t,τ)表示窗函數(shù),τ表示時延量。STFT(t,f)表示信號x(t)時間和頻率的二維分布。
信號經(jīng)過短時傅里葉變換,假設(shè)產(chǎn)生一個M×N維矩陣以及對應(yīng)的時頻圖,如圖1所示。
(a)時頻矩陣部分示意圖
在時頻矩陣和二維時頻圖中,橫向表示時間,縱向表示歸一化頻率。時頻矩陣的每一行元素表示信號在時間窗內(nèi)經(jīng)過傅里葉變換產(chǎn)生的對應(yīng)頻率分量的幅值。圖1(a)中紅色、黃色分別表示信號以及信號的能量泄露,綠色部分表示噪聲。由圖1(a)可以看出,在一定信噪比條件下,時頻矩陣中噪聲的數(shù)量遠遠大于信號,分布廣泛且幅值較小?;诖耍疚耐ㄟ^K-means算法實現(xiàn)對噪聲與信號的聚類區(qū)分,并設(shè)置閾值濾除噪聲及信號泄露分量,進而基于駐留時間實現(xiàn)對跳頻信號的檢測。
聚類分割是把給定的樣本集合按照某種準則分割成若干個不相交的子集,每個子集中的樣本之間相似性較大,不同子集樣本之間的相似性較小。K-means聚類由于其實現(xiàn)簡單、聚類效果較好而被廣泛應(yīng)用。
K-means聚類算法采用距離作為相似性的評價指標,即認為兩個對象的距離越近相似度越大,距離越遠相似度越小。對于給定的樣本集,按照樣本之間的距離大小,將樣本集劃分為k個集合。讓集合內(nèi)的點盡量緊密地連在一起,而讓集合間的距離盡量地大,集合內(nèi)的相似性越大,集合間的差別越大,則聚類效果越好。
假設(shè)將樣本集劃分為k個集合(C1,C2,C3,…Ck),則K-means的誤差平方和準則函數(shù)表達式為
(5)
式中:ui是集合Ci的均值向量,有時也稱為質(zhì)心,其表達式為
(6)
式中:Ni是第i集合Ci的樣本數(shù)目。在K-means聚類過程中,E度量了所有樣本子集的總誤差平方和。對于樣本集的不同分類,導致不同Ci中的不同的樣本子集以及對應(yīng)的均值ui,從而會得到不同的E值,而當E最小時聚類效果最佳。
假設(shè)時頻矩陣閾值為T,將矩陣中大于閾值的元素保留,小于閾值的置0,則有
(7)
式中:i和j分別表示時頻矩陣的第i行和第j列,且1≤i≤M,1≤j≤N。
由時頻矩陣可以看出,跳頻信號具有時頻聚集性,并且幅值遠遠高于噪聲。因此,可以認為當時頻矩陣中縱軸的歸一化頻率有信號時,其最大值為信號幅值;而沒有信號時,因為均為噪聲,則所有元素均遠小于信號幅值?;诖?,選取時頻矩陣中每一行的最大值,組成一個新的向量數(shù)組作為K-means聚類的向量集,極大地減少了聚類所產(chǎn)生的迭代次數(shù)。
Kmeans={STFT(1,max),STFT(2,max),…,STFT(M,max)}。
(8)
式中:Kmeans表示用于K-means聚類的含有M個元素的向量集,STFT(i,max)表示時頻矩陣中第i行的最大值。
對向量集樣本進行聚類,步驟如下:
Step1 把Kmeans中的M個樣本數(shù)據(jù)分成k個聚類的初始劃分,計算每個聚類的均值u1,u2,…uk和E。在本文中需要實現(xiàn)信號的檢測,故取k=2,即將樣本STFT(i,max)聚為噪聲和信號兩類。
Step2 從數(shù)據(jù)集中隨機選擇k個數(shù)據(jù)點作為質(zhì)心。
Step3 對數(shù)據(jù)集中每一個點,計算其與每一個質(zhì)心的距離,并劃分到距離最近的質(zhì)心所屬集合。
Step4 把所有數(shù)據(jù)歸為k個集合,重新計算每個集合的質(zhì)心以及ui的值,并修改E。
Step5 若連續(xù)迭代多次E不變則停止,否則轉(zhuǎn)到Step 3。
樣本STFT(i,max)聚類前后如圖2所示。
(a)樣本數(shù)據(jù)聚類前
由圖2(a)可以看出,樣本數(shù)據(jù)在聚類前就有明顯的分類跡象,下方密集數(shù)據(jù)表示的是噪聲,上方零星分布的是跳頻信號,通過聚類進行準確判別,可以認為圖2(b)中的藍色部分為噪聲部分,紅色為跳頻信號。將聚類后的兩類數(shù)據(jù)分別存放于矩陣Noise和矩陣Sig中,因為將Noise矩陣中的所有元素默認為噪聲,并且所有元素均為每一行的最大值,故取Noise矩陣中最大值Noise(max)作為閾值,時頻矩陣中所有小于等于Noise(max)的值均判別為噪聲,并置0,則式(7)可重新表示為
(9)
由于STFT(i,max)表示每一行中的最大值,當最大值小于閾值時,其所在行的每一個元素均小于閾值,表示該行沒有跳頻信號,全部置0;當最大值大于閾值時,對該行的每一個元素同閾值進行比較,小于閾值的依然判定為噪聲并置0,大于閾值的元素保留,則式(9)可以進一步改寫為
(10)
通過時頻矩陣以及二維時頻圖可以發(fā)現(xiàn),跳頻信號對應(yīng)的頻率分量在縱軸頻率域占比很小。因此,基于式(10)可以對時頻矩陣中所有元素快速地判別截斷,再次大幅度減少了計算量,提高了檢測效率。
截斷處理會使跳頻信號的部分邊緣丟失,但是由圖1(b)不難發(fā)現(xiàn),在一定的信噪比條件下,跳頻信號依然保留絕大部分的有用信息,即存在一定的駐留時間,在時頻矩陣中就表現(xiàn)為時間維度上一段幅值不為0的連續(xù)序列,因此可以根據(jù)時域上的連續(xù)性來區(qū)別信號和噪聲。當非0序列有一定長度并且在頻域上依次變化時,則認為接收的信號中可能包含有跳頻信號,從而實現(xiàn)對跳頻信號的檢測。
通過上述的理論分析,初步認為本文所提算法在低信噪比條件下實現(xiàn)跳頻信號的快速檢測是可行的。算法流程如下:
Step1 采集一段足夠長時間的數(shù)據(jù),計算短時傅里葉變換,得到時頻矩陣。
Step2 取時頻矩陣每一行的最大值組成樣本集Kmeans。
Step3 通過K-means聚類算法將樣本集中的元素劃分為噪聲和信號兩類,并將各自樣本數(shù)據(jù)分別存放在矩陣Noise和Sig中。
Step4 選取矩陣Noise中元素最大值作為閾值。
Step5 根據(jù)式(10),對時頻矩陣進行截斷處理,濾除噪聲,得到新的時頻矩陣。
Step6 根據(jù)跳頻信號在駐留時間內(nèi)的連續(xù)性,對新的時頻矩陣進行檢測。若非0序列均有一定的長度且在頻率上依次出現(xiàn),則認為存在跳頻信號。
跳頻信號檢測算法流程如圖3所示。
圖3 跳頻信號檢測算法流程圖
根據(jù)式(2)產(chǎn)生一段跳頻信號,包含8個跳頻周期,跳頻頻率集為{2.5,10,12.5,7.5,17.5,15,20,5}kHz,跳頻周期為5 ms。短時傅里葉變換采用長度為512的Hamming窗,采樣頻率設(shè)為10 MHz,對比分析本文算法和文獻[1]、文獻[10]算法在不同信噪比的檢測性能,信噪比范圍設(shè)置為-20~5 dB,間隔1 dB,并且進行100次蒙特卡洛仿真,繪制檢測概率曲線,如圖4所示。
圖4 不同信噪比條件下三種算法的檢測概率
由圖4可知,三種算法的檢測概率均隨著信噪比的增加而增大,文獻[1]、文獻[10]以及本文算法實現(xiàn)90%以上檢測概率的信噪比分別為0 dB、0 dB、-8 dB,本文算法可以實現(xiàn)低信噪比環(huán)境下的高檢測概率。
在信噪比為-12 dB時,本文算法的檢測概率已達到60%;針對信噪比小于-12 dB時本文算法檢測概率偏低的問題進行多次驗證分析,發(fā)現(xiàn)當信噪比低于-12 dB時,時頻矩陣中噪聲與信號的幅值差值較小,在利用K-means聚類時將部分信號判定為噪聲,進而被截斷處理,使得時頻圖上跳頻信號部分缺失,影響了檢測概率;當信噪比低于-16 dB時,信號已經(jīng)完全被噪聲淹沒,本文算法將不再適用。
取信噪比5 dB,其他仿真條件與3.1節(jié)相同,對本文算法和文獻[1]、文獻[10]算法在時頻分析、閾值選取以及截斷處理過程中需要處理的數(shù)據(jù)數(shù)目進行分析,并且進行100次蒙特卡洛仿真,對比結(jié)果如表1所示。
表1 三種算法的計算復(fù)雜度對比
通過表1對比發(fā)現(xiàn),文獻[10]算法基于對閾值選取方法的改進,提高了檢測概率卻沒有降低計算量;文獻[1]算法進行了STFT以及WVD兩種時頻變換,并且利用哈達瑪積運算對時頻矩陣進行組合,進一步提高了較低信噪比條件下的檢測概率卻額外增加了計算量;本文算法在閾值選取以及截斷處理過程中都基于第二節(jié)中的最大值進行處理,使計算量降低,運行時間比文獻[1]、文獻[10]算法降低了37.51%和12.34%,極大地提高了算法的檢測效率。
取信噪比-8 dB,其他仿真條件與3.1節(jié)相同,對本文算法的有效性進行仿真驗證。由于時頻變換具有能量聚集性,使得信號的能量總是沿著瞬時頻率集中分布,即信號的能量集中分布在瞬時頻率周圍[20-22],因此原始信號經(jīng)短時傅里葉變換后的時頻圖如圖5所示。
(a)二維時頻圖
由圖5可以看出,經(jīng)過短時傅里葉變換后,在信噪比較低的條件下,信號基本上被噪聲所淹沒,很難進行準確的判別檢測,圖5(a)中紅色標記是淹沒在噪聲中的部分信號。
將仿真條件代入本文第2節(jié),通過K-means聚類后選取自適應(yīng)閾值,對時頻矩陣進行截斷處理,處理結(jié)果如圖6所示。由圖6可以看出,本文算法具有很好的去噪作用,在較低信噪比條件下依然可以去除噪聲,實現(xiàn)跳頻信號的檢測。
(a)二維時頻圖
針對低信噪比環(huán)境下跳頻信號的快速檢測問題,本文提出了一種新的閾值選取算法。該算法通過提取時頻矩陣每一頻率分量最大值進行K-means聚類確定閾值和截斷處理,完成噪聲的去除,再依據(jù)跳頻信號在駐留時間上的連續(xù)性與頻域上的跳變性實現(xiàn)對跳頻信號的檢測。仿真結(jié)果表明,本文算法計算量遠低于同類算法,并且可以實現(xiàn)-8 dB環(huán)境下90%以上的檢測概率,為瞬變環(huán)境下的無人機跳頻信號的快速高效檢測提供了一種有效手段,具有一定的工程應(yīng)用價值。下一步的研究重點是搭建硬件平臺采集實測數(shù)據(jù),并結(jié)合所提算法進行分析驗證。