首頁  >  文章  >  科技週邊  >  首個多視角自動駕駛場景影片產生世界模型 | DrivingDiffusion: BEV資料與模擬新思路

首個多視角自動駕駛場景影片產生世界模型 | DrivingDiffusion: BEV資料與模擬新思路

WBOY
WBOY轉載
2023-10-23 11:13:01793瀏覽

筆者的一些個人思考

在自動駕駛領域,隨著BEV-based子任務/端到端方案的發展,高品質的多視圖訓練數據和對應的模擬場景建構愈發重要。針對當下任務的痛點,「高品質」可以解耦成三個面向:

  1. 不同維度上的長尾場景:如障礙物資料中近距離的車輛以及切車過程中精準的朝向角,以及車道線資料中不同曲率的彎道或較難擷取的匝道/匯入/合流等場景。這些往往靠大量的資料收集和複雜的資料探勘策略,成本高昂。
  2. 3D真值-影像的高度一致性:當下的BEV資料擷取往往受到感測器安裝/標定,高精地圖以及重建演算法本身的誤差影響。這導致了我們很難保證數據中的每一組【3D真值-影像-感測器參數】 的精確一致。
  3. 滿足上述條件基礎上的時序資料:連續幀的多視角影像和對應真值,這對於當前的感知/預測/決策/端到端等任務都是必必不可少的。

而對模擬來說,可以直接透過佈局進行滿足上述條件的視訊生成,無疑是最直接的multi-agent感測器輸入的建構方式。而DrivingDiffusion則從一個新的角度解決了上述問題。

什麼是DrivingDiffusion?

  • DrivingDiffusion是一個用於自動駕駛場景生成的擴散模型框架,實現了佈局控制的多視角圖像/視頻生成並分別實現了SOTA。
  • DrivingDiffusion-Future作為自動駕駛世界模型有根據單幀圖像預測未來場景視頻並根據語言提示影響主車/他車運動規劃的能力。

DrivingDiffusion產生效果是怎麼樣的?

有需要的同學可以先看看專案首頁:https://drivingdiffusion.github.io

(1)DrivingDiffusion

#佈局控制的多視角影像產生

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

圖中展示了以佈局投影作為輸入的multi-view影像產生效果。

調整佈局:精確控制產生結果

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

#圖中上半部展示了生成結果的多樣性以及下文中模組設計的重要性。下半部展示了對正後方的車輛進行擾動的結果,包含移動,轉向,碰撞甚至懸浮在空中的場景的生成效果。

佈局控制的多重視角影片產生

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路



首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路#上:DrivingDiffusion在nuScenes資料上訓練後的影片產生結果。下:DrivingDiffusion在大量私有真實資料上訓練後的影片產生結果。

(2)DrivingDiffusion-Future

#根據輸入幀文字描述產生後續影格

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

##################################################################################################################### ###使用單幀影像作為輸入,根據主車/他車的文字描述建立後續幀駕駛場景。圖中前三行和第四行分別展示了主車和他車行為進行文字描述控制後的生成效果。 (綠框為輸入,藍框為輸出)#########根據輸入幀直接產生後續幀##################無需其他控制,僅使用單幀影像作為輸入,預測後續幀駕駛場景。 (綠框為輸入,藍框為輸出)###

DrivingDiffusion是如何解決上述問題的?

DrivingDiffusion首先人為地建構場景中的所有3D真值(障礙物/道路結構),在將真值投影為Layout影像後,以此為模型輸入得到多相機視角下的真實影像/影片。之所以沒有直接使用3D真值(BEV視圖或依照編碼後的實例)作為模型輸入,而是使用參數進行投影後輸入,是為了消除系統性的3D-2D一致性誤差。 (在這樣的一組資料中,3D真值車輛參數都是人為地依照實際需求建構的,前者帶來了隨意建構罕見場景資料能力,後者消除了傳統資料生產中幾何一致性的誤差。)

此時還剩下一個問題:產生的影像/視訊品質能否滿足使用需求?

提到建構場景,大家往往會想到使用仿真引擎,然而其產生的資料和真實資料存在著較大的domain gap。 GAN-based 方法的產生結果往往和實際真實資料的分佈存在一定bias。而Diffusion Models則是基於馬可夫鏈透過學習噪音來產生資料的特性,其產生結果的保真度較高,更適合取代真實資料使用。

