VADv2: 基于矢量表征和概率規劃的E2E架構

1. 寫在前面

今天分享一篇自動駕駛領域的論文VADv2(End-to-End Vectorized Autonomous Driving via Probabilistic Planning), 基于矢量表征和概率規劃的E2E架構,2024年2月份華中科技大和地平線合作的一篇文章, 在經典的端到端模型架構上作出了基于概率規劃去輸出規劃軌跡的改進,更好的建模場景的不確定性。

在這里插入圖片描述

  • 論文地址: https://arxiv.org/pdf/2402.13243
  • GitHub地址: https://hgao-cv.github.io/VADv2

內容如下

  • 1. 寫在前面
  • 2. 傳統自動駕駛 VS 端到端自動駕駛
  • 3. 前期工作
    • 3.1 MapTR
    • 3.2 PIP網絡
    • 3.3 VAD架構
      • 3.3.1 Abstact & Introduction
      • 3.3.2 模型架構
  • 4. VADv2
    • 4.1 論文動機
    • 4.2 方法論
      • 4.2.1 模型
      • 4.2.2 Scene Encoder
      • 4.2.3 概率規劃
      • 4.2.4 思路來源
      • 4.2.5 Planning詞典的構建
      • 4.2.6 訓練損失
      • 4.2.7 推理階段
    • 4.3. 實驗
      • 4.3.1 閉環結果
      • 4.3.2 開環結果
      • 4.3.3 定性定量
  • 5. 小總

Ok, let’s go!

2. 傳統自動駕駛 VS 端到端自動駕駛

VAD是一個經典的端到端自動駕駛的模型結構框架, 介紹具體結構之前,先簡單了解下端到端自動駕駛和傳統自動駕駛的區別:
在這里插入圖片描述

定義特點
傳統自動駕駛感知、預測、規控解耦,每個模塊獨立優化(1) 每個模塊需要單獨的encoder, 存在大量冗余計算,每個模塊難度會下降
(2) 模塊間梯度斷開,僅傳遞指定特征(檢測框), 存在信息丟失和誤差累計,影響模型最終性能
端到端自動駕駛統一的感知-預測-規劃網絡,多任務聯合優化(1) 共享的Backbone, 大幅降低計算開銷
(2) 規劃任務的梯度可反轉到raw data, 所有上游任務均可以為規劃性能服務
(3) 端到端模型是data-driven, 對人工設計的依賴小,無需人工設計各種復雜的規則邏輯

3. 前期工作

VADv2是在VAD的基礎上進行的改進,模型架構沿用了VAD上面的模型架構, 而VAD又采用了他們之間提出的一些技術,所以這個部分,主要是先大概介紹下作者團隊之前的一些工作。這些工作不會詳細整理, 感興趣的可以看對應的論文。

3.1 MapTR

這是個在線預測的地圖方案(端到端在線局部建圖),地圖在自動駕駛領域中的重要性不言而喻, 主要負責給自動駕駛提供自車的位置以及周圍的環境等信息, 在傳統自駕領域里面用的是高精地圖, 精度非常高,但是標注和維護的成本非常搞。這篇論文的工作是提出了一個能實時在線建圖的方案, 用模型的力量取代之前人工的一些工作。

  • 輸入: 周視的圖像(7V) + lidiar點云數據
  • 輸出: 矢量化的道路結構(人行道, 車道分割線,路邊界)

優點:

  • 傳感器 + 模型, cost 低
  • 端到端輸出, 自動化

主要有兩篇paper:

  • MapTRv1: https://arxiv.org/abs/2208.14437(地圖的物理層級建模,比如道路分割線)

    在這里插入圖片描述

  • MapTRv2: https://arxiv.org/pdf/2308.05736(地圖的物理層級+邏輯層級(道路中心線)中心線,路口處各種先)
    在這里插入圖片描述

  • 代碼:https://github.com/hustvl/MapTR

3.2 PIP網絡

