王 柳
(哈爾濱工業(yè)大學(xué)智能感知與自主規(guī)劃實(shí)驗(yàn)室,哈爾濱 150001)
隨著太空領(lǐng)域的不斷發(fā)展與競(jìng)爭(zhēng),空間態(tài)勢(shì)感知已成為太空安全防護(hù)與太空控制的重要基礎(chǔ)??臻g目標(biāo)識(shí)別是空間態(tài)勢(shì)感知的重要組成部分,與其他多個(gè)重要領(lǐng)域相互交叉,具有重大的軍事價(jià)值[1]??臻g目標(biāo)識(shí)別主要利用空間目標(biāo)特性數(shù)據(jù),對(duì)其身份、姿態(tài)、狀態(tài)等屬性進(jìn)行有效判斷和識(shí)別。當(dāng)前,目標(biāo)特性數(shù)據(jù)的來源主要為地基探測(cè),包括光學(xué)和雷達(dá)等設(shè)備。然而,地基設(shè)備的探測(cè)數(shù)據(jù)與觀測(cè)角度、目標(biāo)特征、太陽(yáng)角度和大氣層等多種因素相關(guān),使探測(cè)結(jié)果具有極大的不確定性,給空間目標(biāo)識(shí)別帶來諸多挑戰(zhàn)[2]。首先,空間目標(biāo)的固有特征會(huì)對(duì)特性數(shù)據(jù)造成不同影響,如姿態(tài)、形狀、表面材料等;其次,雖然不同目標(biāo)在基本特征上具有一定差別,但由于目標(biāo)數(shù)量多、范圍廣、空間環(huán)境復(fù)雜等因素,特性數(shù)據(jù)區(qū)分度并不明顯,使目標(biāo)不易分類和識(shí)別[3]。
對(duì)非合作衛(wèi)星進(jìn)行自主識(shí)別與檢測(cè)的手段主要有兩種,一種是傳統(tǒng)的目標(biāo)識(shí)別方法,主要基于目標(biāo)特性數(shù)據(jù)進(jìn)行反演獲得部分目標(biāo)特征[4-6],對(duì)非合作目標(biāo)選定的區(qū)域進(jìn)行特征提取,提取的特征通常包括直線、多邊形、橢圓等。但傳統(tǒng)方法通常具有較高的算法復(fù)雜度,難以應(yīng)對(duì)空間目標(biāo)識(shí)別的新挑戰(zhàn)。另一種是基于深度學(xué)習(xí)的方法,利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)對(duì)已標(biāo)記的圖像進(jìn)行訓(xùn)練,使損失函數(shù)值不斷減小,從而得到各卷積層的權(quán)值。
本文基于CNN,以航天任務(wù)模擬工具(Satellite Tool Kit,STK)中兩顆衛(wèi)星和衛(wèi)星實(shí)物模型為樣本集,對(duì)兩顆衛(wèi)星及衛(wèi)星的部件進(jìn)行識(shí)別和檢測(cè)。并搭建實(shí)物驗(yàn)證系統(tǒng),檢測(cè)在不同方位、不同光照條件、運(yùn)動(dòng)模糊等條件下衛(wèi)星及部件的識(shí)別效果。
典型衛(wèi)星的局部構(gòu)件主要包括衛(wèi)星本體、天線、太陽(yáng)帆板以及衛(wèi)星搭載的有效載荷等。對(duì)于可觀測(cè)局部構(gòu)件,幾何構(gòu)形具備多樣化的特點(diǎn)。
衛(wèi)星本體一般都為規(guī)則形狀,輪廓清晰可分辨,這有利于在視覺圖像中相對(duì)容易地提取本體形狀[7]。
太陽(yáng)帆板也被稱為太陽(yáng)電池板或太陽(yáng)電池陣。衛(wèi)星上安裝的太陽(yáng)帆板大致可分為體裝式及展開式。對(duì)于體裝式帆板,其輪廓與衛(wèi)星主體輪廓重合較多,不能僅依靠形貌特征進(jìn)行判斷,還需要用到太陽(yáng)帆板的光學(xué)反射特性等作為識(shí)別判據(jù);對(duì)于展開式太陽(yáng)翼,其展開時(shí)大多為規(guī)則的矩形組合體,且安裝位置與衛(wèi)星主體存在一定距離,因此其輪廓提取與判斷也相對(duì)容易。
衛(wèi)星攜帶的通信天線包括全球波束、半球波束、區(qū)域波束、點(diǎn)波束、多波束、可變波束等類別,衛(wèi)星依照其執(zhí)行任務(wù)的不同會(huì)攜帶不同的天線,且數(shù)量往往不止一個(gè)。其中反射面天線的輪廓較明顯,但其緊靠的發(fā)射器與接收器易干擾識(shí)別過程[8];喇叭天線相對(duì)衛(wèi)星的幾何尺寸較小,一般通過支架安裝并與衛(wèi)星表面保持一定距離;相控陣天線與螺旋天線也均用支架安裝但一般相對(duì)貼近衛(wèi)星表面。因此,可利用衛(wèi)星的部分先驗(yàn)知識(shí)輔助構(gòu)件的有效識(shí)別。
一般衛(wèi)星搭載的有效載荷的種類與衛(wèi)星功能相關(guān),各功能衛(wèi)星及其攜帶的載荷主要可分為以下幾類:(1)科學(xué)探測(cè)和實(shí)驗(yàn)類衛(wèi)星攜帶載荷:電離層探針、粒子探測(cè)器、磁強(qiáng)計(jì)、質(zhì)譜計(jì)、紅外天文望遠(yuǎn)鏡等;(2)信息獲取類衛(wèi)星攜帶載荷:光學(xué)相機(jī)、多譜段掃描儀、微波輻射計(jì)、合成孔徑雷達(dá)、無(wú)線電偵察接收機(jī)等;(3)信息傳輸類衛(wèi)星攜帶載荷:通信轉(zhuǎn)發(fā)器和通信天線;(4)信息基準(zhǔn)類衛(wèi)星攜帶載荷:無(wú)線電信標(biāo)機(jī)、激光反射器等[10]。
在對(duì)CNN進(jìn)行訓(xùn)練前要先利用小波閾值濾波方法對(duì)訓(xùn)練的圖片進(jìn)行去噪等預(yù)處理,再用CNN模型對(duì)預(yù)處理后空間環(huán)境中的衛(wèi)星圖片進(jìn)行識(shí)別與檢測(cè)[11-12]。技術(shù)流程如圖1所示。
建立衛(wèi)星部件的樣本庫(kù),對(duì)衛(wèi)星及其部件進(jìn)行標(biāo)定。之后利用訓(xùn)練集對(duì)改進(jìn)后的CNN進(jìn)行訓(xùn)練,不斷迭代更新各層CNN的權(quán)值,直到達(dá)到終止條件。利用驗(yàn)證集進(jìn)行精度驗(yàn)證,修改學(xué)習(xí)率、激活函數(shù)、訓(xùn)練集樣本數(shù)等再次進(jìn)行訓(xùn)練直到達(dá)到精度要求。
CNN YOLO結(jié)構(gòu)模型如圖2所示,模型共含24個(gè)卷積層、4個(gè)池化層和2個(gè)全連接層[9]。模型將原圖劃分為S×S的網(wǎng)格。如果一個(gè)目標(biāo)的中心落入格子,該格子就負(fù)責(zé)檢測(cè)該目標(biāo)。每一個(gè)格子預(yù)測(cè)邊界框和該邊界框的置信值。置信值代表此邊界框里包含一個(gè)目標(biāo)的置信度,用表示,其中P(Object )表示當(dāng)前位置是一個(gè)衛(wèi)星的概率,如果沒有目標(biāo),置信值為零。另外,希望預(yù)測(cè)的置信值和真值預(yù)測(cè)的重疊概率(Intersection Over Union,IOU)相同。記錄的5個(gè)元素具體為(x,y)代表當(dāng)前格子預(yù)測(cè)得到的衛(wèi)星或衛(wèi)星部件邊界框的中心坐標(biāo),(w,h)為衛(wèi)星或衛(wèi)星部件邊界框的寬和高。網(wǎng)絡(luò)最后的輸出為S×S×(B×5+C)維度的張量。其中B指邊界框的個(gè)數(shù),C指網(wǎng)絡(luò)要預(yù)測(cè)的類別數(shù)。
采用求和平方誤差最小為目標(biāo)函數(shù)來優(yōu)化,增加邊界框損失權(quán)重,減小置信度權(quán)重。訓(xùn)練階段的總損失函數(shù)LOSS如式(1)所示。總LOSS函數(shù)分為三個(gè)部分:坐標(biāo)損失(前兩項(xiàng)),類別損失(中間兩項(xiàng)),置信損失(最后一項(xiàng))。
圖1 空間多目標(biāo)識(shí)別流程圖Fig.1 Spatial muti-objective identification flow chart
圖2 CNN模型結(jié)構(gòu)Fig.2 CNN model structure
損失函數(shù)的設(shè)計(jì)目標(biāo)是讓坐標(biāo)(x,y,w,h)、置信值、類別這三個(gè)方面達(dá)到很好的平衡。此函數(shù)避免了以下不足[9]:(1)坐標(biāo)損失和類別損失同等重要顯然不合理;(2)如果一個(gè)網(wǎng)格中沒有衛(wèi)星本體或部件(一幅圖中這種網(wǎng)格很多),那么就會(huì)將這些網(wǎng)格中邊界框的置信值減小到0,相比于較少的有衛(wèi)星部件的網(wǎng)格,這種做法會(huì)導(dǎo)致網(wǎng)絡(luò)不穩(wěn)定甚至發(fā)散。
式(1)的創(chuàng)新點(diǎn)有:(1)更重視坐標(biāo)預(yù)測(cè),在坐標(biāo)損失前賦予了更大的權(quán)值,記作λcoord,在本網(wǎng)絡(luò)中取值為5;(2)對(duì)于不同大小的邊界框預(yù)測(cè),相比于大邊界框偏一點(diǎn),小邊界框預(yù)測(cè)偏一點(diǎn)更不能忍受。為緩解這個(gè)問題,將邊界框的寬和高取平方根代替原來的寬和高;(3)對(duì)沒有衛(wèi)星本體或部件的邊界框的置信損失賦予小的權(quán)值,記為λnobj,在本網(wǎng)絡(luò)中取值為0.5。
對(duì)衛(wèi)星部件的識(shí)別與檢測(cè)與對(duì)衛(wèi)星的識(shí)別與檢測(cè)相比,種類更多且要識(shí)別的部件像素區(qū)域更小,識(shí)別的難度更大。這部分利用的CNN做了如下修改:
(1)對(duì)衛(wèi)星部件進(jìn)行識(shí)別,更強(qiáng)調(diào)是否有過擬合。在每一個(gè)卷積層后添加批量標(biāo)準(zhǔn)化(Batch Normalization),極大的改善了收斂速度,同時(shí)減少了對(duì)其它正則化方法的依賴。
(2)對(duì)衛(wèi)星部件進(jìn)行檢測(cè),檢測(cè)的像素區(qū)域更小,需要圖片的分辨率更高。目前的目標(biāo)檢測(cè)算法中,一般會(huì)使用ImageNet預(yù)訓(xùn)練過的模型提取特征,如果用AlexNet網(wǎng)絡(luò)輸入的圖片,則分辨率會(huì)被縮放到不足256×256,導(dǎo)致分辨率不夠,給檢測(cè)帶來困難。改進(jìn)后的網(wǎng)絡(luò)通過修改預(yù)訓(xùn)練分類網(wǎng)絡(luò)的分辨率為448×448,并在ImageNet數(shù)據(jù)集上訓(xùn)練10輪。這個(gè)過程讓網(wǎng)絡(luò)有足夠的時(shí)間去適應(yīng)高分辨率的輸入。
(3)在識(shí)別與檢測(cè)種類增多時(shí),為提高運(yùn)算效率,借鑒Faster R-CNN[13]中的Anchor思想:在卷積特征圖上進(jìn)行滑窗采樣,每個(gè)中心預(yù)測(cè)9種不同大小和比例的建議框,基于此,對(duì)每個(gè)窗口位置都可以根據(jù)9個(gè)不同長(zhǎng)寬比例、不同面積的Anchor逆向推導(dǎo)出它對(duì)應(yīng)的原始圖片中的一個(gè)區(qū)域。由于都是卷積不需要重塑,很好的保留空間信息,最終特征圖的每個(gè)特征點(diǎn)和原圖的每個(gè)網(wǎng)格一一對(duì)應(yīng)。用預(yù)測(cè)相對(duì)偏移取代直接預(yù)測(cè)坐標(biāo),方便網(wǎng)絡(luò)學(xué)習(xí),即移除全連接層,使用Anchor框去預(yù)測(cè)邊界框。
Batch=1,Subdivisions=1;
初始學(xué)習(xí)率:Learning Rate=0.0005;
衰減正則項(xiàng):Decay=0.0005;
旋轉(zhuǎn)角度:Angle=5(通過隨機(jī)旋轉(zhuǎn)角度-5°~5°生成更多樣本);
飽和度:Saturation=1.5(通過調(diào)整飽和度1~1.5倍來生成更多樣本);
曝光量:Exposure=1.5(通過調(diào)整曝光量1~1.5倍來生成更多樣本);
色調(diào):Hue=0.1(通過調(diào)整色調(diào)1~1.1倍來生成更多樣本)。
經(jīng)過60000次的循環(huán)迭代,網(wǎng)絡(luò)的各參數(shù)如下:
平均IOU:Region Avg IOU=0.8996(代表邊界框和真值的交集和并集的比,期望該值趨近于1);
類別:Class=0.9032(標(biāo)注物體類型的概率,期望該值趨近于1);
標(biāo)注物體的概率:Obj=0.8887(期望該值趨近于1);
平均召回率:Avg Recall=0.8530(期望該值趨近于1);
平均損失:Avg Loss=2.9641(期望該值趨近于0)。
本文的目標(biāo)數(shù)據(jù)集由三部分構(gòu)成,分別是STK軟件中北斗衛(wèi)星模型、Cartosat-2衛(wèi)星模型的圖片;SolidWorks繪制的北斗衛(wèi)星模型、Cartosat-2衛(wèi)星模型的圖片;北斗衛(wèi)星模型、Cartosat-2衛(wèi)星模型的實(shí)物模型圖片。分別標(biāo)記了這些圖片中的星本體、帆板、天線、噴管、相機(jī)、星敏感器。
訓(xùn)練網(wǎng)絡(luò)用的深度學(xué)習(xí)工作站配有4個(gè)GPU,GPU由大量的運(yùn)算單元組成,計(jì)算效率是CPU的幾十倍,并行計(jì)算能力遠(yuǎn)高于CPU。通常來說,GPU擁有普通內(nèi)存位寬更大、頻率更高的專用顯存,適合處理大規(guī)模數(shù)據(jù)的并行計(jì)算。深度學(xué)習(xí)工作站實(shí)現(xiàn)了“CPU+GPU”協(xié)同計(jì)算加速,能合理分配計(jì)算資源,充分釋放計(jì)算能力,具有高效、可靠、穩(wěn)定的性能,它利用GNU編譯器包括C/C++/Fortran、MKL庫(kù)以及OPENMPI、MPICH的并行消息環(huán)境,采用Caffe、Tensorflow、Theano、BIDMach、Torch等深度學(xué)習(xí)框架,通過編譯Caffe的Python和Matla等接口,基于B/S架構(gòu)實(shí)現(xiàn)且可視化的進(jìn)行深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練、測(cè)試等。
深度學(xué)習(xí)工作站如圖3所示。
圖3 深度學(xué)習(xí)工作站外形圖Fig.3 Deep learning workstation
(1)仿真圖片識(shí)別結(jié)果
詳見圖4-7。
圖4 Cartosat-2的STK圖片識(shí)別結(jié)果Fig.4 Cartosat-2 STK picture recognition results
圖5 北斗的STK圖片識(shí)別結(jié)果Fig.5 Beidou STK picture recognition results
圖6 Cartosat-2 3D建模圖識(shí)別結(jié)果Fig.6 Cartosat-2 3D picture recognition results
圖7 北斗3D建模圖識(shí)別結(jié)果Fig.7 Beidou 3D picture recognition results
兩類衛(wèi)星模型識(shí)別的準(zhǔn)確率約為95%,召回率約為92%。
(2)實(shí)物模型識(shí)別結(jié)果
本文在近距離正視、側(cè)視及遮擋、弱光照條件下對(duì)兩組不同的實(shí)物衛(wèi)星模型進(jìn)行檢測(cè),檢測(cè)的結(jié)果如下:
圖8 近距離正視條件下北斗模型識(shí)別結(jié)果Fig.8 Beidou model recognition results under close-range conditions
圖9 近距離正視條件下Cartosat-2衛(wèi)星模型識(shí)別結(jié)果Fig.9 Cartosat-2 recognition results under close-range conditions
近距離正視條件下衛(wèi)星模型識(shí)別準(zhǔn)確率為96.6%,召回率為97.3%。
圖10 側(cè)視及遮擋條件下北斗模型識(shí)別結(jié)果Fig.10 Beidou recognition results under side and occlusion conditions
圖11 側(cè)視及遮擋條件下Cartosat-2衛(wèi)星模型識(shí)別結(jié)果Fig.11 Cartosat-2 recognition results under side and occlusion conditions
側(cè)視及遮擋條件下衛(wèi)星模型識(shí)別準(zhǔn)確率為90.2%,召回率為87.25%。
圖12 弱光照條件下北斗衛(wèi)星模型識(shí)別結(jié)果Fig.12 Beidou model identification results under weak lighting conditions
圖13 弱光照條件下Cartosat-2衛(wèi)星模型識(shí)別結(jié)果Fig.13 Cartosat-2 model identification results under weak lighting conditions
弱光照條件下衛(wèi)星模型識(shí)別準(zhǔn)確率為90.09%,召回率為77.52%。
在近距離正視方位情況下對(duì)衛(wèi)星模型的識(shí)別檢測(cè)的準(zhǔn)確率較高,能達(dá)到96.6%。而在遮擋、運(yùn)動(dòng)模糊、暗光照環(huán)境等極端環(huán)境下準(zhǔn)確率稍低,達(dá)到90.1%左右。可以通過加大訓(xùn)練特殊情況下的樣本提高準(zhǔn)確率。
本文基于CNN YOLO模型對(duì)兩類空間衛(wèi)星(Cartosat-2、北斗)及其部件(帆板、星敏感器、天線、噴管、相機(jī)等)在近距離正視、遠(yuǎn)距離、遮擋、運(yùn)動(dòng)模糊等不同條件下進(jìn)行識(shí)別測(cè)試,識(shí)別準(zhǔn)確率均達(dá)到了90%以上。本文的研究對(duì)空間在軌服務(wù)、態(tài)勢(shì)感知中的目標(biāo)識(shí)別有重要參考價(jià)值,創(chuàng)新點(diǎn)在于將星本體、帆板、天線等部件的形狀信息作為CNN的權(quán)重先驗(yàn)值;結(jié)合星本體及部件的特殊性,對(duì)誤差損失函數(shù)和網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行修改。但本文僅是在地面環(huán)境下對(duì)按一定縮比的衛(wèi)星模型進(jìn)行識(shí)別,盡管考慮了不同運(yùn)動(dòng)、不同光照、不同方位情況,但是對(duì)于更加復(fù)雜的太空光照環(huán)境、復(fù)雜的章動(dòng)、進(jìn)動(dòng)等運(yùn)動(dòng)規(guī)律下衛(wèi)星模型的識(shí)別仍未全面考慮,后期可用仿真的太空光照環(huán)境圖片或者真實(shí)拍攝的衛(wèi)星圖片進(jìn)行訓(xùn)練、檢測(cè),進(jìn)一步驗(yàn)證在復(fù)雜太空環(huán)境下此衛(wèi)星識(shí)別算法的準(zhǔn)確性。