全面解析自動(dòng)駕駛系統(tǒng) BEV 3D 檢測(cè)提升策略
眾所周知,與其他傳感器相比,自動(dòng)駕駛汽車AV攝像頭擁有最密集的信息,使其成為自動(dòng)駕駛汽車中提取信息最具挑戰(zhàn)性的傳感器之一,但同時(shí)也是最有用的。為了從數(shù)學(xué)上理解這一點(diǎn),需要首先看一下每個(gè)可視化數(shù)據(jù)點(diǎn)數(shù)量,如下圖所示。實(shí)際上,視覺感知算法是將這些數(shù)據(jù)點(diǎn)(浮點(diǎn)數(shù))作為傳感器覆蓋 360°視圖的感知算法輸入,負(fù)責(zé)為 AV 做出決策。
基于視覺的3D檢測(cè)任務(wù)是自動(dòng)駕駛系統(tǒng)感知的基礎(chǔ)任務(wù),也是自動(dòng)駕駛當(dāng)前研究的熱點(diǎn)。然而,使用單目相機(jī)的 2D 傳感器輸入數(shù)據(jù)實(shí)現(xiàn) 3D BEV(鳥瞰圖)性能并不是一件容易的事。在本文中,重點(diǎn)關(guān)注自動(dòng)駕駛中基于3D 視覺檢測(cè)的方法?;诓煌曈XBEV 算法檢測(cè)進(jìn)行了詳細(xì)分析,并將它們分為不同的子組,以便更容易理解共同趨勢(shì)。此外,從行業(yè)趨勢(shì)上分析了如何將3D檢測(cè)任務(wù)轉(zhuǎn)向基于環(huán)視圖像的方法,以及介紹了這些環(huán)視方法適用到自動(dòng)駕駛或自動(dòng)泊車中的特殊場(chǎng)景。最后,基于當(dāng)前方法的缺點(diǎn)以及前沿協(xié)同感知這類型研究方向,提出了 3D 視覺技術(shù)對(duì)未來研究的思考。