有了在線的建圖方案之后, 作者團隊又進了一步, 把建圖方案和軌跡預測相結合來證明在線建圖方案的有效性,所以基于這個想法作了實驗, 提出了PIP網絡(Perceive, Interact, Predict: Learning Dynamic and Static Clues for End-to-End Motion Prediction: 基于動靜態場景元素交互的端到端軌跡預測)(在線預測地圖+軌跡預測方案)

  • paper:https://arxiv.org/pdf/2212.02181
    在這里插入圖片描述
  • 輸入:周視的6V圖片,提取出Map Query, Agent Query
  • 核心: 地圖信息和Motion信息設計, 作到agent與地圖元素更好的交互
    • 充分利用顯式地圖元素和隱式query的矢量化地圖元素特征
    • 針對預測地圖(非高精地圖)設計交互策略, 需要規避預測地圖產生的誤差對模型的影響
      • Agent-wise normalization: 多目標的軌跡預測,每個目標在場景中位置不同,所以把每個目標周圍的地圖元素放縮到每個目標為中心的坐標系下
      • Filtering:
        • 過濾掉confindence score低的地圖元素
        • 針對距離范圍的過濾,使得每個目標只關注周圍的地圖元素
      • 交互:
        • 作完檢測, agent query包含目標的特征,這里又引入了一個軌跡模態的query(mode query), 來捕捉不同的駕駛意圖下的軌跡特征, 兩者合并,得到用來作軌跡預測的motion query

          在這里插入圖片描述

        • Mtion之間交互 + 地圖信息交互

        • 更新后的Motion query, 用來預測未來的車輛軌跡

  • 結論: 在線地圖也能有效的提升軌跡預測方法,接近使用高精地圖方案, 證明在線地圖的可行性

多模態的endpoint軌跡預測可視化(6模態的軌跡預測)

  • 軌跡預測的中點可視化

    在這里插入圖片描述
  • 原始的車輛朝向歸一化,統一朝前

    在這里插入圖片描述

3.3 VAD架構

在前面兩篇工作的基礎上,2023年2月份該團隊提出了一個經典的端到端模型架構VAD: Vectorized Scene Representation for Efficient Autonomous Driving,矢量化的場景表征的planning方案,把自車規劃的工作也加入了進來。(在線建圖 + Motion預測 + 自車規劃)

  • paper:https://arxiv.org/pdf/2303.12077(ICCV.2023)

主要創新點:

  1. 首次提出基于矢量化環境表征的端到端感知+預測+規控的方案
  2. 提出三項矢量化規劃約束,訓練階段優化planning安全性
  3. 無需高精地圖和人工設計的后處理步驟
  4. 基于Transformer架構和統一的Query 表征,擴展性強

3.3.1 Abstact & Introduction

簡介優/缺點典型
已有方案依賴密集的柵格化場景表示,比如OCC、語義Map1. 計算量大
2. 缺少instance級別的結構化信息
UniAD
新方案將整個駕駛場景矢量化1. instance級別的規劃約束,提升了規劃安全性
2. 運行速度更快
3.矢量化場景表示優于柵格化。因為矢量化的道路信息已經能夠表達道路結構,矢量化的障礙物信息已經能夠用于碰撞檢測,同時計算量更小
4.矢量化結果同時被規劃隱式和顯式的使用,隱性feature會用于規劃模型,同時顯式結果也會給到規劃做規劃約束,碰撞約束、車道線約束、車道方向約束
VAD

矢量化的場景信息建模, 矢量化 VS 柵格化(預測方面的兩個研究方向)

在這里插入圖片描述

定義特點
柵格化1. 駕駛場景表征為渲染圖的形式
2. 重感知, 相對降低規控模塊的負但,引入了很多后處理測量,導致網絡魯棒性稍差
3. 占有圖網絡
1. 像素級別的預測,計算量大(比如與駕駛無關區域,場景路邊等,柵格化表征都需要作預測)
2. 丟失實例級別的特征(比如道路拓撲結構, 在柵格化場景表征中是pixel, 沒有方向信息和連接性)
3. 規控方面用的也比較多,原因是易于和現有的安全后處理策略結合(比如,基于占有圖(occupcy)預測,僅可在可行區域規劃軌跡)
矢量化1. 場景作抽象,把動靜態場景元素編碼成向量的形式
2. 軌跡預測領域大規模使用
1. 極大降低網絡計算量(場景做了抽象, 與場景無關的要素不編碼, 矢量表征 相比與 Pixel, 語義層級更高,信息更豐富)
2. 矢量化表征容易和Transformer結合
3. 更高效的場景表征, 保留實例級別特征(比如車輛的速度信息,道路方向等都可以編碼到向量中)

