SLAM大牛Cyrill 开源SuMa ++:基于语义激光雷达过滤动态物体提高定位精度
背景
語義信息在智能導航中也起著重要的作用。在現實環境中,由于存在動態目標,傳統的基于環境幾何的方法很難實現可靠、準確的定位和制圖。這些傳統的幾何方法由于動態物體的存在和結構的變形,往往會產生位置偏移。
本文提出了一種新的基于語義信息的激光雷達SLAM系統,較好地解決了實際環境中的定位和映射問題。該系統通過對激光雷達點云進行語義分割,獲得點云級密集語義信息,并將語義信息集成到激光雷達SLAM中,提高了激光雷達的定位和測繪精度。通過基于深度學習的卷積神經網絡,我們的方法可以非常有效地對激光雷達“距離像”進行語義分割,并在語義上標記整個激光雷達點云。通過結合幾何深度信息,進一步提高了語義分割的精度。基于帶有語義標記的lidar點云,我們的方法能夠構建一個具有語義信息和全局一致性的稠密surfel語義圖。基于語義映射,該算法能夠可靠地濾除動態目標,并通過語義約束進一步提高投影匹配ICP的姿態估計精度。我們使用KITTI數據集中的道路數據集和里程計來測試我們提出的語義SLAM系統。這個數據集(特別是基蒂高速公路數據集)包含了大量正在行駛的汽車。實驗結果表明,本文提出的語義SLAM方法在實際動態環境中具有較高的定位精度和魯棒性。我們的lidar語義SLAM系統是開源的。
相關工作
SLAM是機器人技術中的經典話題,很多文章涵蓋了大量的相關學科知識。
在這里,我們主要專注于基于學習方法和動態場景的語義SLAM的相關知識。在深度學習和卷積神經網絡(CNN)進行場景理解的推動下,有很多語義SLAM技術利用相機來利用這些信息,攝像機+ IMU數據,立體聲攝像機或RGB-D傳感器。
這些方法大多數僅在室內應用,并且使用對象檢測器或攝像機圖像的語義分割。相比之下,我們僅使用激光測距數據并利用語義分割中的信息對LiDAR掃描產生的深度圖像進行操作。還有大量文獻致力于定位和映射變化的環境,例如通過過濾運動對象,考慮殘差等匹配,或利用序列信息。
為了實現室外大規模語義SLAM,還可以將3D LiDAR傳感器與RGB相機結合使用。關聯2D圖像和3D點以改進用于檢測運動對象的分割。Wang和Kim使用來自KITTI數據集的圖像和3D點云來聯合估計道路布局,并通過事先應用相對位置來語義上分割城市場景。Jeong等。還提出了一種基于多模態傳感器的語義3D映射系統,以在大規模環境以及功能很少的環境中改善基于聯合交叉(IoU)度量的分割結果。
Liang等人提出了一種新穎的3D對象檢測器,它可以利用LiDAR和相機數據來執行精確的對象定位。所有這些方法都集中在結合3D LiDAR和攝像頭以改善對象檢測,語義分割或3D重建上。
通過將基于圖像的語義信息直接合并到兩點云之間的相對轉換的估計中,實現云注冊算法。實現了結合圖像的LiDAR和僅基于LiDAR的語義3D點云配準。兩種方法都使用語義信息來改善姿勢估計,但是由于處理時間長,因此無法用于在線操作。
與本文提出的方法最相似的方法,他們僅使用單個LiDAR傳感器即可實現語義SLAM。Sun等。提出了一種語義映射方法,該方法被表述為序列到序列的編碼-解碼問題。Dube′等。提出一種稱為SegMap的方法,該方法基于從點云中提取的片段,并為其分配語義標簽。它們的主要目的是為語義類型非常有限的全局檢索和多機器人協作SLAM提取有意義的功能。與它們相反,我們專注于生成具有大量語義類的語義圖,并使用這些語義來過濾由動態物體(例如移動的車輛和人類)引起的異常值,以提高映射和里程表的準確性。
作者的方法
我們的語義SLAM方法的基礎是基于Surfel的映射(SuMa)管道,通過使用FCN RangeNet ++ 集成由語義分段提供的語義信息來進行擴展,如圖所示。
RangeNet ++使用點云的球面投影提供了不錯的標簽。然后,此信息將用于過濾動態對象并向掃描配準添加語義約束,從而提高SuMa進行姿勢估計的魯棒性和準確性。
- A.坐標系的表示方法
我們用TBA∈R 4×4表示坐標系A中的點pA到坐標系B中的點pB的變換,使得pB = TBApA。令RBA∈SO(3)和tBA∈R 3表示變換TBA的相應旋轉和平移部分。我們將時間步t處的坐標系稱為Ct。坐標系Ct中的每個變量都通過姿態TW Ct∈R 4×4與世界坐標系W相關聯,從而將觀察到的點云轉換為世界坐標系。
- B.基于Surfel的映射
SuMa首先在時間步t生成點云P的球面投影,即所謂的頂點圖VD,然后將其用于生成相應的法線圖ND。有了這些信息,SuMa在時間步t -1通過渲染的ICP在渲染的地圖視圖VM和NM中確定姿態更新TCt-1Ct,從而確定TW Ct,方法是鏈接所有姿態增量。該地圖由surfels表示,其中每個surfel都由位置vs∈R 3,法線ns∈R 3和半徑rs∈R定義。
每個surfel還帶有兩個時間戳:創建時間戳tc和的時間戳tu。通過度量的最新更新。此外,使用二進制貝葉斯濾波器[32]來維持穩定性對數比值比ls,以確定沖浪是否被視為穩定或不穩定。SuMa還執行環路閉合檢測以及隨后的姿勢圖優化,以獲得全局一致的貼圖。
- C.語義分割對于每一幀
我們使用RangeNet ++ 預測每個點的語義標簽并生成語義圖SD。
RangeNet ++在語義上分割了由每次激光掃描的球形投影生成的距離圖像。簡而言之,該網絡基于Wu等人提出的SqueezeSeg體系結構。并使用Redmon等人提出的DarkNet。通過使用更多參數來改善結果,同時保持方法的實時能力。有關語義分割方法的更多詳細信息,
請參閱Milioto等人的論文。傳感器視場中逐點標簽的可用性還可以將語義信息集成到地圖中。為此,我們為每個瀏覽添加推斷的語義標簽y和來自語義分割的該標簽的相應概率。
- D.完善的語義圖由于投射輸入
作為RangeNet ++網絡內降采樣的副產品而產生的類斑點輸出,當標簽重新投影時,我們必須處理語義標簽的錯誤到地圖。為了減少這些錯誤,我們使用泛洪算法,總結如下
可視化所提出的洪水算法的處理步驟:
(a)原始語義圖Sraw,我們首先使用腐蝕來去除邊界標簽和錯誤標簽的小區域
(b)侵蝕的面具Seroded raw。
(c)我們最終用相鄰標簽填充滲透標簽,以獲得更一致的結果SD。黑點表示帶有標簽0的空像素。
(d)顯示深度
(e)帶有虛線邊框的區域內的細節
動態過濾效果:對于所有數字,我們顯示相應標簽的顏色,但請注意SuMa不使用語義信息。(a)由Suma (b)作者的方法;(c)移除所有可能移動的物體。
結果
(a)由于汽車在傳感器附近的一致運動,沒有語義的SuMa無法正確估計傳感器的運動。框架到模型的ICP鎖定到不斷移動的汽車,從而導致地圖不一致(以矩形突出顯示)。
(b)通過合并語義,我們能夠正確估計傳感器的運動,從而通過ICP獲得更一致的環境圖和更好的傳感器姿勢估計。3D點的顏色是指第一次記錄該點時的時間戳。
(c)相應的前視攝像頭圖像,其中突出顯示了交通標志。
(d)每個時間步對應的相對平移誤差圖。點是每個時間戳中計算出的相對平移誤差,曲線是這些點的多項式擬合結果
下表顯示了相對平移和相對旋轉誤差:
結論
作者提出了一種新穎的方法來構建語義圖,該方法由不需要任何相機數據的基于激光的點云語義分割實現。利用這些信息可提高在模棱兩可和充滿挑戰的情況下的姿態估計精度。特別是利用掃描和地圖之間的語義一致性來過濾出動態對象,并在ICP過程中提供更高級別的約束。這使基于三維激光距離掃描成功地組合語義和幾何信息,從而獲得比純幾何方法更好的姿態估計精度。
作者在KITTI Vision Benchmark數據集上評估了該方法,顯示了與純幾何方法相比,該方法的優勢。盡管取得了這些令人鼓舞的結果,但是語義映射的未來研究仍然有幾種途徑。在未來的工作中,我們計劃研究語義在環路閉合檢測中的用法以及對更細粒度的語義信息(如車道結構或道路類型)的估計。
相關論文數據集下載地址:關注“圖像算法”微信公眾號 回復“suma”
總結
以上是生活随笔為你收集整理的SLAM大牛Cyrill 开源SuMa ++:基于语义激光雷达过滤动态物体提高定位精度的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab hsv颜色分割,车牌定位m
- 下一篇: 编写一个能将给定非负整数列表中的数字排列