為了涵蓋理解3D BEV目標(biāo)檢測(cè)任務(wù)所需的基礎(chǔ)知識(shí),我們討論四個(gè)方面:自動(dòng)駕駛車輛 (AV) 上的傳感器設(shè)置;經(jīng)常使用的數(shù)據(jù)集;自動(dòng)駕駛檢測(cè)任務(wù)的常見評(píng)估指標(biāo),以及為什么鳥瞰圖 (BEV) 對(duì)于 AV 攝像頭感知很重要?
因此,本文將基于環(huán)視視覺的3D對(duì)象檢測(cè)的進(jìn)行全面調(diào)研,提供了對(duì)最近基于深度學(xué)習(xí)的方法和架構(gòu)的全面回顧。首先,基于單視圖檢測(cè)器基線進(jìn)行了深入分析,激發(fā)了使用相機(jī)進(jìn)行 3D 物體檢測(cè)任務(wù)中的環(huán)視檢測(cè)器研究。其次,進(jìn)一步分析了計(jì)算機(jī)視覺界目前正在開發(fā)的主要環(huán)視探測(cè)器趨勢(shì),從而對(duì)它們進(jìn)行分類。最后,對(duì)遺留問題進(jìn)行了詳細(xì)分析,并介紹了BEV 3D圖像目標(biāo)檢測(cè)器的幾個(gè)潛在研究方向,從而為未來的檢測(cè)研究打開了可能的大門。
AV系統(tǒng)利用不同視角感知視圖的特征來了解自動(dòng)駕駛車輛周圍場(chǎng)景的整體表示。多相機(jī)組合都需要事先進(jìn)行與固定傳感器安裝及其校準(zhǔn)相關(guān)的基礎(chǔ)設(shè)施工作。相機(jī)的標(biāo)定簡(jiǎn)單來說就是提取兩個(gè)相機(jī)之間的外參變換矩陣。該相機(jī)矩陣使我們能夠?qū)⒁粋€(gè)相機(jī)中的像素一對(duì)一映射到另一個(gè)相機(jī)中的像素,從而在多個(gè)相機(jī)之間創(chuàng)建關(guān)系以實(shí)現(xiàn)它們之間的推理。自動(dòng)駕駛汽車需要保持這種長(zhǎng)距離的高視場(chǎng)重疊,以最大限度地減少短距離的盲點(diǎn)。通過回歸每個(gè)對(duì)象的深度或使用基于啟發(fā)式的方法(逆透視映射),通過估計(jì)地平面高度,可以有效的將透視圖檢測(cè)提升到 BEV 空間。
3D 物體檢測(cè)器使用多個(gè)標(biāo)準(zhǔn)來衡量檢測(cè)器的性能,即精度和召回率。精度是檢索到的待檢測(cè)案例中相關(guān)實(shí)例的比例,召回率是檢索到的相關(guān)實(shí)例的比例。如下公式:
Precisinotallow=TP/(TP + FP) (1)
Recall=TP/(TP + FN) (2)
然而,平均精度 (mAP) 是最常見的評(píng)估指標(biāo)??筛鶕?jù)上述方程,分別計(jì)算每個(gè)類別的平均精度。為了比較不同檢測(cè)器之間的性能(mAP)。需要基于每個(gè)類別的基本事實(shí)數(shù)量計(jì)算加權(quán)平均值。并集交集(IoU)是預(yù)測(cè)框與真實(shí)框之間重疊面積與并集面積的比率,IoU 閾值(通常為 0.5)用于判斷預(yù)測(cè)框是否與任何特定的真實(shí)框匹配。如果 IoU 大于閾值,則該預(yù)測(cè)被視為真陽性 (TP),否則為假陽性 (FP)。如果無法用任何預(yù)測(cè)框檢測(cè)到的真實(shí)對(duì)象將被視為假陰性 (FN)。
另外,定義如下公式所示的F1 分?jǐn)?shù)作為第二個(gè)最常見的檢測(cè)指標(biāo),它表示為精度和召回率的加權(quán)平均值。當(dāng)模型在不同的配置下部署時(shí),更高的 AP 檢測(cè)器可以提供更好的性能。然而,當(dāng)模型要以已知的固定最佳置信度閾值部署時(shí),會(huì)使用更高的 max-F1 分?jǐn)?shù)檢測(cè)器。
F1=2?Precision?Recall/(Precision+Recall) (3) 此外,還有一些數(shù)據(jù)集特定的指標(biāo),即 KITTI 引入的平均方向相似度(AOS),它評(píng)估地平面上盒子的方向估計(jì)的質(zhì)量。mAP度量?jī)H考慮對(duì)象的3D位置,但是忽略尺寸和方向的影響。與此相關(guān)的是,nuScenes 引入了 TP 指標(biāo),即平均平移誤差 (ATE)、平均尺度誤差 (ASE) 和平均方向誤差 (AOE)。WOD 引入了按航向加權(quán)的平均精度 (APH) 作為其主要指標(biāo),將航向/方向信息納入評(píng)估體系。考慮到相機(jī)等 2D 傳感器的深度混亂,WOD 引入了縱向誤差容錯(cuò) 3D 平均精度 (LET-3D-AP),在預(yù)測(cè)中更強(qiáng)調(diào)橫向誤差而不是縱向誤差。
為什么要在 AV 中采用環(huán)視技術(shù)構(gòu)建多相機(jī)檢測(cè)視圖算法呢?因?yàn)樵诤芏鄷r(shí)候,很難將整個(gè)對(duì)象放入單個(gè)幀中以對(duì)其進(jìn)行準(zhǔn)確檢測(cè)和分類,這是長(zhǎng)型車輛類別中特別常見的問題。通過如下圖所示可以很直觀地了解整個(gè)多相機(jī)檢測(cè)的優(yōu)勢(shì)。