3.3.2 模型架構

在這里插入圖片描述
架構總結

模塊模型結構輸入/輸出loss設計
BEV Encoder參考Bev Former, 采用了ResNet50輸入: 多視角的圖片
輸出: BEV Feature
Vectorized Motion Transformer輸入:BEV feature
輸出:agent’s attributes (location, class score, orientation, etc.)和每個agent的多條未來軌跡
Motion Loss:
1. L1 loss: 作為回歸loss預測agent的回歸屬性,比如location,orientation
2. forcal loss預測agent的class
3. l1 loss作為預測軌跡和真實軌跡的距離
4. forcal loss用于多模態之間的分類
Motion會給其他agent預測多條軌跡,有最小FDE的會被作為representative trajectory。Loss計算既考慮了軌跡距離,也考慮了多軌跡的分類loss
Vectorized Map Transformer輸入:BEV feature
輸出:Map vectors(只考慮3種,車道分隔線、道路邊界和人行橫道)
Map loss (Lmap)
1.Manhattan distance
2. map classification loss
Planning Transformer輸入:three kinds of driving commands: turn left, turn right and go straight, Ego status,Updated Agent Query Updated Map Query
輸出:自車未來一段時間的預測軌跡,一般6s
1. imitation learning loss: 預測自車軌跡和真值自車軌跡的loss (Limi)
2. Ego-Agent Collision Constraint: 自車和他車的碰撞Loss (Lcol)
3. Ego-Boundary Overstepping Constraint: 自車軌跡和車道線的loss (Lbd)
4. Ego-Lane Directional Constraint: 自車軌跡和車道行駛方向的loss (Ldir)

重點細節

  • Map Query + Vectorized Map Transformer 是前面的MapTR方案
  • Agent Query + Vectorized Motion Transformer 是前面PIP的方案
  • 創新點:
    • 加了一個Planning Transformer(端到端架構)
      • 提取ego query(隨機初始化) ,分別和Motion agent query 與 Map query分別交互,提取駕駛場景中用到的動態 和 靜態的信息, query間隱式特征的交互
      • 加 自車的狀態信息 + 導航的信息 預測自車的軌跡信息
    • 顯示特征(motion的軌跡 + 地圖的元素道路拓撲) 作約束,提出了3種約束,以loss的形式體現并懲罰,監督模型訓練,使得網絡模型獲取一個駕駛的先驗信息。- Map Query + Vectorized Map Transformer 是前面的MapTR方案
      在這里插入圖片描述
      • Ego-Agent碰撞約束 (Ego-Agent Collision Constraint):自車和它車是否碰撞,保證與它車的縱向和橫向的安全距離
        在這里插入圖片描述
      • 自我邊界超越約束 (Ego-Boundary Overstepping Constraint): 與道路邊界保持一個安全距離
        在這里插入圖片描述
      • 通道方向約束 (Ego-Lane Directional Constraint):預測出來的軌跡要和車道線的方向盡量一致, 車頭偏離車道線方向太多,不合理(角度約束)
        在這里插入圖片描述

模型訓練

在這里插入圖片描述
結果

和其他模型的對比結果:
在這里插入圖片描述
模型自己的定型定量等實驗

在這里插入圖片描述

4. VADv2

4.1 論文動機

自動駕駛的決策規劃存在天然不確定性, 主要來自:

  1. 場景的不確定性(同一個場景,自車可能有多種選擇)
  2. 人類行為的不確定性(司機的駕駛習慣和行為)

這些隱式的因素很難直接被建模出來(左邊兩張圖)。

