【2018CVPR】實時單目6D物體姿態估計

在這裏插入圖片描述

背景

該論文發表於2018年CVPR,解決的問題是:給定單幅RGB圖像,估計圖像中包含目標物體的6DoF位姿;6DoF位姿包括了3維位置和3維空間朝向;傳統方法包括以下兩種:基於RGB圖像的方法,或者使用edge特徵,但對複雜背景敏感,或者使用feature points,但無法處理弱紋理或者無紋理情況;基於RGB-D的方法,依賴傳感器,本身有一定限制。近年來深度學習的方法,可以給6DoF位姿估計,帶來極大的效果提升。

算法概述

該論文設計了一個端到端可訓練的網絡,實時預測物體的6DoF位姿;受到2D物體檢測算法YOLO的啓發設計CNN網絡,預測物體3D包圍盒頂點的2D投影點;YOLO只預測出2D包圍盒,而該論文預測更多的2D投影點;之後給定這些2D投影點對應的3D點,可以通過PnP算法估計物體的6DoF位姿。

算法框架

首先將每個物體的3D模型用9個控制點表示,分別是外切包圍盒的8個頂點以及3D模型的重心,這樣訓練時只需要知道物體的3D包圍盒,而不需要確切的網格模型以及附帶的紋理圖;算法輸入爲一個單幅完整的彩色圖像,如圖1(b);使用圖1(a)的卷積網絡將圖像劃分成SxS的Cell,如圖1(c)(c);網絡的輸出結果圖1(d)用SxSxD的張量表示,如圖1(e),D的維度爲(9x2+C+1),分別包含了9個2D投影點座標(xi,yi)(x_i, y_i),C個類別概率,以及一個置信值。如果某一個Cell的置信值較低,則刪除該Cell。

在這裏插入圖片描述

圖1 算法框架

置信函數設計:

依據圖像空間的2D歐氏距離,計算預測的2D投影點和真值點的平均偏差。
在這裏插入圖片描述

DT(x)D_T(x)代表估計的2D位置和真值位置之間的歐氏距離,則置信函數c(x)c(x)DT(x)D_T(x)的關係如下圖所示,距離越大置信越低。

在這裏插入圖片描述

圖2 c(x)和DT(x)的關係

訓練過程

訓練時,置信值根據預測的2D投影點和真值2D投影點之間的DT(x)D_T(x),依據公式(1)在線計算;依據網格cell的左上頂點(cx,cy)(c_x, c_y)計算offsets。對於重心,offset設置爲[0,1],對於頂點,預測的(gx,gy)(g_x, g_y)設置爲:gx=f(x)+cxg_x = f(x) + c_xgy=f(y)+cyg_y = f(y) + c_y,這裏f(.)f(.)選擇1D的sigmoid函數;這樣設置保證了網絡首先選擇近似的cell位置,其後再估計8個頂點位置。最終,整個網絡的損失函數設置爲如下:
=λptpt+λconfconf+λidid\ell = {\lambda _{pt}}{\ell _{pt}} + {\lambda _{conf}}{\ell _{conf}} + {\lambda _{id}}{\ell _{id}}
其中λpt{\lambda _{pt}}, λconf{\lambda _{conf}}分別是座標損失,置信損失,使用均方差算法,λid{\lambda _{id}}是分類損失,使用交叉熵。對於權重,如果包含物體,λconf{\lambda _{conf}}設置爲5.0,不包含物體設置爲0.1;對於每個cell,最多允許包含5個物體。

實現細節

  • 在ImageNet的分類任務數據集上訓練初始網絡初始化參數;
  • 對包含物體的cell設置λ_conf爲5,不包含物體的cell設置λ_conf爲0.1;
  • 設置置信函數的銳度α爲2,距離閾值爲30pixels;
  • 訓練集圖像隨機按照像素大小的20%進行尺度放縮和平移;

實驗

數據集

  • LineMod,這是在雜亂環境中估計無紋理物體6DoF姿態的Benchmark;每一個RGB圖像中的物體都賦予了一個真值的旋轉、平移以及ID,也提供了完整的3D網格;
  • OCCULUSION,這是進行多物體檢測和姿態估計的數據集,對LineMod數據集的子集進行了額外的標註;

評價度量

  • 2D重投影誤差:將物體3D模型點根據估計位姿,以及真值位姿,分別投影到2D圖像;如果所有點的平均偏差在5個pixel以內,則認爲位姿估計正確;
  • 平均模型點的3D距離(ADD):將估計位姿下的3D模型點和真值位姿下的3D模型點,計算平均距離偏差,如果偏差小於物體直徑的10%,則認爲位姿估計正確;
  • IOU(Intersection over union,並交比)評分:計算3D模型根據估計位姿,以真值位姿,分別投影到2D圖像區域的並交比,如果重疊大於0.5,則認爲位姿正確;

結果

和已有算法在三種度量上均得到了精度和速度的提升,具體定量比較結果見論文。這裏只給出定性結果,如下圖所示,一至四列分別給出了雜亂背景,遮擋以及朝向模糊情況下的結果。最後一列給出了由於運動模糊、極度遮擋和鏡面反射情況下的失敗情況。
在這裏插入圖片描述

圖3 實驗結果

總結

  • 提出了一種新的CNN框架,快速準確地預測6DoF位姿,自然地將2D物體檢測框架擴展到3D物體檢測;
  • 提出的算法不需要後處理,而現存的基於CNN的6D物體檢測算法都需要後處理以優化位姿;
  • 算法實時,在Titan X GPU上能夠達到50-94fps,根據圖像分辨率而定;

聲明:本文中所有圖片均引自改論文。本解讀只講述核心觀點,如需深入瞭解,可閱讀原始論文。如有問題,請隨時交流,如有錯誤,請隨時指正。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章