當前主流的3D目標檢測方法,很大程度上受2D檢測器的影響。爲了利用2D檢測器,研究人員通常將3D點雲轉換爲規則的網格(體素網格或鳥瞰圖像),或者依靠2D圖像檢測器來提取3D邊界框。很少有研究嘗試直接探測點雲中的物體。何愷明團隊在ICCV2019發表的論文《基於深度霍夫投票的3D目標檢測》(Deep Hough Voting for 3D Object Detection in Point Clouds)中,迴歸第一原則,爲點雲數據構建儘可能通用的3D檢測方法。本文是AI前線第91篇論文導讀,我們將爲大家詳細解讀本論文的技術要點。
由於數據的稀疏性,直接從場景點預測邊界框參數時面臨着一個重大挑戰:3D對象的質心可能遠離任何表面點,因此很難用一個步驟準確地迴歸。爲了解決這一問題,作者提出了一種基於深度點集網絡和霍夫投票的端到端3D目標檢測網絡VoteNet。該模型設計簡單、模型尺寸緊湊,而且效率高。在ScanNet和SUN RGB-D兩個大型數據集上取得了最先進的3D檢測精度。VoteNet通過使用純幾何信息而不依賴彩色圖像,取得了比以前的方法更好的結果。論文已被ICCV 2019收錄,且論文代碼已在GitHub開源。
介紹
3D目標檢測的目的是定位和識別3D場景中的對象。具體地說,在這項工作中,作者的目的是從點雲數據中估計定向的3D邊界框以及對象的語義類別。
-
通過端到端的可微架構,在深度學習的背景下重新定製了霍夫投票,稱之爲VoteNet。
-
在SUN RGB-D和ScanNet兩個數據集上實現了最先進的3D目標檢測性能。
-
深入分析了投票在點雲3D目標檢測中的重要性。
深度霍夫投票(Deep Hough Voting)
傳統的霍夫投票2D檢測器包括離線和在線兩個步驟。首先,給定一組帶有標註的對象邊界框的圖像,用圖像塊(或其特徵)及其到相應目標中心的偏移量之間的映射關係構建一個codebook。在推理時,從圖像中選擇興趣點以提取周圍的圖像塊。然後將這些圖像塊與codebook中的圖像塊進行比較,以檢索偏移量並計算投票。由於目標的圖像塊傾向於一致投票,因此將在目標中心附近形成集羣。最後,通過追溯集羣投票到生成的圖像塊來檢索目標邊界。
這種方法非常適合點雲數據3D目標檢測的問題。首先,基於投票的檢測比區域候選網絡(RPN)更適合於稀疏集。其次,它基於自下而上的原理,積累少量的局部信息以形成可靠的檢測。
然而,由於傳統的霍夫投票是由多個獨立的模塊組成的,如何將其集成到點雲網絡仍然是一個開放的研究課題。爲此,作者建議對流程的不同成分進行以下調整。
興趣點(Interest points)由深度神經網絡來描述和選擇,而不是依賴手工提取的特徵。
投票(Vote)生成是由網絡學習的,而不使用codebook。利用更大的感受野,可以減少投票的模糊,使投票更有效。此外,還可以使用特徵向量對投票位置進行增強,從而實現更好的聚合。
投票聚合(Vote aggregation)是通過可訓練參數的點雲處理層實現的。利用投票功能,網絡可以過濾掉低質量的投票,並生成改進的候選區域(proposals)。
目標候選(object proposal)的形式爲:位置、維度、方向,甚至語義類別,都可以直接從聚合特徵中生成,從而減少了追溯投票來源的需要。
下面的內容將介紹如何將上述的所有成分組合成端到端的網絡VoteNet。
VoteNet結構
圖2給出了端到端檢測網絡VoteNet的結構。整個網絡可以分爲兩部分:一部分處理現有的點來生成投票;另一部分處理虛擬點——投票——來提出和分類目標。
從點雲數據中學習投票
給定一個大小爲N×3的輸入點雲,N個點中的每個點都有一個3D座標,目標是生成M個投票,其中每個投票都有一個3D座標和一個高維特徵向量。主要有兩個步驟:通過主幹網絡學習點雲特徵和從種子點學習霍夫投票。
點雲特徵學習。生成一個準確投票需要幾何推理和上下文信息。作者利用最近提出的深度網絡在點雲上進行點特徵學習。作者採用了PointNet++作爲主幹網絡。主幹網絡有多個集抽象層和跳躍連接的特徵傳播(上採樣)層,這些層輸出的是輸入點的子集,包含XYZ座標和一個C維特徵向量。結果爲M個種子點,維度爲3+C。每個種子點生成一個投票。
深度網絡霍夫投票。傳統的霍夫投票是通過在預先計算的codebook中查找決定的,作者使用一個基於深度網絡的投票模塊生成投票,不僅效率更高,而且更準確,因爲它是與剩下的步驟一起訓練的。
給定一組種子點{si},si=[xi;fi];xi表示三維座標,fi表示C維特徵矢量,一個共享的投票模塊從每個種子中獨立地生成投票。具體來說,投票模塊是通過多層感知器(MLP)網絡實現的。MLP輸入種子特徵fi,輸出歐幾里得空間偏移量Δxi和特徵偏移量Δfi,那麼從種子生成的投票vi=[yi;gi],其中yi=xi+Δxi,gi=fi+Δfi。
預測的3D偏移量Δxi由迴歸損失監督:
其中1[si on object]表示種子點si是否在目標表面上,Mpos是目標表面上種子的總數。Δxi *是從種子位置xi到它所屬物體的邊界框中心的真實偏移量。
從投票中得到目標的proposal和分類
通過抽樣和分組對投票聚類。作者選擇了一種簡單的策略對投票聚類,即根據空間鄰近度進行統一採樣和分組。具體地說,從一組投票{vi=[yi;gi]}中,作者基於{yi}進行最遠點採樣,得到包含K個投票的子集{vik}。然後通過找到每個vik 3D位置的近鄰投票來形成K個聚類:
從投票聚類中得到proposal和分類。由於投票聚類本質上是一組高維點,因此可以利用一個通用的點集學習網絡來聚合投票,以生成目標proposal。作者採用共享的PointNet。給定一個投票聚類C={wi},其中wi=[zi;hi],zi爲投票位置,hi爲投票特徵,聚類中心爲wj。爲了利用局部投票幾何,將投票位置轉換成局部標準化座標系。然後對於聚類C的目標proposal p©就可以通過把集合輸入一個類似PointNet的模塊得到:
其中,來自每個聚類的投票由MLP1獨立處理,然後按通道最大池化爲單特徵向量,並傳遞到MLP2,在那裏,來自不同投票的信息進一步組合。作者將proposal p表示爲一個多維向量,包括目標性得分、邊界框參數和語義分類得分。
損失函數。Proposal和分類階段的損失函數包括目標性、邊界框估計和語義分類損失。
對於目標性分數,監督信息爲投票與真實目標中心更近(0.3米以內)或遠離任何中心(0.6米以上)。作者將這些投票產生的proposal分別視爲積極proposal和消極proposal。對於其他proposal的對象性預測不進行懲罰。對象性是通過交叉熵損失來監督的,該交叉熵損失由一個batch中不被忽略的proposal的數量進行歸一化。對於積極的proposal,將根據最近的真實邊界框進一步監督邊界框估計和語義類預測。具體來說,作者將邊界框損失與中心迴歸、航向角估計和邊界框尺寸估計分開。對於語義分類,使用標準的交叉熵損失。
實驗結果
作者首先在兩個大型3D室內目標檢測基準上,將基於霍夫投票的檢測器與之前最先進的方法進行比較。然後,作者提供了分析實驗來了解投票的重要性、不同的投票聚合方法的效果,並展示了該方法在緊湊性和效率方面的優勢。最後,作者展示了檢測器的定性結果。
與SOTA方法進行比較
####數據集
SUN RGB-D是一個單視圖RGB-D數據集,用於3D場景理解。包含5K的RGB-D訓練圖像,包含37個類別的標註框。作者使用提供的相機參數將深度圖像轉換爲點雲數據。
ScanNetV2是一個註釋豐富的室內場景3D重建網格數據集。包含從數百個不同房間收集的1.2K訓練樣本,並用語義和實例分割對18個目標類別進行標註。與SUN RGB-D相比,ScanNetV2中的場景更完整,平均覆蓋的區域更大,目標更多。作者從重建的網格中抽取頂點作爲輸入點雲。
####方法比較
表1表明,當類別爲訓練樣本最多的“椅子”時,VoteNet比以前的最優方法提高了11AP。表2表明,僅採用幾何輸入時,VoteNet顯著優於基於3D CNN的3D-SIS方法,超過了33AP。
分析實驗
####投票好還是不投票好呢?
作者採用了一個簡單的基線網絡,稱之爲BoxNet,它直接從採樣的場景點提出候選框,而不需要投票。BoxNet與VoteNet具有相同的主幹,但它不是投票,而是直接從種子點生成框。表3顯示,在SUN RGB-D和ScanNet上,相比BoxNet,投票機制的網絡性能分別提高了5 mAP和13 mAP。
####投票聚合的效果
投票聚合是VoteNet的一個重要組成部分,因爲它允許投票之間的溝通。因此,分析不同的聚合方案對性能的影響是非常有用的。
圖5(右)表明,由於存在雜亂投票(即來自非目標種子的投票),使用學習的PointNet和最大池化進行投票聚合比手動聚合局部區域中的投票特徵能獲得更好的結果。圖5(左)給出了投票聚合半徑對檢測的影響。隨着聚和半徑的增加,VoteNet的效果會不斷提高,在0.2半徑處達到峯值。當半徑過大時,引入了更多的雜亂投票,導致性能下降。
####模型大小和速度
VoteNet利用了點雲的稀疏性,避免在空的空間搜索。與以前的最佳方法相比,該模型比F-PointNet小4倍,在速度上比3D-SIS快20倍。
定性結果和討論
圖6和圖7分別給出了VoteNet在ScanNet和SUN RGB-D場景上檢測結果的幾個代表性示例。如圖所示,場景是非常多樣化的,並具有多種挑戰,包括雜亂、掃描僞影等。儘管存在這些挑戰,VoteNet仍然顯示出相當強大的結果。
例如,圖6展示了VoteNet在頂部場景中正確地檢測到絕大多數椅子。該方法能夠很好地區分左下角場景中連起來的的沙發椅和沙發,並預測出了右下角場景中那張不完整的、雜亂的桌子的完整邊界框。
結論
在這項工作中,作者提出了VoteNet:一個簡單但強大的3D目標檢測模型,其靈感來自於霍夫投票。該網絡學習直接從點雲向目標中心投票,並學習通過其特徵和局部幾何信息聚合投票,以生成高質量的目標proposal。該模型僅使用3D點雲,與之前使用深度和彩色圖像的方法相比,有了顯著的改進。在未來的工作中,作者將探索如何將RGB圖像納入這個檢測框架,並在下游應用(如3D實例分割)中彙總利用該檢測器。作者表示霍夫投票和深度學習的協同作用可以推廣到更多的應用領域,如6D姿態估計、基於模板的檢測等,並期待在這方面看到更多的研究。
論文原文: