近年來,車路協同感知越來越受到關註,激光雷達在該研究領域發揮著關鍵作用。但是,很少研究如何優化車路協同場景中激光雷達的最佳部署位置。在本工作中,我們研究瞭路端傳感器放置問題,並提出瞭一種可以在仿真環境中高效且有效地找到車路協同場景中激光雷達最佳安裝位置的技術路線。
為瞭更好地模擬和評估激光雷達的位置,我們建立瞭一個高一致性的激光雷達仿真庫,可以模擬多種主流激光雷達的獨特特征,並借助仿真引擎生成高保真的激光雷達點雲。通過模擬在同一交通場景下,不同部署策略的路端激光雷達所采集到的點雲數據,我們可以使用多款檢測框架去評估這些方案的感知性能。
通過計算感興趣區域的密度和均勻性,我們對點雲分佈與感知精度之間的相關性進行研究,驗證瞭感興趣區域點雲密度和均勻性可以作為感知性能評價的相關性指標。實驗表明,在標準車道場景下,使用相同數量和類型的激光雷達時,通過本文方法優化的放置方案比常規放置方案平均精度提高瞭15%。高一致性的激光雷達仿真庫和相關部署策略優化方法的代碼都已在下面的鏈接開源發佈:http://github.com/PJLab-ADG/LiDARSimLib-and-Placement-Evaluation。
原文鏈接:http://arxiv.org/pdf/2211.15975.pdf。
開源鏈接:http://github.com/PJLab-ADG/LiDARSimLib-and-Placement-Evaluation。
點擊關註@自動駕駛之心,第一時間看到最前沿與價值的CV/自動駕駛/AI類工作~
強烈推薦!自動駕駛與AI學習社區:歡迎加入國內首個自動駕駛開發者社區!這裡有最全面有效的自動駕駛與AI學習路線(感知/定位/融合)和自動駕駛與AI公司內推機會!
求職社群來瞭!面向自動駕駛與AI相關的算法/開發求職,面試題目/面經/日常吐槽應有盡有!
眾所周知,對駕駛環境準確的感知能力對於自動駕駛技術來說非常重要。隨著深度學習神經網絡的最新進展,單車感知算法的魯棒性在物體檢測[1], [2], [3], [4], [5], [6], [7]等多項任務中有瞭顯著提高。但是,由於車輛傳感器天然存在的盲區問題,一定程度上限制瞭自動駕駛感知性能。與單車感知相比,結合使用車端和路端傳感器有許多顯著的優勢,包括提供超廣視角,以覆蓋單車感知受遮擋所致的盲區。目前V2X通信技術(尤其是5G通信)的進步使得車端、路端傳感器[8], [9], [10]的數據實時協同交互成為可能。
近年來,少量的文獻從激光雷達佈放[11], [12]的角度來考慮激光雷達的感知問題,這是一個新的研究視角,也是至關重要的,因為不論是車端還是路端,激光雷達放置不當可能導致傳感數據質量較差,從而從根本上導致感知性能較差。在模型一致的情況下,可能會導致各自的感知精度間有近10%甚至以上的差距。
隨著V2X應用的快速發展,路端傳感器的部署也越來越普遍。瞭解如何選擇最優的部署策略,使路端傳感器帶來的效益最大化是非常必要的。但現有的部署方案僅僅通過手動調整激光雷達以讓探測范圍覆蓋感興趣區域。至於該部署方案是否為感知性能最佳方案,並沒有去過多深究。
然而,現有的激光雷達佈局研究主要集中在車輛上,而忽略瞭路端傳感器的佈局問題。相比於車端激光雷達部署策略來說,路端激光雷達的佈置有更高的自由度——沿桿的高度和旋轉、俯仰和偏航角度都需要考慮。另外,與車載激光雷達部署問題不同的是,不論是在城市交通路口還是在高速公路匝道口,可選的部署位置更多的是附著於路燈桿、紅綠燈桿等桿狀物上。路端激光雷達佈置優化問題首先需要通過從這麼多個潛在位置中選擇一定數量的最佳位置來放置路端激光雷達,從而最大化對場景的感知能力。
那麼歸納一下,在這個課題中,現有問題包括,不佳的部署策略確實會影響采集到的傳感器數據質量,更進一步會影響模型的感知性能。另外,在現實生活中,如何去尋找最優的部署策略,目前還沒有比較合適的解決方案。
我們能夠直接想到的是,找到最佳安裝位置最直接的方法是去逐個評估現實世界中不同激光雷達位置選擇的感知性能。然而,這種方法是不可行的,因為它非常費時費力。而且不同安裝位置、不同安裝角度的組合將讓部署方案數量帶來指數級的上漲,根本沒有辦法在現實中實施。此外,因為在公開道路,在評估不同的部署策略時,不可能確保車流量、交通場景完全相同,這將帶來不公平的比較。
另一種解決方案是通過高一致性的自動駕駛仿真框架+高一致性傳感器仿真模型來復現相同的交通場景,采集每個路端放置方案的仿真點雲數據,借助“模型訓練-數據仿真-感知性能評估”這一評測管道,評估每個放置方案所對應的感知精度。
目前已經有的一些自動駕駛仿真框架包括Prescan、Carsim、VTD和CARLA等,他們大都能夠在場景建模、動力學仿真、天氣仿真、交通流仿真等方面做到很好。但由於傳感器這個門類,技術路線多樣,型號各異,現有的自動駕駛仿真框架可以完成基本的傳感器仿真,但很少能夠針對不同型號的傳感器做到精細化的特性建模與仿真。
例如主流開源仿真框架之一的CARLA[11], [12], [13], [14],在進行數據采集和評估時,對於激光雷達的仿真,僅支持均勻線束的機械旋轉式激光雷達(Surround LiDAR)仿真,無法仿真微振鏡式(MEMS LiDAR)和轉鏡式(Risley Prism LiDAR)等其他技術路線。另外,激光雷達的一些物理特性,例如運動畸變和鬼影效應,目前的仿真框架也無法涉及,這樣嚴重限制瞭仿真數據對現實環境的泛化。
為瞭獲得準確和高一致性的激光雷達點雲,並促進V2X在現實環境中的應用,我們開發瞭高一致性激光雷達仿真庫(Realistic LiDAR Simulation Library),該庫能精確模擬不同激光雷達的物理特性,並可以作為插件安裝在CARLA中。我們的RLS Library包含3種類型的14種流行的激光雷達設備。經對多種主流產品的調研和評測,我們在掌握各型號激光雷達物理特性之後,分別根據機械旋轉式、微振鏡式、轉鏡式等技術路線,為光束掃描探測過程和運動畸變、鬼影效應等激光雷達物理特性分別建模,建立瞭激光雷達仿真模型庫。另外,其API調用方式便捷,基本與CARLA自帶的功能調用方式一致。
除瞭模擬不同激光雷達的線束特性外,我們的RLS Library還可以模擬不同的激光雷達的運動失真、鬼影效應和噪聲與丟棄,這些都或多或少存在於真實的點雲數據中。
在真實的交通場景中,交通參與者和激光雷達在激光雷達收集的每個數據幀的周期內都在不斷移動。當激光雷達與周圍環境的相對位置發生變化時,無論是抖動還是移動,采集到的點雲數據都會出現運動畸變。如果運動速度足夠快,運動畸變就不容忽視。例如A圖中的真實采集的激光雷達點雲,墻壁的點雲由於激光雷達的運動畸變而變厚。
然而在大多數仿真框架中,考慮到仿真性能,默認的做法是激光雷達每一幀的點雲采集隻在一個仿真幀中觸發。此時周圍環境完全靜止,獲取的是“快照”點雲數據,而不是不斷采集點雲數據。而在我們開發的RLS Library中,我們為激光雷達運動畸變仿真功能設置瞭一個開關。開啟運動畸變狀態,將輸出如右圖所示的點雲,車輛的點雲由於激光雷達運動畸變而變厚。
9466c89a7476008f5c2b5a7455566380
激光雷達點雲鬼影效應是指激光雷達光線投射到高反或者高光滑度表面後發生多次反射回波所造成的在一些其他方位也會形成形狀大小類似的成像點雲。我們根據深入研究鬼影的成因,對點雲鬼影特性進行仿真。
我們發現,激光雷達的鬼影效應有相當一部分基於圖B所示的原理造成的。當激光雷達光束照射到具有高光滑度和高反射率的表面時,將觸發鏡面反射。反射的光將重新擊中靠近光澤鏡的其他對象。回波光將沿著發射光路返回到激光雷達接收端。然而,大多數激光雷達無法判斷出射光是否發生瞭鏡面反射,隻會認為該光束在當前光路的直線方向a+b距離處有目標物體,並存儲該部分的點雲數據。在現實世界中,玻璃、水等都很容易引發鬼影效應。為瞭提高仿真與真實世界的一致性,有必要對激光雷達的鬼影效應進行仿真。
圖C所示的是,使用RLS Library采集到的高反墻壁旁自車與他車場景的點雲數據樣例圖。其中,我們將激光雷達所有光束中觸發鬼影的比例設置為50%,即50%擊中光面墻的點生成墻的點雲,其他點生成鬼影點雲。
0093294dc390a78d382f4c4d829f15be
我們知道,受到大氣損失等因素幹擾,激光雷達在不同天氣下的噪聲也不同。另外,因激光雷達的探測模塊存在閾值限制,當接收回波強度(Echo Energy)低於閾值時,盡管該探測點存在回波,也無法被激光雷達探測到,這就造成瞭激光雷達的丟棄現象。
根據評測,我們獲取瞭部分激光雷達在部分天氣下真實點雲損失比例,根據激光雷達探測方程去探究瞭損失比例與大氣因素、波長因素、探測距離、表面反射角度等的影響關系,以映射到不同天氣狀況的對應點雲損失情況;同樣根據評測,我們也獲取瞭激光雷達測距真實標準差,並完成測距噪聲仿真。
所以借助RLS Library,我們可以獲得每個激光雷達位置的真實點雲數據,並在多傳感器部署策略尋優、3D感知模型訓練測試數據集搭建、多傳感器標定算法驗證等方面完成應用。
8fd1cc842003390501f4ea8e3811a28a
利用最新提出的RLS Library,我們能夠模擬由不同類型的激光雷達產生的高一致性的點雲數據。給定特定的路端激光雷達位置(如將激光雷達設置在雙向紅綠燈上),評估其感知性能的一個直接方法是模擬交通場景,評估目標檢測的精度。為瞭公平比較,我們對每個路端激光雷達位置使用相同的訓練和測試交通場景(相同的場景、相同的汽車、相同的軌跡),並使用相同的Multi-agent感知模型進行評估。3D對象檢測的AP越高,表明路端激光雷達放置得越好。
然而,按照上述提出的技術路線進行部署策略優化時,雖然相較於在真實環境中按照調整測試的方式更加合理和可執行,但是模擬數據采集和評估管道的成本仍然較高,包括激光雷達部署、數據收集、模型訓練和性能評估的過程。雖然我們使用相同的交通場景進行實驗,但評估仍然依賴於訓練和測試交通場景,即訓練和測試數據。為瞭加快路端激光雷達放置的評估速度,避免交通場景的影響,我們深入研究瞭感知性能和點雲分佈之間的相關性,設計瞭兩個與交通無關的替代性的評價指標:點雲密度和點雲分佈均勻度。這兩個指標幫助我們快速評估激光雷達的佈局,以選擇更好的佈局方案。
首先,我們對感興趣區域提出瞭虛擬LOB的概念。LOB也就是LiDAR Occupation Board,翻譯過來是激光雷達占用板[33],最初是為瞭評估車輛上的激光雷達而提出的。LOB是放置在車輛激光雷達周圍的幾塊真實的板,用於評估有效激光雷達點數。在這一思想的啟發下,我們創新性的設計瞭一個有助於解決路端激光雷達部署策略優化問題的虛擬LOB,稱為InfraLOB。InfraLOB是根據路口的實際情況,考慮到激光雷達可能的安裝位置和路口的車流量,我們劃定的一個盡可能大的矩形區域。
為瞭量化InfraLOB中的點雲分佈,我們使用點雲密度(InfraD)和點雲歸一化均勻系數(InfraNUC)。InfraD描述瞭InfraLOB內的點雲密度,可以計算為:
其中N是虛擬LOB內的點數,S是虛擬LOB的面積。
而InfraNUC是歸一化均勻度系數(NUC)[34]的變體。NUC是對測試數據集中所有對象上的點集的總體一致性的度量。在我們的問題中,隻有一個目標,即虛擬LOB。首先,根據感興趣區域的大小,計算虛擬LOB的面積。然後,在該區域內,利用激光雷達的語義信息獲取目標路面的標簽,過濾出虛擬LOB中路面對應的點雲數據。然後,我們在虛擬LOB區域中隨機選擇一定數量的大小相同的圓盤。遍歷所有圓盤並計算每個圓盤中的點雲數量及其平均值。然後計算圓盤上點數的標準差,作為歸一化均勻度系數。InfraNUC可計算為:
其中,ni為磁盤區域內的點數,N為InfraLOB區域內的點數,D為磁盤數量,p為磁盤面積與InfraLOB區域的比例。Avg是所有磁盤中點雲數量的平均值。InfraNUC中為歸一化均勻性系數,用於量化InfraLOB區域內點雲分佈均勻性。
在這裡,我們在測試集中展示瞭三個常見的交通場景,作為評估車路協同場景下激光雷達佈局的示例。
我們在實驗中使用瞭真實的自動駕駛模擬器CARLA[14]。由於需要在所有其他環境因素固定的情況下公平評估不同的激光雷達佈局,我們使用CARLA來模擬在相同交通場景下,但具有不同路端激光雷達部署策略的現實場景。我們基於OPV2V[23]數據集的模擬場景,構建瞭訓練和測試數據集。特別地,我們利用OPV2V場景中定義的車輛軌跡,並在CARLA模擬器中使用所提出的RLS Library收集點雲數據。在本次實驗中,我們使用RLS Library中的64通道Hesai Pandar64激光雷達,在CARLA中采集頻率為10Hz的點雲數據。
我們利用Multi-agent感知模型進行評估,包括中間融合、後融合(收集來自智能體的所有檢測輸出並應用非最大抑制來產生最終結果)和前融合(直接聚合來自附近傳感器的原始激光雷達點雲)分別進行瞭實驗。對於中間融合策略,我們使用四種最先進的方法進行評估,包括OPV2V[23],F-Cooper[35],V2VNet[22]和V2X-ViT[8]。所有的模型都使用PointPillar[1]作為backbone。我們使用基準模型來評估在激光雷達不同位置收集的點雲數據,並以mAP作為最終感知性能的評價指標。
然後,我們依據上述的實驗結果,也就是不同部署策略所對應的mAP,繼續進行瞭分析。我們嘗試在不同的路端激光雷達部署策略下,研究感興趣區域的感知精度與點雲分佈之間的關系。為瞭計算不同激光雷達位置的InfraNUC和InfraD,我們去掉場景中的交通流,采集對應虛擬LOB區域內的點雲數據。然後對InfraLOB區域內的點雲數據和對象進行分割,計算每個測試場景下的InfraLOB的InfraD和InfraNUC。
在下圖中,場景A是城市道路的丁字路口。我們在T字結點分別放置一個、兩個和三個激光雷達,以分析激光雷達的數量如何影響感知精度。可以觀察到,更多的激光雷達帶來更高的InfraD,這也導致瞭整體性能的增益。場景B是城市道路的交叉路口。我們首先將2個激光雷達放置在不同的位置,雖然這兩個位置在InfraLOB中有相同數量的激光雷達和類似的InfraD,但在對角線上放置兩個激光雷達具有更好的均勻性,也就是更高的InfraNUC,從而導致更好的性能。我們還增加瞭兩個傳感器,增加瞭InfraD,但對InfraNUC隻有一點點貢獻。最終的實驗結果顯示相對於前一種方案隻能略微提高精度,這表明瞭點雲均勻性的重要性,特別是在點雲密度已經足夠大的情況下。場景C為城市道路的雙向四車道。我們在道路兩側的同一位置放置瞭四個激光雷達,但設置瞭不同的俯仰和偏航角度,以分析旋轉角度如何影響精度。我們觀察到設置適當的旋轉角度可以獲得更好的性能,而過多的向下傾斜會導致點雲分佈不均勻,損害感知性能。通過上述實驗,我們發現InfraD和InfraNUC可以作為感知精度的指標。
並且得出結論,更優的部署策略應該產生具有兼顧高密度和良好均勻性的點雲數據。
我們的貢獻總結如下:
關於後續工作:
我們之前做的更傾向於是車流無關的,默認車流是均勻通過整個感興趣區域(路口等),但這個假設不太符合實際情況。例如高速上下匝道口,顯然車流的分佈是有疏密之分的。考慮通過整個場景點雲Density Map去預測Score Map,進而以Density Map為metrics來優化基於車流信息的車路協同場景激光雷達部署方案。這部分的工作也已經投稿到瞭今年的ICCV23,可以敬請期待。
[1] A. H. Lang, S. Vora, H. Caesar, L. Zhou, J. Yang, and O. Beijbom, "Pointpillars: Fast encoders for object detection from point clouds," in Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, 2019, pp. 12 697–12 705.
[2] M. Simon, S. Milz, K. Amende, and H. M. Gross, "Complexyolo: Real-time 3d object detection on point clouds," arXiv preprint arXiv.1803.06199, 2018.
[3] M. Engelcke, D. Rao, D. Z. Wang, C. H. Tong, and I. Posner, "Vote3deep: Fast object detection in 3d point clouds using efficient convolutional neural networks," in 2017 IEEE International Conference on Robotics and Automation (ICRA), 2017.
[4] W. Ali, S. Abdelkarim, M. Zahran, M. Zidan, and A. E. Sallab, "Yolo3d: End-to-end real-time 3d oriented object bounding box detection from lidar point cloud," in ECCV 2018: "3D Reconstruction meets Semantics" workshop, 2018.
[5] C. R. Qi, H. Su, K. Mo, and L. J. Guibas, "Pointnet: Deep learning on point sets for 3d classification and segmentation," in IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.
建瞭自動駕駛之心傳感器標定融合交流群!想要進交流群的同學,可以直接加微信號:AIDriver001。加的時候備註一下:傳感器標定融合+學校/公司+昵稱,即可。然後就可以拉你進群瞭。
自動駕駛之心 | CVPR2023 | 用於多模態3D目標檢測的虛擬稀疏卷積(KITTI SOTA)
自動駕駛之心 | 面向交通場景的無標定BEV表示(清華&北航)
自動駕駛之心 | 大盤點!自動駕駛中基於Transformer的單目BEV感知
自動駕駛之心 | 又快又好!DFR-FastMOT:基於傳感器融合的多目標跟蹤新思路
自動駕駛之心 | MixVPR:用於視覺場所識別的特征混合
自動駕駛之心 | 60多篇BEV算法你都知道嗎?2023最新環視自動駕駛3D檢測綜述!
自動駕駛之心 | 一文盡覽 | 自動駕駛中光流的應用、挑戰和改進
自動駕駛之心 | Occupancy Network綜述!Grid-Centric的感知方法(BEV/多任務/軌跡預測等)
自動駕駛之心 | 最新!基於Transformer的自動駕駛傳感器融合研究綜述
自動駕駛之心 | ICRA2023 | 通用、自動和無標定目標的Lidar-Camera外參標定工具箱
自動駕駛之心 | 首篇!多模態軌跡預測最新綜述,全面分析領域前沿!