PSA-Det3D:探究3D目標檢測小尺寸解決方案
論文標題:PSA-Det3D: Pillar Set Abstraction for 3D object Detection
作者:Zhicong Huang, Jingwen Zhao, Zhijie Zheng, Dihu Chen, Haifeng Hu
單位:中山大學
1摘要
從3D點云數(shù)據(jù)檢測小尺寸目標是一個具有挑戰(zhàn)性的問題,其主要原因包含以下兩點:(1)相比與正常目標,小尺寸目標往往缺少有效點云數(shù)據(jù),因此模型感知更為困難;(2)小尺寸目標容易被遮擋,導致點云數(shù)據(jù)分布往往是殘缺補全的。針對以上難點,作者提出了PSA-Det3D網(wǎng)絡提升3D小尺寸目標檢測精度,包含PSA (Pillar Set Abstraction),F(xiàn)PC (Foreground Point Compensation)和point-based detection模塊。PSA模塊是基于SA (Set Abstraction)設計,通過pillar query operation擴大感受野,有效聚合點特征。FPC模塊利用前景點分割和候選框生成模塊,定位更多的遮擋物體。前景點和預測的中心點被整合在一起,用以預測最終的檢測結果。在KITTI 3D檢測數(shù)據(jù)集中,PSA-Det3D取得了較好的性能,尤其是對于小尺寸目標。
2介紹
基于點云的3D檢測在自動駕駛、機器人等領域有著廣泛的應用。現(xiàn)有的檢測器對于車這一類別有著較高的檢測精度,但是對于小尺寸目標如行人、騎車的人等檢測性能還不盡人意。因此,如何提高小尺寸目標的檢測精度仍然是一個具有挑戰(zhàn)性的問題。一些方法通過多模態(tài)融合,聚合圖像和點云中的細節(jié)信息,在正常和小尺寸目標上取得了比較好的性能。但是,其網(wǎng)絡結構往往比較復雜,因此限制了其在實際應用中的效果。盡管在基于點的3D檢測上取得了性能的突破,小尺寸目標的檢測精度依然不盡人意?;邳c云的小尺寸目標檢測主要面臨以下的兩個挑戰(zhàn):(1)相比于正常目標如車等,小尺寸目標感知通常更為困難,因為稀疏點云并不能為這些目標提供充足的信息;(2)小尺寸目標容易被遮擋,因此在3D點云中,往往呈現(xiàn)不完整的形狀特征,所以僅僅依靠通用的語義特征提取模塊難對其進行判別。
考慮到以上難點,作者首先提出了PSA (Pillar Set Abstraction)模塊,用于學習小目標的點特征。受Pillar-based等方法的啟發(fā),PSA模塊在特征聚合前使用了pillar query operation來擴大編碼網(wǎng)絡的感受野。相比與傳統(tǒng)的Set Abstraction模塊,PSA通過較少的計算資源提高網(wǎng)絡的檢測性能,尤其對于小尺寸目標檢測。
此外,作者還提出了FPC (Foreground Point Compensation)模塊,用以定位遮擋物體。在FPC中,作者不僅僅對前景點進行了分割,還估計了所有可能物體的中心點,中心點信息可以有效補償遮擋帶來的不正確的分割結果。通過融合前景點分割和中心點預測,可以得到最終的檢測結果。PSA模塊和FPC模塊構成了作者提出的完整的網(wǎng)絡,被命名為PSA-Det3D。
總得來說,本工作的貢獻包括:
(1)提出了PSA (Pillar Set Abstraction)模塊擴大感受野,學習小尺寸目標稀疏點云的特征。 (2)提出了FPC (Foreground Point Compensation)模塊定位小尺寸遮擋目標。 (3)在KITTI 3D檢測任務上,取得了較好的性能,尤其是小尺寸目標性能。
3方法
如圖1所示,PSA-Det3D主要包含3個模塊:(a) PSA結構和點云骨干網(wǎng)絡;(b) FPC模塊以及(c) RCNN結構用于生成最后的檢測結果。輸入的點云集合P首先通過點云骨干網(wǎng)絡生成點云特征F,并且利用多個PSA結構組成特征編碼器。接著點特征送入FPC模塊,預測3D結果框BB同時通過類似PointRCNN的分割模塊計算前景點置信度。利用融合算法和中心點預測模塊優(yōu)化候選框的點并生成3D候選框,最后,通過RCNN模塊微調候選框。