圖 周視圖像在 3D 物體檢測(cè)中的使用
如上圖所示,頂部表示構(gòu)建的整個(gè)BEV 視圖;底部表示右前、右、右后攝像頭的周視圖像。假設(shè)只使用一個(gè)或兩個(gè)攝像頭,我們可以將物體分類為汽車,但如果沒有所有三個(gè)圖像,我們將無法對(duì)其位姿和運(yùn)動(dòng)狀態(tài)進(jìn)行完美定位,因?yàn)榭紤]跟蹤而言,我們最后的目的是要在黑色豪華轎車上安裝準(zhǔn)確的邊界框。因此,由多V構(gòu)建在3D坐標(biāo)系下的鳥瞰圖是非常必要的。并且,在鳥瞰圖中使用 3D 代理的表示形式對(duì)于自動(dòng)駕駛更具有實(shí)際意義。
1、傳感器融合
首先,BEV代理表示形式使得所有AV車輛相關(guān)的全場(chǎng)景感知傳感器(即Camera、LiDAR 和RADAR)的融合更加自然。比如,基于激光雷達(dá)本身也可以在 BEV 空間中運(yùn)行。
2、時(shí)間一致性
其次,如果處理算法都在BEV 中進(jìn)行操作,就可以更好地對(duì)動(dòng)態(tài)場(chǎng)景的時(shí)間一致性進(jìn)行建模。與透視圖(相機(jī)視圖)相比,BEV 代理中的運(yùn)動(dòng)補(bǔ)償(即平移和旋轉(zhuǎn)建模)要簡(jiǎn)單得多。例如,在 BEV 視圖中:姿勢(shì)變化僅取決于主體的運(yùn)動(dòng),而在透視視圖中,姿勢(shì)變化取決于深度以及主體的運(yùn)動(dòng)。
3、空間一致性
由于感知對(duì)象的比例在BEV 空間中是一致的,但在透視圖中則不太一致。在透視圖中,物體離物體越近就會(huì)顯得越大。因此,BEV 空間使得學(xué)習(xí)與范圍無關(guān)的尺度特征變得更容易。在自動(dòng)駕駛中,感知之后的下游任務(wù)(例如運(yùn)動(dòng)預(yù)測(cè)和運(yùn)動(dòng)規(guī)劃)本身也可以在 BEV 空間上運(yùn)行。因此,所有軟件堆棧在車載域控平臺(tái)上很自然的就會(huì)利用BEV下的通用坐標(biāo)視圖進(jìn)行計(jì)算和轉(zhuǎn)化。
4、協(xié)同感知
基于單V圖像的目標(biāo)檢測(cè)主要是基于如下三類方法:兩級(jí)、單級(jí)和基于集合的檢測(cè)器。其中,兩級(jí)探測(cè)器分為兩個(gè)階段。第一階段是預(yù)測(cè)任意數(shù)量的對(duì)象提案,然后在第二階段通過對(duì)這些對(duì)象提案進(jìn)行分類和本地化來生成預(yù)測(cè)框。然而,這些建議存在推理時(shí)間慢、缺乏全局上下文(即使在單個(gè)圖像內(nèi))和復(fù)雜架構(gòu)等固有問題。因此,采用多V圖像的BEV代理架構(gòu)構(gòu)成的兩階段方法可以很好的解決如上問題。
最近的創(chuàng)新研究領(lǐng)域---“協(xié)同感知”,也正是利用了 BEV 形式來表示公共坐標(biāo)系中的所有代理。這些協(xié)同感知中視覺算法主要基于 R-CNN工作線構(gòu)建區(qū)域的全卷積網(wǎng)絡(luò)(R-FCN)、特征金字塔網(wǎng)絡(luò)(FPN)和 Mask R-CNN。此外,還有激光算法圍繞偽 LiDAR 的并行工作流,在第一階段預(yù)測(cè)密集深度,從而將像素轉(zhuǎn)換為偽點(diǎn)云,然后將類似 LiDAR 的檢測(cè)頭應(yīng)用于 3D Point-pillars 中完成的對(duì)象檢測(cè)。

