?DID-M3D:用于單目3D物體檢測的解耦實例深度
來源丨 GiantPandaCV
0. 引言
單目三維物體檢測是自動駕駛和計算機視覺領(lǐng)域的重要課題,該任務(wù)中的一個重要挑戰(zhàn)在于實例深度估計。因為深度信息在相機投影過程之后容易丟失,因此實例深度估計是提高性能的瓶頸。
在2022 ECCV論文"DID-M3D: Decoupling Instance Depth for Monocular 3D Object Detection"中,作者提出了一種解耦實例深度網(wǎng)絡(luò)DID-M3D,將實例深度重新表述為視覺深度和屬性深度的組合,獲得最終的實例深度,算法已經(jīng)開源。
1. 論文信息
標(biāo)題:DID-M3D: Decoupling Instance Depth for Monocular 3D Object Detection
作者:Liang Peng, Xiaopei Wu, Zheng Yang, Haifeng Liu, Deng Cai
來源:2022 European Conference on Computer Vision (ECCV)
原文鏈接:https://arxiv.org/abs/2207.08531
代碼鏈接:https://github.com/SPengLiang/DID-M3D
2. 摘要
單目3D檢測由于其低成本和設(shè)置簡單而引起了社會的廣泛關(guān)注。它采用RGB圖像作為輸入,并預(yù)測3D空間中的3D框。其中最具挑戰(zhàn)性的子任務(wù)在于實例深度估計。以前的工作通常使用一種直接估算方法。
然而,本文指出RGB圖像上的實例深度是非直觀的。它由視覺深度線索和實例屬性線索耦合而成,難以在網(wǎng)絡(luò)中直接學(xué)習(xí)。因此,我們建議將實例深度重新表述為實例視覺表面深度(視覺深度)和實例屬性深度(屬性深度)的組合。視覺深度與物體的外觀和在圖像上的位置有關(guān)。
相比之下,屬性深度依賴于對象的固有屬性,這些屬性對于圖像上的對象仿射變換是不變的。相應(yīng)地,我們將3D位置不確定性解耦為視覺深度不確定性和屬性深度不確定性。通過組合不同類型的深度和相關(guān)的不確定性,我們可以獲得最終的實例深度。
此外,單目3D檢測中的數(shù)據(jù)增強通常由于物理性質(zhì)而受到限制,阻礙了性能的提升?;趯嵗疃确纸獠呗缘奶岢觯梢跃徑膺@一問題。在KITTI上進行評估后,我們的方法獲得了最新的結(jié)果,并且廣泛的消融研究驗證了我們方法中每個組成部分的有效性。
3. 算法分析
如圖1所示是作者提出的DID-M3D網(wǎng)絡(luò)架構(gòu)。網(wǎng)絡(luò)以RGB圖像作為輸入,經(jīng)過特征編碼后獲得深度特征。其次,網(wǎng)絡(luò)將深度特征輸入到三個2D檢測頭,即2D熱圖、2D偏移、2D尺寸。然后,利用2D估計,通過RoI對齊從深度特征中得到單個物體特征。最后,將這些目標(biāo)特征輸入三維檢測頭,生成三維參數(shù)。
圖1 DID-M3D網(wǎng)絡(luò)架構(gòu)總覽
在DID-M3D中,作者提出將實例深度解耦為實例視覺表面深度(視覺深度)和實例屬性深度(屬性深度)。如圖2所示,對于物體上的每個點(或小塊),視覺深度表示朝向代理(汽車/機器人)相機的絕對深度,屬性深度表示從該點(或小塊)到物體的3D中心的相對深度偏移。
這種分離的方式鼓勵網(wǎng)絡(luò)學(xué)習(xí)實例深度的不同特征模式。單目圖像的視覺深度取決于物體在圖像上的外觀和位置,這是仿射敏感的。相比之下,屬性深度高度依賴于對象的對象固有屬性(例如尺寸和方向),它聚焦于RoI內(nèi)部的特征,這是仿射不變的。因此屬性深度獨立于視覺深度。
圖2 實例深度的耦合性質(zhì)
綜上所述,作者所做工作的主要貢獻如下:
(1) 作者指出了實例深度的耦合性。由于糾纏的特征,先前直接預(yù)測實例深度的方法是次優(yōu)的。因此,作者建議將實例深度解耦為屬性深度和視覺深度,它們是獨立預(yù)測的。
(2) 作者提出兩種不確定性來表示深度估計的可信度,提出自適應(yīng)地將不同類型的深度聚合到最終的實例深度中,并相應(yīng)地獲得3D定位置信度。
(3) 借助于所提出的屬性深度和視覺深度,作者克服了在單目三維檢測的數(shù)據(jù)擴充中使用仿射變換的局限性。
(4) 在KITTI數(shù)據(jù)集上評估實現(xiàn)了SOTA效果,并通過廣泛的消融研究證明了方法中每種成分的有效性。
3.1 視覺深度視覺深度表示小RoI圖像網(wǎng)格上物體表面的物理深度。對于每個網(wǎng)格,作者將視覺深度定義為網(wǎng)格內(nèi)的平均像素深度。如果網(wǎng)格是1×1像素,視覺深度等于逐像素深度。假設(shè)像素表示物體的量化表面,那么可以將視覺深度視為像素深度的一般擴展。
單目圖像中的視覺深度具有一個重要的性質(zhì):對于基于單目的系統(tǒng),視覺深度高度依賴于物體的2D盒大小(遠(yuǎn)處的物體在圖像上看起來很小,反之亦然)和圖像上的位置(圖像坐標(biāo)系下較低的坐標(biāo)表示較大的深度)。因此,如果對圖像執(zhí)行仿射變換,視覺深度應(yīng)該被相應(yīng)地變換,其中深度值應(yīng)該縮放。作者稱這種性質(zhì)為仿射敏感。
3.2 屬性深度屬性深度是指從視覺表面到對象的3D中心的深度偏移。作者稱之為屬性深度,是因為它更可能與對象的固有屬性有關(guān)。例如,當(dāng)汽車方向平行于3D空間中的z軸(深度方向)時,汽車尾部的屬性深度是汽車的半長。
相反,如果方向平行于x軸,屬性深度是汽車的半寬。屬性深度取決于對象語義及其固有屬性。與仿射敏感相反,屬性深度對于任何仿射變換都是不變的,因為對象的固有特性不會改變。作者稱這種性質(zhì)為仿射不變量。
因此,作者使用兩個獨立的頭部來分別估計視覺深度和屬性深度。實例深度的解耦有幾個優(yōu)點:
(1) 對象深度以一種合理而直觀的方式被解耦,因此可以更全面和精確地表示對象;
(2) 允許網(wǎng)絡(luò)為不同類型的深度提取不同類型的特征,這有利于學(xué)習(xí);
(3) 利用解耦深度,DID-M3D可以有效地執(zhí)行基于仿射變換的數(shù)據(jù)增強,這在以前的工作中通常是有限的。
3.3 數(shù)據(jù)擴充在單目三維檢測中,許多先前的工作受到數(shù)據(jù)擴充的限制。它們中的大多數(shù)僅使用光度失真和翻轉(zhuǎn)變換。因為變換的實例深度是不可知的,因此直接使用仿射變換的數(shù)據(jù)擴充很難被采用。
如圖3所示,作者在數(shù)據(jù)擴充中添加了隨機裁剪和縮放策略,圖像上的3D中心投影點遵循圖像的相同仿射變換過程。視覺深度由圖像上沿y軸的比例因子縮放,屬性深度由于其關(guān)聯(lián)不變的性質(zhì)而保持不變。物體的其他固有屬性如觀察角度和尺寸,與原始值相同。消融實現(xiàn)證明數(shù)據(jù)增強的效果很好。
圖3 基于仿射變換的數(shù)據(jù)擴充
3.4 深度不確定性和聚集由于三維定位困難,二維分類評分不能完全表達單目三維檢測的置信度。鑒于作者已經(jīng)將實例深度解耦為視覺深度和屬性深度,可以進一步解耦實例深度的不確定性。只有當(dāng)一個對象同時具有低視覺不確定性和低屬性深度不確定性時,實例深度才能具有較高的置信度。
如圖4所示是深度流過程,作者假設(shè)每個深度預(yù)測都是一個拉普拉斯分布,并使用視覺深度、屬性深度和相關(guān)的不確定性來獲得最終的實例深度。
圖4 物體的深度流
3.5 損失函數(shù)二維檢測部分:如圖1所示,對于二維目標(biāo)檢測部分,二維熱圖H表示圖像上粗糙的物體中心,2D偏移O2d表示向粗糙2D中心的殘差,2D尺寸S2d表示2D盒的高度和寬度。因此,分別可以得到損失函數(shù)LH、LO2d和LS2d。
三維檢測部分:首先利用典型的損失函數(shù)LS3d。對于方向,該網(wǎng)絡(luò)預(yù)測觀測角度,并使用多箱損失LΘ。對于三維中心投影,通過預(yù)測到二維中心的三維投影偏移來實現(xiàn)它,損失函數(shù)為LO3d。視覺深度損失為LDvis,其中uvis為不確定性。同樣,也有屬性深度損失LDatt和實例深度損失LDins。
在這些損失項中,關(guān)于實例深度(LDvis、LDatt和LDins)的損失起著最重要的作用,所有損失項的權(quán)重設(shè)為1.0,總體損失函數(shù)為:
4. 實驗
作者在RTX 3080 TI GPU上進行實驗,并訓(xùn)練200個epoch,數(shù)據(jù)集采用KITTI 3D。訓(xùn)練方式上采用層次任務(wù)學(xué)習(xí)(HTL)訓(xùn)練策略,Adam優(yōu)化器的初始學(xué)習(xí)率為1e?5。采用線性熱身策略,學(xué)習(xí)速率在前5輪增加到1e?3,在第90和120階段為0.1衰減。此外,作者將激光雷達點云投射到圖像幀上,創(chuàng)建稀疏的深度圖,然后執(zhí)行深度補全,在圖像中的每個像素處生成深度值。
如表1所示是DID-M3D與KITTI測試集中的其他方法的對比。與GUPNet相比,DID-M3D在中等設(shè)置下將性能從21.19/15.02提高到22.26/16.29。對于PCT,DID-M3D在中等設(shè)置下超過了3.23/2.92AP。與MonoCon相比,DID-M3D在所有BEV指標(biāo)和3D指標(biāo)上表現(xiàn)出更好的性能。此外,DID-M3D的運行速率也可以與其他實時方法相媲美。這些結(jié)果驗證了該方法的優(yōu)越性
表1 KITTI測試集的比較
為了證明在其他類別上的普遍性,作者還在自行車和行人類別上進行了實驗,結(jié)果如表2所示。DID-M3D對基線帶來了明顯的改進,同時證明了DID-M3D也適用于其他類別。
表2 對KITTI上的行人和騎自行車者類別進行比較結(jié)果
此外,圖5所示是RGB圖像和3D空間的定性結(jié)果??梢杂^察到,對于大多數(shù)簡單的情況,模型預(yù)測相當(dāng)精確。然而,對于嚴(yán)重遮擋、截斷或遠(yuǎn)處的對象,方向或?qū)嵗疃炔惶珳?zhǔn)確。由于單目圖像中的信息有限,這是大多數(shù)單目算法的常見困境。
圖5 KITTI數(shù)據(jù)集的定性結(jié)果
4.2 消融實驗4.2.1 解耦實例深度
如表3所示是詳細(xì)的解耦實例深度消融實驗結(jié)果,實驗(a)是使用直接實例深度預(yù)測的基線。為了進行公平的比較,對于基線,作者還采用了網(wǎng)格設(shè)計(實驗(b))。這一結(jié)果表明,由于實例深度的耦合性質(zhì),網(wǎng)絡(luò)的表現(xiàn)不佳。從實驗(c)→(d,e)中可以看出,深度的不確定性帶來了改善,因為不確定性穩(wěn)定了深度的訓(xùn)練,有利于網(wǎng)絡(luò)學(xué)習(xí)。
當(dāng)同時強制執(zhí)行這兩種類型的不確定性時,性能會進一步提高。請注意,解耦的實例深度是解耦的不確定性的前提條件。由于實現(xiàn)了兩種類型的深度不確定性,可以得到最終的實例深度不確定性(實驗(f)→(g))。這可以看作是三維位置置信度。將它與原始的二維檢測置信度相結(jié)合,結(jié)果得到了明顯的改進。
最后,可以利用解耦的深度和相應(yīng)的不確定性來自適應(yīng)地獲得最終的實例深度(實驗(h))。綜上所述,通過使用解耦的深度策略,可以提高了從16.79/11.24到22.76/16.12的基線性能(實驗(b)→(h))。
表3 解耦實例深度消融實驗
"Dec.":解耦; "ID.":實例深度; "uvis":視覺深度不確定性;
"uatt":屬性深度不確定性; " Conf.":置信; "AA.":自適應(yīng)聚合
4.2.2 基于仿射變換的數(shù)據(jù)增強
作者通過實驗驗證了基于仿射變換的數(shù)據(jù)增強的效果,比較結(jié)果如表4所示??梢钥吹剑珼ID-M3D明顯受益于基于仿射的數(shù)據(jù)增強。注意,適當(dāng)?shù)纳疃绒D(zhuǎn)換是非常重要的。當(dāng)強制執(zhí)行基于仿射的數(shù)據(jù)增強時,應(yīng)該對視覺深度分別進行縮放,而屬性深度不應(yīng)因它們的仿射敏感性和仿射不變性而發(fā)生改變
如果在不縮放視覺深度的情況下改變屬性深度,檢測器甚至比沒有基于仿射的數(shù)據(jù)增強的檢測器的性能更差(AP3D從12.76降級到12.65)。這是因為這種方式用不正確的深度目標(biāo)誤導(dǎo)了訓(xùn)練網(wǎng)絡(luò)。在修正視覺深度之后,網(wǎng)絡(luò)可以受益于擴充的訓(xùn)練樣本,在中等設(shè)置下將性能從19.05/12.76提高到21.74/15.48 AP。
與不適當(dāng)?shù)膶傩陨疃认啾龋贿m當(dāng)?shù)囊曈X深度對最終性能的影響更大,因為視覺深度具有更大的取值范圍。當(dāng)采用適當(dāng)?shù)囊曈X深度和屬性深度變換策略時,可以獲得最佳的性能。
表4 基于仿射變換的數(shù)據(jù)增強消融實驗
4.2.3 視覺深度和屬性深度的網(wǎng)格大小
作者研究了網(wǎng)格大小所帶來的影響。當(dāng)增加網(wǎng)格大小m時,視覺深度和屬性深度將變得更為精細(xì)。這種趨勢使視覺深度更加直觀,即接近于像素級的深度。
然而,細(xì)粒度的網(wǎng)格將導(dǎo)致在學(xué)習(xí)對象屬性方面的性能不佳,因為這些屬性集中于整體對象。因此,作者對網(wǎng)格大小m進行消融實驗,結(jié)果如表5所示。當(dāng)m被設(shè)置為7時,獲得了最佳的性能。
表5 視覺深度和屬性深度上網(wǎng)格大小的消融
5. 結(jié)論
在2022 ECCV論文"DID-M3D: Decoupling Instance Depth for Monocular 3D Object Detection"中,作者提出了一種用于單目3D物體檢測的解耦實例深度,并指出實例深度是由視覺深度和物體固有屬性耦合而成的,這種糾纏性質(zhì)使得用以前的直接方法很難精確估計。
因此,作者建議將實例深度解耦為視覺深度和屬性深度,這種方式允許網(wǎng)絡(luò)學(xué)習(xí)不同類型的特征,通過聚集視覺深度、屬性深度和相關(guān)的不確定性來獲得實例深度。使用解耦的深度,可以有效地對圖像執(zhí)行基于仿射變換的數(shù)據(jù)增強,這在以前的工作中通常是受限的。
本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。