黃祥,徐靜,都晨,郭昭藝,吳濤
(江蘇方天電力技術(shù)有限公司,江蘇 南京 211102)
近年來(lái),低空空域的開(kāi)放使得無(wú)人機(jī)市場(chǎng)規(guī)模迅速擴(kuò)大,因而民用和商用無(wú)人機(jī)在諸多領(lǐng)域備受青睞,如無(wú)人機(jī)送快遞、無(wú)人機(jī)巡線等。無(wú)人機(jī)的廣泛應(yīng)用為日常生活帶來(lái)便利,但同時(shí)也因其低慢小的特點(diǎn)為低空空域安全帶來(lái)隱患[1]。在電力領(lǐng)域,大中型變電站、重要輸電線路等電力基礎(chǔ)設(shè)施均面臨無(wú)人機(jī)造成的低空安全風(fēng)險(xiǎn)問(wèn)題。因此急需研究適用于電網(wǎng)應(yīng)用場(chǎng)合需求的低空安防系統(tǒng)。針對(duì)無(wú)人機(jī)安防系統(tǒng)的重要功能是對(duì)無(wú)人機(jī)的有效識(shí)別,由于無(wú)人機(jī)需要通過(guò)遙控方式進(jìn)行破壞行動(dòng),因此可通過(guò)對(duì)無(wú)人機(jī)操控信號(hào)開(kāi)展偵察識(shí)別研究。
小型商用和民用無(wú)人機(jī)通常使用直接序列擴(kuò)頻(direct sequence spread spectrum,DSSS)信號(hào)進(jìn)行操控,而DSSS信號(hào)的功率譜密度較低,如何實(shí)現(xiàn)低信噪比條件下DSSS信號(hào)的高效識(shí)別成為無(wú)人機(jī)偵察領(lǐng)域亟待解決的重難點(diǎn)問(wèn)題。
目前,通信信號(hào)調(diào)制樣式識(shí)別的主流方法有基于判決理論的識(shí)別和基于特征的識(shí)別[2]?;谂袥Q理論的識(shí)別方法又稱為似然比檢驗(yàn)(likelihood ratio test,LRT)方法,文獻(xiàn)[3]利用統(tǒng)計(jì)特征進(jìn)行信號(hào)識(shí)別,但其識(shí)別率較低且對(duì)低信噪比環(huán)境適應(yīng)性較差[4]?;谔卣鞯淖R(shí)別方法一般包含特征提取與分類識(shí)別2部分,其中特征提取部分通過(guò)各類變換方法獲取信號(hào)的多級(jí)特征,靈活性較高;分類識(shí)別部分多采用分類算法完成識(shí)別;此外,深度學(xué)習(xí)等算法也可通過(guò)數(shù)據(jù)學(xué)習(xí)同時(shí)完成特征提取與分類識(shí)別。目前,針對(duì)DSSS信號(hào)的識(shí)別研究已有部分成果,文獻(xiàn)[5]提取循環(huán)平穩(wěn)特征完成MPSK-DS信號(hào)識(shí)別;文獻(xiàn)[6]提取信號(hào)四階累積量特征完成DSSS信號(hào)識(shí)別;文獻(xiàn)[7]利用Wigner-Ville時(shí)頻分析方法提取無(wú)人機(jī)測(cè)控信號(hào)時(shí)頻域特征,并使用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類識(shí)別;文獻(xiàn)[8]從功率-頻率圖中提取幅度相位信息,利用五層卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)對(duì)802.x標(biāo)準(zhǔn)下的WIFI,Bluetooth,ZigBee及其混合信號(hào)進(jìn)行分類識(shí)別;文獻(xiàn)[9-10]采集了大疆精靈4型無(wú)人機(jī)實(shí)測(cè)信號(hào),并提取其時(shí)域和頻域特征,利用人工神經(jīng)網(wǎng)絡(luò)進(jìn)行識(shí)別。
上述文獻(xiàn)雖用到了特征提取與神經(jīng)網(wǎng)絡(luò)的方法,但均未考慮CNN對(duì)圖像結(jié)構(gòu)特征卓越的識(shí)別能力。針對(duì)上述情況,本文提出一種基于CNN的DSSS信號(hào)識(shí)別算法。首先,該方法通過(guò)短時(shí)傅里葉變換(short-time Fourier transform,STFT)將一維時(shí)域信號(hào)轉(zhuǎn)換為二維時(shí)頻域圖像;其次,提出了能量閾值降噪方法進(jìn)行時(shí)頻圖降噪,并采用臨近差值法進(jìn)行圖像降維以降低運(yùn)算量;最后,設(shè)計(jì)了CNN用于分類識(shí)別,仿真驗(yàn)證了方法的有效性。
DSSS信號(hào)是一種大帶寬、低功率譜密度的非平穩(wěn)信號(hào),一般采用BPSK作為脈內(nèi)相位調(diào)制方式。在高斯白噪聲背景下,信號(hào)模型為
s(t)=x(t)+n(t),
(1)
式中:n(t)為噪聲,x(t)和s(t)分別為發(fā)送端信號(hào)和接收端信號(hào)。
一維時(shí)域信號(hào)穩(wěn)定性較差,時(shí)頻變換能夠形成更為穩(wěn)定的特征。STFT為經(jīng)典時(shí)頻變換方法,給定一個(gè)時(shí)間寬度很短的窗函數(shù)w(t),則信號(hào)s(t)的STFT定義為
(2)
STFT是時(shí)間和頻率的二維函數(shù),一維時(shí)域信號(hào)經(jīng)短時(shí)傅里葉變換后可形成二維時(shí)頻圖,其具有良好的結(jié)構(gòu)特征,可供CNN學(xué)習(xí)。
噪聲對(duì)信號(hào)結(jié)構(gòu)造成不同程度的干擾,圖1所示為-5 dB條件下DSSS信號(hào)時(shí)頻圖。噪聲成分影響最終識(shí)別效果,為改善時(shí)頻圖質(zhì)量,降噪處理十分必要。
圖1 -5 dB時(shí)的DSSS信號(hào)時(shí)頻圖Fig.1 Time-frequency distribution of DSSS signals at -5 dB
文獻(xiàn)[11]采用隨機(jī)投影(random projection,RP)和主成分分析法(principal component analysis,PCA)進(jìn)行降噪,該算法提取時(shí)頻圖中信號(hào)主要能量,但去除噪聲分量的同時(shí)也破壞了時(shí)頻圖的結(jié)構(gòu)特征,不利于CNN學(xué)習(xí);文獻(xiàn)[12]利用6次零均值歸一化算法進(jìn)行降噪,但未考慮到能量因素,降噪過(guò)程中易將很多高能量的信號(hào)點(diǎn)當(dāng)作噪聲濾除。
因此提出能量閾值降噪法,旨在保留信號(hào)時(shí)頻結(jié)構(gòu)特征與主要能量。假設(shè)經(jīng)STFT所得時(shí)頻圖為,則能量閾值降噪法定義如下:
(3)
式中:|Ii,j|表示時(shí)頻圖中每個(gè)像素點(diǎn)的能量值;η為閾值門限系數(shù)。目前客觀圖像質(zhì)量評(píng)價(jià)指標(biāo)主要有峰值信噪比(peak signal to noise ratio,PSNR)、結(jié)構(gòu)相似度(structural sIMilarity,SSIM)及特征相似度(feature SIMilarity,FSIM)[12],主要考慮圖像結(jié)構(gòu)特征,故選擇SSIM作為評(píng)價(jià)指標(biāo)。該指標(biāo)由3種對(duì)比模塊組成,分別為亮度、對(duì)比度和結(jié)構(gòu)。x,y是2張圖像,SSIM指標(biāo)的定義如下
SSIM(x,y)=[l(x,y)]α·[c(x,y)]β·
[s(x,y)]γ,
(4)
式中:α,β,γ>0,用來(lái)調(diào)整3個(gè)模塊之間的重要性,通常取1;l(x,y),c(x,y),s(x,y)與x,y的均值、標(biāo)準(zhǔn)差和互協(xié)方差有關(guān)。
(5)
(6)
(7)
式中:μx,μy,σx,σy和σxy分別為圖像x,y的均值、標(biāo)準(zhǔn)差和互協(xié)方差,為簡(jiǎn)化公式,通常設(shè)α=β=γ=1,C3=C2/2,式(4)簡(jiǎn)化為
(8)
SSIM的取值范圍在0~1,SSIM值越接近1表示降噪效果越好,和原圖像具有越好的結(jié)構(gòu)相似度。為了找到合適的閾值門限η值,設(shè)計(jì)如下對(duì)比實(shí)驗(yàn)。在信噪比為-10 dB和10 dB時(shí),設(shè)置門限分別為1/5,1/4,1/3,2/5和1/2計(jì)算SSIM值,實(shí)驗(yàn)結(jié)果如表1所示。
表1 不同門限下SSIM值比較Table 1 Comparison of SSIM values under different thresholds
從表中可以看出,門限選擇1/3時(shí),SSIM值較高,降噪后的圖與高信噪比下的圖具有更高的結(jié)構(gòu)相似度,故門限選擇為1/3。
為提高識(shí)別效率,對(duì)降噪處理后的時(shí)頻圖進(jìn)行降維處理。使用等間隔采樣法對(duì)高維時(shí)頻圖進(jìn)行降維,降維前的時(shí)頻數(shù)據(jù)大小為512×512,降維后的時(shí)頻圖數(shù)據(jù)大小為64×64,如圖2所示。橫坐標(biāo)為時(shí)間索引,縱坐標(biāo)為頻率索引[13]。
圖2 降維后時(shí)頻圖Fig.2 Time-frequency diagram after dimensionality reduction
此外,時(shí)頻圖中的數(shù)值存在較大差異性,針對(duì)量綱不一致問(wèn)題可以采用標(biāo)準(zhǔn)化區(qū)間縮放法將不用規(guī)格的數(shù)據(jù)轉(zhuǎn)換到同一規(guī)格。本文采用區(qū)間縮放法,為便于計(jì)算,將時(shí)頻圖矩陣變?yōu)橄蛄炕硎?,記作?(α1,α2,…,αi,…,αm),對(duì)每一個(gè)列向量αi做區(qū)間縮放,如式(9):
(9)
式中:max(·)與min(·)分別為取向量的最大值和最小值。
卷積神經(jīng)網(wǎng)絡(luò)主要由輸入層、卷積層、池化層、全連接層和輸出層構(gòu)成。經(jīng)信號(hào)預(yù)處理后的時(shí)頻圖記為X,n張時(shí)頻圖同時(shí)輸入網(wǎng)絡(luò),wij表示時(shí)頻圖X與神經(jīng)元連接的權(quán)重值,bj表示神經(jīng)元內(nèi)部狀態(tài)的偏置值,yj為神經(jīng)元的輸出。則輸入和輸出之間的關(guān)系為
(10)
式中:*表示卷積;pool(·)為池化層函數(shù),常用池化方法有最大池化和均值池化;σ(·)為激活函數(shù),用于解決梯度消失和梯度爆炸問(wèn)題,常用激活函數(shù)包括整流線性激活函數(shù)(rectified linear unit,ReLU),sigmoid函數(shù)和tanh(x)函數(shù)等。
選用ReLU和最大池化函數(shù)進(jìn)行處理,經(jīng)過(guò)多個(gè)卷積層和池化層提取特征后,全連接層用于整合卷積層或者池化層中具有類別區(qū)分的局部信息[14]。最后一層全連接層的輸出值被傳遞給輸出層,采用softmax層進(jìn)行分類,最終輸出各類概率表示為
(11)
式中:Sj為每類輸出的概率,最大概率類判定為最終識(shí)別結(jié)果。
CNN的訓(xùn)練終止條件有2種,即迭代次數(shù)達(dá)到預(yù)設(shè)值或者損失函數(shù)值不再減小,此時(shí)認(rèn)為模型收斂,并根據(jù)結(jié)果給出識(shí)別率。
綜上所述,給出圖3所示本文算法流程圖。訓(xùn)練信號(hào)和待識(shí)別信號(hào)首先進(jìn)行相同預(yù)處理,即短時(shí)傅里葉變換、能量閾值降噪、圖像降維及歸一化處理,并輸出訓(xùn)練集和測(cè)試集;隨后將訓(xùn)練集送入CNN進(jìn)行網(wǎng)絡(luò)訓(xùn)練與優(yōu)化,當(dāng)?shù)螖?shù)或者損失函數(shù)值不再降低時(shí),則CNN訓(xùn)練完畢;測(cè)試集輸入網(wǎng)絡(luò)后輸出分類識(shí)別結(jié)果。
圖3 算法流程圖Fig.3 Algorithm flowchart
為驗(yàn)證本文識(shí)別算法的有效性,利用2種不同擴(kuò)頻方式下BPSK調(diào)制的DSSS信號(hào)進(jìn)行仿真實(shí)驗(yàn):①通過(guò)改變擴(kuò)頻碼長(zhǎng)度即擴(kuò)頻因子來(lái)實(shí)現(xiàn)擴(kuò)頻;②為固定擴(kuò)頻碼長(zhǎng)度,通過(guò)改變符號(hào)率來(lái)改變等效帶寬實(shí)現(xiàn)擴(kuò)頻。2種方式下擴(kuò)頻碼均采用m序列,具體參數(shù)設(shè)置如下:
(1) 第1種擴(kuò)頻方式采用長(zhǎng)度為15,31和63的m序列,本原多項(xiàng)式分別如式(12),(13)和(14)所示:
y=x4+x1+1,
(12)
y=x5+x2+1,
(13)
y=x6+x4+x3+x1+1.
(14)
信息碼長(zhǎng)度為10,采用隨機(jī)生成方式;擴(kuò)頻碼元速率為20 Mbit/s,由此生成的3種直接序列擴(kuò)頻信號(hào)記為DS1,DS2和DS3。
(2) 第2種擴(kuò)頻方式下固定擴(kuò)頻碼選擇長(zhǎng)度為63的m序列,本原多項(xiàng)式為式(14)?,F(xiàn)代無(wú)人機(jī)除通信任務(wù)外,還有對(duì)720 P,1 080 P和4 K高清視頻傳輸需求,為適應(yīng)無(wú)人機(jī)不同信息傳輸需求[15],設(shè)置不同碼元速率,即10 MHz/s,30 MHz/s,60 MHz/s;信息碼長(zhǎng)度均為10且隨機(jī)生成。由此產(chǎn)生的直接序列擴(kuò)頻信號(hào)記為DS4,DS5和DS6。
以上6種信號(hào)每種產(chǎn)生1 000個(gè)樣本;信號(hào)中混入加性高斯白噪聲,信噪比范圍為-10 dB~2 dB(步進(jìn)2 dB)。STFT采用長(zhǎng)度為N/4的Hamming窗,為信號(hào)長(zhǎng)度。信號(hào)的產(chǎn)生和預(yù)處理采用R2015b版的Matlab,CNN利用TensorFlow搭建,計(jì)算機(jī)配置為CPU i5-4200U,GPU為NVIDIA GTX 1080Ti,內(nèi)存為4.00 GB。
在機(jī)器學(xué)習(xí)任務(wù)中,F(xiàn)1值(F1-score)是評(píng)價(jià)系統(tǒng)性能的常用指標(biāo),其為查準(zhǔn)率(precision)和查全率(recall)的調(diào)和平均數(shù),其定義為
(15)
式中:P為機(jī)器學(xué)習(xí)中的查準(zhǔn)率,表示為:真正例/(真正例+假正例);R為機(jī)器學(xué)習(xí)中的查準(zhǔn)率,表示為:真正例/(真正例+真反例);F1值多用來(lái)評(píng)價(jià)二分類任務(wù)性能。對(duì)于多任務(wù),利用宏平均(marco-averaging)作為模型評(píng)價(jià)指標(biāo),即
(16)
(17)
(18)
式中:n為類別總數(shù),式(16),(17)分別用于計(jì)算查準(zhǔn)率平均值和召回率平均值。式(18)用于計(jì)算宏平均值,此指標(biāo)相對(duì)于傳統(tǒng)評(píng)估準(zhǔn)確率(accuracy)更具準(zhǔn)確性,能夠給出綜合評(píng)估值。
平均時(shí)間作為算法復(fù)雜度的衡量指標(biāo),用于計(jì)算特征提取和訓(xùn)練識(shí)別的時(shí)間總和,其表示為
Ttotal=Tfeature+Ttrain.
(19)
CNN性能受超參數(shù)影響,網(wǎng)絡(luò)層數(shù)是關(guān)鍵超參數(shù)之一,為確定合適的網(wǎng)絡(luò)層數(shù),設(shè)置2層、3層和4層網(wǎng)絡(luò)分別進(jìn)行實(shí)驗(yàn)。本實(shí)驗(yàn)采用高信噪比信號(hào)用于網(wǎng)絡(luò)訓(xùn)練,低信噪比信號(hào)測(cè)試[16]。其目的在于低信噪比數(shù)據(jù)集信號(hào)結(jié)構(gòu)受噪聲影響,利用高信噪比信號(hào)完成網(wǎng)絡(luò)訓(xùn)練,可驗(yàn)證本文所提能量閾值降噪法的降噪有效性;此外,該方式能夠有效降低系統(tǒng)對(duì)訓(xùn)練數(shù)據(jù)集的標(biāo)注需求。
CNN的卷積核大小均為3×3,步長(zhǎng)為1;池化層采用大小為2×2,步長(zhǎng)為2的最大池化函數(shù)。此外,各層保持不同的特征圖(feature map)數(shù)量,2層CNN對(duì)應(yīng)32和64;3層CNN對(duì)應(yīng)32,64和128;4層 CNN對(duì)應(yīng)64,32,12和8。CNN的優(yōu)化采用學(xué)習(xí)率自適應(yīng)的Adam函數(shù),學(xué)習(xí)率α=0.001,矩估計(jì)的指數(shù)衰減率β1和β2分別為0.9和0.999,用于數(shù)值穩(wěn)定的小常數(shù)ξ=1×10-8。為防止網(wǎng)絡(luò)過(guò)擬合,訓(xùn)練網(wǎng)絡(luò)中采用keep_prob=0.5的dropout正則化,即隨機(jī)失活50%的神經(jīng)元;激活函數(shù)采用ReLU;訓(xùn)練80個(gè)epoch。數(shù)據(jù)集的隨機(jī)劃分采用Sklearn庫(kù)中的train_test_split函數(shù),訓(xùn)練集和測(cè)試集按照 7.5 ∶2.5 比例劃分。
實(shí)驗(yàn)結(jié)果如圖4所示。實(shí)驗(yàn)結(jié)果表明:3層CNN結(jié)構(gòu)識(shí)別結(jié)果最佳;雖然CNN層數(shù)越多對(duì)特征提取的能力越強(qiáng),但網(wǎng)絡(luò)優(yōu)化需兼顧數(shù)據(jù)量等背景。選取3層CNN結(jié)構(gòu)進(jìn)行后續(xù)實(shí)驗(yàn),圖5為信號(hào)在-10 dB條件下識(shí)別的混淆矩陣。其中,DS3與DS6均為寬帶信號(hào),其功率譜密度較低,因而在低信噪比條件下的識(shí)別率相對(duì)更低。
圖4 不同層數(shù)CNN識(shí)別結(jié)果對(duì)比Fig.4 Comparison of convolutional neural network with different layers
圖5 -10 dB下的混淆矩陣Fig.5 Confusion matrix at -10 dB
為驗(yàn)證本文識(shí)別算法的有效性,選擇已有經(jīng)典方法進(jìn)行對(duì)比。文獻(xiàn)[17]采用STFT變換獲取時(shí)頻圖,并提取圖像的方向梯度直方圖特征(histogram of oriented gridients,HOG)與局部二值模式特征(local binary patterns,LBP)特征,融合后經(jīng)PCA實(shí)現(xiàn)降維,再采用SVM進(jìn)行分類,并結(jié)合KNN分類器進(jìn)行對(duì)比;文獻(xiàn)[7]利用BP神經(jīng)網(wǎng)絡(luò)對(duì)DSSS信號(hào)進(jìn)行分類;文獻(xiàn)[18]提出利用4層CNN與STFT時(shí)頻圖結(jié)合進(jìn)行信號(hào)分類,對(duì)比實(shí)驗(yàn)結(jié)果如圖6所示。
圖6對(duì)比結(jié)果表明:文獻(xiàn)[7]方法未進(jìn)行降噪等預(yù)處理,其在低信噪比條件下的識(shí)別效果不佳;文獻(xiàn)[17]所采用的HOG與LBP聯(lián)合特征穩(wěn)定性一般,即使在高信噪比條件下識(shí)別結(jié)果也難達(dá)到1。文獻(xiàn)[18]利用高斯濾波器進(jìn)行圖像降噪,但在低信噪比條件下效果不及本文方法。
圖6 各算法識(shí)別結(jié)果對(duì)比Fig.6 Comparison of algorithm identification results
為進(jìn)一步對(duì)比計(jì)算復(fù)雜度,給出圖7所示各算法識(shí)別所用平均時(shí)間。其中,特征提取用時(shí)為每種信號(hào)產(chǎn)生50個(gè)樣本并完成特征提取的時(shí)間;訓(xùn)練識(shí)別為運(yùn)行80個(gè)epoch的時(shí)耗。綜合對(duì)比圖6,7結(jié)果,雖然常規(guī)特征提取耗時(shí)短,但穩(wěn)定性不佳;本文算法需一定時(shí)耗完成特征提取與訓(xùn)練識(shí)別,但具有較好的魯棒性,在低信噪比條件下具備較高的識(shí)別率;此外,降噪處理能夠一定程度緩解對(duì)低信噪比數(shù)據(jù)集的標(biāo)注需求。
圖7 各算法時(shí)間對(duì)比Fig.7 Time comparison of algorithms
在無(wú)人機(jī)應(yīng)用背景下,提出了一種新型基于CNN的輻射源信號(hào)調(diào)制樣式識(shí)別算法。算法利用短時(shí)傅里葉變換、能量閾值降噪等獲取預(yù)處理時(shí)頻圖,隨后送入CNN進(jìn)行特征映射與分類識(shí)別。在信號(hào)預(yù)處理環(huán)節(jié),提出的能量閾值降噪法能夠有效抑制噪聲干擾,信噪比為-6 dB時(shí)的識(shí)別率達(dá)到0.97。與傳統(tǒng)特征及其他識(shí)別方法相比,識(shí)別率更高且低信噪比環(huán)境適應(yīng)性更強(qiáng)。