VoxelNeXt:用于3D检测和跟踪的纯稀疏体素网络
VoxelNeXt:Fully Sparse VoxelNet for 3D Object Detection and Tracking
目前自動駕駛場景的3D檢測框架大多依賴于dense head,而3D點云數據本身是稀疏的,這無疑是一種低效和浪費計算量的做法。我們提出了一種純稀疏的3D 檢測框架 VoxelNeXt。該方法可以直接從sparse CNNs 的 backbone網絡輸出的預測 sparse voxel 特征來預測3D物體,無需借助轉換成anchor, center, voting等中間狀態的媒介。該方法在取得檢測速度優勢的同時,還能很好地幫助多目標跟蹤。VoxelNeXt在nuScenes LIDAR 多目標跟蹤榜單上排名第一。
1.概述
在本文中,我們提出了VoxelNeXt。這是一個簡單、高效且無需后期處理的3D對象檢測器。我們設計的核心是體素到對象方案,其根據體素特征直接預測3D對象一個強大的完全稀疏的卷積網絡。關鍵的優點是我們的方法可以去掉錨代理,稀疏到密集轉換、區域建議網絡和其他復雜組件。
?由于我們的體素到對象方案避免了密集的特征圖,所以網絡可以高效推理。它只預測稀疏和必要的位置,如表1所示,與CenterPoint[57]相比。這種表示也使得VoxelNeXt可以很容易地擴展到使用離線跟蹤器的3D跟蹤。先前的工作[57]只跟蹤預測的物體中心,這可能涉及對其位置的預測偏差。在VoxelNeXt中,查詢體素(用于框預測的體素),也可以被跟蹤以進行關聯。
最近,FSD[16]利用了完全稀疏的框架。在VoteNet[37]的推動下,它投票支持對象中心,并采用迭代細化。由于3D稀疏數據通常分散在物體表面,因此這種投票過程不可避免地會引入偏差或誤差。因此,需要諸如迭代群校正之類的細化來確保最終的準確性。該系統因其對客體中心的強烈信念而變得復雜。FSD[16]在大范圍表現不錯,但其效率不如我們的,如圖所示。
?2.具體方法
如果不使用2D檢測頭,直接用voxel稀疏會有什么問題呢?
稀疏探測器[16,46,47]的方法避免了密集的探測頭,而是引入了其他復雜的管道。RSN[47]對距離圖像執行前景分割,然后檢測剩余圖像上的3D對象稀疏數據。SWFormer[46]提出了一種具有精細窗口分割和具有特征金字塔的多個頭的稀疏變換器。受VoteNet[37]的啟發,FSD[16]使用點聚類和組校正來解決中心特征缺失的問題。
這些檢測器進行稀疏預測,但以不同的方式使檢測管道復雜化。在我們的工作中,這個中心缺失的問題也可以通過具有大感受野的稀疏網絡簡單地跳過。我們對常用的稀疏神經網絡進行最小的調整,以實現完全稀疏的檢測器。
稀疏神經網絡因其效率而成為3D深度學習[10,11,23,41]中的大型骨干網絡。人們普遍認為,它的表現能力對于預測是有限的。與所有這些解決方案相反,我們證明,在沒有任何其他復雜設計的情況下,通過額外的下采樣層可以簡單地解決感受野瓶頸不足的問題。
點云或體素分布不規則,通常分散在3D對象的表面,而不是中心或內部。這促使我們沿著一個新的方向進行研究,直接基于體素而不是手工制作的錨或中心來預測3D盒子。
2.1.稀疏CNN骨干網適配
具有足夠感受野的強特征表示是確保對稀疏體素特征進行直接和正確預測的必要條件。盡管普通稀疏CNN骨干網絡已被廣泛用于3D對象檢測器[12,41,57],但最近的工作表明了其弱點,并提出了各種方法來增強稀疏骨干,例如使用精心設計的卷積[7]、large kernels [8], and transformers [25, 26, 35]。
與所有這些方法不同,我們盡可能少地進行修改來實現這一點,只使用額外的下采樣層。默認情況下,簡單稀疏的CNN骨干網絡有4個階段,其特征步長為{1,2,4,8}。我們將輸出稀疏特征分別命名為{F1,F2,F3,F4}。此設置無法進行直接預測,尤其是對于大型對象。為了增強其能力,我們簡單地包括兩個額外的下采樣層,以獲得{F5,F6}的步長為{16,32}的特征。
這種微小的變化直接對擴大感受野產生了顯著的影響。我們將最后三個階段{F4,F5,F6}到Fc的稀疏特征進行組合。它們的空間分辨率都與F4對齊。對于階段i,Fi是一組單獨的特征fp。p∈Pi是三維空間中的一個位置,坐標為(xp,yp,zp)。該過程如圖4所示。值得注意的是,這種簡單的稀疏串聯不需要其他參數化層。稀疏特征Fc和它們的位置Pc被獲得為:
?
?圖4 VoxelNeXt框架的詳細結構。圖中帶圓圈的數字對應于第3.1節和第3.2節中的段落。1-額外向下取樣。2-稀疏高度壓縮。3-體素選擇。4-框回歸。為了簡單起見,我們在這里省略了F1、F2和F3的生成。
在附加下采樣層的情況下,有效感受野ERF更大,預測框更準確。它足夠有效,并且幾乎不需要額外的計算,如表2所示。因此,我們使用這種簡單的設計作為骨干網絡。
稀疏高度壓縮
3D對象檢測器通過將稀疏特征轉換為密集特征,然后將深度(沿z軸)組合為通道維度,將3D體素特征壓縮為密集的2D圖。這些操作需要占用占用內存和計算。
在VoxelNet中,我們發現2D稀疏特征對于預測是有效的。VoxelNeXt中的高度壓縮是完全稀疏的。我們只需將所有體素放在地面上,并在相同的位置對特征進行累加。它的成本不超過1毫秒。我們發現,對壓縮的2D稀疏特征的預測成本低于使用3D稀疏特征的成本,如表5所示。壓縮的稀疏特征F’c及其位置P’c如下所示:
?
?空間體素修剪
我們的網絡完全基于體素。3D場景通常包含大量冗余的背景點,并且對預測幾乎沒有好處。我們沿著下采樣層逐漸修剪不相關的體素。根據SPS Conv[32],我們抑制了具有小特征量值的體素的膨脹,如圖6所示。
?
將抑制比設為0.5,我們僅對特征幅度|fp|(在通道維度上平均)位于所有體素的上半部分的體素進行擴張。體素修剪在很大程度上節省了計算,而不會影響性能,如表3所示。
?2.2. 稀疏檢測頭
體素選擇
圖4顯示了VoxelNeXt模型的詳細框架。我們不依賴于密集特征圖M,而是直接基于3D CNN骨干網絡V∈R的稀疏輸出來預測對象 N×F。我們首先預測K類體素的分數,s∈R
N×K。在訓練過程中,我們將離每個注釋邊界框中心最近的體素指定為正樣本。我們使用焦點損失[31]進行監督。我們注意到,在推理查詢過程中,體素通常不在對象中心。它們甚至不一定在邊界框內,例如圖中的行人。我們在表7中統計了nuScenes驗證集上查詢體素的分布。
?
?在推理過程中,我們通過使用稀疏最大池來避免NMS后處理,因為特性足夠稀疏。與子流形稀疏卷積[19]類似,它只對非空位置進行運算。這是基于預測的分數s,并針對每個類別單獨進行。
我們采用稀疏最大池來選擇具有空間局部最大值的體素。去除的體素將被排除在框預測中,這節省了頭部的計算。
框回歸
從正的或選定的稀疏體素特征v∈Rn×F直接回歸邊界框。根據CenterPoint[57]中的協議,我們回歸位置(?x,?y)∈R2,高度h∈R,3D尺寸s∈R3,旋轉角度(sin(α),cos(α))∈R2
對于nuScenes數據集或跟蹤,我們通過任務定義回歸速度v∈R2。這些預測是在訓練期間在L1損失函數下監督的。對于Waymo數據集,我們還預測了IoU,并在IoU損失的情況下進行訓練,以提高性能[22]。我們簡單地使用核大小為3的全連通層或3×3子流形稀疏卷積層進行預測,而不需要其他復雜的設計。我們發現,3×3稀疏卷積比全連接層產生更好的結果,負擔有限,如表6所示
?2.3 3D跟蹤
?我們的框架自然擴展到了3D跟蹤。CenterPoint[57]通過二維速度v∈R2跟蹤預測的物體中心,該速度也受到L1損失的監督。我們將此設計擴展到VoxelNeXt中。我們的解決方案是使用體素關聯來包括更多與查詢體素位置匹配的軌跡。
如圖8所示,我們記錄了用于預測每個框的體素的位置。與中心關聯類似,我們計算L2距離以進行匹配。通過將查詢位置的索引回溯到原始輸入體素而不是stride-8位置來選擇查詢位置。被跟蹤的體素存在于輸入數據中,其比預測的中心具有更小的偏差。此外,相鄰幀之間的查詢體素共享與框相似的相對位置。我們的經驗表明,體素關聯改善了表11中的跟蹤。
?
?
?3.總結及實驗結果
文章相對centerpoint 有較大提升,思想源于centerpoint,創新點在于直接使用真值中心最近對應的voxel作為有無目標的回歸,而centerpont中還是基于2d特征的heatmap。跟蹤時也使用原始查詢voxel表現突出。具體指標如下:
?
?
?原論文:https://arxiv.org/pdf/2303.11301.pdf
?
總結
以上是生活随笔為你收集整理的VoxelNeXt:用于3D检测和跟踪的纯稀疏体素网络的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTML在黑色框中加白色文字,文字一部分
- 下一篇: 【CVPR2022】Lite Visio