點擊 我愛計算機視覺 標星,更快獲取CVML新技術

本文轉載自知乎物體6D位姿估計專欄,已獲作者授權轉載,請勿二次轉載。

https://zhuanlan.zhihu.com/p/89830618

本文解讀了ICCV 2019 6D物體位姿估計的論文:

Pix2Pose: Pixel-Wise Coordinate Regression of Objects for 6D Pose Estimation

論文地址:

https://arxiv.org/abs/1908.07433

代碼地址:

https://github.com/kirumang/Pix2Pose

簡介

作者主要解決的是遮擋、對稱和無紋理問題,提出一種新的位姿估計方法:pix2pose,可以在沒有紋理模型的情況下預測每個目標像素的三維座標,設計了一種自動編碼器結構來估計三維座標和每個像素的期望誤差。使用像素級的預測生成2D-3D之間的對應,從而直接使用RANSAC迭代的PnP算法計算位姿。這種方法利用生成對抗訓練來精確的重新覆蓋被遮擋部分,從而達到對遮擋的魯棒性。同時提出了一種新的損失函數:transformer loss,引導預測位姿到最接近的對稱位姿來處理對稱物體。

之前的工作介紹

雖然深度圖能夠提供精確的三維像素座標,但是獲得深度圖並不容易。大量的位姿估計依賴於物體的紋理三維模型,需要使用三維掃描設備生成模型。然而卻不適用於沒有紋理三維模型的領域。

之前的工作來處理對稱物體:在渲染訓練圖像時限制位姿的範圍,或者對於帶註釋的真實圖像,將範圍外的位姿轉換爲範圍內的對稱位姿。這種方法適用於單軸對稱的物體,只需忽略圍繞軸的旋轉即可。

然而BB8中指出當僅有有限數量對稱位姿時,很難確定視圖邊界附近的位姿。文中給的例子是:

if a box has an angle of symmetry, π, with respect to an axis and a view limit between 0 and π, the pose at π + α(α≈ 0; α > 0) has to be transformed to a symmetric pose at α even if the detailed appearance is closer to a pose at π.

如果邊界框相對於軸具有對稱角π,並且視限在0和π之間,則必須將π+α(α≈0;α> 0)處的位姿轉換爲α處的對稱位姿,即使α足夠小,使外觀很接近於π位置的位姿。

pix2pose通過隱式估計被遮擋像素的三維座標,實現魯棒性。使用無紋理三維模型從RGB圖像迴歸像素級三維座標。新的損失函數處理有限個模糊視圖的對稱物體。

作者提出目前方法的缺點:

1. 使用CNN的方法來直接預測投影點的三維邊界框,視點以及四元數轉換。 這些方法都是直接計算的。缺點是缺乏對應關係,這些關係可用於生成多個位姿假設,對被遮擋物體進行魯棒的估計。對稱物體通常通過限制視點範圍,這樣會增加額外的處理,例如BB8對視圖範圍進行分類,PoseCNN計算轉換後的模型在估計位姿和標註位姿中到最近點的平均距離。然而尋找最近的三維點很耗時。

2. 特徵匹配法: AAE只使用RGB圖像無監督訓練位姿的隱式表示,隱式表示可以接近任何對稱的視圖,然而使用給定一個好的旋轉估計的渲染模板很難指定三維平移。利用二維邊界框的大小來計算三維平移的z分量,一旦二維邊界框有較小的誤差,則影響三維平移。

3. 預測物體空間中像素或局部形狀的三維位置。 通過對每個像素迴歸三維座標並預測類別。這種方法速度較慢。作者使用了一個獨立的2D檢測網絡來提供目標物體的感興趣區域。

4.使用自編碼的方法生成模型,以對模型去噪、恢復圖像缺失的部分。 作者訓練了一個帶有GAN的自編碼網絡,可以像圖像間轉換那樣精確的將彩色圖像轉換爲座標值,像圖像繪製那樣恢復被遮擋的部分。

創新點

1.提出新的框架:pix2pose,使用無紋理三維模型從RGB迴歸像素級三維座標。

2.提出新的損失函數:transformer loss,用於處理有限個模糊視圖的對稱物體。

3.在LineMOD、LineMOD Occlusion和T-Less上,即使遇到遮擋和對稱問題,效果sota。

網絡結構

網絡輸入一張剪裁後的圖像Is,輸出是物體座標中每個像素的歸一化三維座標I3D和每個預測的估計誤差Ie。Ie將每個像素作爲一個置信度,在進行位姿計算之前,直接用來確定內點和外點像素。

目標輸出包括被遮擋部分的座標預測,由於座標由三個值組成,和RGB值相似,因此可以將輸出看作彩色圖像,從而通過在ground truth位姿中渲染彩色座標模型,即可得到ground truth 的輸出,如下圖所示。

即將每個頂點的歸一化座標直接映射到顏色空間中的紅綠藍值,建立每個像素的2D-3D對應,不需要特徵匹配。

卷積核的大小和前四個卷積層與AAE中是相同的。

To maintain details of low-level feature maps, skip connections are added by copying the half channels of outputs from the first three layers to the corresponding symmetric layers in the decoder, which results in more precise estimation of pixels around geometrical boundaries.

爲了保證底層特徵圖的細節,將前三層輸出的半通道複製到解碼器對應的對稱層來添加殘差連接。使邊界附近的像素估計更準確。

每個卷積層與反捲積層的卷積核大小固定爲5×5,在編碼器與解碼器之間有兩個全連接層,除了最後一層,所有中間層的輸出都採用歸一化批處理和激活函數leakyReLU。

在最後一層,三通道的輸出和激活函數tanh生成三維座標圖像,單通道的輸出和激活函數sigmoid估計期望誤差Ie。

損失函數

在三維座標迴歸重建目標圖像時,使用每個像素的平均L1距離,由於物體的像素比背景更重要,物體mask的誤差由mask中的權重誤差乘 β因子。basic reconstruction loss:

其中n是像素的數量,Igt表示目標圖像的第i個像素,M是目標圖像中完全可見物體的mask,mask也包含遮擋部分,用於預測被遮擋物體的不可見部分的值,從而實現被遮擋物體的魯棒估計。

上述loss不能處理對稱物體,因爲其懲罰3維空間中距離較大的像素,沒有對稱的先驗知識。將三維變換矩陣乘上目標圖像,可以將每個像素的三維座標轉換成對稱位姿。使用候選對稱位姿中誤差最小的位姿來計算損失函數,transformer loss:

其中Rp是一個位姿到對稱位姿的轉換,這種損失函數適用於具有有限個對稱位姿的目標物體。

transformer loss的效果如下:

圖中可以看出L1 loss在π附近產生了較大的errors;而transformer loss在0到π範圍內產生最小值,預計爲obj-05的對稱角爲π。

預測誤差計算預測圖像與目標圖像之間的差異,error prediction loss:

GAN網絡能夠使用另一個領域的圖像生成目標領域中更精確真實的圖像,論文中將RGB圖像轉換爲3維座標圖,可以使用GAN網絡實現。鑑別器網絡能夠分辨3維座標圖像是由模型渲染的還是估計的。GAN網絡的損失函數爲:

其中D爲鑑別網絡。

總的損失函數爲:

其中λ1和λ2用於平衡不同的任務。文中後面提到λ1=100,λ2=50.

位姿預測過程

首先使用每個邊界框的中心、寬高來剪裁感興趣區域,調整輸入大小爲128×128px,然後 將他們乘以1.5,防止剪裁區域包括被遮擋部分。 論文中的位姿預測分爲兩個階段,如下圖所示:

第一階段 :由於2維目標檢測方法不同,可能導致物體偏移,將邊界框與物體中心對齊,消除背景和不確定像素。

