3D檢測+BEV分割全SOTA!HENet登場:多視角&多任務的端到端感知算法
本文經自動駕駛之心公眾號授權轉載,轉載請聯系出處。
寫在前面&筆者的個人理解
在自動駕駛系統中,感知任務是非常重要的一環,是自動駕駛后續下游軌跡預測以及運動規劃任務的基礎。作為一輛能夠實現自動駕駛功能的汽車而言,其通常會配備環視相機傳感器、激光雷達傳感器以及毫米波雷達傳感器。由于基于純視覺的BEV感知算法需要更低的硬件以及部署成本,同時其輸出的BEV空間感知結果可以很方便被下游任務所使用,受到了來自工業界和學術界的廣泛關注。
隨著目前感知任務需求的增長,比如要實現基于BEV空間的3D檢測任務或者是基于BEV空間的語義分割任務,一個理想的感知算法是可以同時處理像3D檢測或者語義分割等多個任務的。同時,目前的自動駕駛系統更加傾向于采用完全端到端的感知框架,從而簡化整個系統的架構并降低感知算法實現的復雜性。
雖然端到端的多任務感知模型具有諸多的優勢,但是目前依舊存在著諸多挑戰:
- 目前,絕大多數基于相機的3D感知算法,為了提高模型的檢測性能,都會采用更高分辨率的輸入圖像、長時序的輸入信息以及更強大的圖像特征編碼器。但是需要注意的是,在單任務的感知算法模型上同時采用這些技術會導致訓練過程中巨大的訓練成本。
- 由于時序的輸入信息可以更好的提升感知算法模型對于當前環境的理解和感知,目前很多工作都采用了這一策略。這些工作主要將不同幀的信息處理為BEV特征后,直接沿著通道的維度進行求和或者拼接來讓模型能夠獲取到一段時間段內的環境元素信息,但收益卻不是特別的理想。造成這一現象的主要原因是自車周圍環境的運動物體在不同時刻沿著BEV的軌跡是不同的,并且分散在BEV的大片區域中。因此,我們需要引入動態對齊機制的思想來對運動物體的位置進行調整。
- 對于目前已有的多任務學習框架而言,主要都是采用一個共享的圖像編碼網絡來處理不同的感知任務。然而,通過這些論文中列舉的相關實驗結果我們發現,通過多任務聯合學習的方式通常在不同任務上的表現要弱于每個任務單獨訓練的性能。
針對上述提到的端到端多任務感知模型存在的諸多挑戰,在本文中,我們提出了一個用于端到端多任務3D感知的混合特征編碼算法模型HENet,在nuScenes數據集上實現了多個任務的SOTA,如下圖所示。

與其他算法模型的語義分割和3D檢測性能指標對比
論文鏈接:https://arxiv.org/pdf/2404.02517.pdf;
網絡模型的整體架構&細節梳理
在詳細介紹本文提出的HENet端到端的多任務感知算法模型之前,下圖展示了我們提出的HENet算法的整體網絡結構。

提出的HENet多任務感知算法模型的整體網絡結構圖
通過網絡結構圖可以看出,我們提出的HENet網絡結構主要包括Hybrid Image Encoding Network(混合圖像編碼網絡)、Temporal Feature Integration(時序特征集成模塊)以及Independent BEV Feature Encoding(獨立BEV特征編碼模塊)三個子部分。
具體而言,對于給定的時序環視圖像輸入,首先利用混合圖像編碼網絡提取其BEV空間特征。然后,利用提出的時序特征集成模塊來聚合多幀的BEV特征信息。最后,將具有不同BEV特征分辨率的BEV特征送入到獨立BEV特征編碼模塊中實現進一步的特征提取,并送入到解碼器中完成最終的多任務感知結果的預測。
混合圖像編碼網絡(Hybrid Image Encoding Network)
通過網絡結構圖可以看出,混合圖像編碼網絡包含兩種不同復雜度的圖像編碼器,具體配置方式如下:
- 短時序信息的處理方式:我們首先采用高分辨的輸入圖像以及更加強大的圖像特征提取主干網絡(VoVNetV2-99)以及FPN特征金字塔組合來處理短時序的輸入信息。然后,對于2D特征向BEV空間的坐標映射,我們采用了BEVStereo中的雙目深度估計網絡來預測像素深度信息以及構建相機視錐特征。最后,利用BEVPoolv2的BEV池化模塊來生成最終的多尺度BEV特征。
- 長時序信息的處理方式:我們首先對輸入的環視圖像進行降采樣用于降低輸入圖像的分辨率,并且采用一個小規模的圖像特征提取主干網絡(ResNet-50)以及FPN特征金字塔組合來處理長時序的輸入信息。然后,對于2D特征向BEV特征的坐標映射,我們采用了BEVDepth中的單目深度估計網絡來預測像素深度信息以及構建相機視錐特征。最后,同樣是利用BEVPoolv2的BEV池化模塊來生成最終的多尺度BEV特征。
但是,根據我們基于BEV空間的3D檢測以及語義分割對于不同BEV網格分辨率的相關實驗結果可以看出,不同的感知任務對于BEV空間特征的分辨率是不相同的,結果見下表所示。

