一、研究背景:
現代自動駕駛系統包含多個順序執行的任務,即感知、預測及規劃。隨著傳感器和硬件的進步,設計一種可以執行各種任務的智能系統成為一種趨勢。之前的設計方案可概括為兩類:1)為每個任務部署獨立的模型;2)組建包含多個獨立任務頭的多任務學習模型。然而,這些方法都可能會受到累積誤差以及在下游規劃上較差的遷移效果的影響。
近期,arXiv 中收錄了上海人工智能實驗室OpenDriveLab團隊聯合武漢大學、商湯科技的一篇文章——Goal-oriented Autonomous Driving,其提出良好的自動駕駛系統應該以最終任務——安全的路線規劃為導向。該研究對感知與預測中的關鍵組成部分進行分析與研究,并按照一定優先級進行組建,以便所有的子任務都有助于規劃,并提出了統一自動駕駛框架 (UniAD) ,這是第一個將全棧駕駛任務整合到一個深度神經網絡中的框架,并可以發揮每個子任務以及各個模塊的優勢,以執行安全的規劃。
隨著深度學習的成功發展,自動駕駛算法由一系列子任務組成,包括感知中的物體檢測、多目標跟蹤、地圖分割;預測任務中的軌跡預測和占用柵格預測。如圖1(a)所示,大多數工業解決方案是為每個任務部署獨立模型。盡管簡化了多任務模型的設計,但由于不同子任務優化方向的不同,這樣的設計面臨著信息丟失、錯誤累積和特征未對齊的風險。
圖1:自動駕駛算法框架的各種設計比較。(a)大多數工業解決方案是對不同的任務部署不同的模型。(b)多任務學習架構,多個任務頭共享一個主干網絡(特征提取器)。(c)端到端學習范式,其聯合了感知與規劃模塊?,F有工作或如(c.1)采用直接從感知結果進行規劃,或如(c.2)中采用多模塊級聯的系統。
除了上述工業方案,更為先進的設計是將不同的任務整合到多任務學習(MTL)范式中,如圖1(b)所示,例如BEVerse,以及部分工業化架構,例如Mobileye、Tesla、Nvidia等。在MTL中,多任務的協同訓練利用同一個特征提取器,可以方便地拓展至多個子任務并節省芯片的計算。然而,這樣的方法仍未解決不同任務優化方向不一致的問題,同時不同任務的監督信息也未得到充分的交互,以更好作用于規劃。相比之下,端到端自動駕駛架構(如圖1(c)所示)將感知、決策和規劃結合為一個整體。前序任務(模塊)的組合應當有利于最終的規劃,同時應該盡量避免誤差累計的問題。(c.1)中采用直接從感知結果進行規劃,(c.2)中采用模塊級聯的方式。在(c.3)中,UniAD以良好的規劃為導向,通過層級結構對不同任務進行組建以達到更好的規劃結果。
表1:UniAD 與之前方案的對比,包含了更多的任務以輔助下游規劃,包含檢測 (Detection),跟蹤 (Tracking),地圖生成 (Mapping),軌跡預測 (Motion Forecasting),占用柵格預測 (Occupancy prediction) 與規劃 (Planning)。
二、研究內容
如圖2所示,UniAD是由四個基于Transformer解碼器的感知預測模塊以及一個規劃模塊組成。多組查詢向量 (query) 用于連接整個架構以及學習多個智能體與周圍環境的交互。具體而言,多個環視攝像頭采集的圖像將首先通過特征提取器轉化為圖像特征,再通過 BEV(Bird’s-Eye-View,鳥瞰圖視角)編碼器將圖像特征轉化為 BEV 特征。在 TrackFormer 中,用一組跟蹤查詢向量 (Track query) 從 BEV 特征中檢測新出現的物體(智能體)并持續跟蹤已經檢測到的物體。MapFormer 是通過地圖查詢向量 (Map query) 對不同類別的地圖元素進行分割,比如車道線與人行道。MotionFormer 通過建模物體與環境之間的交互關系對每個物體的未來軌跡進行預測。同時引入自車查詢向量 (Sdc query) 對自車的運動進行建模,自車查詢向量將用于后續的自車規劃中。OccFormer 用于進行占用柵格預測,以 BEV 特征為查詢向量,物體特征為鍵 (key) 與值 (value),對未來的 BEV 特征進行不斷地更新,進而解碼為占用柵格。規劃模塊 (Planner) 將自車查詢向量解碼,生成規劃路徑,并利用占用柵格預測對路徑進行優化,使其避免障礙物。
圖2. 統一的自動駕駛(UniAD)的整體框架。UniAD通過多個 Transformer 模塊將各個任務進行層級式的結合,并對不同任務間的信息進行了充分的交互。UniAD使用多組查詢向量對物體與地圖進行建模,并將預測結果傳遞至規劃模塊,用于進行安全的路徑規劃。
(1)感知:跟蹤與地圖分割
TrackFormer 可以同時進行檢測與多目標跟蹤,通過引入一組 Track query 去建模追蹤物體在場景中的整個生命周期(即從出現到完全消失)。Track query 通過與 BEV 特征進行注意力機制運算并通過多層感知機 (MLP) 進行解碼,最終得到跟蹤物體的邊界框與速度等屬性。MapFormer 是將 2D 全景分割的經典方案 Panoptic Segformer 遷移至 3D 場景,并用于在線地圖分割。具體而言,用一組 Map query 表示地圖中的不同元素,比如車道線、人行道等,這些地圖元素將有利于下游任務對周圍環境信息的學習。Map query 經過 MapFormer 的更新后,將被傳送至 MotionFormer 進行物體與地圖元素的交互。
(2)預測:軌跡預測
MotionFormer 以信息豐富的物體特征和地圖特征為輸入,輸出場景中所有智能體在多種模態下的未來軌跡。這種范式只需要進行一次網絡的前向傳播便能輸出所有智能體的未來軌跡,相較于之前以智能體為中心(agent-centric)的方法,節省了每步對坐標空間進行對齊的計算消耗。同時為了持續建模自車運動信息,利用 TrackFormer 中的自車查詢向量 (Sdc query) 學習自車的未來軌跡。MotionFormer 由多層交叉注意力 (cross-attention) 模塊組成,以達到不斷精細化的目的。每層模塊包含三次不同的注意力計算以建模不同類型的交互,分別是智能體-智能體,智能體-地圖,智能體-軌跡目標,具體交互表示如下:
其中 MHCA、MHSA 與 DeformAttn 分別表示多頭交叉注意力,多頭自注意力與可變形注意力。交互結束后得到的軌跡查詢向量 (Motion query) 將繼續傳遞給占用柵格預測與規劃模塊。
圖3. MotionFormer。它由N個堆疊的交互模塊組成,每個模塊內會進行agent-agent,agent-map 和 agent-goal point(軌跡終點)的關系建模。agent-agent 和 agent-map 交互模塊使用標準的Transformer解碼器層,agent-goal交互模塊構是建在可變形的交叉注意力模塊上。
(3)預測:占用柵格預測
占用柵格圖是一種離散化的BEV 表示形式,其中每個格子代表的值代表當前位置是否被物體占用。占用柵格預測任務是指預測未來多步的占用柵格圖,即未來 BEV 的占用情況。之前的方法通常會利用卷積神經網絡 (CNN) 與遞歸神經網絡 (RNN) 逐步預測未來多步 BEV 特征圖并解碼,但是卻忽略了場景中物體的運動信息,這些信息與未來場景的占用柵格有很強的關聯。為了引入稀疏的物體運動信息,本文在 OccFormer 中利用注意力機制,將場景中密集的各柵格表示為查詢向量 (query),將物體特征表示為鍵 (key) 與值 (value)。通過多層 Transformer 的解碼器,查詢向量將多次更新,用于表示未來時序的 BEV 特征圖。為了更好地對齊物體與各柵格的位置關系,本文引入了一個基于占用柵格的注意力掩碼,該掩碼使得注意力計算只在位置對應的柵格-物體特征之間進行。查詢向量的更新過程如下:
(4)自車規劃
為了規劃自車未來的運動軌跡,將 MotionFormer 更新后的自車查詢向量 (Sdc query) 與 BEV 特征進行注意力機制交互,讓 Sdc query 感知整個 BEV 環境,隱式地學習周圍環境與其他智能體。為了更顯式地避免與周圍車的碰撞,作者利用占用柵格預測模塊的輸出對自車路徑進行優化,避免未來可能有物體占用的區域。
三、實驗結果
1. 各模塊實驗結果
感知結果
預測結果
規劃結果
與 ST-P3 相比,UniAD 將規劃L2誤差和碰撞率分別降低了51.2%和56.3%,并優于其它基于 LiDAR 輸入的方案。
2. 消融研究
為了驗證以目標為導向的設計理念是否真正發揮作用,本文對感知及預測中的各個模塊進行了廣泛的消融研究,如表7所示,以證明前序模塊的有效性和必要性。 表7:感知及預測中的各個模塊對下游任務的幫助。
3. 可視化
圖7:在市區駕駛的可視化表示。UniAD 可以生成高質量的感知和預測結果,并進行安全的路徑規劃。前三列顯示六個攝像機的視角,最后兩列分別是 BEV 預測結果和來自規劃模塊的注意力掩碼。每個智能體都用單獨的顏色表示。
圖8:關鍵案例可視化。第一個場景(上圖)顯示自車正在讓兩個過馬路的行人,第二個場景(下圖)顯示自車正在讓側方一輛快速行駛的汽車。從最右圖可以觀察到規劃模塊對最關鍵的智能體給予更多的關注度。
圖9:避障可視化。在這兩種情況下,自車正在進行變道以避開障礙物車輛。從最右注意力掩碼中,可以觀察到UniAD可以關注障礙物以及前后的道路
四、總結
UniAD 設計是以安全的路徑規劃為導向,對多個必需的自動駕駛任務進行層級化設計,以多組查詢向量 (query) 對物體與環境之間的多種交互進行建模。通過大量實驗驗證了模型設計的有效性,并相對之前的方案取得了更好的性能。UniAD 是一種統一的自動駕駛算法框架,可以以高精度執行包含跟蹤、地圖生成、軌跡預測、占用預測與規劃任務,是首個全面探索自動駕駛系統各模塊必要性的工作,作者通過進行廣泛的消融和實驗,驗證了 UniAD 在各感知預測任務對最終規劃的幫助。
審核編輯:劉清
-
解碼器
+關注
關注
9文章
1143瀏覽量
40776 -
自動駕駛系統
+關注
關注
0文章
65瀏覽量
6776 -
MLP
+關注
關注
0文章
57瀏覽量
4256
原文標題:All in One | UniAD:一種包含全棧自動駕駛算法的統一架構設計
文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論