首頁>科技>

注:這是一篇2019年9月發表在arXiv【1】鐳射雷達和攝像頭資料融合的目標檢測論文。

摘要:本文介紹了一個多檢視標記的目標檢測器(MLOD)。檢測器將RGB影象和鐳射雷達點雲作為輸入,並遵循兩步目標檢測框架。區域提議網路(RPN)在點雲的鳥瞰檢視(BEV)投影中生成3D提議。第二步將3D提議邊框投影到影象和BEV特徵圖,並將相應的圖擷取傳送到檢測頭(detector head)以進行分類和邊界框迴歸。與其他多檢視方法不同,裁剪的影象特徵不直接饋送到檢測頭,而是被深度資訊掩蓋以過濾掉3D邊框外的部分。影象和BEV特徵的融合具有挑戰性,因為它們來自不同的視角。這裡引入了一種新檢測頭,不僅可以從融合層提供檢測結果,還可以從每個感測器通道提供檢測結果。因此,可以用不同檢視標記的資料訓練目標檢測器,以避免特徵提取器的退化。MLOD在KITTI 3D目標檢測基準測試中實現了最好的效能。最重要的是,評估表明新的頭架構(header architecture)在防止影象特徵提取器退化方面是有效的。

MLOD架構

大約有三種方法可以利用攝像頭和鐳射雷達做自動駕駛的3D目標檢測:1)影象區域建議,2)基於投影和3)多檢視方法。

本文提出的兩步神經網路結構如圖1所示。BEV圖和RGB影象被饋入兩個卷積神經網路獲得特徵。 為了提高計算效率,僅使用RPN的鳥瞰檢視(BEV)特徵生成3D提議。 基於提議的深度資訊,3D提議之外的影象特徵被前景掩碼層(foreground mask layer)掩蓋。 然後,掩碼的影象特徵圖和BEV特徵圖被裁剪並傳遞到多檢視頭(multi-view header),提供最終的分類、定位和定向結果。

圖1

6個通道的BEV圖輸入是一個0.1米解析度的2D網格,包括5個高度通道和1個密度通道。 點雲沿著地平面的法線在[0, 2.5米]之間被劃分為5個相等的切片(slices),並且每個切片產生高度通道,每個網格單元表示該單元中的點的最大高度。

該模型採用U-Net結構作為BEV特徵提取器。 編碼器部分類似VGG的CNN,但有一半的通道。它包括CNN層,最高可達conv-4層。 在解碼器部分中,特徵提取器使用卷積轉置(conv- transpose)操作對特徵圖上取樣。 上取樣特徵圖與來自編碼器的相應特徵串聯實現融合。 影象特徵提取器是在pool-5層之前的VGG16 CNN。

為在提議的3D邊框內正確捕獲目標的影象特徵,本文引入了前景掩碼層來過濾掉前景特徵。

為了識別影象的前景和背景,具有每個畫素深度資訊是必要的。但是由於鐳射雷達點雲的稀疏性,影象平面中的大部分深度資訊都是未知的。最近,有幾種方法來完整化深度圖。不幸的是,它們通常具有高GPU記憶體使用率,不適合實現。相反,這裡引入了一種輕量級方法來利用稀疏深度資訊。

圖2顯示了前景掩碼層的流程。首先,該層用3D提議投影的前視2D邊框裁剪並調整其(稀疏)深度圖的大小。為了計算方便,調整大小的深度圖是k×k大小裁剪影象特徵圖的n倍。由於深度資訊在前檢視是不連續的,因此使用最近鄰內插演算法獲得大小調整過的深度圖。然後將nk×nk深度圖等分成k×k網格。這樣,每個網格單元表示k×k影象特徵圖對應畫素的深度資訊。該層計算每個網格單元中非零深度值的中值mij,因為零值表示該畫素沒有鐳射雷達點資訊。請注意,由於點雲的稀疏性,網格單元格中的所有深度值都可能為零。

圖2(a)

圖2(b)

由於遠目標只有較少的投射鐳射雷達點,因此這些目標的某些部分沒有任何深度資訊。為此,為保留3D邊框內或沒有深度資訊的影象特徵,將前景掩碼設定為前檢視,使用最近鄰內插演算法獲得調整大小的深度圖。然後,將nk×nk深度圖等分為k×k網格。因此,每個網格單元表示k×k影象特徵對映中的對應畫素的深度資訊。因此,為了保留3D邊界框內的影象特徵或沒有深度資訊,我們將前景掩碼設定為

其中dmax和dmin分別是3D邊框的最大和最小深度值。 ε1和ε2是小緩衝區,用於吸收3D提議和點雲的不確定性。(圖2中dmin = 6.8,dmax = 9.7)

在多檢視3D目標檢測方法中,基於BEV的IoU來分配提議標籤。但前檢視的IoU可能與BEV的IoU明顯不同。圖3示出將3D邊框分配給負標籤但在影象檢視中IoU > 0.7的示例。 當僅基於BEV IoU分配標籤來訓練目標檢測器時,(前檢視)影象通道的效能降低。

圖3