在這里插入圖片描述
判別式建模 VS 概率建模

特點優/缺點典型
判別式建模1. 輸出一條確定性的軌跡, 場景與軌跡之間,建模的是一種確定性關系
2. Loss function追求的與軌跡的l2誤差最小
例子: 同一個場景, 可能司機兩次作出了不同的軌跡,判別式建模,可能會在兩個軌跡間作一個折中
確定性建模基于的假設是環境和行為之間有確定的相關性, 但實際上很多場景,人類的行為是多變的
1. 不能很好的處理非凸的可行性空間(決策不只一種)情景, 這時候可能兼顧多種決策,輸出折中結果,導致安全問題
2. 傾向于輸出訓練數據中看到的最多的主導軌跡或者行為
VADv1及之前的方案
概率建模1. 建模場景下不同action的分布, 最后根據場景選擇概率更大的action
2. 根據不同策略,選擇想要的軌跡
1. 更加豐富的監督信號:不僅監督正樣本,也監督了planning vocabulary的所有候選
2. 會輸出多種預測結果, 比較靈活,能更好的匹配規則進一步處理
VADv2

4.2 方法論

4.2.1 模型

模型架構
在這里插入圖片描述
總結

模塊模型結構輸入/輸出Loss設計
Encoder輸入:multi-view image sequence
輸出:一組Scene Tokens
     map token: the vectorized representation of the map (including lane centerline, lane divider, road boundary, and pedestrian crossing).
    agent token: other traffic participants’ motion information (including location, orientation, size, speed, and multi-mode future trajectories).
    traffic element token: the states of traffic elements. In CARLA, we consider two types of traffic signals: traffic light signals and stop signs.
     image token
Scene Token Loss: Map tokens, agent tokens, and traffic element tokens are supervised with corresponding supervision signals to make sure they explicitly encode corresponding high-level information.
Planning TransformerMLP Transformer輸入:Scene Tokens, Ego state, Navi info
輸出:多條軌跡及每個軌跡的概率
軌跡分布詞表:we collect all the planning actions in driving demonstrations and adopt the furthest trajectory sampling to select N representative actions to serve as the planning vocabulary. Each trajectory in V is sampled from driving demonstrations and thus naturally satisfies the kinematic constraints of the ego vehicle, which means that when the trajectory is converted into control signals (steer, throttle, and brake), the control signal values do not exceed the feasible range. By default, N isset to 4096.
根據駕駛演示得來,所以軌跡肯定能夠轉換為有效的控制信號;使用最遠軌跡抽樣法;N取值是4096
駕駛軌跡分布真值:訓練數據中軌跡概率分布
Distribution Loss: 輸出的軌跡概率分布與訓練數據中的軌跡概率分布的KL散度
Conflict Loss: 與其他agent的軌跡沖突、與車道線的邊界沖突

創新點:

  • 提出planning vocabulary
    • Action Space是所有可行的空間, 離散化成詞典, vocabulary的每個action對應一條軌跡
  • 根據數據集中的分布,來判斷當前場景下, 可行action的概率,讓模型建模action的分布

前向傳播過程:
在這里插入圖片描述
給定某個特定的場景,模型要學習到和行為之間的相關性, 預測軌跡的一個分布,從而決定有哪些行為是可行的

4.2.2 Scene Encoder

Image本身是稀疏, 信息是低層級的, 所以通過各種Encoder對場景特征進行編碼,獲取instance-level的token, 獲得高級別的特征,主要有4中tokens(見圖):

  • Map Tokens: 地圖表征信息, 道路中心線,分道線,道路邊界等路網拓撲
  • Agent Tokens: 其他交通參與者(位置,方向,大小,速度,狀態,行為,軌跡等)
  • Image Tokens: 多視圖,場景信息
  • Traffic Element Tokens: 交通元素(信號燈, 標志牌)
    其他: 導航信息和自車的一些狀態特幀,也通過NLP編碼成Embedding。

4.2.3 概率規劃

