SuMa论文阅读
Efficient Surfel-Based SLAM using 3D Laser Range Data in Urban Environments
- 摘要和引言
- 摘要
- 方法
- 結果
- 結論
- 引言
- 關鍵工作
- 特點
- 結果和討論
- 方法和實驗
- 方法
- 七步
- 六部分
- A.Preprocessing
- B.Map Representation
- C.Odometry Estimation
- D.Map Update
- E.Loop Closures
- Detection
- Verification
- Pose graph optimization
- F.Implementation Details
- 實驗
- 如有錯誤,煩請斧正,不勝感激!
摘要和引言
摘要
方法
提出了一種新的、稠密的激光建圖方法,在由旋轉激光傳感器獲得的3d點云上進行操作。
結果
- 構建了基于surfel的地圖(基于surfel的地圖第一次被用在激光SLAM中)
- 估計機器人位姿變換情況(通過利用在當前掃描和該surfel地圖的渲染模型視圖之間的投影數據關系)
- 對于回環的檢測和確認,在潛在的回環之前在地圖上組成了一個虛擬的視圖(利用地圖表示)(即使是掃描與已建圖區域重疊很小的情況下,也有了較為魯棒的檢測)
- 可進行實時配準,檢測回環并以在線的方式進行地圖更新
結論
實驗表明,只基于點云就可以建立大尺度下(戶外)的全局一致性地圖。
引言
較室內環境的挑戰
- 傳感器移動較快,導致掃描間位移較大
- 相對稀疏的點云
- 大尺度環境
提出SuMa
- 建立了全局一致性的地圖(通過追蹤位姿、所謂的里程計、使用位姿圖的回環)
- 使用surfel地圖高效地生成投影數據關聯和額外的回環檢測(隨后驗證回環)的合成視圖
- 用surfel可以高效地表示大場景
- 可在回環檢測上更新地圖(利用整合里程計和回環限制條件的圖優化)
關鍵工作
- 提出了一種SLAM系統,該系統可以用三維激光測距數據進行高效建圖,從而獲得全局一致的地圖
- 提出了一種新的基于地圖的回環檢測標準,即使在掃描之間重疊很小的情況下也能夠檢測到回環
特點
首個基于3D激光的建圖方法(使用surfel進行帶回環的建圖),產生全局一致的地圖
結果和討論
結果
- 提出了一種基于激光的里程計和建圖的稠密方法,該方法可以在線執行所有的計算并生成全局一致的地圖
- 利用一種基于surfel的地圖表示法,在每次迭代時將當前掃描與surfel地圖的投影數據關聯
- 實驗評估表明,這將產生準確的配準結果以及與最新技術相當的全局一致地圖
下一步
- 融合色彩信息,以改進在投影數據關聯時的對應項的選擇
- 融合全局回環搜索,若里程計估計值漂移很大,也可以找到回環
- 對動態對象的檢測和跟蹤(例如Moosmann和Stiller的方法)有可能提高配準結果的魯棒性和質量,因為它可以可靠地刪除動態對象
方法和實驗
方法
七步
六部分
A.Preprocessing
數據預處理。
輸入是三維點云數據,輸出是VD((u,v))V_D((u,v))VD?((u,v)),ND((u,v))N_D((u,v))ND?((u,v))兩個映射關系。
投影,將三維映射為二維:
VD((u,v))V_D((u,v))VD?((u,v))將二維坐標(u,v)(u,v)(u,v)映射為三維點。
ND((u,v))N_D((u,v))ND?((u,v))將二維坐標(u,v)(u,v)(u,v)映射為三維法向量。
B.Map Representation
地圖表示。
surfel組成
- 一個三維位置向量vsv_svs?
- 一個三維法向量nsn_sns?
- 一個常數半徑rsr_srs?
- 兩個時間戳(創建時的時間戳tct_ctc?,上次更新的時間戳tut_utu?)
地圖MMM組成
- 許多surfel組成的無序集合,分為
- MactiveM_{active}Mactive?–由最近更新的surfel組成(用于里程計估計位姿)
- MinactiveM_{inactive}Minactive?–由非最近創建的surfel組成(進行回環搜索)
??surfel與位姿通過tct_ctc?聯系起來,vsv_svs?和nsn_sns?是局部坐標系CtcC_{t_c}Ctc??中的,對于相應位姿TWCtcT_{WC_{t_c}}TWCtc???的簡單改動即可實現對surfel地圖的改動。
C.Odometry Estimation
里程計估計兩幀間(當前時刻ttt到上一時刻t?1t-1t?1)的相對位姿
用所謂的frame-to-model ICP進行位姿估計。
所謂的model概念及位姿關系
即
- data–于時刻ttt在坐標系CtC_tCt?中的觀測數據
- model–在給定坐標系CkC_kCk?處的地圖對應的渲染
ICP
-
誤差項EodomE_{odom}Eodom?
-
初始值為T(t?2)(t?1)T_{{(t-2)}{(t-1)}}T(t?2)(t?1)?(t-1時刻到t-2時刻的位姿)
-
迭代方法–高斯牛頓
-
核函數–huber核
D.Map Update
地圖更新。
data surfel和model surfel。
data surfel
- 通過A.Preprocessing可由點算得data surfel s(包含vs,ns,rs)s(包含v_s,n_s,r_s)s(包含vs?,ns?,rs?) 中的vs,nsv_s,n_svs?,ns?
- rsr_srs?的計算如下
過程
則data surfel sss與model surfel s′s's′兼容,
否則data surfel sss與model surfel s′s's′不兼容。
??IMI_MIM?是索引映射,包含相對于傳感器原點和最終位姿TWCtT_{W{C_t}}TWCt??最近的surfels的索引。
data surfel sss與model surfel s′s's′兼容
- 提升model surfel s′s's′的穩定性
- 若測量值更準確,即rsr_srs? < rs′r_s'rs′?,則用測量值更新model surfel s′s's′
data surfel sss與model surfel s′s's′不兼容
- 降低model surfel s′s's′的穩定性和初始化一個新surfel
- 若測量值無法分配給任意已存在的surfel,則初始化一個新surfel
E.Loop Closures
回環檢測(過程類似于里程計,主要是點云配準)。
Detection
在不活躍的地圖MinactiveM_{inactive}Minactive?里找
對于j*,用frame-to-model ICP將對應位姿TWCj?T_{W{C_j*}}TWCj???處的渲染視圖與當前點云對齊
虛擬視圖
為了解決掃描間重疊率低的情況,我們使用里程計估計和上述候選方法的轉換,在潛在的回環之后繪制了地圖的虛擬視圖。
- 虛擬視圖由MinactiveM_{inactive}Minactive?中渲染模型視圖組成
- 誤差項(EmapE_{map}Emap?)
如果EodomE_{odom}Eodom?的殘差和EmapE_{map}Emap?的殘差相對較小,則說明對齊方式是一致的;
當EmapE_{map}Emap?的殘差最小時,可以區分有效和無效的候選回環。
??對于重疊率低的情況,不能只簡單地評估當前測量值相對于渲染的不活躍的地圖MinactiveM_{inactive}Minactive?的殘差
Verification
即使我們嘗試通過渲染虛擬地圖來排除無效的回環,該標準仍可能導致無效的回環,因此我們需要驗證回環(通過追蹤active map和inactive map中的位置)。
如何驗證回環?
怎樣才算驗證通過?
Pose graph optimization
- 當回環驗證通過后,就把回環約束加入位姿圖中
- 在獨立線程中進行實際位姿圖優化
- 位姿圖優化完成后,將優化的位姿整合到地圖中,并相應地更新當前位姿估計
F.Implementation Details
使用OpenGL 4.0實現。
位姿圖優化迭代方法用的LM。
實驗
如有錯誤,煩請斧正,不勝感激!
總結
- 上一篇: 面试注意事项与技巧
- 下一篇: ubuntu下开启端口