UniPAD:一種通用的自動駕駛預訓練模式
本文經自動駕駛之心公眾號授權轉載,轉載請聯系出處。
寫在前面&筆者的個人理解
UniPAD研究了一個關鍵問題:如何有效地利用大量未標記的3D點云數據進行自監督學習,以增強其在3D目標檢測和語義分割等下游任務中的應用效率。這個問題之所以重要,是因為在自動駕駛和許多其他領域,3D點云數據的有效使用能夠極大提高任務執行的準確性和可靠性。盡管2D圖像領域的自監督學習已經取得了顯著進展,但由于3D點云數據的固有稀疏性和點分布的變異性,將這些方法擴展到3D點云上面臨著更大的挑戰。
傳統的針對3D場景理解的預訓練范式主要基于對比學習和遮蔽自編碼(MAE)兩大類方法,它們或面臨樣本選擇的敏感性和實際應用的局限性,或在處理3D點云數據的不規則性和稀疏性方面遇到挑戰。特別是,3D點云的遮蔽自編碼任務在細粒度的幾何結構預測上往往效果不佳,因為傳統方法可能無法有效捕獲3D空間中的連續性和結構信息。
針對上述挑戰,論文提出了一種新穎的預訓練范式,專為3D表示學習量身定制。該方法通過3D可微分神經渲染,以投影的2D深度圖像上重建缺失的幾何結構為目標,避免了復雜的正負樣本分配,并隱式提供了連續的監督信號來學習3D形狀結構。這一方法不僅提高了訓練效率和內存使用的經濟性,而且通過創新的采樣策略,在精確性上取得了顯著提升。
該研究的貢獻主要體現在三個方面:
- 首次探索了一種新穎的3D可微分渲染方法,用于自動駕駛場景下的自監督學習。
- 該方法易于擴展,以預訓練2D背景模型,并通過創新的采樣策略,在有效性和效率上顯示出其優越性。
- 通過在nuScenes數據集上進行廣泛實驗,該方法在多種預訓練策略中性能最優,并且在七種背景模型和兩種感知任務上的實驗結果,為該方法的有效性提供了有力證據。
總體而言,這項研究為3D點云數據的自監督學習提出了一個創新的方法論框架,有效解決了之前方法存在的問題,同時在3D目標檢測和語義分割等關鍵任務上實現了顯著的性能提升。
方法
Modal-specific Encoder
在這個段落中,"Modal-specific Encoder"(模態特定編碼器)是一種為不同類型的輸入數據(例如LiDAR點云和多視圖圖像)設計的編碼器,用于提取高質量的特征表示。這種編碼器針對每種輸入數據的特性進行優化,以有效處理數據的特定結構和信息。
- 對于LiDAR點云,使用如VoxelNet這樣的點編碼器來提取層次化特征。這種編碼器能夠處理點云的稀疏性,并從中提取有用的空間信息。
- 對于多視圖圖像,則采用經典的卷積網絡來提取特征。這種網絡適用于處理圖像數據,能夠捕捉到視覺紋理和形狀信息。
此外,為了在不犧牲高級信息的同時捕獲細粒度的細節,使用了額外的模態特定的FPN(Feature Pyramid Networks),這是一種高效聚合多尺度特征的方法,進一步增強了模型對于不同尺度信息的處理能力。
Mask Generator(遮罩生成器)是一種數據增強手段,通過選擇性地移除輸入數據的一部分來提高模型的泛化能力和表示能力。這種方法靈感來自之前的自監督學習方法,如He等人提出的MAE,通過增加訓練難度來增強模型性能。在這個框架下,遮罩生成器采用塊狀遮罩,針對點云或圖像,生成遮罩并應用到輸出特征圖的大小上,然后將其上采樣到原始輸入分辨率。對于點云,通過移除被遮罩區域的信息來獲取可見區域;對于圖像,則采用稀疏卷積,僅在可見位置進行計算。編碼后,被遮罩的區域以零填充,并與可見特征結合形成規則的密集特征圖。
"Modal-specific Encoder"和"Mask Generator"共同構成了一個強大的框架,通過模態特定的特征提取和創新的數據增強技術,顯著提升了自監督學習在處理復雜3D點云和圖像數據時的效率和性能。
Unified 3D Volumetric Representation
Unified 3D Volumetric Representation(統一的3D體積表示)是一種將來自不同模態的數據(如LiDAR點云和多視圖圖像)轉換為統一的3D體積空間表示的方法。這種表示方法的目的是為了在預訓練方法中兼容不同的輸入模態,同時盡可能保留每種模態原始視圖中的信息。
對于多視圖圖像,2D特征被轉換到3D自車坐標系中,以獲得體積特征。這一過程首先是定義3D體素坐標,其中是體素分辨率。然后,將投影到多視圖圖像上以索引相應的2D特征。通過雙線性插值方法,結合變換矩陣和(分別代表從LiDAR坐標系到相機幀和從相機幀到圖像坐標的轉換),構造出體積特征。
對于3D點云模態,直接在點編碼器中保留高度維度,以直接利用點云數據的空間信息。
在此基礎上,通過使用包含個卷積層的投影層,進一步增強了體素表示的能力,使其能夠更好地捕捉和表達3D空間中的細節和結構信息。
Neural Rendering Decoder
該部分引入了一種利用神經渲染技術靈活整合幾何或紋理線索到學習到的體積特征中的新方法,這在統一的預訓練架構中實現了對體積特征的有效使用。具體來說,提供體積特征后,從多視圖圖像或點云中采樣一些光線,并使用可微分體積渲染技術為每條光線渲染顏色或深度。這種靈活性進一步促進了將3D先驗融入所獲取的圖像特征中,通過額外的深度渲染監督實現,確保了其能夠無縫集成到2D和3D框架中。
通過使用隱式符號距離函數(SDF)場來表示場景,能夠高質量地表現出幾何細節。SDF表示查詢點與最近表面之間的3D距離,從而隱式地描述了3D幾何形態。對于每個光線點,可以從體積表示中通過三線性插值提取特征嵌入。然后,通過淺層MLP預測SDF值。
對于顏色值,根據表面法線(即SDF值在光線點處的梯度)和來自的幾何特征向量,通過MLP來確定顏色場。最后,通過沿光線集成預測的顏色和采樣深度來渲染RGB值和深度。
此外,為了減輕計算負擔,提出了三種內存友好的光線采樣策略:擴張采樣、隨機采樣和深度感知采樣。這些策略通過選擇性地采樣光線,而不是渲染整個圖像的所有光線,從而減少了計算需求,同時優化了神經渲染的精確度,專注于場景中最相關的部分。整體預訓練損失由顏色損失和深度損失組成,用于訓練模型以精確渲染給定場景的顏色和深度,從而在不同模態間建立了一個高效、統一且信息豐富的3D體積表示。
實驗
在這張表格的實驗結果中,+UniPAD的方法在不同模態的輸入數據上表現出色。這些模態包括LIDAR (L)、Camera (C)、Camera Stereo (CS) 和 Multi-input (C+L),對應于不同的3D目標檢測和語義分割任務。通過使用UniPAD方法,我們看到在各種不同的配置和數據輸入模態中,性能普遍得到提升。
當專注于LiDAR模態時,+UniPAD版本的UVT-RL方法達到了70.6%的NDS(Normalized Detection Score)和65.0%的mAP(mean Average Precision),這是這個類別中最高的得分。這表明UniPAD方法在處理點云數據時非常有效,能夠提高模型的檢測性能和精確度。在Camera模態中,UVT-RC+UniPAD版本比起原始的UVT-RC方法,在NDS和mAP上也有明顯的提升。例如,原始的UVT-RC方法的NDS為45.0%,而UVT-RC+UniPAD的NDS為47.4%,在mAP上也從37.2%提高到了41.5%。當數據輸入是Camera Stereo時,我們看到UVT-CS+UniPAD在NDS上得到了顯著的提升,從原來的UVT-CS的48.3%提升至50.2%,在mAP上也從39.2%提升至42.8%。這表明UniPAD方法能夠利用立體視覺的深度信息,以提高性能。
最后,在使用多種輸入模態(Camera+LiDAR)的配置中,UVT-M+UniPAD方法在NDS上實現了73.2%,在mAP上實現了69.9%,這是所有列出配置中的最高分。這表明UniPAD方法能夠有效地整合來自不同傳感器的信息,進一步提高了模型在復雜場景下的表現。UniPAD方法的引入為各種基線方法帶來了性能的顯著提升,這證明了UniPAD在多種傳感器數據融合和自監督預訓練方面的有效性。這些改進可能是由于UniPAD方法能夠更好地理解和整合來自不同模態的數據,從而為3D目標檢測和語義分割任務提供了更豐富和更準確的特征表示。
消融實驗通常用來理解不同組件對模型性能的影響。根據提供的表格內容,我們可以總結以下關于體積基神經渲染的消融研究結果:
- 遮罩比例 (Mask ratio): 使用0.3的遮罩比例在NDS和mAP上分別取得了32.9%和32.6%的得分,表現出是這一系列實驗中的最佳設置。這表明在輸入數據中遮蔽30%的部分可以提供最佳的訓練難度,有利于模型學習。
- 解碼器深度 (Decoder depth): 解碼器的深度影響模型的性能。一個具有(6, 4)層的解碼器在NDS上達到了32.9%,這是測試的配置中最高的,表明一個較深的解碼器可以提高精度。
- 解碼器寬度 (Decoder width): 解碼器的寬度對性能的影響較小。不同維度的解碼器在NDS和mAP上的得分差異不大,最高分數與最低分數相差不到0.5%。
- 渲染技術 (Rendering technique): 在測試的三種不同的渲染方法中,NeuS方法(NDS 32.9%, mAP 32.6%)略勝一籌,表明良好設計的渲染技術對于表示學習是有益的。
- 采樣策略 (Sampling strategy): 深度感知采樣在NDS和mAP上均取得了32.9%和32.6%的最佳得分,優于擴張采樣和隨機采樣,這顯示出選擇性地采樣更為重要的區域可以提升渲染質量和模型性能。
- 特征投影 (Feature projection): 特征投影對于增強體素表示至關重要。與基線模型相比,去掉投影層會導致NDS和mAP的性能下降,這表明特征投影對于保持高質量的體素表示是必要的。
- 預訓練組件 (Pre-trained components): 模型的預訓練組件對于微調至關重要。只有編碼器的模型(NDS 32.0%, mAP 31.8%)比只有基線的模型(NDS 25.2%, mAP 23.0%)性能有顯著提升,而加入FPN和VT(Volume Transformer)后,模型在NDS上進一步提升到了32.9%,在mAP上提升到了32.6%,證明了在預訓練階段加入這些組件能夠顯著提升模型的性能。
通過這些消融實驗,我們可以看出每個組件和參數選擇如何影響最終的模型性能,并且可以得出哪些組件對于模型最為關鍵。這樣的分析有助于研究者們理解和優化他們的模型結構。
討論
這篇論文提出的方法在處理3D點云和多視圖圖像數據時表現出了顯著的優勢。通過將數據統一轉換成3D體積表示,并使用先進的神經渲染技術,該方法在預訓練階段就能學習到豐富的幾何和紋理特征,這在后續的下游任務中證明是有益的。特別是通過深度感知采樣,該方法優先處理更為重要的數據區域,從而有效提高了模型的渲染質量和整體性能。此外,特征投影和體積變換器的應用進一步加強了體積表示,使得模型能夠在預訓練后更好地進行微調。
盡管如此,方法也存在一些局限性。例如,盡管解碼器的深度和寬度調整顯示出對模型性能有細微的影響,但這也意味著在資源有限的情況下,選擇合適的模型規模和復雜度是一項挑戰。此外,盡管深度感知采樣策略在性能上取得了最佳結果,但它也依賴于高質量的深度信息,這在實際應用中可能受到傳感器質量和環境因素的影響。最后,雖然預訓練組件證明是提高性能的關鍵,但每個組件的設計和集成都需要仔細的考量,以確保模型的泛化能力和實際應用的有效性。這些挑戰需要未來的研究工作來進一步探討和解決。
結論
總結來說,這篇論文介紹的方法通過創新性地將3D點云和多視圖圖像統一到3D體積表示,并運用先進的神經渲染技術,顯著提升了自監督學習的效果。該方法通過深度感知采樣策略和有效的特征投影,使得預訓練模型在多個下游任務中都取得了卓越的性能。然而,面對模型規模和復雜度的選擇,以及在變化的環境和傳感器條件下保持性能的挑戰,仍有進一步的優化空間。未來的工作可以在提高模型的魯棒性和適應性上進行更多的探索,以實現對這種方法的全面優化和應用。