上週四,華中科技大學白翔教授組的劉哲為我們介紹他們的 AAAI Oral 論文《TANet: Robust 3D Object Detection from Point Clouds with Triple Attention》,本文對此論文進行了詳細解讀。該研究提出了新型三元注意力模組和 Coarse-to-Fine Regression,實現了檢測效能和穩健性的提升。論文連結:https://arxiv.org/abs/1912.05163
程式碼連結:https://github.com/happinesslz/TANet(即將開源)
華中科技大學和中科院自動化所的研究者近期合作了一篇論文,探討了點雲 3D 目標檢測的穩健性,這在現有方法中很少提及。該研究發現兩個重要現象:1)難以檢測的物件(如行人)的檢測準確率不夠好;2)新增額外的噪聲點後,現有方法的效能迅速下降。
為了緩解這些問題,該研究提出新方法 TANet,它主要包含三元注意力(Triple Attention,TA)模組和 Coarse-to-Fine Regression (CFR) 模組。TA 模組聯合考慮通道注意力、點注意力和體素注意力,從而增強目標的關鍵資訊,同時抑制不穩定的點。此外,新型堆疊 TA 模組還可以進一步利用多級特徵注意力。而 CFR 模組可在不過度消耗計算成本的情況下提升定位準確率。
在 KITTI 資料集驗證集上的實驗結果表明,在難度較大的噪聲環境中(即在每個物件周圍新增額外的隨機噪聲點),TANet 的效能遠遠超過當前最優方法。此外,在 KITTI 基準資料集上執行 3D 目標檢測任務後發現,TANet 僅使用點雲作為輸入,即在「行人」(Pedestrian)類別檢測中取得 SOTA 的成績。其執行速度約為每秒 29 幀。
點雲 3D 目標檢測有大量現實應用場景,尤其是自動駕駛和擴增實境。一方面,點雲提供可靠的幾何結構資訊和精確深度,那麼如何高效利用這些資訊就是一個重要問題。另一方面,點雲通常是無序、稀疏、不均勻分佈的,這對於準確目標檢測是一項巨大挑戰。
近年來,3D 目標檢測社群提出了多種基於點雲的方法。PointRCNN 直接基於原始點雲執行,用 PointNet 提取特徵,然後用兩階段檢測網路估計最終結果。VoxelNet、SECOND 和 PointPillars 將點雲轉換成規則的體素網格,然後應用一系列卷積操作進行 3D 目標檢測。
儘管現有方法實現了不錯的檢測準確率,但在難度較高的情形下這些方法仍然無法獲得令人滿意的效能,尤其是對於難以檢測的物件,如行人。
如下圖 1 所示,PointPillars 漏掉了一個行人,還對一個物件的預測為假正例。研究者從兩個方面揭示了預測錯誤的本質原因:1)行人的體積小於汽車,因此鐳射雷達掃描到的有效點較少。2)行人頻繁出現在大量場景中,因此多種多樣的背景物體(如樹、灌木叢、電線杆等)可能與行人很接近,這給準確識別行人帶來極大難度。因而,在複雜點雲中執行目標檢測仍然是一項極有難度的任務。
圖 1:行人檢測結果。第一行展示了對應的 2D 影像,第二行分別展示了 PointPillars 和 TANet 的 3D 檢測結果。紅色箭頭標示出 PointPillars 漏掉和錯誤的檢測物件。
這篇論文提出了一種新型架構——Triple Attention Network (TANet),如圖 2 所示。它主要包含三元注意力(Triple Attention,TA)模組和 Coarse-to-Fine Regression (CFR) 模組。該方法的直接動力是,在嚴重噪聲環境下,一組包含有用資訊的點可為後續的迴歸提供足夠的線索。為了捕捉到這類包含有用資訊的線索,TA 模組增強判別點,並抑制不穩定的點。具體來說,TA 模組分別學習點注意力和通道注意力,然後利用元素相乘將它們結合起來。此外,研究者還考慮體素注意力,即體素的全域性注意力。
圖 2:TANet 的整體流程圖。首先,將點雲均勻分割成包含一組體素的體素網格。然後用堆疊 TA 模組分別處理每個體素,獲得更具判別性的表示。之後,用最大池化方法聚集每個體素內的點,從而為每個體素提取緊湊的特徵表示。研究者根據體素在網格中的原始空間位置排列體素特徵,從而得到體素網格的特徵表示 C' × H × W。最後,使用 CFR 模組生成最終的 3D 邊界框。在噪聲環境下,僅應用單個迴歸器模組(如一階 RPN)做 3D 邊界框定位的效果不盡如人意。為了解決這一問題,該研究提出一種端到端可訓練的 coarse-to-fine regression (CFR) 機制。其中,粗糙步按照 (Zhou and Tuzel 2018; Lang et al. 2019) 的方法對物件進行粗略估計。然後,利用新型 Pyramid Sampling Aggregation (PSA) 融合方法得到跨層特徵圖。細化基於融合後的跨層特徵圖實現,從而得到更精細的估計結果。
TA 模組和 CFR 機制對於 3D 檢測器的穩健性都很關鍵,而 3D 檢測器的穩健性對自動駕駛真實場景非常重要。由於 KITTI 資料集中並非所有資料都受噪聲所擾,因此研究者在實驗評估過程中,透過在每個物件周圍新增隨機噪聲點來模擬噪聲環境。大量實驗證明,TANet 方法在 KITTI 基準 Pedestrian 類別檢測中取得了最優的檢測結果,這進一步證明了 TANet 檢測器的穩健性。
1. 提出新型 TA 模組,該模組聯合考慮通道注意力、點注意力和體素注意力,並執行堆疊操作從而獲得多級特徵注意力,進而得到物件的判別表示;
2. 提出新型 coarse-to-fine regression 機制,基於粗糙迴歸結果,在包含有用資訊的融合跨層特徵圖上執行細化迴歸(fine regression);
3. 該方法在難度較高的噪聲環境中取得了不錯的實驗結果,在 KITTI 基準資料集上的量化比較結果表明,TANet 方法獲得了當前最優效能,且其推斷速度很快。
如圖 2 所示,TANet 包含兩個主要部分:堆疊 TA 模組和 CFR 模組。
圖 3:TA 模組架構圖。
研究者利用粗糙迴歸(Coarse Regression,CR)模組和細化迴歸(Fine Regression,FR)模組執行 3D 邊界框估計。
圖 4:CFR 架構圖。金字塔取樣(Pyramid Sampling)表示一系列下采樣和上取樣操作,它們透過池化和轉置卷積來實現。
下表 1 展示了 TANet 與當前最優方法在噪聲環境下的定量結果。儘管 PointRCNN 檢測 Cars 類別的 3D mAP 比 TANet 高出 0.43%,但在噪聲環境下,TANet 方法展現出更強大的穩健性。在新增 100 個噪聲點的情況下,TANet 獲得了 79.34% 的 3D mAP,比 PointRCNN 高出 1.7%。對於 Pedestrians 類別,TANet 的效能分別比 PointPillars 和 PointRCNN 高出 5.8% 和 11.9%。從中我們可以看出,TANet 方法對噪聲具備強大的穩健性,尤其是對難以檢測的樣本,如 Pedestrians、hard Cyclists 和 hard Cars。
表 1:在 KITTI 驗證集上,TANet 和 PointRCNN、PointPillars 對 Cars、Pedestrians 和 Cyclists 類別的 3D 目標檢測效能對比情況。3D mAP 表示每個類別的平均準確率。下表 2 展示了不同方法在 KITTI 官方測試資料集上的實驗結果。TANet 對三個類別的 3D mAP 是 62%,比當前最優方法 PointPillars 和 PointRCNN 分別高出 1.20% 和 1.22%。尤其對於難以檢測的物件(如行人),TANet 的效能比 PointPillars 和 PointRCNN 分別高出 2.30% 和 4.83%。
表 2:在 KITTI 測試資料集上,TANet 新方法和之前方法對 Cars、Pedestrians 和 Cyclists 類別的 3D 目標檢測效能對比情況。3D mAP 表示模型對這三個類別的 3D 目標檢測平均準確率。下圖 5 展示了模型學得特徵圖和模型預測置信度得分特徵的視覺化圖。
圖 5:模型學得特徵圖和模型預測置信度得分的視覺化圖示。
表 3:對通道注意力、點注意力和體素注意力及其不同組合的效果進行控制變數實驗。所有實驗都在不使用 FR 模組的前提下實施。