車載視覺終端數據提取可以生成一項有價值的信息,那就是檢測捕獲圖像中的目標物體位置信息、方向信息以及與自車之間的距離信息,這樣可以很好的預測自車以及周圍物體未來的運動趨勢,這些信息可以有效的聚合稱一個自上而下的表示形式,也就是我們常說的BEV鳥瞰圖,這樣可以很好的為自動駕駛車輛導航提供除高精地圖外的其他圖層信息。
獲取BEV圖的經典圖像處理方法是利用單應性矩陣Homograph對 RGB 圖像進行變換,從而PV透視圖投影轉換到3D坐標系下的BEV視圖。此類傳統方法的基本原理都是需要利用提前計算的相機矩陣來實現單應陣的構造。然而,這樣的方式適配性是交叉的,因為當相機的位置發生變化時,需要更新傳輸矩陣值重新構造對應的單應性矩陣Homograph,以確保新的轉換的正確性。
然而,使用常規的幾何變換會在某些場景下存在較大問題。比如,當構建環境目標時,一些車輛或行人目標由于遮擋而對自車不可見時,就會在圖像變換時被自動忽略。而由于深度學習網絡可以在一段時間內通過對移動目標在時間域上進行跟蹤和學習。也就是哪怕在某一段短時間內看不到該目標,通過歷史學習信息,也可模擬出當前時刻該目標的運動狀態。
此算法架構主要包括幾個模塊。
為了解決這樣的問題,本文介紹另一種適配性更強,適應范圍更廣的鳥瞰圖定位構建方法。即采用深度學習方法從圖像中提取重要信息進行透視變換,與經典方法相比,降低了相對于物體的方向和位置變化的敏感度,實現了更高的準確性和效率。當然,單應性變換的方法尚未被新方法完全取代,并且仍在一些算法中被研究使用。
實際上,這種基于深度學習的鳥瞰圖生成方式是需要大量數據作為支撐的,因為只有訓練的數據集夠多,才能真正通過足夠多的泛化模型來提升2D圖像到3D狀態下的BEV圖層的準確性。
這里有比較典型的幾種深度學習的方法實現相應的BEV制圖功能:
1、基于卷積神經網絡(CNN)實現BEV構圖
考慮到 PV 與 BEV 相比完全位于不同的空間,嘗試生成對抗網絡 (GAN)、自動編碼器 (AE) 以及授權Transformer和CNN來解決分組進行變換問題。這一系列先進的神經網絡方法在生成BEV地圖方面可以相當高效,因為基于對抗性學習來生成BEV地圖,可以確保判別器具備較高精度。當然,應用幾何學作為網絡的附加屬性來改變對抗神經網絡的一些特征,也可以獲得更好的性能。
2、利用AE、可變AE (VAE)的模型組合進行轉換
以上架構的目的是提供一組有價值的信息,將圖像通過編碼信息映射到低維空間,這樣可以以較少的信息很好的生成對應BEV地圖表示。
3、利用Transformer生成BEV目標映射
有一些研究利用 Transformer(具有交叉注意力)通過構建查詢并搜索相應的 BEV 圖像來實現映射目標,以便通過注意力機制獲得有益的特征。
4、利用視角間/幀間變換生成BEV目標映射
目前生成BEV的方法有很多種不同的方法,考慮視角間的方法主要是通過利用主流的7V(前視、周視、后視)攝像頭實現360°覆蓋,最終利用圖像拼接直接生成BEV圖。此外,使用視頻序列圖像中在時間序列上的幀間信息代替單個圖像信息的處理,可以充分利用前序幀和后續幀中的信息獲得更好的準確性能。
基于深度學習的BEV構圖模型
本文介紹的方法是利用 PV 圖像以及其中車輛邊界框的位置為自車創建自上而下的環境表示。這樣的圖像無需采用360°環繞式攝像頭模組進行,而是可以利用單前視2V。;當然有條件可以加上測前視實現4V。因為對于自動駕駛系統來說,除開變道這類特殊場景外,自車通常更關心自車前方的目標信息。然而有個比較棘手的問題是,如果是非多視角下的場景重構,單視角是無法實現從2D到3D的精確變換的,因為圖像坐標到世界坐標下的P陣沒法完整建立起來。所以對于BEV重建目標來說,如果想通過Mono3D的方式,則需要采用提前注入真值系統的方式實現對應的場景圖重構。原理就是當識別場景后,需要與提前建立的真值系統匹配,從而分析現實場景下相應的真值。
當然,真值系統的建立是需我們如何從現實環境中收集大量此類數據,特別是因為它需要獲得相應的 PV 圖像的自上而下的表示。這里有必要首先解決可用于自動駕駛車輛領域的全面數據集收集方法。這種方法可以創建一個數據集,生成帶有車輛邊界框位置信息的PV圖像,以及相應的BEV地圖。其次,需要研究這種基于深度學習將PV圖像轉換為精確的BEV地圖的方法,實際上是一種端到端深度學習架構。
如下圖表示本文介紹的這種端到端學習架構的處理方法。其中輸入處理主要包括圖像采集、輸入圖像分割、目標跟蹤幾個。其過程是負責收集輸入,提取其關鍵特征,并將其轉換為不同的特征空間供后續使用。輸出處理通過區分橫縱向分割特征模式,最終通過一定的聚合方法論生成最終BEV圖中的邊界框。
用于預測鳥瞰圖的深度神經網絡架構
1、輸入處理:
該輸入處理主要分兩路進行數據處理。
特征提取分支:采用預先訓練的主干模型來提取關鍵特征(如提取圖像中ROI之間的位置信息、形狀信息等)。然后將如上這些特征轉化為特征向量,并對特征向量進行編碼。由于提取的特征顯著影響最終輸出,因此對于主干網的選擇將很大程度影響整體系統性能和準確性。這里的主干網絡當前也有很多不同的選擇,有較多的主流算法模型都可以提供較大的訓練效率和靈活性。
邊界繪制分支:通過多個完全鏈接的密集層,將如上特征提取的信息編碼維特征向量。利用聚合向量的形式從上而下的定位選定的車輛目標,建立如上兩個分支之間的關系,最終可以增強模型識別目標之間在空間關系的能力。
2、輸出處理:
針對前序車輛目標邊界框定位其水平和垂直軸位置,兩種軸需要分別關注圖像在其水平行方向和垂直列方向上的特征值。為了構建對應在水平和垂直方向上處理分支,需要利用多個完全鏈接的密集層,將前序特征輸入到對應的兩個分支中。由于前視攝像頭觀察到的車輛信息通常是相對本車垂直放置的,因此對于垂直方向需要生成的邊界框更多,其對應的垂直值分布的方差也會更大。
以上水平和垂直位置分布最終通過聚合器腳本生成邊界框。為了比較水平和垂直方向的預測值,需要利用均方誤差(MSE)作為損失函數來進行模型優化,這樣可以最大限度地減少這種損失。在終極框架中,將ReLU 激活函數應用于除輸出層之外的所有層。而輸出層則利用線性激活來促進像素坐標中的邊界框預測。
Mono3D中的真值數據集獲取
對于自動駕駛系統數據集的獲取很少有包含街道圖像的數據集空間、行人和車輛被公開發布,因為這些數據集多變且難以完整的重現。此外,還有些數據集還額外提供一些其他注釋,例如針對不同對象的邊界框以及各種類型的環境和天氣條件下的語義分段地圖作為附加信息。實際上,沒有特定的真實數據集可以直接解決所有場景挖掘任務,研究人員需要在使用數據集之前構建預處理步驟、增加數據丟失的機會并減慢該過程。為了全方位泛化生成所有自動駕駛使用場景,同時降低實車數據采集的獲取成本,就需要使用虛擬城市空間模擬器合成了一個全新的數據集。該模擬器復制了現實世界的物體和事件,在這種情況下,則可以通過PV圖像很輕松的生成BEV圖像。
由于深度學習模型需要大量數據,因此需要大量數據才能做出更準確的預測。在數據采樣研究中,需要使用模擬器的巨大數據集來解決上述問題,同時生成更真實的圖像。
1、數據集模擬器設置
為了使用模擬器生成的數據集,需要在地圖的隨機生成自車位置作為輸出圖像的起源,并且在數據捕獲的每個epoch重復此過程,以便結果數據集將涵蓋來自不同分布和環境的不同記錄。
這些記錄可以是如下一些內容:
- 道路信息、車道信息、路口信息;
- 建筑物、道路特征表面(如紋理信息、凹凸信息、坡度信息)等。
- 自定義白天天氣條件。
- 不同的氣候類別,如雨天,晴天和多云。
以上這些屬性將使生成的數據集成為一個廣義集,包含各種各樣的情況,能夠使模擬器盡可能真實的反應現實環境情況。在最終數據集中的每條記錄中,以結構化的形式存儲有關自車各種有價值的信息,如名稱、目標id、位置和速度等。
2、傳感器設置
對于這類數據采集的傳感器需要在自動駕駛的車上暗轉多個視覺傳感器實現對周邊環境信息的采集。首先,在車輛中部正前方平行于地面安裝攝像頭一個用于捕獲原始RGB圖像,該圖像需要覆蓋車輛引擎蓋。其對應視頻圖像的屬性經過調整可生成具有所需縱橫比的 PV 圖像,這些PV圖像包括視場、輸出圖像尺寸以及相對于自車的相對位置。需要在智駕系統域控裝置中設置對應的時間同步模塊,能夠保證時間能夠與其他傳感器同步。
此外,安裝的深度相機傳感器可以提供場景視圖,編碼每個像素到具有相同屬性和位置的相機距離。因此 RGB 相機和深度傳感器的輸出完全匹配。
3、地圖生成
本文介紹的BEV地圖生成方法主要是基于數據集的注入后生成的端到端信息,這里需要建立一個BEV生成管道,該管道需要與PV透視圖在寬高比上進行同步,其結果會以自車為中心生成自上而下的分段表示。同時,由于自車的運動狀態是實時變化的,比如轉彎、掉頭、橫縱破都會對自車采集的BEV地圖產生不同的結果。因此,這就要求以自車定位在BEV中心和底部后,生成的BEV圖必須具備能夠旋轉視圖的能力。
4、數據采集
這里介紹的數據集采集是針對 6 個不同的圖重復數據采集過程 6 次。且模擬器需要在每個采集過程中,提供隨機選擇不同種類的 100 輛環境目標車和惡20量自車,并在不同位置放置對應的車輛。為了盡可能減少碰撞,需要每輛車都具有低階輔助駕駛功能。每輛自車都針對前面提到不同道路特征、天氣特征、路口信息捕獲 20 個連續幀的數據。存儲過程需要進行一定程度的抽幀,以便降低幀率,確保在存儲限制內滿足不同環境組合情況的泛化能力。
5、數據標注
對于采集的原始數據集需要使用這里的模擬器工具箱對PV透視圖和BEV地圖進行感興趣目標ROI標注。標注出與自車距離不大于50m的車輛,且對于潛在風險車輛可能是不可見的部分也會以邊界框標注出來。
在數據采集過程的每次迭代中從上述傳感器收集原始數據后,作者使用模擬器提供的工具在 PV 和 BEV 中注釋每個車輛邊界框。輸出僅包含與自我車輛距離等于或小于 50 米的車輛。車輛的邊界框是不可見的車輛 PV,但也發布了位于上述距離的車輛。存儲每輛車在PV中的左上角和右下角的位置以及它們在BEV地圖中的對應位置。使用模擬器提供的地圖中的車輛位置來計算其他車輛相對于自我車輛的距離。
總結
為了訓練深度神經網絡將 RGB 相機捕獲的透視 (PV) 圖像轉換為鳥瞰 (BEV) 地圖,需要大量且多樣化的數據集來增強模型在各種條件下的泛化性和性能。從現實環境中收集此類數據可能具有挑戰性且成本高昂,特別是因為它需要對獲得的 PV 圖像做自上而下的表示。本文介紹了一種端到端深度學習架構,旨在將PV圖像轉換為精確的BEV地圖。同時,提出一種使用模擬器創建一個數據集的方法,通過生成帶有車輛邊界框位置信息的PV圖像,以及相應的BEV地圖,可以適合特定需求的新數據收集,也可以應用于現場的類似任務。
審核編輯:湯梓紅
-
相機
+關注
關注
4文章
1350瀏覽量
53581 -
模型
+關注
關注
1文章
3226瀏覽量
48809 -
車載視覺
+關注
關注
0文章
15瀏覽量
8716 -
自動駕駛
+關注
關注
784文章
13784瀏覽量
166394
原文標題:一種基于PV變換和CNN模型生成BEV數據的方法
文章出處:【微信號:阿寶1990,微信公眾號:阿寶1990】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論