DrivingDiffusion依照人為構造的場景車輛參數,直接產生時序multi-view視圖,不僅可以作為下游自動駕駛任務的訓練數據,還可以建構用於回饋自動駕駛演算法的模擬系統。

這裡的「人為構造的場景」僅包含障礙物和道路結構信息,但DrivingDiffusion的框架可以輕鬆引入標誌牌,紅綠燈,施工區域等layout信息甚至low-level的occupancy grid/depth map等控制模式。

DrivingDiffusion方法概述

產生多重視角影片時,有幾個困難:

  • 相較常見的圖像生成,多視角視訊生成新增了視角時序兩個維度,如何設計一個可以進行長視訊生成的框架?如何保持跨視角一致性和跨幀一致性?
  • 從自動駕駛任務的角度,場景中的實例至關重要,如何保證生成實例的品質?

DrivingDiffusion主要設計了一個通用的訓練框架,將stable-diffusion-v1-4模型作為影像的預訓練模型,並使用3D偽卷積將原有影像輸入膨脹,用於處理視角/時序新增的維度後輸入3D-Unet,在得到了處理新增維度的擴散模型後,進行了交替迭代式的視頻擴展,透過關鍵幀控制微調的操作保障了短時序和長時序的整體一致性。此外,DrivingDiffusion提出了Consistency Module和Local Prompt,分別解決了跨視角/跨幀一致性和實例品質的問題。

DrivingDiffusion產生長影片流程

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

  1. #單幀多視角模型:產生multi-view關鍵幀,
  2. #以關鍵幀作為額外控制,多視角共享的單視角時序模型:並行對各個view進行時序擴展,
  3. 以產生結果為額外控制的單幀多視角模型:時序並行地微調後續幀,
  4. 確定新關鍵影格並透過滑動視窗延長影片。

跨視角模型與時序模型的訓練架構

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

#
  • 對於multi-view模型和時序模型來說,3D-Unet的擴展維度分別為視角和時間。二者都有相同的佈局控制器。作者認為後續幀可以從multi-view關鍵幀獲取場景中的信息,並隱式地學習不同目標的關聯信息。二者分別使用了不同的一致性注意力模組和相同的Local Prompt模組。
  • 佈局編碼:障礙物類別/實例資訊和道路結構分割佈局,分別以不同的固定編碼值編碼為RGB影像,經過encode後輸出佈局token。
  • 關鍵影格控制:所有的時序擴展過程,都採用了某一關鍵影格的mul​​ti-view影像,這是基於在短時序內的後續影格可以從關鍵影格取得資訊的假設。所有的微調過程都以關鍵幀和其產生的後續某幀的multi-view影像作為額外控制,輸出優化該幀跨視角一致性後multi-view影像。
  • 基於特定視角的光流先驗:對於時序模型,訓練時只進行某個視角下資料的取樣。額外使用提前統計的此視角影像下每個像素位置的光流先驗值,編碼後作為相機ID token,進行類似擴散過程中的time embedding對hidden層的交互控制。

Consistency Module & Local Prompt

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

#Consistency Module分為兩部分:一致性注意力機制一致性關聯損失

一致性注意力機制關注了相鄰視角和時序相關幀的交互,具體來說對於跨幀一致性僅關注存在overlap的左右相鄰視角的信息交互,對於時序模型,每一幀只關注關鍵影格以及前一格。這避免了全局互動帶來的巨大計算量。

一致性關聯損失透過像素級關聯並回歸位姿來添加幾何約束,其梯度由一個預先訓練的位姿回歸器提供。此回歸器基於LoFTR添加位姿回歸head,並在對應資料集的真實資料上使用位姿真值進行訓練。對於多視角模型和時序模型此模組分別監督相機相對位姿和主車運動位姿。

Local PromptGlobal Prompt配合,復用了CLIP和stable-diffusion-v1-4的參數語義,對特定類別實例區域進行局部增強。如圖所示,在圖像token和全域的文字描述提示的交叉注意力機制基礎上,作者對某類別進行local prompt設計並使用該類別mask區域的圖像token對local prompt進行查詢。這個過程最大程度地利用了原始模型參數中在open domain的文字引導圖像生成的概念。

DrivingDiffusion-Future方法概述

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