周視檢測(cè)可以大致分為兩個(gè)子組,即基于幾何的視圖變換器和基于交叉注意力的視覺變換器。其過程是將每個(gè)圖像單獨(dú)提升到 BEV 特征的截錐體中,然后將所有截錐體放到光柵化的 BEV 網(wǎng)格上。給定 n 張圖像 Xk ∈ R3xHxWn,每個(gè)都有一個(gè)外參矩陣 Ek ∈ R3x4 和一個(gè)內(nèi)參矩陣 Ik ∈ R3x3,可以在 BEV 坐標(biāo)系中找到特征的柵格化 BEV 圖為 y ∈ RCxXxY,其中 C、X 和 Y 是通道深度BEV 地圖 、高度和寬度。外參矩陣和內(nèi)參矩陣共同定義了每個(gè)攝像機(jī)從參考坐標(biāo) (x, y, z) 到局部像素坐標(biāo) (h, w, d) 的映射。這種方法不需要在訓(xùn)練或測(cè)試期間訪問任何深度傳感器,只需 3D 框注釋就足夠了。該架構(gòu)如下圖所示,它改進(jìn)了預(yù)處理和后處理技術(shù)。

Lift-splat-shoot (LSS)架構(gòu)
如上圖所示,頂圖表示的整個(gè)BEV算法的提升步驟如下:
每個(gè)圖像平截頭體的像素定義了上下文向量,并投影到 BEV 坐標(biāo)空間中生成離散深度,底圖則通過接收 n 個(gè)圖像并返回 BEV 語義圖。
與基于雷達(dá)這類傳感器相比,基于單幀視覺的探測(cè)器通常具有更高的速度誤差,因?yàn)?LiDAR 探測(cè)器通常使用在點(diǎn)云中嵌入時(shí)間信息的多次掃描數(shù)據(jù),而RADAR 固有的點(diǎn)云包括使用多普勒效應(yīng)的速度屬性。基于此,在視覺檢測(cè)器中添加時(shí)間幀則能夠?qū)W習(xí)道路上動(dòng)態(tài)代理的時(shí)間線索。最新的BEVDet4D網(wǎng)絡(luò)架構(gòu)整體上添加了時(shí)間維度,使BEV的問題升級(jí)成為 4 維問題,這種方法試圖解決基于視覺的探測(cè)器中高速誤差的固有問題。
作為進(jìn)一步的擴(kuò)展,BEVDepth方法添加了相機(jī)感知深度估計(jì)模塊,這有助于實(shí)現(xiàn)對(duì)象深度預(yù)測(cè)能力。整體假設(shè)是:增強(qiáng)深度是 nuScenes 基準(zhǔn)上高性能相機(jī) 3D 檢測(cè)的關(guān)鍵,將 LSS 中的普通分割頭替換為用于3D 檢測(cè)的 CenterPoint頭。對(duì)于輔助深度頭基線,則僅使用檢測(cè)損失的監(jiān)督。然而,由于單目深度估計(jì)的困難,單獨(dú)的檢測(cè)損失遠(yuǎn)遠(yuǎn)不足以監(jiān)督深度模塊。因此,通過使用校準(zhǔn)的 LiDAR 數(shù)據(jù)將相機(jī)變換矩陣點(diǎn)云投影到圖像上,從而形成 2.5D 圖像坐標(biāo) P imgi(u, v, d),其中 u 和 v 表示圖像坐標(biāo)中的坐標(biāo),d 表示相應(yīng) LiDAR 點(diǎn)云的深度,實(shí)現(xiàn)了單攝像頭檢測(cè)深度的缺陷損失。
當(dāng)然,為了減少內(nèi)存使用,進(jìn)一步開發(fā)的M2BEV可以很好減少可學(xué)習(xí)參數(shù),并在推理速度和內(nèi)存使用方面提高效率。優(yōu)化的檢測(cè)器包括四個(gè)組件:
1. 圖像編碼器,用于提取透視圖中的圖像特征;
2. 深度模塊,用于生成深度和上下文,然后將它們進(jìn)行外積以獲得點(diǎn)特征;
3. 視圖轉(zhuǎn)換器,將透視圖轉(zhuǎn)換為 BEV 視圖;
4. 3D 檢測(cè)頭提出最終的 3D 邊界框;
5. BEV三維重建模塊引入動(dòng)態(tài)時(shí)間立體方法來增強(qiáng)計(jì)算成本預(yù)算內(nèi)的深度預(yù)測(cè)。
視覺 Transformer (Vision Transformer,ViT)可以根據(jù) Transformer 解碼器中查詢(對(duì)象建議)的粒度進(jìn)行劃分,即基于稀疏查詢的方法和基于密集查詢的方法?;谙∈璨樵兊?ViT假設(shè)測(cè)試數(shù)據(jù)對(duì)象代表訓(xùn)練數(shù)據(jù)對(duì)象,其處理過程則是嘗試從代表性訓(xùn)練數(shù)據(jù)中學(xué)習(xí)要在場(chǎng)景中查找的對(duì)象建議,然后使用這些學(xué)習(xí)到的對(duì)象建議在測(cè)試時(shí)進(jìn)行查詢。
單圖像(透視視圖)DETR通過 DETR3D 擴(kuò)展到 BEV 空間中的環(huán)視圖像。這里給定 n 個(gè)環(huán)視圖像 I ∈ R H’×W’×3,分別通過主干網(wǎng)BackBone、特征提取網(wǎng)FPN 后由Transformers 編碼器產(chǎn)生 n 個(gè)編碼圖像特征 F ∈ RHxWxd。其中 d 是特征維度,H'、W' 和 H,W 分別表示圖像和特征的空間尺寸。然后,將這 n 個(gè)編碼特征和一小組對(duì)象查詢 Q ∈ R Nxd 饋送到Transformer 解碼器中以產(chǎn)生檢測(cè)結(jié)果。這里 N 是對(duì)象查詢的數(shù)量,表示 BEV 地圖上不同位置的潛在對(duì)象,對(duì)于整個(gè) 360°場(chǎng)景,通常為 300 ~900個(gè)查詢對(duì)象。作為元數(shù)據(jù),相機(jī)變換矩陣也用作輸入。需要這些矩陣來創(chuàng)建映射到 2D 坐標(biāo)空間的 3D 參考點(diǎn),并對(duì)每個(gè)查詢的相應(yīng) 2D 特征進(jìn)行采樣。
在 Transformers 解碼器中,對(duì)象查詢依次由自注意力模塊、交叉注意力模塊和前饋網(wǎng)絡(luò) (FFN) 處理,最后由多層感知器 (MLP) 生成 3D BEV 檢測(cè)的最終輸出。這里的自注意力模塊在不同對(duì)象查詢之間執(zhí)行消息傳遞;在交叉注意力模塊中,對(duì)象查詢首先搜索相應(yīng)的區(qū)域/視圖進(jìn)行匹配,然后從匹配的區(qū)域中提取相關(guān)特征以進(jìn)行后續(xù)預(yù)測(cè)。
另外值得注意的是,基于變壓器的編碼器是這里的可選附加組件,但這些檢測(cè)器的核心部分是基于變壓器的解碼器。這種方法的工作流程可以很容易地理解,如下圖所示。

