林璐穎
(漳州職業(yè)技術(shù)學院 電子信息學院,福建 漳州 363000)
單目3D物體檢測是計算機視覺領(lǐng)域中一個非常具有挑戰(zhàn)性但又至關(guān)重要的研究方向,具有廣泛的應(yīng)用,包括自動駕駛[1]、機器人操作和場景理解等[2-4]。與基于相機雷達的多傳感器方法[5-6]相比,單目3D物體檢測方法[7-9]僅從單個RGB圖像中回歸3D物體的中心、大小和朝向等信息,作為一項病態(tài)的反向求解任務(wù),提出了一些新的挑戰(zhàn)。對于純相機的3D目標檢測來說,最大的挑戰(zhàn)是距離感知[8-11],因為單目3D目標檢測受到圖像平面上透視投影引起的尺度距離模糊的影響。因此,圖像空間中的幾個像素會在3D空間上產(chǎn)生很大的差異,使得很難直接預測遠處物體的姿態(tài)信息[11]。
現(xiàn)有的單目3D檢測方法,通常采用預先訓練的深度估計網(wǎng)絡(luò)來生成場景的偽點云表示,以更好地利用3D場景先驗。隨后,利用3D目標檢測器來聯(lián)合回歸目標的3D位置、尺寸和朝向。偽點云方法的主要優(yōu)點在于,當更新深度生成器時,它們在目標檢測上的性能可以獲得一致的提升。然而,效率和泛化能力是最大的瓶頸,限制了這種方法的性能。為了解決這個問題并同時增強距離感知,單階段單目3D物體檢測器[7,9]為物體中心設(shè)計了幾何和數(shù)學深度先驗,例如定位誤差[11]、幾何投影[7,10]、空間關(guān)系等。這些單階段3D目標檢測器在公共數(shù)據(jù)集上展示了良好的效果。
另一個挑戰(zhàn)是目標遮擋。在擁擠的交通環(huán)境中,目標經(jīng)常被遮擋或截斷,由于上下文線索的不足,使得推斷過程變得復雜。大多數(shù)方法[7-8,10]忽略了對遮擋信息的考慮,直接從圖像中回歸所有目標信息。本文提出了一種遮擋感知的逐像素聚合網(wǎng)絡(luò),它利用幾何和上下文線索來回歸密集場景中的3D目標邊界框,結(jié)合了偽點云和單階段檢測器的優(yōu)點。首先計算共享特征嵌入,并隨后在其上堆疊兩個流,即幾何流和上下文流。對于上下文流,采用GUPNet[7]從RGB圖像中直接回歸物體的3D包圍框,而幾何流則從幾何線索中恢復3D信息。比較了本文所提方法與傳統(tǒng)的偽點云方法之間的區(qū)別,如圖1所示??梢?本文方法支持端到端優(yōu)化,并且還允許使用深度預訓練。
(a)兩階段:偽點云
該任務(wù)的目標是給定單個RGB圖像的輸入,估計出3D目標物體的中心位置、尺寸、朝向和類別信息。此外,與其他工作一致,本文方法同樣需要大量適當?shù)挠柧殧?shù)據(jù)來進行深度預訓練[7,9]。然而,由于本文方法的深度預測頭網(wǎng)絡(luò)可以直接用激光點云和深度圖進行訓練,因此可以很容易地使用許多大規(guī)模的深度數(shù)據(jù)集,例如KITTI-Depth[2]等。
由圖1可知,本文方法與常規(guī)的兩階段的偽點云檢測方法不同,是一種可以完全端到端訓練的單階段方法。給定單個RGB圖像作為輸入,使用主干網(wǎng)絡(luò)來提取特征,然后將其分別輸入到幾何流和上下文流中,以執(zhí)行各自的預測任務(wù)。
本文方法的網(wǎng)絡(luò)結(jié)構(gòu)示意圖,如圖2所示。其中,幾何流中包含了三個頭網(wǎng)絡(luò),前兩個分別用于估計密集深度和深度邊界框殘差。通過對前兩個頭網(wǎng)絡(luò)的輸出進行逐像素的聚合操作,可以用遮擋感知的閉合形式進行3D邊界框信息的恢復。在最后一個邊界框投影頭網(wǎng)絡(luò)中,還預測了BEV(鳥瞰圖)邊界框角點的2D投影,以加強幾何引導的2D-3D目標約束,從而實現(xiàn)距離感知。上下文流則與GUP-Net[7]相同,預測2D邊界框,使用ROI Align提取以目標為中心的特征用于3D邊界框預測。與上下文流相比,幾何流獲得了更具體的幾何信息,如物體的形狀和位置。在訓練過程中,使用一致性約束來確保雙流的效果提升,并且特征編碼器可以從兩個流中學習到豐富的特征。上下文流更快、更穩(wěn)定,因為所有線索都被利用和聚合,而幾何流只利用與深度相關(guān)的幾何信息。因此,在推理過程中,只使用上下文流進行結(jié)果輸出。
圖2 遮擋像素感知網(wǎng)絡(luò)的結(jié)構(gòu)示意圖
在幾何流中,包含三個預測頭網(wǎng)絡(luò),分別為密集深度預測,密集邊界框殘差預測(DBR)以及鳥瞰圖(BEV)下的邊界框投影預測。
密集深度預測采用基于變換器的網(wǎng)絡(luò)將深度范圍劃分為自適應(yīng)上下文引導的區(qū)間,然后將密集的深度估計轉(zhuǎn)化為Softmax分數(shù)的線性組合。估計得到的深度圖D的尺寸為1×H/4×W/4。
圖3 密集邊界框殘差預測及包圍框投影示意圖
(1)
式(1)中,Ω包括2D目標邊界框中的所有像素,exp(*)是將不確定性分數(shù)up轉(zhuǎn)換為權(quán)重的指數(shù)函數(shù)。
假設(shè)預測結(jié)果遵循拉普拉斯分布,可以使用拉普拉斯算術(shù)不確定性(LAU)損失[12]在不確定性框架內(nèi)將幾何流的損失函數(shù)公式化為:
(2)
式(2)中,pr是預測結(jié)果,prgt是對應(yīng)的真值,u表示該預測結(jié)果的不確定性。
因此,對于預測的密集邊界框殘差和BEV邊界框角點投影及其不確定性,用LAU損失進行監(jiān)督。同時使用標準的L1損失來監(jiān)督預測的密集深度。通過將三個頭網(wǎng)絡(luò)的損失直接相加,得到幾何流的最終損失函數(shù)。
GPV-Pose[3]利用密集邊界框殘差預測與從RGB-D圖像中預測出來的姿態(tài)建立起幾何感知的一致性。本文將這一想法擴展到僅依賴RGB輸入的3D目標檢測。
(3)
(4)
為了增強距離感知,在之前的方法[7,11]中廣泛采用了目標高度的幾何投影。本文進一步擴展了這一思想,并提出了與目標寬度和長度相關(guān)的幾何先驗,以建立新的2D-3D幾何約束。由圖3可知有:
(5)
式(5)中,z1,z2是P1和P2的z坐標,K表示相機的內(nèi)參矩陣,W、L、C是目標的邊界框參數(shù)。當求解上述方程時,可以得到物體中心的深度zc為:
(6)
式(6)中,fx、cx分別是相機焦距及其沿x軸的光學中心。此外,n1=[nx,0,nz]T是目標的歸一化朝向。由于y軸的指向垂直向下,周圍線條的投影平行于圖像平面上的y軸,因此通過逐像素聚合回歸它們的x坐標比精確定位它們的2D位置更可靠??梢曰诿總€BEV邊界框的邊緣建立四個2D-3D約束。
1.5 幾何一致性損失
LC-G=||HGS-HCS||+||WGS-WCS||+
(7)
對于每個目標,可以根據(jù)公式(6)為深度zc生成4個假設(shè)。因此,給定上下文流中預測的3D長度和寬度,將目標深度的一致性損失定義為:
(8)
1.6 總損失函數(shù)
總的損失函數(shù)是上述所有損失項的總和:
LOverall=LCS+LGS+LC-G+LBPC
(9)
因此,損失函數(shù)將采用GUP-Net[7]中提出的分層任務(wù)學習(HTL)方案進行自動加權(quán),允許為一個特定的損失定義初步任務(wù),特定的損失只有當其對應(yīng)的初步任務(wù)經(jīng)過適當訓練后才會生效。上下文流中任務(wù)的排名與GUP-Net[7]相同。幾何流從密集深度預測和BEV邊界框預測開始,而這兩個預測又沒有初步任務(wù)。相反,密集邊界框殘差預測需要密集的深度估計作為初步任務(wù)。一旦預測結(jié)果變得穩(wěn)定,這兩個一致性項就會生效。因此,這兩種一致性正則化損失都取決于上下文流。此外,LC-G依賴于穩(wěn)定的密集深度計算和密集邊界框殘差預測,而LBPC依賴于穩(wěn)定的BEV邊界盒預測。
使用常用的KITTI-3D[2]基準數(shù)據(jù)集對本文方法進行了詳細的評估。按照官方的切分格式,使用7481張訓練圖像和7581測試圖像。與其他方法一致,進一步將訓練數(shù)據(jù)分成訓練和驗證子集,每個子集包含大約3700個樣本,用于后續(xù)的消融實驗。在訓練過程中,還利用提供的激光雷達點云數(shù)據(jù),標定文件和真實的邊界框標注信息。本文主要集中在三個常見的類別上進行精度評測,即汽車、行人、騎手。
為了與最先進的技術(shù)進行公平的比較,使用下采樣比例為4的DLA-34作為特征提取的主干網(wǎng)絡(luò)。同時使用AdamW優(yōu)化器訓練批量大小為8的網(wǎng)絡(luò)。在訓練階段的前5個迭代周期,使用余弦預熱法將學習率從1e-5提高到1.25e-3。訓練過程總共持續(xù)了200個迭代,在第110個和第150個迭代之后,學習速率分別衰減至0.1倍。并根據(jù)經(jīng)驗將α、β、γ設(shè)置為0.001,用于處理遮擋情況。輸入圖像的大小已調(diào)整為1280×380。通過隨機裁剪、圖像翻轉(zhuǎn)以及隨機亮度變化來對輸入數(shù)據(jù)進行增強操作。此外,本文提出的網(wǎng)絡(luò)結(jié)構(gòu)在KITTI-Depth[2]數(shù)據(jù)集上進行了25個迭代周期的密集深度預測頭網(wǎng)絡(luò)的預訓練過程。
根據(jù)大多數(shù)先前工作采用的評價指標,本文同樣報告了在IOU閾值為0.7時的3D檢測AP(平均精度)[7-9],并使用40個采樣點來近似精度召回曲線下的面積。
首先在KITTI-3D測試集上與其他最先進的單目3D檢測器進行了比較,如表1所示??梢钥闯?本文方法超過了其他所有方法并且在中等難度的目標上相對于GUP-Net[7]基線方法有明顯的提升(+2.03%)。DD3D[8]利用具有15M圖像的內(nèi)部數(shù)據(jù)集進行了深度預訓練,以及采用了更大的V2-99主干的特征金字塔網(wǎng)絡(luò)。盡管如此,本文方法仍然在測試集上取得更優(yōu)的檢測效果。
表1 在KITTI-3D測試集上與其他先進方法的車輛檢測結(jié)果對比
表2中進一步對比了在KITTI-3D測試集上行人和騎手類別的結(jié)果。可以觀察到,對于行人和騎行者來說,本文方法相比Monocon有更大的改進,這表明后者的輔助任務(wù)不能通過小目標進行很好的學習。然而,也觀察到本文方法對騎行者類別的檢測效果較差,這可能歸因于騎車人的寬度太窄。由于本文的模型是用來自多個激光雷達點云的深度進行訓練的,因此騎行者缺少深度信息會導致深度感知能力減弱。
表2 KITTI-3D測試集上與其他先進方法在行人和騎手類別的檢測結(jié)果對比(AP3D(R40|IOU>0.7)) (單位/%)
表3中,基于KITTI-3D驗證集對車輛類別的檢測效果進行了詳細的消融實驗?!癆1”指基線模型的結(jié)果。在“A2”中,代表引入了密集深度預測輔助任務(wù)時的效果提升?!癇1”探索了雙流一致性損失的影響。在該驗證實驗中,禁用了BEV邊界框預測頭網(wǎng)絡(luò)和LBPC。幾何流從密集深度和密集邊界框殘差預測中恢復出3D邊界框,LC-G確保了幾何流和上下文流的預測結(jié)果一致性。當刪除該分支時,中等難度的車輛目標檢測精度有所下降,證明了本文提出的雙流一致性損失函數(shù)LC-G的有效性。由于LC-G需要密集的深度圖預測,使得能夠在深度數(shù)據(jù)集上輕松地對網(wǎng)絡(luò)進行預訓練。在使用KITTI-Depth數(shù)據(jù)集[2]進行預訓練后,檢測精度進一步提高了0.67%(中等難度目標)。這表明了LC-G的訓練得益于額外的深度數(shù)據(jù)集,該數(shù)據(jù)集可以從激光雷達原始點云數(shù)據(jù)中進行轉(zhuǎn)換。
表3 KITTI-3D驗證集上車輛檢測效果的消融實驗 (單位/%)
進一步通過去除密集深度預測、密集邊界框殘差預測以及LC-G,來驗證BEV邊界框投影LBPC的有效性。實驗結(jié)果表明,相比于A1基線方法,利用LBPC可以獲得3.64%精度的提升,驗證了LBPC的有效性。由于沒有額外使用深度信息,LBPC帶來的總體上略低于LC-G。
最后,通過將兩種一致性損失集成到基線模型中,可以獲得本文方法的最終檢測結(jié)果。從實驗結(jié)果可以發(fā)現(xiàn)明顯超過了只有一個一致性項的模型??傊?利用額外的深度訓練數(shù)據(jù)和本文提出的幾何一致性約束,能夠產(chǎn)生最優(yōu)的檢測效果。
圖4中顯示了一些定性結(jié)果。本文方法的預測如圖4(a)所示,而基線模型[7]的預測如圖4(b)所示。本文方法、基線模型預測邊界框與標注的真實BEV邊界框?qū)Ρ热鐖D4(c)所示,其中箭頭標號①代表基線模型預測邊界框結(jié)果,箭頭標號②所指為本文方法預測邊界框,箭頭標號③所指為標注的真實BEV邊界框。此外,在前三列中,汽車的前部、后部或右側(cè)是被自身遮擋的,而在最后兩列中,車輛則被其他物體所遮擋??梢杂^察到,本文方法能夠在(自身)遮擋下預測出更準確的邊界框。
(a)本文方法預測結(jié)果示例
本文提出了一種新的遮擋感知像素聚合網(wǎng)絡(luò),該網(wǎng)絡(luò)從幾何流和上下文流來分別預測對3D目標邊界框,從而實現(xiàn)跨分支輸出的一致性。進一步提出了利用邊界框投影來建立多個2D-3D約束,以促進距離感知的預測效果。在公共數(shù)據(jù)集上的大量實驗結(jié)果表明,本文方法在實現(xiàn)實時性能的同時,也取得了當前最好的單目3D目標檢測效果。