多檢視3D目標檢測學習筆記
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

參加滴滴無人駕駛演算法大賽,在多方面參考了幾篇目標檢測和多視角檢測融合等文獻,最終團隊確定了一下兩篇論文作為比賽的參考:

A Unified Multi-scale Deep Convolutional Neural Network for Fast Object Detection

Multi-View 3D Object Detection Network for Autonomous Driving 

多尺度CNN在R-CNN中一直是研究的重點,這也是目前在不考慮執行時間的情況下準確率較高的改進模型。這次比賽由於不考慮實時性,所以在模型上主要以準確率為主,在兩者中進行均衡的網路並不會作為基礎模型,其中的tips可以作為後續的優化方案。

在Multi-View的研究上,本人是最近因為比賽才從2D目標檢測轉到3D目標檢測上,所以內容以3D目標檢測為主作為介紹。

這篇論文主要針對自主駕駛場景中的高精度三維目標檢測。文章提出了多檢視三維網路(mv3d),一個以鐳射點雲與RGB影象作為輸入去預測定向的三維bounding box的融合框架。論文編碼稀疏的三維點雲資料用緊湊的多檢視表示。網路是由兩個子網路組成:一個是三維目標區域提名網路,另一個用於多檢視特徵融合。區域提名網路從鳥瞰檢視中生成有效地3D點雲資料表示的3D侯選框。文章設計了一個深度融合方案,結合多視角的區域特徵,並能夠作用於不同路徑的中間層之間。採用KITTI基準作為實驗測試,測試表明,這個方法在三維定位任務、三維檢測任務上優於目前最先進記錄大約25%和30%的準確率。此外,對於2D檢測,在鐳射雷達為基礎的難例資料上,該方法比目前最領先的方法獲得14.9%更高的準確率。

在文章中,提出了一個以多模態資料作為輸入的多檢視三維物體檢測網路(mv3d),預測物體在三維空間中的全3D的程度。利用多模態資訊的主要思想是完成區域特徵融合。首先,文章提出了一個多檢視的編碼方案,以獲得對稀疏3D點雲更有效和緊湊的表達。如圖1所示,多檢視三維檢測網路由兩部分組成:三維區域提名網路和基於區域提名的融合網路。3D區域提名網路利用鳥瞰視角的點雲表示去產生高度精確的3D候選框。3D物體區域提名的好處是,它可以在3D空間中被投影到任何檢視中。多檢視融合網路從多視角中通過投影3D區域來提取域特徵到特徵圖上。我們設計了一個深度融合的方法能夠作用於不同視角的中間層。結合下降路徑訓練[
13 ]和輔助損失,該方法相比於早期/晚期融合方案表現出優異的成績。根據多檢視特徵表示,在三維空間中,網路執行定向的3D框迴歸來預測物體準確的三維位置,大小和方向。

mv3d網路以多檢視中的三維點雲以及影象作為輸入。它首先從鳥瞰圖和經過區域表達的深度的多檢視融合特徵中生成3D候選區域。融合的特徵用於分類和定向的三維bounding box迴歸。

鳥瞰圖表示:

鳥瞰表達被編碼成高度,強度和密度資訊。我們離散投影的點雲到解析度為0.1米的二維網格中。對每一個單元格,高度特徵被計算為該單元格的最大高度點。要編碼更詳細的高度資訊,點雲平分成M片(這裡的切片應該是將整個二維網格進行高度劃分)。每個切片都進行高度圖計算,因此,我們得到M個高度圖。強度特徵是每個單元格中有最大高度的點的對映值。點雲密度表示每個單元格中的點的數目。為了歸一化特徵,它被計算為MIN(1,log(N
1)/log(64));其中N是在單元格中的點的數目。注意,強度和密度特徵計算的是整個點雲,而高度特徵計算的是M切片,所以,總的鳥瞰圖被編碼為(M 2)個通道的特徵。

前檢視表示:

前檢視表示對鳥瞰圖表示提供了互補的資訊。由於鐳射雷達點雲是非常稀疏的,投影到影象平面會導致在一個稀疏的二維點地圖。相反,我們把它投射到一個圓柱體平面上,以產生一個密集的前檢視地圖,在[ 14 ]。給定一個三維點P =(x,y,z),其座標Pfv=(r,c)在前檢視中可以通過下式計算得出:

 其中,∆θ和 ∆φ分別是鐳射束的水平和垂直解析度。我們編碼前檢視使用三個通道的特徵,就是高度,距離和強度,如下圖所示。

目前2D目標檢測中,區域提名網路已經成為最高水平網路的關鍵,文章設計了一個網路產生3D候選區域。我們使用鳥瞰圖作為輸入。在3D物體檢測中,鳥瞰圖相比於前檢視/影象平面有幾個優點。首先,物體投射到鳥瞰圖時,保持了物體的物理尺寸,從而具有較小的尺寸方差,這在前檢視/影象平面的情況下不具備的。第二,在鳥瞰圖中,物體佔據不同的空間,從而避免遮擋問題。第三、在道路場景中,由於目標通常位於地面平面上,並在垂直位置的方差較小,鳥瞰圖定位在獲得準確的3Dbounding
box是很重要的。因此,使用鳥瞰圖作為輸入,可以確保3D位置預測更可行。

給出一個鳥瞰圖,網路生成3D候選框。每個3D框的引數有(X,Y,Z,L,W,H),表示在鐳射雷達座標系中3D侯選框的中心和尺寸(米)。對於每個3D前置框,相應的鳥瞰錨(Xbv,Ybv、Lbv、Wbv)可以通過離散的(X,Y,L,W)獲取。我們設計N個3D前置框通過在訓練集的地面真實目標大小聚類獲得。在機動車檢測的情況下,前置框(L,W)的值分別為{(3.9,1.6),(1.0,0.6)},和高度h是固定值1.56米。通過旋轉鳥瞰錨90度(圍著錨x,y的座標中心),可以得到n
= 4個前置框。(x,y)為鳥檢視特徵圖中的座標,Z可以根據攝像機高度和物體高度來計算。在區域產生中不做方向迴歸,而把它留給下一個預測階段。3D框的方向限制在{ 0◦,90◦},這是接近實際的取向大部分道路場景中的物體。這種簡化使迴歸訓練更容易。

採用0.1米的離散解析度,目標框在鳥瞰中僅佔5∼40個畫素點(最大約相當於0.015米)。檢測這些非常小的物體仍然是一個困難的問題。一種可能的解決方案是使用更高的解析度的輸入,然而,將需要更多的計算。我們選擇特徵圖上進行上取樣操作。我們用2倍的雙線性上取樣操作在網路的最後一個卷積層後。前端卷積層中只進行3次池化運算,即8倍的下采樣。因此,結合2倍的反摺積操作,特徵圖被送到區域提名網路時只有相對於鳥瞰圖輸入的4倍下采樣後的圖。

我們做3D框迴歸通過迴歸到t = (∆x,∆y,∆z,∆l,∆w,∆h)中,類似於2D目標檢測中的RPN網路。(∆x,∆y,∆z) 是錨中心歸一化的偏移量,(∆l,∆w,∆h) 由∆s = log(Sgt/Sanchor),s ∈ {l,w,h}.計算得出。我們使用多工損失函式做物體分類/背景分類和3D框迴歸。我們採用分類熵做物體分類損失和光滑L1做3D框迴歸損失。背景錨可以忽略。當錨與真實目標邊框重疊超過0.7時,我們認為是正樣本,低於0.5認為是負樣本,中間的我們忽略不計。

由於鐳射雷達點雲稀疏,會導致許多空錨,我們在訓練和測試中刪除所有的空錨,以減少計算。可以通過計算點佔用圖上的積分影象來實現