Pillar Set Abstraction (PSA) 模塊
PointNet++中的Set Abstraction (SA) 模塊已經(jīng)被廣泛地應用于當前的檢測器中,在SA中,輸入的點被分為數(shù)個以采樣點為中心的球體內。作者以行人點云為例模擬這個操作過程,如圖2所示。SA生成的球體是以關鍵點為中心,聚合其內部的特征。但是,這個操作被采樣點的數(shù)目和球體半徑所限制。如果采樣點減少到兩個或者一個,這些球體并不能很好地覆蓋待檢測目標,作者認為這可能是小尺寸目標檢測性能降低的關鍵原因之一。然而,簡單增加球體半徑并不能解決這個問題,因為這個操作在特征聚合的過程中會引入額外的噪聲,由此導致3D細節(jié)信息的丟失。

基于pillar的方法提供了一個特殊的聚合方式,可以通過在z-軸擴大體素邊界將點云數(shù)據(jù)劃分為數(shù)個柱狀結構。受此啟發(fā),作者提出了一個新穎的Pillar Set Abstraction (PSA) 結構,在PointNet++的SA模塊中進行基于pillar的聚合操作。首先,作者使用了FPS算法采樣一些關鍵點,并且利用PointNet網(wǎng)絡在PSA層中學習特征。在FPS后,作者利用基于柱結構的聚合操作劃分點云數(shù)據(jù),可以用如下公式表示:

其中GA是聚合結果,P是輸入點云數(shù)據(jù),N是輸入點云數(shù)量,K是關鍵點集合,是采樣點的數(shù)量,是點p和點k間的水平距離。
PSA提出的基于柱體的聚合操作如圖2所示,即使僅僅使用一個關鍵點也可以覆蓋到絕大多數(shù)的點云數(shù)據(jù)。換一句話說,PSA模塊為后續(xù)的MLP提供了更多的有效點,因此可以幫助網(wǎng)絡學習到更豐富的特征,這個操作對于小尺寸目標檢測非常有意義。
Foreground Point Compensation (FPC)
為了在3D候選框中選擇有價值的點云數(shù)據(jù)和3D邊界框,基礎模型通常計算所有點的前景置信度。盡管分割網(wǎng)絡可以有效區(qū)分正常物體,遮擋問題導致的形狀數(shù)據(jù)的缺失不可避免地影響了分割結果的準確率。此外,前景置信度不能完全反應3D候選框的質量,因為3D候選框和內部點的關系并沒有被充分考慮在內,這些問題對于小尺寸目標更為凸顯。
越來越多的方法通過定位物體中心點預測3D檢測框,這種基于前景點分割的方法往往可以帶來性能的提升。作者提出了FPC模塊,通過預測物體中心點來優(yōu)化分割結果。FPC模塊包含一個中心點預測模塊和一個融合模塊,細節(jié)如算法1所示。

FPC的輸入包括點云特征維度n,前景置信度C_FG和生成的3D邊界框BB,中心點的計算基于3D邊界框和其內部點云關系。首先,最高前景置信度的點被選為初始中心點t_0,對應的3D框BB[t_0]被用來區(qū)分框中的其他點,這些其余點被分類為ignored points M_ignored。接下來,在剩余點中選擇前景置信度最高的點再次執(zhí)行上述操作,直至所有點都有類別屬性,中心點或者無視點(ignored points)。
為了生成3D候選框的修正得分,作者設計了算法融合中心點和前景點置信度。最終的得分通過FPC的可以利用公式表示為:

其中r是用于決定融合比例的超參數(shù)。
如圖3所示,作者展示了FPC模塊的實驗效果。可以看到很多行人被遮擋了,僅僅使用前景分割并不能有效檢測出部分遮擋行人,如綠色圓圈所示。因此,作者通過預測中心點識別這些物體,如圖中藍色的點。最終,作者的FPC模塊通過融合生成的候選點、前景點和中心點,如圖黃色所示。

修正模塊及損失函數(shù)
作者使用了PointRCNN中的修正模塊和損失函數(shù),最終3D邊界框的回歸損失可以表示為:

其中是前景點的數(shù)量,是bin-based的回歸損失,是smooth L1回歸損失。
4實驗結果
作者在KITTI數(shù)據(jù)集上做了測試,訓練硬件為2張TITAN Xp,共80個epoch,在KITTI test和val子集上結果如圖4、圖5所示。


總得來說,結果具有一定的競爭力。
Ablation實驗:PSA模塊
這個實驗中,作者主要對比了query的形狀對結果的影響,如圖6所示。使用柱狀結構可以顯著提高Ped和Cyc兩類的檢測精度,并且更多的采樣點可以帶來進一步的性能提升。
!圖6 PSA性能
Ablation實驗:FPC模塊
此外,作者還對比了FPC模塊的性能,如圖7所示。只增加FPC模塊大約帶來2.3%的性能提升,對于Ped Mod和Ped Hard子集,提升更為明顯,在4%左右。

