華為最新的論文《VisionPAD: A Vision-Centric Pre-training Paradigm for Autonomous Driving》,10位作者中有5位來自華為諾亞方舟實驗室,其余基本都是香港中文大學,且這其中還有3個人是在華為諾亞方舟實驗室實習,可以說有8個人來自華為諾亞方舟實驗室。VisionPAD提出了一種比較新穎的預訓練方法來提升OCC性能,將OCC性能關鍵指標mIoU推高到45%,達到業(yè)內(nèi)第一,學術界一般研究超前課題,但華為依然研究BEV+OCC,顯示出傳統(tǒng)算法還有很強的生命力。
BEV+3D語義分割柵格占有法是目前性能最強的感知算法,柵格占有法一般縮寫成OCC。雖然模塊式端到端沒有顯性輸出,但論到感知性能,傳統(tǒng)算法是可以碾壓端到端的,而端到端在決策規(guī)劃、軌跡預測方面比傳統(tǒng)算法潛力要深很多。
近年來主要的3D OCC研究論文薈萃(截至2024年6月)
3D OCC主要缺陷是數(shù)據(jù)集成本過高,絕大部分3D OCC算法都是使用強監(jiān)督數(shù)據(jù)集,而3D OCC的數(shù)據(jù)集打造成本高昂,基本上無法使用機器標注,只能人工標注,費時費力費錢傳統(tǒng)算法就是如此,而全局型端到端最大的優(yōu)點就是可以使用完全非監(jiān)督(自監(jiān)督)數(shù)據(jù),即數(shù)據(jù)集成本可以是零,而使用多模態(tài)大模型做全局型端到端更是大幅度節(jié)約成本,基本不需要算法工程師了,自動駕駛團隊裁員95%都能正常運轉。
Self-Supervised Learning(自監(jiān)督學習)是一種無監(jiān)督表示學習方法,其核心在于通過設計輔助任務(也稱為“預訓練任務”或“前置任務”)來挖掘數(shù)據(jù)自身的表征特征作為監(jiān)督信號,從而提升模型的特征提取能力。為了自監(jiān)督Self-Supervised Learning,業(yè)內(nèi)有兩條思路,一是對比學習,具體可以看論文《BEVContrast: Self-Supervision in BEV Space for Automotive Lidar Point Clouds》作者基本都來自寶馬自動駕駛主要供應商法雷奧。二是MAE(Masked Autoencoders,即掩碼自編碼器)是一種在計算機視覺領域廣泛應用的自監(jiān)督學習方法。MAE通過在輸入的圖像或文本中隨機遮蓋部分數(shù)據(jù)(如圖像中的patches或文本中的單詞),然后讓模型去預測被遮蓋的部分,并將預測結果與真實的部分進行比較,計算誤差作為損失。這種方法使模型能夠直接重構被遮蓋的數(shù)據(jù),從而實現(xiàn)自監(jiān)督學習。
對比學習和MAE這兩種粗略coarse監(jiān)督,無法捕捉到3D幾何信息、語義信息和基于時間序列的動態(tài)元素,浙江大學提出了《UniPAD: A Universal Pre-training Paradigm for Autonomous Driving》,上海AI實驗室提出了《Visual Point Cloud Forecasting enables Scalable Autonomous Driving》即ViDAR。UniPAD從體素特征重建多視角深度地圖和圖像來實現(xiàn)預訓練,使用可微分函數(shù)體渲染(體渲染是一種基于逆光線傳輸方程的3D重建方法)重建一個完整的幾何表示。ViDAR則是將transformer預測的下一幀和未來Lidar幀監(jiān)督渲染的深度圖結合。這兩種方法都嚴重依賴Lidar深度信息的強監(jiān)督來學習3D幾何信息,而目前自動駕駛領域是以攝像頭為核心,特別是BEV領域。順便說一句,純激光雷達感知性能遠比純視覺要好,兩者融合,性能只有非常輕微的提升,幾乎可以忽略不計。
華為在UniPAD上加以改進,下圖是兩者的對比
UniPAD vs. VisionPAD
華為不使用激光雷達友好的體渲染方程,改用基于錨點的3D Gaussian Splatting(簡寫為3D GS)技術,其實3D GS(https://github.com/graphdeco-inria/gaussian-splatting)和MVS,SFM,NeRF這類體渲染技術類似,不過在高分辨率圖片上由于需要使用強監(jiān)督神經(jīng)網(wǎng)絡,導致訓練和渲染都需要十分昂貴的代價。3D 高斯?jié)姙R的核心是一種光柵化技術,類似于計算機圖形學中的三角形光柵化,它可以實時渲染。首先,將多個視點的圖像轉換為點云,然后將點云轉換為帶參數(shù)的高斯分布,最后使用機器學習來學習參數(shù)。它允許實時渲染從小圖像樣本中學習到的逼真場景。最近風頭很盛,大有超過NeRF的態(tài)勢。
此外為了只從圖像中學習運動線索,移動線索(motion cues)由像素位移和背景位移的差值來定義。華為提出一種自監(jiān)督體素速度估計算法。華為使用一個輔助神經(jīng)網(wǎng)絡任務頭和基于時間戳的近似體素流來預測每個體素的速度。隨后,華為封裝(wrap)當前幀的體素到相鄰幀,并用相應的圖像監(jiān)督 3D-GS 重建。這種速度預測使模型能夠解耦動態(tài)和靜態(tài)體素,便于下游任務中的運動感知。此外,華為采用多幀光度一致性損失函數(shù)進行三維幾何預訓練,這是一種自監(jiān)督學習獲得深度估計值的方法,具體可以看論文《Digging Into Self-Supervised Monocular Depth Estimation》,這是2018年的論文了。
VisionPAD整體架構
以一個視覺感知模型為主體,VisionPAD 利用多幀、多視角圖像作為輸入,生成顯式的體素表示。之后,一個 3DGS解碼器從體素特征中重建多視角圖像。隨后,應用速度引導的體素變形,將當前幀的體素特征變形到相鄰幀,從而利用相鄰幀圖像作為監(jiān)督,通過 3D-GS 解碼器實現(xiàn)自監(jiān)督重建。最后,通過相對位姿進行重投影所知的光度一致性損失,強制 3D 幾何約束。
在上圖中,牽涉非常多的幾何和光傳播方程,如今絕大多數(shù)程序員和自動駕駛研發(fā)人員都無法深度理解這種復雜的幾何算法和光傳播算法。
自監(jiān)督速度估計
目前的體素特征被扭曲到相鄰幀。隨后,使用 3DGS 解碼器渲染多視圖圖像,并通過在該幀中捕獲的圖像進行監(jiān)督。
在nuScenes數(shù)據(jù)集上的得分表現(xiàn)如上,因為是自監(jiān)督的,距離強監(jiān)督的感知算法自然有不小差距。目前nuScenes上NDS得分最高是北航和圖森的MV2Dfusion-e,高達78.8,mAP是0.779,排除地圖和外接數(shù)據(jù),nuScenes上NDS得分最高是上汽的BEVFusion4D-e,也有77.2,順便說一下這是2023年3月的記錄,至今無人能打破,傳統(tǒng)算法的缺點就是進展緩慢。
不過VisionPAD的專長是OCC,感知性能不強是正常的。
幾種OCC算法對比
上圖是幾種OCC算法對比,很明顯,VisionPAD壓倒性的第一,不過測試數(shù)據(jù)集是OPUS,不是常見的Occ3D-nuScenes。
目前Occ3D-nuScenes上的排名
這是目前Occ3D-nuScenes上的排名,華為大幅提高了自監(jiān)督學習OCC算法的性能。不過和強監(jiān)督的最頂級算法COTR比應該還是有差距。順便說一句,COTR是華東師范大學提出的,一個師范大學的OCC算法輕松碾壓清華和一眾海外名校。
強監(jiān)督自有強監(jiān)督的好處,提升非常明顯。
對學術界來說,基本不考慮成本,產(chǎn)業(yè)界要在成本和性能之間找到平衡點,不過絕大部分企業(yè)更傾向于壓低成本,端到端大幅度降低研發(fā)成本,但部署硬件成本暴增,傳統(tǒng)算法研發(fā)成本居高不下(不過數(shù)據(jù)集的成本正在顯著下降,自監(jiān)督越來越多),但部署成本遠低于端到端,對于出貨量小的企業(yè)而言,分攤到每輛車上的研發(fā)成本可能比硬件成本還高,端到端幾乎是唯一選擇,而對出貨量大的企業(yè)來說,兩者皆可選,大部分廠家還是選擇傳統(tǒng)算法。
免責說明:本文觀點和數(shù)據(jù)僅供參考,和實際情況可能存在偏差。本文不構成投資建議,文中所有觀點、數(shù)據(jù)僅代表筆者立場,不具有任何指導、投資和決策意見。