對於每個非空錨在每個位置的最後一個卷積特徵圖,網路生成一個3D框。為了減少冗餘,我們應用非最大抑制(NMS)的鳥瞰框,論文沒有使用3D非極大值抑制。使用交併比閾值為0.7在非極大值抑制中。前2000框儲存在訓練期間,而在測試中,我們只使用300框。

文章設計了一個基於區域的融合網路,有效地結合從多個檢視的特徵,共同做候選區域分類和做定向3D框迴歸。

由於從不同的檢視/方式的特徵圖通常有不同的解析度,我們採用ROI池化為每個檢視以獲得相同長度的特徵向量。給定生成的3D候選區域,我們可以將它們投射到三維空間中的任何檢視中,論文對映到3個檢視中,鳥瞰圖(BV),前檢視(FV),和影象平面(RGB)。給出一個3D區域,我們可以獲取ROI通過:

其中,T3D→v表示從鐳射雷達座標系到鳥瞰圖、前檢視,和影象平面的轉換函式,給定一個輸入特徵圖x從每個檢視的前端網路,我們獲得固定長度的特徵通過ROI池化:

深度融合,要結合資訊從不同的特徵圖,我們採用了深度融合的方法,融合不同層的多檢視特徵。我們的深融合網路和早期/晚期融合網路的體系結構的比較如下圖所示:
我們設計了以下深融合過程:
多檢視網路融合特徵後,我們在3D區域中迴歸3D框的方向。特別是,迴歸的目標是3D框的8個角:T =(∆x0,···,∆x7,∆Y0,···∆Y7,∆Z0,···,∆Z7)。該引數被編碼為由候選框的對角線長度歸一化後的偏移量。儘管這樣的24-D向量表示三維框是冗餘的,但是我們發現這種編碼方法優於中心和大小的編碼方法。請注意,我們的3D框迴歸不同於迴歸軸對齊的3D框。在我們的模型中,物體的方向可以從預測的3D框角進行計算。我們使用多工損失共同預測物體類別和3D框方向。在區域網路中,類別損失使用交叉熵和3D框損失使用平滑L1。除了上述正負樣本設定和非極大值抑制閾值的設定,我們還使用交併比閾值0.05去除多餘的盒子,確保鳥瞰中的物體不會佔據同一空間。

我們採用兩種方法去規範基於區域的融合網路:下降路徑訓練[ 13 ]和輔助損失。對於每次迭代,我們隨機選擇做全域性下降路徑或區域性下降路徑的概率為50%。如果選擇全域性下降路徑,我們從三檢視中相同概率中選擇一個檢視。如果選擇區域性下降路徑,每個連線節點的路徑輸入隨機丟棄的概率為50%。我們確保每個連線節點至少保留一個輸入路徑。為了進一步加強每個檢視的表示能力,我們在網路中新增輔助路徑和損失。如下圖所示,輔助路徑與主網路的層數相同。輔助路徑中的每一層與主網路中的相應層共享權重。我們使用相同的多工損失,即分類損失加3D框迴歸損失,反向傳播每個輔助路徑。計算所有損失中包括輔助損失。推理過程中刪除輔助路徑。

在我們的多檢視網路中,每個檢視具有相同的網路結構。基礎網路是建立在VGG16下進行修改的:
•渠道減少到原來的網路的一半。
•為了處理特別小的物體,我們使用特徵粗略估計以獲得高解析度的特徵圖。特別是,我們插入一個2倍雙線性上取樣層在最後一層卷積特徵圖輸入到三維區域網路之前。同樣,我們插入4倍/4倍 /2倍上取樣層在BV / Fv/RGB分支的ROI池化層之前。
•我們刪除原VGG網路中第四個池化操作,因此我們的網路卷積部分進行8倍的下采樣。
•在多視角融合網路中,我們新增一個額外的全連線層FC8在原有的FC6、FC7層基礎上。
初始化引數由通過imagenet訓練的vgg16網路。儘管我們的網路有三個分支,但是引數的個數是75%的vgg16網路。一個影象網路的執行時間是在泰坦X上0.7s。

相關文章

程式語言 最新文章