CVPR2019论文解读:单眼提升2D检测到6D姿势和度量形状
CVPR2019論文解讀:單眼提升2D檢測到6D姿勢和度量形狀
ROI-10D: Monocular Lifting of 2D Detection to 6D Pose and Metric
Shape
論文鏈接地址:https://arxiv.org/pdf/1812.02781.pdf
摘要內容:
本文提供了基于端到端單目3D目標檢測和度量形狀檢索的深度學習方法。為了在3D中提升2D檢測,定位,以及縮放,提出了一種新的loss函數。不同于各自獨立的優化這些數量,3D示例允許適當的度量boxes的不一致性。實驗結果顯示,10維稀疏2D興趣域Regions of Interests (RoIs)提升在6D姿態和示例紋理幾何測量中都取得很好的效果。這也能夠通過直接在2D場景上修復恢復的網格來增強數據。對照在KITTI 3D數據上別的單目方案,本文的方案基于官方正規的數據集上,在3D姿態測試結果達到雙倍的AP。
1.introduction
文章提出了一種度量精確的單目3D目標檢測端對端方法。
主要貢獻有三點:
一種度量精確的單目3D目標檢測端對端方法,包括一種可微分的2D ROI到3D ROI 提升映射,并提供了用于回歸3D box 實例的所有組件;
一種用于在度量空間對其3D box的損失函數,直接優化其關于真值的誤差;
擴展模型,將其用于預測度量紋理面片,保證了進一步的3D 推理,包括3D 一致性仿真數據增強。
稱該模型為"ROI-10D",將2D ROI提升到3D ROI需要6自由度的位姿參數,3個自由度的空間體積,和一個形狀自由度。
- 用于位姿和形狀估計的單目10D提升
分三個部分介紹了方法:
模型結構
用于3D的損失函數
學習得到的度量形狀空間,以及如何使用估計的形狀參數進行3D重建
2.1 端到端的單目結構
類似于Faster RCNN,首先檢測2D區域的proposals,然后為每個proposal region執行分支預測。2D proposals使用了FPN-ResNet34,并使用了focal loss加權。對每個檢測到的proposal region使用ROIAlign 提取用于預測分支的特征。
由于信息缺失和重投影模糊,從單目圖像中直接回歸3D信息是病態、不穩定的。該文獻使用了state-of-the-art的SuperDepth 網絡預測輸入圖像中逐像素的深度值。然后將FPN網絡輸出的特征與深度特征堆積在一起,使用帶有Group Normalization 的兩個卷積層處理得到融合特征,最后使用檢測到的2D bbox和ROI Align在ROI Lifting中提取對應的特征,回歸3D旋轉、平移、目標的絕對尺度以及目標形狀。
2.2 由單目2D實例到6D位姿
該問題其實是一個可微分的提升映射,,即從一個2D的到一個3D的bounding box 。將旋轉編碼為4D的四元數,將平移編碼為2D物體中心的相對深度。此外,使用到數據集平均體積的偏差描述物體三維體積。
給定一個2D ROI ,使用ROI Align提取指定區域特征,分別預測出旋轉量q,相對于ROI的2D中心(x, y),深度值z和物體的絕對尺度(w, h, l),提升映射為:
?
其中K為相機內參矩陣
損失函數
當僅從單目圖像中估計位姿參數時,像素空間中的微小誤差可以導致位姿參數的劇烈變化。將問題提升到了3D,并使用了6D自由度的代理損失函數。因此,沒有同時對所有預測項進行優化,而是讓網絡在訓練期間自己調整。給定一個3D bbox 和對應的2D檢測框 ,其到3D的提升映射為,在度量空間關于八個3D角點的損失函數為:
在訓練過程中,需要一個warm up過程以得到穩定的數值流形。因此訓練單個的預測項,直到得到穩定的3D box實例。
Allocentric 回歸 and Egocentric 提升
相機光軸是否對準目標中心,Egocentric 以相機為中心,相機光軸不一定對準目標中心,allocentric是以目標為中心。兩者的區別在于當發生與相機之間的位移時,Allocentric中相機光軸隨著目標位移而移動,目標的形狀變化不大,而Egocentric中相機光軸不變,目標的形狀變化較大。
大視場條件下,Allocentric pose estimation很重要。
由于ROI缺少全局的信息,在回歸時認為四元數是Allocentric的,然后結合推理出來的平移量矯正為Egocentric,然后提升到3D boxes。
2.3 目標形狀學習與檢索
介紹了如何將端到端的單目3D目標檢測模型擴展到預測三角面片,并用于數據增強。
學習一個光滑的形狀
給定了50種商用模型,創建了一個映射受限的帶符號的距離場,大小為128×128×256。首先使用PCA學習低維的形狀,實驗中發現形狀空間很快地偏離了均值。使用PCA生成形狀要求評價每一維度的標準差。因此,使用一個3D自編碼/解碼器
E和D,對輸出的TSDF強制不同的約束。E和D都使用了1,8, 16, 32四種卷基層。此外使用核為6的全卷積層作為隱藏層。在訓練過程中將所有的隱藏層映射到半球上,以保證連續性。對輸出層的跳躍通過總方差進行懲罰,損失函數為:
形狀真值的標注
對于3D 提升器的形狀分支,預測形狀s和形狀真值s*間的相似度由兩點在半球上的角度決定:
在推理時,預測了低維的隱藏層向量,并將其傳遞給解碼器以得到TSDF表示。
簡單面片紋理
模型可以得到目標的尺度與形狀,可以投影檢索得到的3D面片。將朝向相機的定點映射到圖像平面,并賦予相應的值。
2.4 消融分析
評估新的算法怎樣優化極小化loss。另外,證實在KITTI 3D數據集上在哪里和為何如此難以準確評估。最后,分析由于不同的輸入以及怎樣更好讓loss影響姿態的質量。
2.5 仿真3D 數據增強
KITTI3D數據集較小,且3D真值獲取耗時耗力,采用仿真數據是一種常用方法。文章使用提取得到的面片以生成真實的渲染,而不是寫固定的CAD模型。此外,仿真目標的擺放沒有太多限制。使用allocentric pose移動目標,不改變視角。
- 實驗
總結
以上是生活随笔為你收集整理的CVPR2019论文解读:单眼提升2D检测到6D姿势和度量形状的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CVPR2019目标检测论文看点:并域上
- 下一篇: CVPR2018论文看点:基于度量学习分