柚子快報激活碼778899分享:LOAM論文閱讀筆記
柚子快報激活碼778899分享:LOAM論文閱讀筆記
核心思想
將建圖與定位兩個部分分開,通過分別實現(xiàn)高頻(10hz)低精的激光里程計和低頻(1hz)高精的建圖,達到低漂移,低復雜度的效果
相關的定義
sweep: 相當于現(xiàn)在激光雷達的一幀
軟件系統(tǒng)框圖
在每個 sweep 中會有多次里程計計算,當激光點云累積到達到 1 sweep 時候就會做一次建圖操作
激光里程計
提取線特征(edge)和面特征(planar)
根據(jù)激光掃描的特性和點云分布的屬性提取特征:
以下為具體步驟:
(1)對每一個點,利用同一線束上的其他點(S)計算局部 smoothness
(2)對同一線束上的點按照 smoothness 進行排序,并根據(jù)閾值分成 edge point 和 planar point
(3)為了保證分布均勻,劃分四個區(qū)域,每個閾值只保留2個 edge point 和4個 planar point
作者為了進一步保證特征分布均勻做出規(guī)定:周圍點沒有被選取為特征,以及為了保證特征的質(zhì)量,對 S 做出了限制:
(1)S 中的所有點不能組成平行于激光束的 local planar,如圖(a)示
(2)S 中的任一點與當前點在激光束方向上不能有太大的 gap,且相比于當前點,更靠近激光雷達(可能存在遮擋),如圖(b)所示
特征匹配
以下為具體步驟:
(1)將上一個 sweep 的所有點云按照估計出來的位姿投影到當前 sweep 的開始處,并構建 3D KD-tree
(2)對當前 sweep 中已有的點云提取線特征和面特征,然后將其投影當前 sweep 的開始處,并在 KD-tree 中尋找最近的點
(3)如圖(a)所示,對于當前 sweep 線特征 i,在最近點 l 的上一條或者下一條線束中尋找另一個最近點 j(由特征提取性質(zhì)可知,同一線束不可能再找到另一個距離近的線特征),同時對這兩個最近點驗證是不是線特征。如圖(b)所示,對于面特征 i ,在最近點 j 的同一線束上尋找第二個最近點 l ,在最近點 j 的上一條或者下一條線束中尋找第三個最近點 m ,同時對這三個最近點驗證是不是面特征
注:在將當前 sweep 中的點云投影到開始處時,利用時間比例和當前的位姿變換對點進行投影(雷達的運動在短時間內(nèi)是勻速的(旋轉角度不變,平移速度不變))
運動估計
利用 L-M 算法最小化如圖所示的兩種距離(點到線,點到面)
算法流程
建圖
每次 sweep 都會執(zhí)行一次。主要是與局部地圖匹配來 refine 當前的位姿(局部地圖是邊長為 10 m 的立方體,并以 5 cm 大小的體素網(wǎng)格進行濾波)
以下為具體步驟:
(1)利用局部地圖中的點云構建 3D KD-tree
(2)對當前 sweep 中的每一個特征,在 KD-tree 中尋找一定范圍的點來構建集合 S’
(3)對于線特征,只保留 S’ 中的線特征,并利用 PCA 求解 S’ 的直線方向;對于面特征,只保留 S’ 中的面特征,并利用 PCA 求解 S’ 的法線方向。同時通過 S’ 的幾何中心可以確定直線或者面的位置
(3)對于線特征,在直線上選取兩個點構造相應的點到線距離;對于面特征,在面上選取三個點構造相應的點到面距離
(4)利用 L-M 算法來求解位姿
注:建圖中的特征提取與里程計中的一樣,只不過會使用更多的特征(10倍)
ALOAM代碼
Advanced implementation of LOAM,秦通實現(xiàn),是原版LOAM的改進(原版已經(jīng)閉源),主要是使用Eigen和Ceres對代碼進行重構,原版LOAM有大量的歐拉角計算,很難懂
柚子快報激活碼778899分享:LOAM論文閱讀筆記
參考文章
本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉載請注明,如有侵權,聯(lián)系刪除。