作者提出了一種多檢視檢測頭,以避免RGB影象特徵的衰減。 圖4顯示了頭部網路結構。 關鍵想法是在融合層(concat)之前為每個通道新增額外的輸出層。 兩個輸出的每一個饋入到相應的子輸出(sub-output)損失中。 每個子輸出損失是採用在相應通道檢視中IoU分配的標籤計算,即

圖4

其中I[> 0]是選擇正提案的指標函式,N、Npimg和Npbev分別是總樣本數、影象檢視和BEV各自的正樣本數,yiimg和yibev分別是從影象和BEV分支獲得的提議分類得分,yˆi img和yˆibev是相應的GT標籤,每個分支預測的角點偏移分別是siimg和sibev,而相應的GT值是sˆi img和sˆibev。

網路訓練

文中使用多工損失來訓練網路,其檢測網路的損失函式由下式定義

這裡使用平滑L1損失進行3D邊框偏移和朝向旋轉回歸,並使用交叉熵損失進行分類。λ是用於平衡不同損失項的超引數。子輸出損失可以被認為是網路上的一種正則化過程。

KITTI基準測試對汽車類(> 0.7)和行人和騎車者類(> 0.5)使用不同的IoU閾值。因此,文中訓練了兩個網路,一個用於汽車,另一個用於行人和騎單車者。用大小是1024個ROI的微批量聯合訓練RPN網路和檢測頭。採用ADAM優化器【2】,指數衰減的學習率初始化為0.0001。在汽車網路,每100K迭代衰減0.1。 在步行者和單車者網路,每20K迭代衰減0.5。影象特徵提取器載入預訓練的ImageNet權重。BEV特徵提取器權重由Xavier統一初始化器(uniform initializer)初始化。

如果BEV /影象和真實GT目標的IoU分別大於0.65 / 0.7,則汽車建議在自上而下/前檢視中被標記為正。 如果其BEV /影象IoU分別小於0.55 / 0.5,則標記為負。 正的行人或騎車者建議在BEV /影象檢視中至少分別為0.45 / 0.6 IoU。 負樣本分別在BEV /影象檢視中不超過0.4 / 0.4 IoU。 對於微批量大小,先選擇1024個樣本,包括在自上而下的檢視中具有最高RPN分數的正ROI和負ROI;然後,在正面檢視中挑選正或負的ROI。

有許多方法可以編碼3D邊框。 為了減少引數的數量並保持物理限制,3D邊框表示為X-Y平面上的四個角,頂部和底部角高度會偏離地平面。

資料增強是增加訓練例項數量和減少過擬合的重要技術。 在這裡的網路訓練中實現了兩種增強方法,即翻轉和PCA抖動。點雲和影象沿x軸翻轉。 PCA抖動會改變訓練影象中RGB通道的強度。 PCA分解應用在整組訓練影象RGB畫素值的集合中。 然後,將高斯隨機噪聲新增到影象的主分量中。

實驗

主要評估KITTI目標檢測基準測試中汽車、行人和騎車人3D檢測任務的MLOD效能。 KITTI的3D目標檢測資料集包含7,481個訓練幀和7,518個測試幀。基於遮擋級別、最大截斷和最小邊框高度,這些幀包含三個難度級別的目標級物件:簡易(E),中等(M)和難(H)。 由於KITTI沒有提供官方驗證集,標記的7,481幀被分成訓練集和1:1比例的驗證集。

圖5展示了實驗結果例子。每張影象檢測到的車輛為綠色,行人為藍色,騎車者為黃色。

圖5

為評估MLOD的效能,分別在表II和表I中給出驗證集和KITTI測試集的平均精度(AP)結果。 MLOD在驗證集上優於其他兩個最先進的多檢視目標檢測器【3-4】。 但是,MLOD方法在KITTI測試集上比AVOD差。 這可能是由MLOD和AVOD中使用不同地平面引起的。評估表明,該方法可以達到當前最佳效能。

表I: MLOD與當前3D目標檢測器的效能比較

表II:在中等難度驗證集上MLOD與當前3D目標檢測器的AP3D比較

為評估多檢視頭網路的影響,將MLOD的AP(%)與驗證集不同λsub-cls設定進行比較,如表III。 當λsub-cls /λcls= 0.001時,BEV標記樣本的融合通道支配了網路訓練,這時候子通道損失可忽略。 表III顯示多檢視頭網路可為影象通道提供顯著的效能增益,範圍從5%到20%不等。對行人檢測的容易、中等和難三種級別,AP最終檢測分別增加了6.7%,5.2%和4.5%。圖6顯示了多檢視頭網路的效果示例(A欄:λsub-cls /λcl = 0.001; B列:λsub-cls /λcl = 1)。注意:當λsub-cls /λcls= 1,影象通道正確地為鐳射雷達BEV中誤報的行人記分0.0。

表III 不同的λ設定在驗證集上評估MLOD的AP3D效能

圖6

表IV顯示了掩碼元件如何影響MLOD的效能。

表IV 前景掩碼層的效果

  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 5G失利!3087萬手機銷量5G僅佔5%!5G風口到底該不該追?