關于不同BEV分辨率對于3D感知以及語義分割任務影響的消融實驗
通過上述的實驗結果可以看出,不同的3D感知任務(基于BEV空間的3D目標檢測及基于BEV空間的語義分割)對于BEV網格的要求并不完全相同。具體來說,對于3D目標檢測任務而言,模型更加關注定位局部的前景目標,所以適合采用更小的BEV特征分辨率。但是與之相反,BEV空間的語義分割任務需要對于大尺度場景的整體理解,包括車道線和道路區域,所以更適合采用更大一些的BEV特征分辨率。因此,在實驗中我們對于3D檢測任務采用的BEV特征大小為256×256,對于語義分割任務采用的BEV特征大小為128×128。
時序特征集成模塊(Temporal Feature Integration)
在利用提出的混合圖像編碼網絡生成多幀、多尺度的BEV特征之后,我們采用提出的時序特征集成模塊來實現時序特征的融合,網絡結構如下圖所示。

時序特征集成模塊網絡結構示意圖
具體而言,時序特征集成模塊包括前向和反向兩個特征聚合過程。我們提供了該過程的一個完整的偽代碼來說明其具體的實現流程。在每個處理的步驟中,我們會采用帶有交叉注意力機制的相鄰幀融合模塊(AFFM)來融合兩個相鄰幀的BEV特征。

我們將任意兩幀BEV特征分別記作為以及,則相鄰幀融合模塊的實現細節可以用如下的公式進行表示:
其中,代表均值操作,是一個可以學習的調節因子,代表特征圖之間的拼接操作,代表常規的注意力運算。
此外,通過時序特征集成模塊的示意圖可以看出,在使用了相鄰幀注意力機制的情況下,相比于應用全局注意力或者在所有幀上應用卷積層而言,會引入更少的噪聲。通過相鄰的注意力機制,相鄰幀融合模塊可以更準確的對齊運動物體的特征,避免融合冗余背景信息。
獨立BEV特征編碼模塊(Independent BEV Feature Encoding)
在獲得了時序特征集成模塊輸出的不同分辨率大小的BEV特征之后,我們將不同特征分辨率的BEV特征分別用于不同的感知任務上。在送入到各個任務的解碼器之前,我們借鑒了BEVFusion工作中進一步處理BEV特征的自適應特征選擇以及BEV編碼網絡。
具體而言,我們設計了一個獨立的BEV特征編碼模塊,整體結構如下圖所示。

獨立BEV特征編碼模塊網絡結構示意圖
通過上圖可以看出,獨立BEV特征編碼模塊由兩部分構成,分別是自適應特征選擇以及BEV Encoder兩部分模塊構成。其中自適應特征選擇模塊采用了一個簡單的通道注意力模塊來選擇重要的特征,這部分可以建模成如下的公式形式:
其中,是BEV特征圖,代表線性的變換矩陣,代表全局平均池化,代表Sigmoid激活函數。對于圖中的BEV Encoder模塊而言,我們采用了三個殘差連接模塊和一個FPN網絡來實現BEV特征的進一步特征提取過程。但需要注意的是,對于兩個不同的任務而言,3D目標檢測以及語義分割分支共享了相同的獨立BEV特征編碼網絡結構,但是其中的參數并不共享。
實驗結果&評價指標
定量分析部分
為了驗證我們提出的算法模型HENet對于多任務感知任務的效果,我們在nuScenes的驗證集上與其他的多任務模型進行了對比,實驗結果見下表所示。

