经典文献阅读之--SuMa++
0. 簡介
作為一名技術博主,最主要的還是需要不斷地學習新的知識,而最好的學習就是不斷地閱讀新的文章,并不斷地學習和總結前人的思路和方法。所以博主打算開一個新的系列來介紹。這里主要來介紹一下《SuMa++: Efficient LiDAR-based Semantic SLAM》這篇論文。論文原文鏈接為:https://www.ipb.uni-bonn.de/wp-content/papercite-data/pdf/chen2019iros.pdf。下面的主要框架為任乾?博士博客的內容,加入了作者個人的學習和理解。
SUMA++
1. 文章貢獻
可靠的高精度定位和建圖是自動駕駛系統的關鍵環節。除了高精度的幾何信息以外,地圖中還應該包含語義信息,以為載體的智能行為提供依據。但在實際環境中,移動物體的存在會使建圖過程變得更加復雜,因為它會污染地圖并影響定位效果。在這篇文章里,我們在傳統基于曲面建圖(surfelbased mapping)方法的基礎上,增加語義信息的融合以解決上面提到的問題。語義信息的提取是通過神經網絡完成的,該網絡對點云中所有的點都給予類別標簽,從而讓我們在使用曲面建圖時,得到的是帶有標簽的曲面。通過這種方法,不僅可以濾除動態物體,而且可以使用語義信息對里程估計進行約束,以提到地圖精度。
文中作者提到主要的兩個貢獻點在于
對點云進行語義分割,根據語義信息識別動態物體,并在地圖中去除。
把帶有語義標簽的物體進行數據關聯,和幾何信息一起建立約束關系,從而提高建圖精度。
2. 整體思路
下圖為SuMa++整體的網絡結構,可以看到主要的流程分為以下四個部分
通過網絡對點云進行語義分割
使用漫水填充(flood-fill)方法消除錯誤的類別標簽
使用濾波器進行動態物體檢測,并移除動態物體
建立帶語義信息約束的ICP模型,優化里程精度
此外SuMa++離不開Surfel地圖,Surfel地圖中存在一些預定義的概念:
- 深度地圖(VDV_DVD?):t時刻點云P的球形投影,得到深度圖像(極坐標距離限制的點云原始數據).
- 法向量地圖 (NDN_DND?): 根據上面的VDV_DVD?得到的球面投影的法向量投影,類似于圖片的雷達極坐標系投影。
- 地圖視角 (VMV_MVM?&&NMN_MNM?):將上面兩步投影到地圖上。(特征ICP更新位姿增量,累計位姿增量得到當前位姿)
- 面元被:地圖使用面元被表示,由一個位置,一個法向量和一個半徑,兩個時間戳(創建時間和最后一次更新時間)
- 穩定對數幾率lsl_sls?:被維護使用一個二值貝葉斯濾波器來確定是否一個面元被考慮為穩定或者不穩定。
- 語義地圖(SDS_DSD?):RangeNet++語義分割每針的球形投影生成的范圍圖片,傳感器視角下逐點編號。(語義分割)
2.1 點云語義分割
語義分割使用的是RangeNet++方法,它的主要內容在另一篇論文里,該論文并沒有對這個方法進行太多的改進。RangeNet++以Darknet53 Backbone作為基礎改進為RangeNet53,從而實現深度圖像的分割,并重映射到點云上。詳細內容可以參考這篇文章。
2.2 漫水填充
漫水填充作為圖像處理中常用的方法,在這里用于對錯誤分類進行修正,避免里面的分類錯誤對后續環節產生不好的影響,下圖中左側是右側圖中虛線框方法的部分,先對(a)中的錯誤識別結果進行剔除,得到(b),然后利用周圍的標簽點云對他進行填充,得到?。最后(d)中顯示的是?對應的深度圖。
下面是漫水填充的偽代碼,在預處理內部,通過原始的語義掩碼SrawS_{raw}Sraw?,和對應的定點地圖VDV_DVD?,(在SrawS_{raw}Sraw?中每個像素的值是一個語義編號,在定點地圖中對應的像素包含最近3D點在雷達坐標系中的3d坐標。)首先移除在范圍d內的鄰居中存在至少一個不同語義編號的像素,組合該掩碼和定點深度信息,設置空白邊界像素為鄰居帶有標號的像素,如果對應點的距離是一致的,即小于某個閾值,即填充。
2.3 濾波濾除移動物體
動態物體的識別是根據物體在同一位置出現的概率實現的。具體來講,就是說如果在這一幀中,某個位置出現了物體SDS_DSD?,此時會同時將當前幀點云的位置SDS_DSD?映射到地圖中的位置SMS_MSM?中,如果在下一幀中,物體物體SD1S_{D_1}SD1??還在地圖的SMS_MSM?處,且連續很多幀它都出現在同一個位置SMS_MSM?,那么它就是靜止的,反之,在每一幀中檢測到的位置都發生變化,那么它就是移動的。
在這里涉及到一個穩重比較重要的概念,也就是Surfel地圖,Surfel地圖創新的使用地圖中的點形成的面元為對象,以地圖一致性作為指標進行優化。文中提出使用語義分割提供的label來處理運動物體,即通過比較新觀測位置SDS_DSD?和地圖中已經存在的SMS_MSM?的語義一致性,在我們更新地圖時,如果label是不一致的,我們假設那些面元屬于移動物體。這時我們增加一個懲罰項oddsoddsodds到穩定性對數幾率lsl_sls?中。在一些觀測后,我們可以移除不穩定的面元。下面是懲罰函數,其中odds(p)=log?(p(1?p)?1)odds(p)= \log (p (1-p)^ {-1} )odds(p)=log(p(1?p)?1),而pstablep_{stable}pstable?和ppriorp_{prior}pprior?是穩定面元的分別給出了相容的測量值和先驗概率。expexpexp當中是補償噪聲量,aaa是面元法向量nsn_sns?和測量法向量的的夾角,ddd是測量法向量相對于面元的距離。測量法向量取自于NDN_DND?法向量地圖。
…詳情請參照古月居
總結
以上是生活随笔為你收集整理的经典文献阅读之--SuMa++的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MyEclipse 8.5 开发环境配置
- 下一篇: golang简易版聊天室