DETR3D 合并了重疊區(qū)域中兩個(gè)相鄰視圖的多個(gè)特征,同時(shí)也合并了重疊區(qū)域中兩個(gè)相鄰視圖的多個(gè)特征,每個(gè)圖像的邊界區(qū)域可能導(dǎo)致特征截?cái)?,這也是阻礙 DETR3D 性能的主要瓶頸。因此,DETR3D仍然存在特征聚合不足的問題,從而錯(cuò)過了充分提升檢測(cè)性能的機(jī)會(huì)。
為了優(yōu)化 DETR3D算法瓶頸,可以由如下不同的算法優(yōu)化策略:
1)通過圖結(jié)構(gòu)學(xué)習(xí)(GSL)聚合環(huán)視圖像信息。
它在每個(gè)對(duì)象查詢和 2D 特征圖之間構(gòu)建動(dòng)態(tài) 3D 圖,以增強(qiáng)對(duì)象表示,尤其是在圖像邊界區(qū)域。這類方法可以表述為PETR,即在PETR的位置編碼開發(fā)工作中,通過對(duì)攝像機(jī)變換矩陣中的 3D 坐標(biāo)進(jìn)行編碼,將環(huán)繞視圖特征變換到 3D 域。隨后,通過與 3D 位置感知功能交互來更新對(duì)象查詢并生成 3D 預(yù)測(cè),從而使過程更簡(jiǎn)單。增強(qiáng)型PETRv2則在PETR基礎(chǔ)上其添加了時(shí)間維度,以獲得時(shí)間感知的更密集特征。
2)Polar DETR在極坐標(biāo)中參數(shù)化 3D 檢測(cè)。
這重新表述了位置參數(shù)化,極坐標(biāo)系(r,θ)中的速度分解、感知范圍、標(biāo)簽分配和損失函數(shù)。這種基于 Graph-DETR3D的檢測(cè)方法,量化了位于不同區(qū)域的對(duì)象,可以簡(jiǎn)化并支持中心上下文特征聚合以增強(qiáng)特征交互。
3)基于密集查詢的 ViT。
假設(shè)有一個(gè)基于 BEV 表示中感興趣區(qū)域的密集查詢,每個(gè)查詢都預(yù)先分配了 3D 空間中的空間位置。因?yàn)槿匀荒軌驒z測(cè)到某些類型的對(duì)象,這些對(duì)象不是通過稀疏查詢?cè)谟?xùn)練數(shù)據(jù)中進(jìn)行學(xué)習(xí)的。換句話說,當(dāng)訓(xùn)練數(shù)據(jù)不能完美代表測(cè)試數(shù)據(jù)時(shí),這種方法更加穩(wěn)健。
BEVFormer通過預(yù)定義的網(wǎng)格狀 BEV 查詢與空間和時(shí)間空間進(jìn)行交互,從而可以很好的利用空間和時(shí)間信息。為了聚合空間信息,設(shè)計(jì)了空間交叉注意力,每個(gè) BEV 從相機(jī)視圖的空間特征中提取信息進(jìn)行查詢。對(duì)于時(shí)間信息,他們使用時(shí)間自注意力來循環(huán)融合歷史 BEV 信息,如下圖所示。

