陳霈然,張曉龍,劉曉峰,蔡國平,吳勇軍
基于點云的空間非合作目標結(jié)構(gòu)識別問題研究
陳霈然1,張曉龍2,劉曉峰1,蔡國平1,吳勇軍1
(1.上海交通大學 船舶海洋與建筑工程學院,上海 200240;2.上海航天控制技術(shù)研究所,上海 201109)
在空間非合作目標捕獲任務中,從傳感器數(shù)據(jù)中識別出目標表面的可抓取結(jié)構(gòu)是一個有待解決的問題。以衛(wèi)星點云數(shù)據(jù)集作為對象,對4種基于神經(jīng)網(wǎng)絡算法(PointNet、PointNet++、SPLATNet和SO-Net)在衛(wèi)星結(jié)構(gòu)分割識別任務中的性能進行了比較分析。為了能夠更好地測試算法性能,基于NASA在線數(shù)據(jù)庫構(gòu)建了訓練測試數(shù)據(jù)集,并給出一種點云數(shù)據(jù)的快速構(gòu)建方法。使用該方法,可以實現(xiàn)成批量地生成點云數(shù)據(jù)。仿真測試結(jié)果顯示:PointNet++在衛(wèi)星完整點云數(shù)據(jù)集和非完整點云數(shù)據(jù)上的分割準確率都是最高,并且分割效果也優(yōu)于其他算法。
空間抓捕;非合作目標;衛(wèi)星點云;深度神經(jīng)網(wǎng)絡;結(jié)構(gòu)識別
使用空間機器人開展非合作衛(wèi)星在軌服務任務是未來一項十分重要的空間任務。為確保任務的順利開展,空間機器人首先需要完成對非合作衛(wèi)星的捕獲。相對于合作衛(wèi)星,非合作衛(wèi)星不能向服務航天器主動發(fā)動運動學信息,且無先驗的幾何信息和專門的抓取結(jié)構(gòu),這些不利因素給抓捕任務帶來了極大的挑戰(zhàn)。為完成該類目標的抓捕操作,空間機器人首先需要利用傳感器數(shù)據(jù)完成對衛(wèi)星整體及衛(wèi)星上的可抓取結(jié)構(gòu)的識別,然后操作機械臂完成抓捕操作??梢哉f,識別衛(wèi)星以及衛(wèi)星上的可抓取結(jié)構(gòu)是非合作目標捕獲任務得以完成的重要前提。
到目前為止,關于衛(wèi)星識別問題的研究主要集中在如何利用衛(wèi)星典型結(jié)構(gòu)的局部特征或局部特征之間的關系來識別出衛(wèi)星整體和其具體型號。相關研究包括,WANG等[1]在解決TSS-1衛(wèi)星的識別問題時提出將圖像數(shù)據(jù)中衛(wèi)星邊界和形心關系(例如邊界長度、圖形面積、形心到邊界的最大和最小距離等)作為衛(wèi)星特征,并利用這些特征通過搭建和訓練人工神經(jīng)網(wǎng)絡來實現(xiàn)對TSS-1衛(wèi)星的識別。DU等[2]提出使用圖像特征索引(Eigen-indexing)來描述衛(wèi)星局部結(jié)構(gòu)之間的關系,并根據(jù)在線獲取圖像特征索引與數(shù)據(jù)集衛(wèi)星圖像特征索引的匹配程度完成對衛(wèi)星具體型號的識別。MENG等[3]提出使用核局部保持映射(Kernel Locality Preserving Projections,KLPP)來對由不變矩(Moment Invariants)、傅里葉描述子(Fourier Descriptors)、區(qū)域協(xié)方差(Region Covariance)和方向梯度直方圖(Histogram of Oriented Gradients)4類特征構(gòu)成的衛(wèi)星圖像特征向量進行降維操作,進而獲得特征流形(Feature Submanifold)。并在此基礎上,采用-近鄰法(-Nearest Neighbor Method,NN)來實現(xiàn)對BUAA-SID 1.0數(shù)據(jù)集中衛(wèi)星圖像數(shù)據(jù)的分類和識別。為了進一步提高圖像數(shù)據(jù)中衛(wèi)星的識別精度,DING等[4]提出使用衛(wèi)星圖像的放射不變矩(Affine Moment Invariant,AMI)和多尺度自卷積(Multi-scale Auto-convolution,MSA)來描述衛(wèi)星,并利用-近鄰分類器(-Nearest Neighbor Classifier)來進行衛(wèi)星識別訓練。ZHAO等[5]提出一種基于稀疏編碼的統(tǒng)計隱含語義分析方法(Sparse Coding Based Probabilistic Latent Semantic Analysis,SC-PLSA)來提取衛(wèi)星特征。不同于上述的工作,ZHANG等[6]沒有采用特征提取+訓練的方式來解決識別問題,而是直接采用數(shù)據(jù)集訓練的方式來解決識別問題。實驗結(jié)果表明,他們所采用的同胚流形分析(Homeomorphic Manifold Analysis,HMA)和高斯過程回歸(Gaussian Process Regression,GPR)方法能夠在BUAA-SID數(shù)據(jù)集上獲得非常好的訓練效果。除了以上基于可見光圖像的衛(wèi)星識別問題研究外,LIU等[7]對基于用雷達高分辨距離像(High Resolution Range Profile,HRRP)[8]的衛(wèi)星識別問題進行了研究,并提出通過使用小波降噪法(Wavelet Denoising Method)來提高衛(wèi)星HRRP數(shù)據(jù)特征的質(zhì)量和穩(wěn)定性,進而提高衛(wèi)星的識別率。另外,HAN等[9]提出通過融合紅外可見光圖像(Visible and Infrared Image)的Zernike不變矩(Zernike Invariant Moments)來解決衛(wèi)星的識別問題。
從以上文獻調(diào)研的結(jié)果可以看出,現(xiàn)有的工作已經(jīng)取得了不錯的成果,但仍有些缺陷。例如,現(xiàn)有的工作幾乎都是利用可見光圖像作為對象來研究衛(wèi)星識別問題。盡管這種數(shù)據(jù)包含許多衛(wèi)星的結(jié)構(gòu)特征,但其很容易受到光線條件的影響。在太空復雜的光線條件下,圖像會因為過曝或曝光不足損失很多細節(jié)特征,這會導致衛(wèi)星識別準確率下降。除此之外,鮮有科研人員對衛(wèi)星子結(jié)構(gòu)的識別問題進行研究。事實上,衛(wèi)星子結(jié)構(gòu)識別問題對于很多在軌任務來說是非常重要的,對于抓捕任務,通過識別衛(wèi)星的子結(jié)構(gòu),空間機械臂可以決定潛在抓捕區(qū)域的位置,例如載荷連接裝置、尾噴管或其他位置。另外,對衛(wèi)星大尺度結(jié)構(gòu),例如太陽能帆板、天線等進行識別,空間機器人可以規(guī)劃機械臂的無碰撞抓捕路徑,從而避免任務風險。由此可見,衛(wèi)星子結(jié)構(gòu)識別問題是一個非常值得深入研究的工程問題。
考慮到由深度相機獲得的點云數(shù)據(jù)不易受光照條件的影響,因此選擇點云數(shù)據(jù)進行衛(wèi)星結(jié)構(gòu)的識別在工程上更具可行性。雖然點云數(shù)據(jù)能夠提高識別的穩(wěn)定性和精度,但其數(shù)據(jù)結(jié)構(gòu)相對圖像來說是過于復雜的,其自身的無序性、稀疏性使得傳統(tǒng)的基于人為先驗規(guī)則的識別和分割算法很難取得較高計算精度。近年來為解決這一問題,研究學者提出一系列的基于深度學習點云識別算法。盡管這類算法在很多結(jié)構(gòu)的識別問題上取得了不錯的效果,但這類算法是否可以解決衛(wèi)星結(jié)構(gòu)的識別問題是有疑問的。另外,在眾多算法中哪種方法更適合解決衛(wèi)星結(jié)構(gòu)識別問題也是一個值得探討的問題。本文對上述2個問題進行了深入的研究,并為此構(gòu)建了由衛(wèi)星點云數(shù)據(jù)構(gòu)成的數(shù)據(jù)集。通過訓練發(fā)現(xiàn),最新提出的以PointNet[10]、PointNet++[11]、SPLATNet[12]和SO-Net[13]為代表的點云識別深度神經(jīng)網(wǎng)絡能夠較好地解決完整衛(wèi)星結(jié)構(gòu)數(shù)據(jù)和非完整衛(wèi)星結(jié)構(gòu)數(shù)據(jù)的識別問題。通過對比4種深度神經(jīng)網(wǎng)絡訓練結(jié)果,我們可以直觀地了解它們的區(qū)別和優(yōu)缺點。這些分析結(jié)果對于解決實際工程問題是十分有價值的。
與二維可見光圖像數(shù)據(jù)相比,三維點云數(shù)據(jù)在刻畫物體表面結(jié)構(gòu)細節(jié)方面具有明顯的優(yōu)勢。同時,三維點云數(shù)據(jù)的精度不易受太空環(huán)境復雜光照條件的影響。這些優(yōu)勢讓三維點云數(shù)據(jù)成為解決衛(wèi)星結(jié)構(gòu)分割識別問題的首選。然而,點云數(shù)據(jù)自身的無序性、稀疏性特點也給分割識別算法的開發(fā)設置了不小的難度。在早期的研究中,學者們提出了多種基于人類規(guī)則的算法[14-18]。但這些算法分割識別精度還遠達不到工程應用的水平。近年來,隨著機器學習算法的迅速發(fā)展,國內(nèi)外學者提出了多種基于神經(jīng)網(wǎng)絡的點云分割識別算法,例如PointNet、PointNet++、SPLATNet和SO-Net等。
這些算法在多個公開點云數(shù)據(jù)集上都取得了非常高的分割識別精度,使得我們有理由相信上述算法是可以用于解決衛(wèi)星結(jié)構(gòu)的分割識別問題的。然而,選擇哪種算法是一個值得深入研究和分析的問題。為了選出更優(yōu)的選項,本章將對PointNet、PointNet++、SPLATNet和SO-Net算法的基本原理進行介紹,為后續(xù)算法性能比較奠定理論基礎。
PointNet算法(如圖1所示)是2016年由CHARLES等提出一種針對點云分割與分類的多層神經(jīng)網(wǎng)絡算法。PointNet算法的輸入為×3的點云坐標矩陣。為了實現(xiàn)在一個相同視角下提取點云特征,PointNet的開發(fā)者設計了一個T-Net網(wǎng)絡,經(jīng)過學習之后該網(wǎng)絡可以生成一個3×3的位姿變換矩陣。輸入的點云數(shù)據(jù)在與該矩陣相乘后可以實現(xiàn)空間上的對齊,即將點云旋轉(zhuǎn)到正面。點云數(shù)據(jù)在經(jīng)過1個多層感知器(Multi-Layer Perceptron, MLP)的操作后被映射到64維的空間上。PointNet算法會對得到64維空間點云進行特征變換,變換操作是通過乘以 1個T-Net網(wǎng)絡生成64×64的矩陣完成的。經(jīng)過特征變換后的數(shù)據(jù)再經(jīng)過1個MLP完成升維操作,進而將原點云坐標映射到1 024維的空間上。此時,原始×3點云坐標矩陣已經(jīng)被轉(zhuǎn)化成了×1 024的點云特征矩陣。該點云特征矩陣經(jīng)過最大池化操作(Max Pooling)后便得到了一個1 024維的行向量,該列向量被稱為點云的全局特征向量。將全局特征向量特征變換后得到64維點云數(shù)據(jù)進行拼接,拼接后的數(shù)據(jù)再經(jīng)過一個MLP后,輸出每個點對應不同所屬類型的×概率矩陣。最后每個點選取概率最大的類別作為分割結(jié)果,進而實現(xiàn)對點云的分割識別。
圖1 PointNet網(wǎng)絡[10]
圖2 PointNet++網(wǎng)絡[11]
SPLATNet算法是2018年由SU等[12]提出的一種適用于點云和點云+圖像的分割識別問題的神經(jīng)網(wǎng)絡算法,由SPLATNet3D網(wǎng)絡和SPLATNet2D-3D網(wǎng)絡構(gòu)成。由于本章的研究對象為點云,本文僅對適應于點云分割識別問題的SPLATNet3D網(wǎng)絡進行介紹。
SPLATNet3D網(wǎng)絡(如圖3所示)由3個1×1卷積層(1×1 CONV)和個不同尺度雙邊卷積層(Bilateral Convolution Layer, BCL)[19]組成,其中為該網(wǎng)絡的一個超參數(shù)。在使用SPLATNet3D網(wǎng)絡進行分割識別時,×3的點云坐標矩陣會首先經(jīng)過一個1×1卷積層,然后再依次通過個BCL。通過BCL的操作,SPLATNet3D網(wǎng)絡便可以提取到不同尺度下點云數(shù)據(jù)的結(jié)構(gòu)特征向量。再將這些特征結(jié)構(gòu)特征向量拼接并通過2個1×1卷積層,輸出每個點的對應不同類別概率,進而完成對點云的分割識別。
圖3 SLPATNet網(wǎng)絡[12]
以上的各個深度學習算法均可以直接輸入點云數(shù)據(jù),輸出點云分割結(jié)果。算法的大致結(jié)構(gòu)也類似,均是對點云數(shù)據(jù)進行處理得到全局特征向量,之后將全局特征向量進行拼接,經(jīng)過進一步處理得到點云分割結(jié)果。但是各個算法得到全局特征向量的方式不同。
PointNet算法首先將原始點云數(shù)據(jù)旋轉(zhuǎn)對齊,之后將對齊后的點云通過MLP并再次對齊,進而將每點特征進行升維。算法的這個部分將原始點云映射到高維空間。最后算法通過最大池化操作得到全局特征向量。此算法結(jié)構(gòu)簡單,效率最高。
PointNet++算法首先將原始點云進行分組,并利用PointNet算法中特征提取的部分提取子集的全局特征向量,作為整個點云的局部特征向量。接著算法再將局部特征向量再進行分組并提取其全局特征向量作為最終的全局特征向量。此算法相較于PointNet算法新增了分組和分層提取特征向量的部分,結(jié)構(gòu)較為簡單,效率高。
SPLATNet算法將原始點云以此通過不同的BCL層,將原始點云映射到不同尺度晶格空間中,并分別提取不同尺度晶格空間中點云的特征向量。最后算法將得到各特征向量進行拼接得到全局特征向量。此算法因頻繁通過BCL層進行映射操作,所以效率一般。
SO-Net算法將原始點云映射到SOM節(jié)點上,再通過MLP并進行最大池化操作得到每個SOM節(jié)點上的特征向量。之后算法將各SOM節(jié)點上的特征向量通過MLP并進行最大池化操作得到全局特征向量。算法具體區(qū)別見表1。
表1 4種深度學習算法的比較
從上述的介紹可知,4種神經(jīng)網(wǎng)絡算法各有其特點和優(yōu)勢。為了更好地比較評估算法優(yōu)缺點,第3節(jié)將在自建的數(shù)據(jù)集上對算法性能進行測試。
在真實的太空任務中,服務衛(wèi)星可以使用2種不同的點云數(shù)據(jù)進行目標衛(wèi)星結(jié)構(gòu)的分割識別,它們分別是經(jīng)過三維重建之后的完整衛(wèi)星點云數(shù)據(jù)和激光傳感器實時獲得的非完整衛(wèi)星點云數(shù)據(jù)。為評估上述機器學習算法對上述2類數(shù)據(jù)的分割識別的性能,需要分別構(gòu)建2類數(shù)據(jù)對應的訓練數(shù)據(jù)集。
一般來說,利用真實數(shù)據(jù)構(gòu)建數(shù)據(jù)集是最為常見的手段[21]。然而對于衛(wèi)星結(jié)構(gòu)識別分割問題來說,由于獲得在軌衛(wèi)星真實數(shù)據(jù)的成本過于高昂,因此本文采用人工手段來構(gòu)建訓練點云數(shù)據(jù)集。為了保證人工構(gòu)建的點云數(shù)據(jù)更貼近真實數(shù)據(jù),分析了如圖5所示“地球之眼”一號衛(wèi)星、“日出”衛(wèi)星、“普羅巴”五號、“依巴谷”衛(wèi)星、“哨兵”二號、“哨兵”一號、歐洲環(huán)境衛(wèi)星、“陸地衛(wèi)星”四號、“陸地衛(wèi)星”一號等真實衛(wèi)星的結(jié)構(gòu)組成,考慮到對于在非合作衛(wèi)星抓捕任務中高剛度的衛(wèi)星發(fā)動機噴管可作為抓取結(jié)構(gòu)。因此,在本文構(gòu)建的點云數(shù)據(jù)中包括衛(wèi)星主體、太陽能帆板和尾噴管衛(wèi)星結(jié)構(gòu)。
圖5 參考的衛(wèi)星圖片
在數(shù)據(jù)集的構(gòu)建過程中,除了需要解決數(shù)據(jù)的真實性的問題,還需解決數(shù)據(jù)的快速生成問題。以著名的ShapeNet[22]數(shù)據(jù)集為例,其每種類物體所對應數(shù)據(jù)集都包含有幾百到幾千不等的點云數(shù)據(jù)。對于衛(wèi)星結(jié)構(gòu)的分割識別問題來說,如果采用每個衛(wèi)星單獨創(chuàng)建點云數(shù)據(jù)的方式來構(gòu)建數(shù)據(jù)集,那么數(shù)據(jù)集的構(gòu)建過程將是極其麻煩的。為了能夠快速成批量地生成點云數(shù)據(jù),提出分別采用衛(wèi)星組件三維建模+點云抽取+點云拼接的總體方案方式來構(gòu)建原始衛(wèi)星點云數(shù)據(jù)集,該數(shù)據(jù)集中的點云數(shù)據(jù)不存在位置誤差。
在實際的任務中,由于計時誤差累積、反射光強度衰弱和散射光噪聲存在,激光雷達或深度相機等傳感器獲得的衛(wèi)星點云數(shù)據(jù)是存在位置誤差的。為讓神經(jīng)網(wǎng)絡的訓練更接近實際情況,對每個原始衛(wèi)星點云添加了1%左右的位置偏差,進而生成了帶噪聲的點云數(shù)據(jù)集。該數(shù)據(jù)集將用于算法的訓練和測試。
衛(wèi)星完整點云數(shù)據(jù)集構(gòu)建流程主要分為3部分:三維建模、點云轉(zhuǎn)換和點云拼接。各個部分的具體操作如下。
1)衛(wèi)星部件三維建模。圖5所示衛(wèi)星的各個部件的形狀,使用Inventor軟件分別構(gòu)建6種尾噴管、11種太陽能帆板和13種衛(wèi)星主體三維模型(樣例如圖6所示),并將衛(wèi)星部件三維模型以obj格式保存。obj格式是Alias公司為3D建模和動畫軟件“Advanced Visualizer”開發(fā)的一種標準文件格式,在格式中3D模型表面被離散成若干個三角形面片。obj標準文件主要包含4種數(shù)據(jù),分別用以下字母作為每行的開頭:v、vt、vn和f。v行數(shù)據(jù)為三角形面片頂點坐標,vt行數(shù)據(jù)表示三角形面片的紋理信息,vn行數(shù)據(jù)是三角形面片的法向量,f行數(shù)據(jù)為構(gòu)成三角面片頂點的信息索引。
圖6 衛(wèi)星部件的三維模型
2)衛(wèi)星部件三維模型的點云轉(zhuǎn)換。首先提取衛(wèi)星部件obj文件中構(gòu)成部件表面所有的三角面片頂點信息;其次利用上述頂點坐標生成帶1%位置偏差的點云數(shù)據(jù),并打上標簽;最后生成的部件點云數(shù)據(jù)模型。
樣例如圖7所示。
圖7 衛(wèi)星部件的點云模型
3)部件點云的拼接。為了構(gòu)建衛(wèi)星完整的點云數(shù)據(jù),首先以衛(wèi)星主體為基礎,通過其他部件相對衛(wèi)星主體的位姿關系計算點云拼接所需位姿變換矩陣。其次利用位姿變換矩陣將其他部件點云變換到衛(wèi)星主體點云坐標下,進而完成點云的拼接操作。在拼接過程中,為了增加數(shù)據(jù)的多樣性,對尾噴管點云進行了適當變長或縮短操作。完整衛(wèi)星點云數(shù)據(jù)生成流程如圖8所示。按照此過程,生成了5 263個不同的完整衛(wèi)星點云數(shù)據(jù),樣例如圖9所示。
圖8 衛(wèi)星完整點云數(shù)據(jù)構(gòu)建流程
圖9 衛(wèi)星三維點云模型示例
根據(jù)激光傳感器獲取非完整點云數(shù)據(jù)的原理——激光傳感器發(fā)射束光線,經(jīng)物體表面反射后重新被相機接收,相機通過計算每束光的飛行時間,最終得到個物體表面點的三維坐標。將構(gòu)建衛(wèi)星非完整數(shù)據(jù)集的流程分為4個部分:三維建模、標記面片、拼接模型和激光拍攝模擬。各個部分的具體操作如下。
1)衛(wèi)星部件三維建模。與完整點云數(shù)據(jù)構(gòu)建流程相同,首先使用Inventor軟件分別構(gòu)建6種尾噴管、11種太陽能帆板和13種衛(wèi)星主體三維模型并以obj文件格式保存。
2)標記三角形面片。在計算機圖形學中,通常使用三角面片作為物體表面的最小單位[23]。所以構(gòu)建的衛(wèi)星表面模型也同樣由三角面片構(gòu)成。但是為了能得到帶標簽的非完整點云數(shù)據(jù),將已構(gòu)建的衛(wèi)星部件obj文件中的每個三角面打上標簽。
3)拼接得到衛(wèi)星表面模型。
當此光束與表示部件表面的三角面片相交時,兩者的交點便是衛(wèi)星部件的點云點,計算過程如下。
其中:
圖11 面積判別法
非完整衛(wèi)星點云數(shù)據(jù)生成流程如圖12所示,按照此過程,可以獲得5 263個帶標簽的衛(wèi)星非完整點云,樣例如圖13所示。
圖12 衛(wèi)星非完整數(shù)據(jù)構(gòu)建方式
圖13 衛(wèi)星三維非完整點云模型示例
使用已構(gòu)建的衛(wèi)星完整點云數(shù)據(jù)集和非完整點云數(shù)據(jù)集分別對PointeNet算法、PointNet++算法、SPLATNet算法和SO-Net算法進行訓練和性能測試。為保證測試的公平性,各算法的網(wǎng)絡結(jié)構(gòu)以及超參數(shù)都與其所在文章保持一致。在訓練和測試過程中,完整點云數(shù)據(jù)集和非完整點云數(shù)據(jù)集都被劃分成3個子集,分別為訓練集、交叉驗證集和測試集。測試集、交叉驗證集和測試集所包含點云的數(shù)量分別是 3 835、586和842。從算法的分割準確率和分割實際效果來比較各深度學習算法的性能。
比較各個深度學習算法的分割準確率。首先將在訓練集上訓練各深度學習深度網(wǎng)絡,并在訓練過程中在交叉驗證集上進行同步測試,調(diào)整神經(jīng)網(wǎng)絡的超參數(shù)。其次利用訓練后的深度學習網(wǎng)絡對測試集上的衛(wèi)星點云數(shù)據(jù)進行分割測試。最后利用如下公式求得深度學習算法在測試集上每簇衛(wèi)星點云的分割準確率:
式中:r為分割識別正確的點云數(shù)量;t為此衛(wèi)星點云簇點的總數(shù)。
計算在測試集上的點云分割準確率的平均值作為算法的分割準確率。得到各個算法的分割準確率見表2。由表2數(shù)據(jù)可知,在衛(wèi)星完整數(shù)據(jù)集上,SO-Net算法準確率最低為96.1%,SPLATNet算法與PointNet算法分割準確率相同為98.2%,而PointNet++算法的分割準確率最高,達到了99.2%。而在非完整數(shù)據(jù)集上,SO-Net算法的準確率只有87.2%,SPALTNet算法的分割準確率為97.6%,略優(yōu)于PointNet算法的95.7%,PointNet++算法準確率最高為99.6%。
表2 點云分割識別準確率平均值
綜上所述,在2種數(shù)據(jù)集上PointNet++算法的分割準確率均是最高的。所以從分割準確率的角度而言,PointNet++算法在4種算法中為衛(wèi)星點云分割識別最佳算法。
分割準確率不能作為衡量算法優(yōu)劣的唯一指標,因為可能會出現(xiàn)準確率較高,但分割結(jié)果卻很差的情況。使用Meshlab對各個算法在測試集上的點云分割結(jié)果進行可視化,借此來檢驗算法分割的實際效果。
各深度算法在完整數(shù)據(jù)集與非完整數(shù)據(jù)集上的分割效果如圖14所示。每幅結(jié)果子圖對應的算法從左到右依次為:PointNet、PointNet++、SPLATNet、SO-Net,其中紅圈部分為點云分割錯誤處。
圖14 分割結(jié)果
由各圖所示的分割實際效果可見,SO-Net算法因為其算法特性,容易出現(xiàn)一個SOM節(jié)點分類錯誤從而導致點云分類片狀錯誤。此種錯誤往往發(fā)生在尾噴管與主體之間,對后續(xù)的抓捕任務可能會產(chǎn)生影響。而PointNet算法與SPLATNet算法在各部分連接處(例如主體-帆板)和結(jié)構(gòu)邊緣(例如尾噴管的邊緣)會出現(xiàn)個別點的分類錯誤。PointNet++算法的整體效果最好,并且在各部分連接處與精細結(jié)構(gòu)的邊緣都取得了很好的分割效果。從實際的分割效果來講,PointNet++算法為4種算法中的最佳算法。
本文以衛(wèi)星點云數(shù)據(jù)為對象,對應用神經(jīng)網(wǎng)絡算法解決非合作衛(wèi)星捕獲任務中的衛(wèi)星結(jié)構(gòu)識別與分割問題進行了研究。首先為研究測試神經(jīng)網(wǎng)絡算法性能,給出了一種點云數(shù)據(jù)集快速構(gòu)建算法,并基于NASA在線數(shù)據(jù)構(gòu)造了完整衛(wèi)星點云數(shù)據(jù)集和非完整點云數(shù)據(jù)集。在此基礎之上,通過研究發(fā)現(xiàn)經(jīng)過訓練后,基于神經(jīng)網(wǎng)絡的PointNet算法、PointNet++算法、SPLATNet算法與SPLATNet算法在2種數(shù)據(jù)集取得非常好的識別分割效果。相較而言,PointNet++算法的性能更優(yōu),衛(wèi)星點云表面結(jié)構(gòu)分割識別準確率達到了99.0%以上。本文所使用的衛(wèi)星點云數(shù)據(jù)集為人工創(chuàng)建,真實情況拍攝得到衛(wèi)星點云數(shù)據(jù)的表面分割識別問題仍待后續(xù)進一步研究。
[1] WANG Z, BARRACO I, ROVAZZOTTI M, et al. Recognition for TSS-1 satellite body by hybrid neural networks[J]. Nonlinear Image Processing VI, 1995, 2424: 544-555.
[2] DU X, MA J, QASEM M, et al. Eigen indexing in satellite recognition[J]. Proceedings of SPIE-The International Society for Optical Engineering, 1999, 3718: 397-405.
[3] MENG G, JIANG Z, LIU Z, et al. Full-viewpoint 3D space object recognition based on kernel locality preserving projections[J]. Chinese Journal of Aeronautics, 2010, 23(5): 563-572.
[4] DING H, LI X, ZHAO H. An approach for autonomous space object identification based on normalized AMI and illumination invariant MSA[J]. Acta Astronautica, 2013, 84: 173-181.
[5] ZHAO D, LU M, ZHANG X, et al. Satellite recognition via sparse coding based probabilistic latent semantic analysis[J]. International Journal of Humanoid Robotics, 2014, 11(2): 55-1477.
[6] ZHANG H, ZHANG C, JIANG Z, et al. Vision-based satellite recognition and pose estimation using Gaussian process regression [J]. International Journal of Aerospace Engineering, 2019: 1-20.
[7] LIU X, GAO M, FU X. Satellite recognition base on wavelet denoising in HRRP feature extraction[C]// 2007 2nd IEEE Conference on Industrial Electronics and Applications. Washington D.C., USA: IEEE Press, 2007: 2530-2533.
[8] DU L, LIU H W, BAO Z, et al. Radar automatic target recognition based on feature extraction for complex HRRP[J]. ENCE in China, 2008, 51(8): 1138-1153.
[9] PAN H, XIAO G, JING Z. Feature-based image fusion scheme for satellite recognition[C]// 2010 13th International Conference on Information Fusion. Washington D.C., USA: IEEE Press, 2010: 1-6.
[10] QI C R, YI L, SU H, et al. PointNet: deep learning on point sets for 3D classification and segmentation[C]// 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Washington D.C., USA: IEEE Press, 2017: 77-85
[11] QI C R, YI L, SU H, et al. PointNet++: deep hierarchical feature learning on point sets in a metric space[C]// Advances in Neural Information Processing Systems 30. Washington D.C., USA: IEEE Press, 2017: 5099-5108.
[12] SU H, JAMPANI V, SUN D, et al. SPLATNet: sparse lattice networks for point cloud processing[C]// 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2018: 2530-2539.
[13] LI J, CHEN B M, LEE G H. SO-Net: self-organizing network for point cloud analysis[C]// 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2018: 9397-9406.
[14] AUBRY M, SCHLICKEWEI U, CREMERS D. The wave kernel signature: a quantum mechanical approach to shape analysis[C]// 2011 IEEE International Conference on Computer Vision Workshops (ICCV Workshops). Washington D.C., USA: IEEE Press, 2011: 1626-1633.
[15] BRONSTEIN M M, KOKKINOS I. Scale-invariant heat kernel signatures for non-rigid shape recognition[C]// 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2010: 1704-1711.
[16] LING H, JACOBS D W. Shape classification using the inner-distance[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2007, 29(2): 286-99.
[17] RUSU R B, BLODOW N, BEETZ M. Fast point feature histograms (FPFH) for 3D registration[C]// 2009 IEEE International Conference on Robotics and Automation. Washington D.C., USA: IEEE Press, 2009: 3212-3217.
[18] RUSU R B, BLODOW N, MARTON Z C, et al. Aligning point cloud views using persistent feature histograms[C]// 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems. Washington D.C., USA: IEEE Press, 2008: 3384-3391.
[19] JAMPANI V, KIEFEL M, GEHLER P V. Learning sparse high dimensional filters: image filtering, dense CRFs and bilateral neural networks[C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Washington D.C., USA: IEEE Press, 2016:4452-4461.
[20] KOHONEN T. The self-organizing map[J]. Proceedings of the IEEE, 1990, 78(9): 1464-1480.
[21] 桂力,鄭順義,曹姝清,等.基于點云的非合作航天器位姿測量方法研究[J].上海航天(中英文),2016,33(6):122-128.
[22] 趙晨帆,王萍,邢冠培,等.卷積神經(jīng)網(wǎng)絡應用于雷達目標檢測[J].導彈與航天運載技術(shù),2020(6):84-90.
[23] GREGORY J. Game engine architecture[M]. 2nd ed. Boca Raton: CRC Press,2018: 447
Research on Structure Recognition of Spatial Non-cooperative Objects Based on Point Cloud Data
CHENPeiran1, ZHANGXiaolong2, LIUXiaofeng1, CAIGuoping1, WUYongjun1
(1.School of Naval Architecture, Ocean and Civil Engineering, Shanghai Jiao Tong University, Shanghai 200240, China; 2.Shanghai Academy of Spaceflight Technology, Shanghai 201109, China)
How to recognize the graspable structure of non-cooperative target surface from the sensor data is a problem to be solved in spatial non-cooperative capture tasks. In this paper, the performance of four neural network-based algorithms, i.e., PointNet, PointNet++, SPLATNet, and SO-Net, in satellite structure segmentation and recognition tasks is compared and analyzed with a satellite point cloud data set. In order to better test the algorithm performance, a training test data set is built based on the NASA online data set, and a fast point cloud data building method is proposed. With the proposed method, point cloud data can be generated in batches. The simulation results show that among the four neural network-based algorithms, PointNet++ has the highest segmentation accuracy on both satellite complete and incomplete point cloud data sets, and has the best segmentation effect.
spatial capture; non-cooperative target; satellite point cloud; deep neural network; structure identification
2021?03?02;
2021?04?29
國家自然科學基金(11772187,11802174)
陳霈然(1997—),男,碩士研究生,主要研究方向為航天器控制。
劉曉峰(1985—),男,博士,長聘教軌副教授,主要研究方向為航天器動力學與控制問題。
V 520
A
10.19328/j.cnki.2096?8655.2022.04.012