#對於未來場景建立任務來說,DrivingDiffusion-Future使用了兩種方式:一種是直接透過第一幀影像預測後續幀影像(視覺分支),並使用幀間光流作為輔助損失。這種方式較簡單,但根據文字描述對後續生成影格進行產生的效果一般。另一種方式是在前者基礎上新增了概念分支,該分支透過第一幀BEV視圖預測後續幀BEV視圖,這是因為對BEV視圖的預測有助於模型捕捉駕駛場景的核心資訊和建立概念。此時文字描述同時作用於兩個分支,並透過BEV2PV的視角轉換模組將概念分支的特徵作用於視覺分支,其中視角轉換模組的部分參數是透過使用真值影像替代雜訊輸入預先訓練的(並在後續訓練中凍結)。值得注意的是,主車控製文字描述控制器他車控制/環境文字描述控制器是解耦的。

實驗分析

為了評估模型的性能,DrivingDiffusion採用幀級Fréchet Inception Distance (FID)來評估生成影像的質量,相應地使用FVD來評估生成視訊品質。所有指標都是在nuScenes驗證集上計算的。如表1所示,和自動駕駛場景中的影像產生任務BEVGen 和影片產生任務DriveDreamer相比,DrivingDiffusion在不同設定下的效能指標都有較大優勢。

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

儘管FID等方法通常用於衡量影像合成的質量,但它們並沒有完全回饋任務的設計目標,也沒有反映不同語意類別的合成品質。由於任務致力於產生與3D佈局一致的多視圖影像,DrivingDiffuison提出使用BEV感知模型指標來衡量一致性方面的性能:利用CVT和BEVFusion的官方模型作為評測器,採用與nuScenes驗證集相同的以真實3D佈局為條件的生成影像,對每組產生的影像進行CVT和BevFusion推理,然後將預測的結果與真實結果進行比較,對其中可駕駛區域的平均交叉路口(mIoU)分數和所有物件類別的NDS進行了統計,如表2所示。實驗結果表明,對合成資料評測集的感知指標和真實評測集的指標十分接近,這反映了生成結果和3D真值的高度一致性和影像品質的高保真度。

首个多视角自动驾驶场景视频生成世界模型 | DrivingDiffusion: BEV数据和仿真新思路

除了上述實驗外,DrivingDiffusion針對其主要解決的問題-提升自動駕駛下游任務表現,進行了加入合成資料訓練的實驗。表3展示了合成資料增強在BEV感知任務中所實現的效能改進。在原始訓練資料中,存在長尾分佈的問題,特別是小目標、近距車輛和車輛定向角度。 DrivingDiffusion專注於為這些樣本有限的類別產生額外的數據來解決這個問題。在增加了專注於改善障礙物朝向角度的分佈的2000幀數據後,NDS略有改善,而mAOE從0.5613顯著下降到0.5295。在使用6000幀更全面,更專注於罕見場景的合成資料來輔助訓練後,可以觀察到nuScenes驗證集有顯著的增強:NDS由0.412上升至0.434, mAOE由0.5613下降至0.5130。這證明了合成資料的資料增強對感知任務帶來的顯著的提升。使用者可以根據實際需求,對資料中各個維度的分佈進行統計,再針對性地使用合成資料進行補充。

DrivingDiffusion的意義和未來工作

DrivingDiffuison同時實現了多視角的自動駕駛場景視訊生成和未來預測的能力,對自動駕駛任務有著重大意義。其中佈局參數全部人為構造且3D-2D之間的轉換透過投影而非依賴可學習的模型參數,這消除了在以往獲取資料過程中的幾何誤差,有較強的實用價值。同時DrivingDiffuison的可擴展性極強,支援新增場景內容layout以及額外的controller,同時也可以透過超解析度和視訊插幀技術無損地提升生成品質。

在自動駕駛模擬中,關於Nerf的嘗試越來越多。然而在街景生成這一任務上,對動靜態內容的分離,大範圍街區重建,解耦天氣等維度的表觀控制等等,帶來了巨大工程量,此外Nerf往往需要再特定範圍場景內進行訓練後才可支援後續的模擬中的新視角合成任務。而DrivingDiffusion天然包含了一定的通識先驗,包括視覺-文字的聯繫,對視覺內容的概念理解等,可以僅透過構造佈局快速地根據需求建立一段場景。但如上文所述,整個流程較為複雜,且對於長影片的生成需要後處理的模型微調和擴展。 DrivingDiffusion將持續探索視角維度和時間維度的壓縮,以及結合Nerf進行新視角生成和轉換,持續提升生成品質以及可擴展性。

以上是首個多視角自動駕駛場景影片產生世界模型 | DrivingDiffusion: BEV資料與模擬新思路的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除