BEVFormer 的總體架構(gòu)
如上圖所示,整體架構(gòu)上(a) BEVFormer 的編碼器層包含網(wǎng)格狀 BEV 查詢、時(shí)間自注意力和空間交叉注意力。(b)在空間交叉注意力中,每個(gè) BEV 查詢僅與感興趣區(qū)域中的圖像特征進(jìn)行交互。(c)在時(shí)間自注意力中,每個(gè) BEV 查詢與兩個(gè)特征交互:當(dāng)前時(shí)間戳的 BEV 查詢和前一個(gè)時(shí)間戳的 BEV 特征。
由于利用了密集查詢,這種方法已經(jīng)超越了基于稀疏查詢的 Vision Transformers 方法,獲得了更高的召回值。然而,密集查詢是以高計(jì)算要求為代價(jià)的。因此,使用可變形 DETR 來解決這個(gè)問題的K點(diǎn)圍繞參考點(diǎn)采樣策略,即BEVFormer 可完全基于變壓器的結(jié)構(gòu)使其 BEV 功能比其他方法更加通用,從而輕松支持非均勻和不規(guī)則的采樣網(wǎng)格。
4)優(yōu)化BEVFormer的方法策略。
后續(xù)優(yōu)化策略中,BEVFormerV2添加了透視監(jiān)督,這有助于收斂并以更好的方式利用基于圖像的主干網(wǎng)。其中包括兩級(jí)檢測(cè)器,其中來自透視頭的建議被輸入鳥瞰圖并進(jìn)行最終預(yù)測(cè)。除了透視頭提案之外,還使用了 DETR3D 風(fēng)格的學(xué)習(xí)查詢。對(duì)于輔助透視損失,使用 FCOS3D head,用于預(yù)測(cè) 3D 邊界框的中心位置、大小、方向和投影中心度。
該頭的輔助檢測(cè)損失,表示為透視損失Lpers,作為BEV損失Lbev的補(bǔ)充,促進(jìn)骨干網(wǎng)的優(yōu)化。整個(gè)模型的訓(xùn)練有一個(gè)總體目標(biāo):

PolarFormer主張?jiān)?BEVFormer 之上利用極坐標(biāo)系,這樣可以很好的解釋自車視角的本質(zhì),因?yàn)槊總€(gè)車載攝像頭都以具有根(非垂直)軸的成像幾何固有的楔形形狀感知世界。



