對于planning中的不確定性,采用了一種概率規劃。
Planning action的空間是高維連續的,直接建模不可行,所以基于收集的大量軌跡數據,對planning的動作空間離散化。具體做法:

  • 在駕駛場景的數據集中,收集了所有的planning actions(軌跡)

  • 采樣N個有代表性行為軌跡, 構成了一個planning詞典 V = a i N V = {a^i}^N V=aiN(默認 N = 4096 N=4096 N=4096)

    在這里插入圖片描述

  • 軌跡點(N,2)需要編碼到高維空間,因為后面要和場景表征token進行交互

    • 借鑒Ne

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/72248.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/72248.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/72248.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

NLP11-命名實體識別(NER)概述

目錄 一、序列標注任務 常見子任務 二、 命名實體識別(NER) (一)簡介 (二)目標 (三)應用場景 (四)基本方法 (五)工具與資源 一…

虛擬仿真無線路由器5G和2.4G發射信號輻射對比(虛擬仿真得出最小安全距離,與國際標準要求一致)

1、前言 有人說,只要有電磁波的地方就有輻射。5G和2.4G信號輻射強度是多少?是否會對人體構成危害?無線路由器的2.4GHz頻段,頻率范圍:2.4 GHz 至 2.4835 GHz,信道寬度:通常為20 MHz,…

深入剖析 OpenCV:全面掌握基礎操作、圖像處理算法與特征匹配

