吳佳佳,李 智
(四川大學電子信息學院,成都 610065)
激光雷達系統(tǒng)作為一種高效、快速的感知技術,已廣泛應用于目標識別、檢測和跟蹤任務中[1?2]。傳統(tǒng)方法將視覺傳感器采集的二維圖像信息作為輸入數(shù)據(jù)源,然而其易受到光照、天氣狀況以及可視距離等的影響。與視覺傳感器相比,激光雷達更利于獲得物體的空間結構。同時,由于激光雷達具有精細的角度分辨率,其對小目標的探測非常有效。然而,一方面?zhèn)鞲衅魍ㄟ^掃描一定場角內(nèi)物體來獲得點云,它來自部分目標而非目標整體,面臨點云信息不完整的問題。另一方面受到目標體積和距離的影響,小目標探測面臨點云稀疏的問題,這導致了識別的困難。
以往的研究工作表明,基于點云的目標識別工作已經(jīng)取得了進展[3?21],然而針對稀疏點云的處理仍未得到充分的探索。一些研究者借用圖像處理的思想將點云投影到二維平面[6?9],然而,這些方法運行速度較慢并且忽視了點云的內(nèi)在空間結構關系。其它方法將點云轉(zhuǎn)換為三維體積表示并對體素網(wǎng)格應用三維卷積[10?12],由于大多數(shù)的體素網(wǎng)格未被占用,因此這種表示方法效率低。文獻[13]提出了PointNet 架構,該網(wǎng)絡可以直接使用多層感知器處理原始點云,并利用對稱函數(shù)聚合點云特征。然而,這種方法無法獲得局部特征。作為PointNet 的擴展,PointNet++[14]引入了層次化結構將PointNet 架構應用在不同的抽象層中。在每一層中,選取某些點構建局部區(qū)域并將剩余的點舍棄,這些操作造成大量的信息損失。近年來,基于圖的點云處理方法由于其在拓撲特征提取方面的強大能力得到了廣泛的研究[15?18]。文獻[15]提出一種邊緣卷積EdgeConv,通過將每個中心點與其k個最近鄰連接起來構造圖的方式聚合局部上下文信息。文獻[17]提出了DDGCN,通過使用方向和距離計算點對之間的相似性矩陣,并在此基礎上構建局部區(qū)域。最近,注意力機制由于其在二維圖像處理中的表現(xiàn)得到研究者的關注,不少研究者將其應用到三維點云處理任務中,它可以對學習到的原始的特征圖進行重新加權,并且對輸入元素的排列是不變的。
傳統(tǒng)的點云識別方法雖然能夠有效地提取目標表面的結構特征,但針對小目標的識別,當面臨點云數(shù)量少的情況時,依然存在魯棒性差、特征提取少等問題。為此,我們提出了一個基于視圖融合和注意力機制的小目標識別網(wǎng)絡,它將多個視圖的稀疏點云作為輸入,并輸出物體的類別標簽。為此,本文在網(wǎng)絡中設計了視圖融合模塊以及基于注意力機制的局部編碼模塊,其中視圖融合模塊通過融合不同視角下的原始點云數(shù)據(jù)得到描述目標整體的點云特征圖,以增強全局點云特征。針對聚合后的全局點云特征提取難的問題,局部編碼模塊在全局點云特征上采用注意力網(wǎng)絡進一步突出關鍵點特征。實驗結果表明,本文提出的方法具有良好的魯棒性,可以有效地解決點云稀疏時面臨的識別精度下降的問題,而且在模型復雜度和識別速度方面也優(yōu)于其它方法。本文提供了詳盡的實驗和理論分析,結果顯示本文提出的方法在公開數(shù)據(jù)集ModelNet 以及真實環(huán)境采集的Aircraft 數(shù)據(jù)集上都取得了最先進的性能。即使點云數(shù)量下降,識別結果仍優(yōu)于其它流行算法,這意味著本文的方法顯示出穩(wěn)健的性能。
點云可被看作是三維空間中的一組點,其數(shù)學表達式如公式(1)所示。
其中:M表示一組點云,N是其中點的個數(shù),P代表一個點,可以由其三維空間坐標(x,y,z)表示。
本文采用的激光雷達數(shù)據(jù)主要有以下幾個特點:針對小目標的探測任務中獲得的點云數(shù)據(jù)是稀疏的;單個視角下的點云是由激光雷達在一定場角內(nèi)掃描得到的,只包含組成全局特征的部分特征;各個點之間存在著關聯(lián)性,單個模型中各點與其相鄰的點有類似的幾何結構。
本文提出的基于視圖融合和注意力機制的識別網(wǎng)絡的完整網(wǎng)絡架構如圖1所示。網(wǎng)絡中包含了兩個關鍵性模塊,下文將對各模塊進行詳細介紹。
圖1 網(wǎng)絡結構
來自單視圖的點云包含了目標局部區(qū)域的部分稀疏點特征,缺乏全面性。為了充分表達三維對象,增強物體的全局點云特征,本文通過融合多個視圖下的稀疏點云,以解決點云稀疏引發(fā)的特征少問題。文獻[3]提出在分類器前設計一個類似于微型神經(jīng)網(wǎng)絡的視圖融合網(wǎng)絡,融合多個視圖的深層次特征。Su 等[6]跨視圖采用最大化操作,將所有視圖的信息合成為單個形狀描述符。
本文提出一種直接作用于原始點云的視圖融合模塊,其網(wǎng)絡結構如圖2所示。它通過數(shù)據(jù)融合方式將來自于不同視角下的原始點融合為完整目標的全局點云特征圖。該模塊包含空間向量映射和融合兩個部分??紤]到不同視角下三維物體空間結構的差異性,在對點云進行融合之前,需將多視圖下的點云映射至同一個向量空間。
圖2 視圖融合模塊
一般認為,點云在經(jīng)過一系列剛性變化后語義標記是不變的,因此,我們用一個空間轉(zhuǎn)換方程實現(xiàn)不同視角下點云的映射,它包括一個非奇異線性變換。它的計算公式如式(2)所示。
其中:P為空間變換前的坐標矩陣;P'為空間變換后的坐標矩陣;T為變換矩陣,包括旋轉(zhuǎn)和尺度縮放,A表示一個平移矩陣。
本文采用了一個微型神經(jīng)網(wǎng)絡,通過反向傳播算法自適應地學習變換矩陣和平移矩陣。它類似于一個神經(jīng)網(wǎng)絡結構,由卷積層、最大池化層和全連接層等基本模塊組成,并在最后將全連接層的輸出映射為N階變換矩陣。最后,將在同一向量空間內(nèi)的不同視角下點云進行拼接,得到描述目標全局的全局點云特征圖。通過這種方法,稀疏點特征進行了增強。
經(jīng)過視圖融合模塊后的點云,包含了目標的全局點特征,為了解決全局點云特征提取困難的問題,引入基于注意力機制的局部編碼模塊,突出目標的關鍵局部特征,其網(wǎng)絡結構如圖3 所示。該模塊由四個關鍵部分組成:采樣層、分組層、編碼層和聚合層。采樣層從輸入點中選擇一組點作為局部區(qū)域的中心。分組層通過尋找中心點的相鄰點來構建局部區(qū)域。編碼層通過注意力網(wǎng)絡將局部區(qū)域內(nèi)的點云編碼為一個特征向量,聚合層將點云的全局特征與局部特征聚合為一個單一的特征描述符。
圖3 Modelnet數(shù)據(jù)集部分多視角點云圖
在這一層中,首先將局部區(qū)域內(nèi)點的三維空間坐標擴展為包含局部特征的四維表達:其中di表示該局部區(qū)域內(nèi)各點與中心點的歐式距離。編碼該點集主要采用一個矢量自注意。其表達式如式(3)所示。
其中:Pi表示該局部鄰域的中心點;Pj為鄰域內(nèi)其余各點;ψ由線性層表示;γ表示MLP 層;δ為結構位置編碼,其表達式如式(4)所示,通過對鄰域內(nèi)點的相對位置關系及相互之間距離進行處理得到關于局部點位置的編碼信息,并將其添加至轉(zhuǎn)換后的特征。由于Pj中已包含該局部鄰域內(nèi)所有點的相對位置關系,因此用其生成注意,同時注意力機制保證了輸出對輸入的順序不變性。但其只編碼局部信息,將形狀視為小區(qū)域的集合,并失去了全局結構。
因此,在編碼層后添加了聚合層,以聚合全局特征與局部編碼特征。在最遠點采樣選擇中心點時,只保留了選定的部分點。為了充分獲取目標的結構信息,提高三維對象的識別準確率,必須通過融合的方式將有代表性的局部特征與全局特征聚合起來,避免稀疏點云特征的浪費。本文提出在網(wǎng)絡最終的分類器前添加聚合層,其類似于一個微型神經(jīng)網(wǎng)絡,本文利用卷積層、最大池化層描述該微型網(wǎng)絡。經(jīng)過聚合層后,局部特征和全局特征被聚合到一個單一的描述符中。
為了評價提出的方法,本文在公開數(shù)據(jù)集和真實環(huán)境下采集的數(shù)據(jù)集上分別進行了實驗。表1為本文實驗中使用的數(shù)據(jù)集的統(tǒng)計數(shù)據(jù)。
表1 數(shù)據(jù)集描述
本文使用一款機器視覺處理軟件HALCON生成ModelNet10 和ModelNet40 數(shù)據(jù)集在不同場角下的多視角點云。它首先通過設定虛擬攝像機的分辨率、鏡頭類型等參數(shù)初始化其位置,然后通過旋轉(zhuǎn)三維物體獲得不同視角下的點云數(shù)據(jù)。圖3展示了實驗中采用的部分多視圖點云可視化結果。
為了分析真實環(huán)境中網(wǎng)絡對小物體的識別效果,我們使用激光雷達傳感器采集到目標數(shù)據(jù)集,并將其命名為Aircraft 數(shù)據(jù)集。利用小型激光雷達傳感器平臺Tanway?Pro 進行掃描,掃描儀位于坐標原點(0,0,0),獲得的數(shù)據(jù)是格式為(x,y,z)的空間坐標值。它包含了固定翼飛機、戰(zhàn)斗機、火箭筒、鳥,共四種類別的4448 個訓練樣本和621個測試樣本,如圖4所示。
圖4 Aircraft數(shù)據(jù)集點云圖
本次實驗采用的CPU 為Intel? Xeon(R)CPU E5?1650 v4@3.60 GHz×12,顯卡1080Ti。操作系統(tǒng)為Ubuntu16.04,開發(fā)環(huán)境為Pycharm,并采用Halcon 開發(fā)軟件實現(xiàn)了多視角點云的提取。實驗中編程語言采用Python 3.6,深度學習框架為Pytorch 1.9.0[20]。模型訓練的初始學習率為0.01,并采用自適應下降的方式更新,Batch?size 為16,訓練輪數(shù)統(tǒng)一設置為120,優(yōu)化器采用ADAM[21]。
表2 顯示了不同網(wǎng)絡的對比實驗結果,實驗中均勻的采樣10 個點作為網(wǎng)絡的輸入。結果顯示我們的模型在公開數(shù)據(jù)集ModelNet10 和ModelNet40 及提出的Aircraft 數(shù)據(jù)集上均取得了最先進的性能。
表2 對比實驗結果分析
可明顯地觀察到,本文提出的方法比Point?Net表現(xiàn)更好。這是因為本文對不同視角下的點云進行了融合,全局點云得到增強,不僅如此,在PointNet 中每個點都是獨立地應用卷積算子,這種方法忽視了局部特征。PointNet++采用了一個局部特征聚合函數(shù),將點云劃分為小區(qū)域,解決了PointNet缺乏局部特征的問題。然而,它在每個采樣層之后都會有信息損失。不僅如此,提出的網(wǎng)絡添加了注意力機制,突出了局部中的關鍵特征。圖5(a)為ModelNet10 數(shù)據(jù)集的最佳測試結果產(chǎn)生的混淆矩陣,其中對Monitor 的識別率高達95%以上,Chair、Sofa 和Toilet 等的識別準確率也在90%左右,最大的混淆在Desk和Night_stand 中,其中Desk 容易被歸為Sofa,而Night_stand 容易被歸為Dresser,這是因為它們具有相似的平面空間結構,且表面特征較不明顯,造成了識別的誤差。
圖5 混淆矩陣
圖5(b)是由Aircraft 數(shù)據(jù)集產(chǎn)生的混淆矩陣,識別任務相對簡單。從混淆矩陣可以看出,固定翼飛機、鳥類和火箭的識別準確率都在95% 以上,其中鳥類和火箭的準確率都為100%。最大的混淆是在戰(zhàn)斗機上,它很容易被混淆為固定翼無人機。盡管如此,本文提出的方法的識別結果仍然是最佳的。
理論上,獲得的點云數(shù)量取決于激光雷達本身性能和激光雷達與目標之間的距離。針對同一個激光雷達系統(tǒng),在短距離上工作的激光雷達比長距離上能獲得更多的點。因此,我們在公開數(shù)據(jù)集ModelNet10 和采集的Aircraft 數(shù)據(jù)集上進一步分析了網(wǎng)絡的健壯性。
對于ModelNet10,我們在其中選擇一個飛行樣本作為模板,均勻地對點進行采樣,并將其歸一化為具有100、60、30、10個點的單位球體。圖6(a)直觀地展示了不同點數(shù)的物體結構及點的分布。當點云數(shù)量為100點時,存在一定的信息損失,但物體的關鍵部位仍然可以被識別。當存在30 點時,只剩下基本的形狀信息。如果只剩下10 個點,此時形狀信息已經(jīng)難以分辨。圖6(b)顯示了隨著點數(shù)量下降精度曲線的變化過程。結果表明,與其它流行算法相比,基于視圖融合和注意力機制的識別網(wǎng)絡具有更好的魯棒性。
圖6 ModelNet魯棒性分析
對于Aircraft 數(shù)據(jù)集,分析目標在不同探測距離下網(wǎng)絡的穩(wěn)健性。圖7是不同距離下同一視角點云的分布情況以及網(wǎng)絡的識別性能。結果表明,隨著探測距離的增加,物體表面點云稀疏,識別難度增強。在真實的探測環(huán)境下,提出的方法對不同探測距離下的目標有著很好的魯棒性。從圖中可明顯看出,本文提出的網(wǎng)絡曲線下降趨勢與其它曲線相比要慢得多。
圖7 Aircaft魯棒性分析
此外,本文分析了視圖數(shù)量對于識別結果的影響,分別對1、3、6 和10 視圖的識別效果進行了測試。對于ModelNet10 數(shù)據(jù)集和Aircraft數(shù)據(jù)集的結果如表3所示。
表3 輸入10個點時不同數(shù)量視圖的精確度
在所有實驗中,均勻地對10個點進行采樣。結果表明,視圖的數(shù)量對網(wǎng)絡的識別效果有一定的影響。對于ModelNet10 數(shù)據(jù)集,當視圖減少至6 個時,準確率下降了2.5%;當視圖減少至3 個時,準確率只有83.2%。這是因為,各視圖中包含著目標的局部點云信息,網(wǎng)絡輸入的視圖數(shù)量減少,經(jīng)過視圖融合模塊后拼接到的全局點云特征圖的數(shù)據(jù)也會減少,導致部分特征信息丟失,數(shù)據(jù)的表達能力減弱,識別精度降低。
為了證明網(wǎng)絡中視圖融合模塊和基于注意力機制的局部編碼模塊的有效性,我們在Model?Net10 數(shù)據(jù)集上進行了一系列消融實驗,以特征分布的t?SNE 可視化表征網(wǎng)絡的識別效果。圖8(a)為該網(wǎng)絡的實驗結果。首先,為了證明視圖融合模塊的有效性,在網(wǎng)絡中刪除視圖融合模塊(Module 2),以單視角下的稀疏點云作為網(wǎng)絡的輸入,實驗結果如圖8(b)所示。其次,為了證明局部編碼模塊的有效性,在網(wǎng)絡中刪除局部編碼模塊(Module 1),實驗結果如圖8(c)所示。最后,刪除網(wǎng)絡中視圖融合模塊和局部編碼模塊,實驗結果如圖8(d)所示。結果表明,網(wǎng)絡中視圖融合模塊和局部編碼模塊都對網(wǎng)絡的識別效果有積極影響。
圖8 在Modelnet10上特征分布的t?SNE可視化
激光雷達探測小物體存在點云稀疏的問題,本文提出了一個基于多視圖融合和注意力機制的點云識別網(wǎng)絡。網(wǎng)絡的關鍵是添加了視圖融合模塊和基于注意力機制的局部編碼模塊,它將輸入的多視角稀疏點云進行融合,得到了增強后的全局點云特征。針對增強后的全局點云,提出基于注意力的局部編碼,編碼局部結構關系的同時突出關鍵點特征。在公開數(shù)據(jù)集以及Aircraft 數(shù)據(jù)集上,本文提出的方法顯示出比其它最先進的算法更好的性能。因此,本文提出的方法對真實環(huán)境中的激光雷達數(shù)據(jù)也同樣適用,可應用于小物體的識別任務中。未來,將探索更有效的特征提取方法以提高網(wǎng)絡表征局部特征的能力。我們將專注于提取目標的局部細節(jié),并嘗試用盡可能少的點捕捉有效的特征。此外,我們希望利用無人機上的嵌入式平臺對物體進行靈活掃描,完成遠距離下小目標的識別任務。