CBGS : 三維點雲物體檢測的類平衡分組和取樣(新自動駕駛數據集nScenes第一名演算法)

  • 2019 年 10 月 4 日
  • 筆記

作者: Geek

https://zhuanlan.zhihu.com/p/80086809

本文已由作者授權,未經允許,不得二次轉載

《Class-balanced Grouping and Sampling for Point Cloud 3D Object Detection》

一、摘要:

本篇文章為新自動駕駛數據集nuScenes第一名的演算法。作者利用稀疏3D卷積來提取豐富的語義特徵,然後將其送入類平衡多頭網路以執行3D物體檢測。以處理在自動駕駛場景中,類不平衡問題,作者設計了一個類平衡取樣和增強策略以生成更平衡的數據,並提出了一個平衡的分組頭來提高類別的性能類似的形狀。基於比賽結果,我們的方法所有指標均大幅提升PointPillars 基準線,在nuScenes數據集上實現最先進的(SOTA)檢測性能。

二、主要貢獻:

傳統我們做kitti數據集只有三個類別(車、人、騎行者),而在Nuscenes中,類別上升到十類,且是以長尾形式存在(大量的車,小量的騎行者),這種數據型態更符合真實駕駛場景,也因此產生出類別不均衡的問題。

本篇文章,作者試圖解決Nuscenes中,類別不均衡的問題,具體解決方法有二大點:

一、我們提出了類平衡取樣策略來處理,nuScenes數據集中的極端不平衡問題

二、我們設計了一個多組頭網路,使類似形狀或大小的類別可以從中受益彼此,以及不同形狀或大小的類別停止互相干擾。

三、主要方法:

Input階段:

兩種策略解決樣本不均衡問題:

一、DS Sampling (作者提出)

基本思想是把佔比較小的類別進行複製,製作出較大數據集,然後針對每個類別用固定比例random sample這個大的數據集,組合出最終數據集,最終數據集的類別密度(類別數量/樣本總數)是相近的,這方法可以減緩樣本不平均問題。

二、GT-AUG (SECOND引用)

把某一樣本中的物體點雲數據,放到另一個樣本中,過程中需要計算擺放位置是否合理。(詳見原文)

Network階段 (3D特徵提取網路、RPN):

使用稀疏3D卷積和skip connection來構建類似resnet的體系結構3D特徵提取器網路。這邊注意三維的卷積完,會從原本的N ×C ×H ×W變成N× l × C/m × H/n × W/n,五維的沒辦法用二維RPN進行操作,所以作者講 l × C/m合併,變回四維,最後使用RPN是類似於VoxelNet的RPN接面構(跟SSD類似),先用二維卷積降維三次,才分別反卷積回原大小,Concate在一起,有點類似特徵金字塔的味道,但最後輸出是Concate所有從低到高層次的特徵。

(這邊說的RPN其實只是RPN head的部份,真正回歸object在下一階段,此階段是把特徵從3維做成2維讓下一階段好操作)

Head階段(Class-balanced Grouping) :

為了解決類別不均衡問題,作者提出Class Grouping的概念,簡而言之,將相似形狀的類別分成一個群(Group),讓該群中樣本數量較多的類去提升樣本數量較少的類的精度,而每個Group之間的總數量也接近,如此一來,網路在學習時,就能夠減緩數量較多類別有主導整個網路的問題。

二個重點:

  • 手動區分出每個Group中,該Group包含的類別有哪些,主要是透過樣本總數與形狀進行分組
  • Group之間樣本總數量相近

目標函數(Loss Function) :

目標函數部分參照SECOND, 常見的問題如物體正反向問題(朝向相反),在這部份做了小改進,額外加入自己設計的朝向性分類(這部份沒寫公式,不確定是二分類正反,還是多一個朝向性分支)

為了降低學習難度,使用了anchor機制,其他設置都SECOND類似,Focal loss做Classification, Smoothl1回歸x, y, z, l, w, h, yaw, vx, vy,值得一提的是,每個分支用Uniform Scaling做學習權重。

其他訓練調參數細節詳見論文。

四、實驗結果:

直上結果,目前NuScence第一名,mAP超Pointpillar12個點。

Ablation studies比較有意思,可以看每個trick具體漲點多少,本篇文章重點就DB-Sample,漲點還算是明顯。

五、結論:

新的自動駕駛數據集nuScence與kitti其中一個不同點是類別變多,且其類別樣本不平均,本篇文章主要提出新的類別不均衡解決方法,透過擴增數據集後,在隨機取樣以平衡較少的類別,並且將形狀類似的分為一組,樣本較少的類別能被形狀類似的樣本較多類別提升精度。

心得(填坑):

  1. 本文提出的方法透過較多先驗知識來完成,包括類別形狀,類別數量等,未來是否能考慮用無監督的方法來學習分組,

2. 進一步探討解決樣本不均衡問題中,DB-sample中相比OHEM、Focal loss等方法有什麼優勢與劣勢,個人覺得DB-sample相比其他解決樣本不均衡的方法相對比較手工且暴力。