深入剖析 OpenCV:全面掌握基礎操作、圖像處理算法與特征匹配 一、引言二、OpenCV 的安裝(一)使用 pip 安裝(二)使用 Anaconda 安裝 三、OpenCV 基礎操作(一)圖像的讀取、顯示與保存(…

DOM HTML:深入理解與高效運用

DOM HTML:深入理解與高效運用 引言 隨著互聯網的飛速發展,前端技術逐漸成為軟件開發中的關鍵部分。DOM(文檔對象模型)和HTML(超文本標記語言)是前端開發中的基石。本文將深入探討DOM和HTML的概念、特性以及在實際開發中的應用,幫助讀者更好地理解和使用這兩項技術。 …

【數據挖掘】Matplotlib

Matplotlib 是 Python 最常用的 數據可視化 庫之一,在數據挖掘過程中,主要用于 數據探索 (EDA)、趨勢分析、模式識別 和 結果展示。 📌 1. Matplotlib 基礎 1.1 安裝 & 導入 # 如果未安裝 Matplotlib,請先安裝 # pip instal…

DHCP配置實驗

實驗拓撲圖 首先配置server的IP地址和網關 接下來配置R1 undo info-center enable dhcp enable //開啟DHCP服務 ip pool dhcp-pool1 //開始配置dhcp地址池 gateway-list 192.168.1.254 //配置網關 network 192.168.1.0 mask 255.255.255.0 //配置網段和子網掩碼 dns-list …

Linux:ELF文件-靜動態庫原理

??所屬專欄:Linux?? ??作者主頁:嶔某?? ELF文件 什么是編譯?編譯就是將程序源代碼編譯成能讓CPU直接執行的機器代碼 如果我們要編譯一個 .c文件,使用gcc -c將.c文件編譯為二進制文件.o ,如果一個項目有多個.…

C++性能優化常用技巧

一. 選擇合適的數據結構 1.1 map與unordered_map的選擇 如果僅僅只需要使用到快速查找的特性,那么unordered_map更加合適,他的復雜度是O(1)。如果還需要排序以及范圍查找的能力,那么就選擇map。 1.2 vector與list的選擇 通常情況下&#…

Towards Graph Foundation Models: A Survey and Beyond

Towards Graph Foundation Models: A Survey and Beyond WWW24 ?#paper/???#? #paper/💡#? 背景和動機 背景與意義 隨著基礎模型(如大語言模型)在NLP等領域的突破,圖機器學習正經歷從淺層方法向深度學習的范式轉變。GFM…

基于 Python 深度學習的電影評論情感分析可視化系統(2.0 全新升級)

基于 Python 深度學習的電影評論情感分析可視化系統,基于 Flask 深度學習,構建了一個 影評情感分析系統,能夠 自動分析影評、計算情感趨勢 并 可視化展示,對于電影行業具有重要參考價值! 基于 Python 深度學習的電影評…

Cargo, the Rust package manager, is not installed or is not on PATH.

今天在Windows操作系統上通過pip 安裝jupyter的時候遇到這個報錯,Cargo, the Rust package manager, is not installed or is not on PATH.。 解決辦法 官網:https://rustup.rs/# 下載:https://win.rustup.rs/x86_64 安裝完成之后&#xff0c…

CSS—text文本、font字體、列表list、表格table、表單input、下拉菜單select

目錄 1.文本 2.字體 3.列表list a.無序列表 b.有序列表 c.定義列表 4.表格table a.內容 b.合并單元格 3.表單input a.input標簽 b.單選框 c.上傳文件 4.下拉菜單 1.文本 屬性描述color設置文本顏色。direction指定文本的方向 / 書寫方向。letter-spacing設置字符…

開啟AI短劇新紀元!SkyReels-V1/A1雙劍合璧!昆侖萬維開源首個面向AI短劇的視頻生成模型

論文鏈接:https://arxiv.org/abs/2502.10841 項目鏈接:https://skyworkai.github.io/skyreels-a1.github.io/ Demo鏈接:https://www.skyreels.ai/ 開源地址:https://github.com/SkyworkAI/SkyReels-A1 https://github.com/Skywork…

數學建模:MATLAB極限學習機解決回歸問題

一、簡述 極限學習機是一種用于訓練單隱層前饋神經網絡的算法,由輸入層、隱藏層、輸出層組成。 基本原理: 輸入層接受傳入的樣本數據。 在訓練過程中隨機生成從輸入層到隱藏層的所有連接權重以及每個隱藏層神經元的偏置值,這些參數在整個…

Android15音頻進階之定位混音線程丟幀問題(一百零八)

簡介: CSDN博客專家、《Android系統多媒體進階實戰》一書作者 新書發布:《Android系統多媒體進階實戰》?? 優質專欄: Audio工程師進階系列【原創干貨持續更新中……】?? 優質專欄: 多媒體系統工程師系列【原創干貨持續更新中……】?? 優質視頻課程:AAOS車載系統+…

_ 為什么在python中可以當變量名

在 Python 中,_(下劃線)是一個有效的變量名,這主要源于 Python 的命名規則和一些特殊的使用場景。以下是為什么 _ 可以作為變量名的原因和常見用途: --- ### 1. **Python 的命名規則** Python 允許使用字母&#xff…

Electron+Vite+React+TypeScript開發問題手冊

ElectronViteReactTypeScript跨平臺開發全問題手冊 一、開發環境配置類問題 1.1 依賴安裝卡頓(國內網絡環境) 問題現象:執行npm install時卡在node-gyp編譯或Electron二進制包下載階段 解決方案: # 配置國內鏡像源 npm config …

【計算機網絡入門】初學計算機網絡(七)

目錄 1. 滑動窗口機制 2. 停止等待協議(S-W) 2.1 滑動窗口機制 2.2 確認機制 2.3 重傳機制 2.4 為什么要給幀編號 3. 后退N幀協議(GBN) 3.1 滑動窗口機制 3.2 確認機制 3.3 重傳機制 4. 選擇重傳協議(SR&a…

《Python實戰進階》No 8:部署 Flask/Django 應用到云平臺(以Aliyun為例)

第8集:部署 Flask/Django 應用到云平臺(以Aliyun為例) 2025年3月1日更新 增加了 Ubuntu服務器安裝Python詳細教程鏈接。 引言 在現代 Web 開發中,開發一個功能強大的應用只是第一步。為了讓用戶能夠訪問你的應用,你需…

GitLab Pages 托管靜態網站

文章目錄 新建項目配置博客添加 .gitlab-ci.yml其他配置 曾經用 Github Pages 來托管博客內容,但是有一些不足: 在不科學上網的情況下,是沒法訪問的,或者訪問速度非常慢代碼倉庫必須是公開的,如果設置為私有&#xff0…