不同多任務感知算法模型的實驗結果對比情況
通過實驗結果可以看出,我們提出的HENet表現出了良好的多任務感知性能,并實現了SOTA的性能。具體而言,在3D目標檢測任務上,我們提出的算法模型相比于BEVFormer,在NDS和mAP指標上要分別提高7.9%以及8.7%。在BEV空間下的語義分割任務中,在mIoU指標上要高于8.6%。同時,相比于具有很強BEV空間下語義分割能力的PETRv2算法模型而言,我們提出的HENet在3D目標檢測任務中,NDS指標要超過10.4%,在mIoU指標上童謠具有很強的競爭力。
除了多任務感知效果的對比之外,我們也進行了單任務的效果對比實驗。首先,我們現在單獨的3D目標檢測任務上與其它優秀的檢測算法模型進行了對比,實驗對比結果如下表所示。

不同3D目標檢測算法模型的精度對比情況
通過上表的實驗結果對比可以看出,我們提出的HENet在單獨的3D目標檢測任務上,在不同的主干網絡以及輸入圖像分辨率的情況下,均超過了所有的環視相機的3D目標檢測算法,進一步證明了我們提出的混合圖像編碼網絡以及時序特征集成模塊的有效性。
此外,我們也在單獨的BEV空間下的語義分割任務上進行了不同算法模型的對比實驗,相關實驗結果匯總在下表中。

不同BEV語義分割算法模型的精度對比情況
通過上表的實驗結果可以看出,我們提出的HENet與現有的BEV空間語義分割算法而言,具有更好的性能。
除了不同算法模型精度對比的實驗,我們也進行了模塊級的消融實驗,首先是我們提出的混合圖像編碼網絡的消融實驗結果,如下表實驗結果所示。

提出的混合圖像編碼網絡的消融實驗結果
為了證明提出的混合圖像編碼網絡的有效性,我們將HENet算法模型與所采用的基線算法模型以及二者的集成模型進行了對比。通過采用混合圖像編碼網絡的方式來集成BEVDepth以及BEVStereo算法可以顯著提升3D目標檢測的性能。此外,與輸入更高分辨率的圖像相比,我們提出的混合圖像編碼網絡可以實現更快的推理速度和更低的訓練成本以實現更高的檢測精度。與增加時序信息的幀數相比,混合圖像編碼網絡可以在較低訓練成本下獲得更高的準確度。
接下來是我們提出的時序特征集成模塊的消融對比實驗,相關的實驗結果匯總在下面的表格中。

提出的時序特征集成模塊的消融對比實驗結果
通過上表的實驗結果可以看出,在采用了相鄰幀注意力的情況下,我們的模型實現了最佳的檢測結果。此外,我們還發現,采用了相鄰幀融合的思想要好于采用全局操作的方式,無論是采用注意力機制還是使用卷積還是拼接等方法。同時,在引入了全局注意力以及更大的BEV Encoder模塊,模型的參數量進一步提高,但是性能卻有所降低。這一現象表明了性能的提升主要來自于模型設計本身而不是增加模型的參數。
定性分析部分
下圖展示了我們提出的HENet算法模型與基線模型的端到端多任務的預測結果可視化。通過可視化的結果可以證明,我們提出的HENet算法模型通過時序信息的引入更好的解決了物體被遮擋的問題,以及得益于高分辨率的輸入實現更加準確的預測。

提出的HENet算法模型與基線模型可視化結果對比
結論
在本文中,我們提出了一個端到端的多任務感知算法模型HENet。通過提出的混合圖像編碼網絡、時序特征集成模塊以及獨立BEV特征編碼模塊在nuScenes數據集上實現了多任務感知的SOTA性能。




































