摘要
我們提出了一種新的高性能3D對(duì)象檢測框架,稱為PointVoxel RCNN(PV-RCNN),用于從點(diǎn)云中精確檢測3D對(duì)象。我們提出的方法深度集成了三維體素卷積神經(jīng)網(wǎng)絡(luò)(CNN)和基于PointNet的集合抽象,以學(xué)習(xí)更具判別力的點(diǎn)云特征。它利用了3D體素CNN的高效學(xué)習(xí)和高質(zhì)量建議以及基于PointNet的網(wǎng)絡(luò)的靈活感受野。具體而言,所提出的框架通過新穎的體素集抽象模塊將具有3D體素CNN的3D場景總結(jié)為一小組關(guān)鍵點(diǎn),以節(jié)省后續(xù)計(jì)算并對(duì)代表性場景特征進(jìn)行編碼。給定體素CNN生成的高質(zhì)量3D提案,提出了RoIgrid池,以通過關(guān)鍵點(diǎn)集抽象將提案特定特征從關(guān)鍵點(diǎn)抽象到RoI網(wǎng)格點(diǎn)。與傳統(tǒng)的池化操作相比,RoI網(wǎng)格特征點(diǎn)編碼了更豐富的上下文信息,用于準(zhǔn)確估計(jì)對(duì)象的置信度和位置。在KITTI數(shù)據(jù)集和Waymo Open數(shù)據(jù)集上進(jìn)行的大量實(shí)驗(yàn)表明,我們提出的PV-RCNN以顯著的優(yōu)勢超過了最先進(jìn)的3D檢測方法。
引言
我們提出了一種新的3D對(duì)象檢測框架PVRCNN(如圖1所示),它通過結(jié)合基于點(diǎn)和基于體素的特征學(xué)習(xí)方法的優(yōu)點(diǎn)來提高3D檢測性能。
PV-RCNN的原理在于,基于體素的操作有效地編碼了多尺度特征表示,并可以生成高質(zhì)量的3D建議,而基于PointNet的集合抽象操作通過靈活的感受野保留了準(zhǔn)確的位置信息。我們認(rèn)為,這兩種類型的特征學(xué)習(xí)框架的集成可以幫助學(xué)習(xí)更具鑒別力的特征,以實(shí)現(xiàn)精確的細(xì)粒度盒子細(xì)化。
主要挑戰(zhàn)是如何將兩種類型的特征學(xué)習(xí)方案,特別是具有稀疏卷積的3D體素CNN和基于PointNet的集合抽象有效地結(jié)合到一個(gè)統(tǒng)一的框架中。一個(gè)直觀的解決方案是在每個(gè)3D提案中對(duì)幾個(gè)網(wǎng)格點(diǎn)進(jìn)行均勻采樣,并采用集合抽象來聚合這些網(wǎng)格點(diǎn)周圍的3D體素特征,以進(jìn)行提案細(xì)化。然而,這種策略是高度內(nèi)存密集型的,因?yàn)轶w素的數(shù)量和網(wǎng)格點(diǎn)的數(shù)量都可能非常大,以至于難以實(shí)現(xiàn)令人滿意的性能。
因此,為了更好地集成這兩種類型的點(diǎn)云特征學(xué)習(xí)網(wǎng)絡(luò),我們提出了一種兩步策略,第一步是體素到關(guān)鍵點(diǎn)場景編碼步驟,第二步是關(guān)鍵點(diǎn)到網(wǎng)格RoI特征提取步驟。
主要貢獻(xiàn):
- (1) 我們提出了PV-RCNN框架,該框架有效地利用了基于體素和基于點(diǎn)的3D點(diǎn)云特征學(xué)習(xí)方法的優(yōu)勢,從而在可管理的內(nèi)存消耗的情況下提高了3D對(duì)象檢測的性能。
- (2) 我們提出了體素到關(guān)鍵點(diǎn)場景編碼方案,該方案通過體素集抽象層將整個(gè)場景的多尺度體素特征編碼為一個(gè)小的關(guān)鍵點(diǎn)集。這些關(guān)鍵點(diǎn)特征不僅保持了準(zhǔn)確的位置,而且對(duì)豐富的場景上下文進(jìn)行了編碼,顯著提高了3D檢測性能。
- (3) 我們?yōu)槊總€(gè)提議中的網(wǎng)格點(diǎn)提出了一個(gè)多尺度RoI特征抽象層,該層聚合了來自場景的更豐富的上下文信息,用于精確的框細(xì)化和置信度預(yù)測。
- (4) 我們提出的方法PV-RCNN以顯著的優(yōu)勢優(yōu)于以前的所有方法,在競爭激烈的KITTI 3D檢測基準(zhǔn)中排名第一,在大規(guī)模Waymo Open數(shù)據(jù)集上也以較大的優(yōu)勢超過了以前的方法。
方法
圖2:我們提出的PV-RCNN的總體架構(gòu)。首先對(duì)原始點(diǎn)云進(jìn)行體素化,以饋送到基于3D稀疏卷積的編碼器中,從而學(xué)習(xí)多尺度語義特征并生成3D對(duì)象建議。然后,通過新穎的體素集抽象模塊,將多個(gè)神經(jīng)層上學(xué)習(xí)到的體素特征量總結(jié)為一小組關(guān)鍵點(diǎn)。最后,將關(guān)鍵點(diǎn)特征聚合到RoI網(wǎng)格點(diǎn),以學(xué)習(xí)用于細(xì)粒度提案細(xì)化和置信度預(yù)測的提案特定特征。
3D Voxel CNN for Efficient Feature Encoding and Proposal Generation
具有3D稀疏卷積的體素CNN是最先進(jìn)的3D檢測器的熱門選擇,用于有效地將點(diǎn)云轉(zhuǎn)換為稀疏的3D特征體,由于其效率高、精度高,我們采用它作為特征編碼和3D提議生成框架的主干。
3D voxel CNN
首先將輸入點(diǎn)P劃分為空間分辨率為L × W × H的小體素,其中非空體素的特征直接計(jì)算為內(nèi)部所有點(diǎn)的逐點(diǎn)特征(即三維坐標(biāo)、反射率強(qiáng)度)的平均值。該網(wǎng)絡(luò)利用一系列3×3×3三維稀疏卷積,逐步將點(diǎn)云轉(zhuǎn)換為下采樣大小分別為1x、2x、4x、8x的特征體。這種稀疏特征體可以看作是一組體素特征向量。
3D proposal generation
通過將編碼的8×downsampled 3D特征體轉(zhuǎn)換為2D鳥瞰特征圖,可以按照基于錨點(diǎn)的方法生成高質(zhì)量的3D提案。具體來說,我們沿著Z軸疊加3D特征體,得到了L/8 × W/8鳥瞰特征圖。每個(gè)類有2個(gè)× L/8 × W/8個(gè)3D錨盒,錨盒采用該類3D對(duì)象的平均尺寸,鳥瞰特征圖的每個(gè)像素分別評(píng)估0?、90?兩個(gè)方向的錨。
Discussions.(為下一模塊做鋪墊)
最先進(jìn)的檢測器大多采用兩階段框架。它們需要從生成的3D特征體積或2D地圖中匯集RoI特定特征,以進(jìn)行進(jìn)一步的提案細(xì)化。然而,來自3D體素CNN的這些3D特征體積在以下方面具有主要限制。(i) 這些特征體積通常具有低空間分辨率,因?yàn)樗鼈儽幌虏蓸痈哌_(dá)8倍,這阻礙了對(duì)象在輸入場景中的精確定位。(ii)即使可以上采樣以獲得更大空間大小的特征體積/圖,它們通常仍然相當(dāng)稀疏。因此,傳統(tǒng)的池化方法將獲得大部分為零的特征,并浪費(fèi)大量的計(jì)算和內(nèi)存用于第二階段的細(xì)化。
另一方面,在PointNet的變體中提出的集合抽象操作已經(jīng)顯示出對(duì)來自任意大小的鄰域的特征點(diǎn)進(jìn)行編碼的強(qiáng)大能力。因此,我們建議將3D體素CNN與一系列集合抽象操作集成,以進(jìn)行準(zhǔn)確和穩(wěn)健的第2階段建議細(xì)化。
使用集合抽象操作來池化場景特征體素的一個(gè)簡單解決方案是將多尺度特征體直接聚合到RoI網(wǎng)格。然而,由于大量的稀疏體素,這種直觀的策略只是占用了大量的GPU內(nèi)存來計(jì)算集合抽象中的成對(duì)距離。
為了解決這個(gè)問題,我們提出了一種分兩步的方法,首先將整個(gè)場景的不同神經(jīng)層的體素編碼為少量關(guān)鍵點(diǎn),然后將關(guān)鍵點(diǎn)特征聚合到RoI網(wǎng)格中進(jìn)行框建議細(xì)化。
Voxel-to-keypoint Scene Encoding via Voxel Set Abstraction
我們的框架首先將表示整個(gè)場景的多尺度特征體素聚合為少量關(guān)鍵點(diǎn),這些關(guān)鍵點(diǎn)充當(dāng)3D體素CNN特征編碼器和提案細(xì)化網(wǎng)絡(luò)之間的橋梁。
Keypoints Sampling
具體而言,我們采用最遠(yuǎn)點(diǎn)采樣(FPS)算法從點(diǎn)云P中采樣少量n個(gè)關(guān)鍵點(diǎn)K={p1,···,pn},其中KITTI數(shù)據(jù)集n=2048,Waymo數(shù)據(jù)集n=4096。這種策略鼓勵(lì)關(guān)鍵點(diǎn)均勻分布在非空體素周圍,并且可以代表整個(gè)場景。
【FPS(Furthest Point Sampling)】是一種用于點(diǎn)云采樣的算法。FPS 旨在從點(diǎn)云中選擇一組代表性的點(diǎn),以便在減少數(shù)據(jù)量的同時(shí)保留關(guān)鍵信息。FPS 的基本思想是從點(diǎn)云中選擇一個(gè)起始點(diǎn),然后在剩余的點(diǎn)中找到距離已選點(diǎn)最遠(yuǎn)的點(diǎn)作為下一個(gè)選定點(diǎn),如此循環(huán)直到達(dá)到所需的采樣數(shù)量。這確保了所選點(diǎn)的分布較為均勻,并且覆蓋了原始點(diǎn)云的關(guān)鍵特征。
Voxel Set Abstraction Module
關(guān)鍵點(diǎn)周圍的點(diǎn)現(xiàn)在是由多層三維體素CNN編碼的具有多尺度語義特征的規(guī)則體素,而不是像PointNet++那樣從PointNet學(xué)習(xí)特征的相鄰原始點(diǎn)。
其中,F(xiàn)(lk) = {F(lk) 1,···,F(xiàn)(lk)Nk}為三維體素CNN的第k層體素特征向量集合,V(lk) = {V(lk) 1,···,V(lk)Nk}為它們的三維坐標(biāo),由第k層體素指數(shù)和實(shí)際體素大小計(jì)算,其中Nk為第k層非空體素的個(gè)數(shù)。
對(duì)于每個(gè)關(guān)鍵點(diǎn)pi,我們首先在半徑rk內(nèi)的第k層識(shí)別其相鄰的非空體素,以檢索體素方向的特征向量集為
- v(lk)j?pi 局部相對(duì)坐標(biāo)(表示語義體素特征f (lk)j的相對(duì)位置。)
通過PointNet對(duì)pi的相鄰體素集S(lk)i內(nèi)的體素特征進(jìn)行變換,以生成關(guān)鍵點(diǎn)pi的特征:
- M(·)表示從相鄰集S(lk)i中隨機(jī)采樣最多Tk個(gè)體素以節(jié)省計(jì)算,
- G(·)代表多層感知器網(wǎng)絡(luò)以對(duì)體素特征和相對(duì)位置進(jìn)行編碼
- 盡管相鄰體素的數(shù)量在不同的關(guān)鍵點(diǎn)之間變化,但沿通道最大池化操作max(·)可以將不同數(shù)量的相鄰體素特征向量映射到關(guān)鍵點(diǎn)pi的特征向量f(pvk)i。
上述策略是在3D體素CNN的不同級(jí)別上執(zhí)行的,并且可以將來自不同級(jí)別的聚合特征連接起來,以生成關(guān)鍵點(diǎn)pi的多尺度語義特征
其中生成的特征f(pv)i結(jié)合了來自體素特征f(lk)j的基于3D體素CNN的特征學(xué)習(xí)和來自體素集抽象的基于PointNet的特征。此外,pi的三維坐標(biāo)還保留了準(zhǔn)確的位置信息。
Extended VSA Module
(VSA)Voxel Set Abstraction
我們通過進(jìn)一步豐富原始點(diǎn)云P和8倍下采樣鳥瞰圖的關(guān)鍵點(diǎn)特征來擴(kuò)展VSA模塊。其中原始點(diǎn)云部分彌補(bǔ)了點(diǎn)云體素化的量化損失,而2D鳥瞰圖沿Z軸具有更大的接受域。原始點(diǎn)云特征f (raw)i也按照Eq.(2)進(jìn)行聚合。關(guān)鍵點(diǎn)pi的鳥瞰特征f (bev)i則通過對(duì)鳥瞰特征映射的雙線性插值得到。因此,通過連接pi的所有相關(guān)特性,進(jìn)一步豐富了它的關(guān)鍵點(diǎn)特性
Predicted Keypoint Weighting.
在整個(gè)場景由少量關(guān)鍵點(diǎn)編碼后,它們將被后續(xù)階段進(jìn)一步用于進(jìn)行提案細(xì)化。直觀地說,屬于前景對(duì)象的關(guān)鍵點(diǎn)應(yīng)該對(duì)提案的精確細(xì)化有更大的貢獻(xiàn),而來自背景區(qū)域的關(guān)鍵點(diǎn)的貢獻(xiàn)應(yīng)該更小。
因此,我們提出了一個(gè)預(yù)測關(guān)鍵點(diǎn)加權(quán)(PKW)模塊(見圖3),通過點(diǎn)云分割的額外監(jiān)督來重新加權(quán)關(guān)鍵點(diǎn)特征。分割標(biāo)簽可以由3D檢測框注釋直接生成,即通過檢查每個(gè)關(guān)鍵點(diǎn)是在真實(shí)3D框的內(nèi)部還是外部。每個(gè)關(guān)鍵點(diǎn)的特征的預(yù)測特征加權(quán)可以公式化為
- A() 表示一個(gè)具有Sigmoid函數(shù)的三層MLP網(wǎng)絡(luò),用于預(yù)測[0,1]之間的前景置信度。
通過focal loss來訓(xùn)練
Keypoint-to-grid RoI Feature Abstraction for Proposal Refinement
RoI-grid Pooling via Set Abstraction.
對(duì)于每個(gè)3D RoI,如圖4所示,我們提出了RoI網(wǎng)格池模塊,將關(guān)鍵點(diǎn)特征聚合到具有多個(gè)接受域的RoI網(wǎng)格點(diǎn)。我們?cè)诿總€(gè)3D方案中統(tǒng)一采樣6 × 6 × 6個(gè)網(wǎng)格點(diǎn),記為G = {g1,···,g216}。采用集合抽象操作,從關(guān)鍵點(diǎn)特征中聚合網(wǎng)格點(diǎn)的特征
具體來說,我們首先識(shí)別半徑為r的網(wǎng)格點(diǎn)gi的相鄰關(guān)鍵點(diǎn)
聚合相鄰的關(guān)鍵點(diǎn)特征集
在從其周圍的關(guān)鍵點(diǎn)獲得每個(gè)網(wǎng)格的聚合特征后,可以通過具有256個(gè)特征維度的兩層MLP對(duì)相同RoI的所有RoI網(wǎng)格特征進(jìn)行矢量化和變換,以表示整個(gè)提議。
3D Proposal Refinement and Confidence Prediction.
對(duì)于第k個(gè)3D RoI,其置信度訓(xùn)練目標(biāo)yk歸一化為介于[0,1]之間的
(IOU大于等于0.75時(shí),y剛好是1,所以認(rèn)為IOU達(dá)到0.75就已經(jīng)很好了)
- confidence利用二值交叉熵?fù)p失來進(jìn)行訓(xùn)練。
- bos regression利用smooth-L1損失函數(shù)進(jìn)行訓(xùn)練
實(shí)驗(yàn)
KITTI數(shù)據(jù)集
文章來源:http://www.zghlxwxcb.cn/news/detail-817939.html
結(jié)論
我們提出了PV-RCNN框架,這是一種從點(diǎn)云精確檢測三維目標(biāo)的新方法。該方法通過提出的體素集抽象層將多尺度三維體素CNN特征和基于pointnet的特征集成到一個(gè)小的關(guān)鍵點(diǎn)集合中,然后將學(xué)習(xí)到的關(guān)鍵點(diǎn)的判別特征聚合到具有多個(gè)接受域的roi網(wǎng)格點(diǎn)中,以捕獲更豐富的上下文信息,用于細(xì)粒度提案的細(xì)化。在KITTI數(shù)據(jù)集和Waymo Open數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,我們提出的體素到關(guān)鍵點(diǎn)場景編碼和關(guān)鍵點(diǎn)到網(wǎng)格的RoI特征抽象策略與之前最先進(jìn)的方法相比,顯著提高了3D目標(biāo)檢測性能。文章來源地址http://www.zghlxwxcb.cn/news/detail-817939.html
到了這里,關(guān)于【論文解讀】PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!