In this stage, the predicted coordinate image I3D is used for specifying pixels that belong to the object including the occluded parts by taking pixels with non-zero values.

所預測的座標圖像I3D通過取非零值的像素來指定包括遮擋部分的物體像素。如果像素的誤差預測大於外點閾值θo,則使用預測誤差來移除不確定的像素。物體有效的mask通過非零值的像素單元和誤差小於θo的像素來計算。邊界框的新中心由有效mask的形心來確定。

第一階段的輸出是細化的輸入,它只包含從新邊界框中裁剪的有效mask的像素。當誤差預測小於外點閾值θo時,細化的輸入可能包含遮擋部分,這就意味着儘管有遮擋,這些像素的座標依然很容易預測。 外點閾值θo由三個值決定,目的是包括更多的可見像素,使用人工遮擋的訓練圖來去除噪點像素。

第二階段 :使用第一階段細化後的圖像預測最終的位姿和期望誤差。當預測誤差大於內點閾值θi時,三維座標樣本中的黑色像素表示點被移除,即使點有非零座標值。換句話說,具有非零座標值且誤差預測小於閾值θi的像素用來構建2D-3D的對應關係。

圖像中每個像素已經具有物體座標中三維點的值,所以二維圖像座標和預測三維座標直接形成對應。之後利用帶有RANSAC的PnP算法,通過最大化內點數量迭代計算最終位姿,內點的二維投影誤差比閾值θre更小。

pix2pose對T-LESS數據集進行評估優點顯著,因爲T-LESS提供了無紋理CAD模型,而且大多數物體都是對稱的,在工業領域更常見。

作者將物體的圖像從真實圖像中提取出來粘貼到COCO數據集中,對圖像進行顏色增強處理後,將物體與背景之間的邊界進行模糊處理,使邊界平滑。用背景圖像代替物體區域的一部分來模擬遮擋,最後對增強後的彩色圖像和目標座標圖像進行隨機旋轉。

使用Resnet-101的Faster R-CNN和Resnet-50的Retinanet來預測檢測到的物體類別,使用COCO數據集的預訓練權重對網絡進行初始化。

度量指標

對於LineMOD數據集,使用AD{D|I}進行度量,測量ground truth位姿與估計位姿之間頂點的平均距離,對稱物體則使用到最近頂點的平均距離,當誤差小於物體最大三維直徑的1/10時,位姿是正確的。

對於T-LESS數據集,使用可視表面偏差(VSD)作爲度量,只度量可見部分的距離誤差,使得度量不受對稱和遮擋的影響。

實驗和結果

在LineMOD數據集上的結果如下圖:

在不使用細化的方法中,作者的方法處理對稱物體的效果最好。

在LineMOD Occlusion數據集上的結果如下圖:

pix2pose的效果明顯優於yolo-6d,在八種物體中有三種的效果sota。

在T-Less數據集上的結果如下圖:

作者的方法優於現有的使用RGB和RGB-D的方法。

文中沒有對比PVNet ,可能是因爲ICCV是三月截稿,作者沒來得及對比。

PVNet在遮擋數據集上的ADD(-S)實驗結果爲:

可以看出,在遮擋數據集上,pix2pose算法的ADD(-S)實驗結果在平均準確率上低於PVNet的實驗結果,目標物體eggbox的實驗結果差距較大。

最近比較忙,所以更新可能稍微慢一些,目前正在測試這篇論文的代碼,還有一部分關於Ablation studies的,過幾天補更。感謝關注!

物體6D位姿估計交流羣

關注最新最前沿的物體6D位姿估計技術,掃碼添加CV君拉你入羣,(如已爲CV君其他賬號好友請直接私信)

請務必註明:6D

喜歡在QQ交流的童鞋,可以加52CV官方 QQ羣805388940

(不會時時在線,如果沒能及時通過驗證還請見諒)

長按關注 我愛計算機視覺

相關文章