cartographer演算法簡析

2021-08-20 08:40:20 字數 794 閱讀 5452

1》 魯棒性好,尤其在沒有imu的輔助下,應對旋轉速度高的突然轉向,沒有出現建圖錯誤。由於採用了回環檢測,可以消除積累誤差, 建圖效果比較穩定。

3》介面封裝得很簡潔, 給人的感覺是一款穩定,可靠,易用的軟體包。

主要**:

1.1 real-time loop closure in 2d lidar slam , icra 2016

1.3  real-time correlative scan matching (bbs)

1》real-time loop closure in 2d lidar slam

文章的重點是第四部分和第五部分

第四部分:local 2d slam, 主要是將 區域性地圖的 scan matching作為乙個二次型優化問題,   由ceres slover 解決        

第五部分: closing loop, 採用了 spa(sparse pose adjustment)進行後端loop closure。 這個過程中有乙個很重要的過程是的scan和 submap的匹配,這裡採用了bbs(branch-and-bound scan matching), 它可大幅提高精度和速度。

cartographer的整體架構是典型的 前端建圖 (區域性地圖)+後端優化。 整個效能相比傳統的 state-of-the-art的演算法沒有什麼太大的提高, 而是更像乙個實用性的產品,很好的平衡了效能和速度。

2》spa(sparse pose adjustment)的細節參考** 1.2

3》bbs(branch-and-bound scan matching)的細節參考** 1.3

cartographer 安裝編譯

ubuntu16.04 環境依賴 sudo apt get install y clang g git google mock libboost all dev libcairo2 dev libcurl4 openssl dev libeigen3 dev libgflags dev libgoo...

cartographer執行步驟

先驅動雷達 roslaunch rslidar pointcloud rs lidar 16.launch 再執行pointcloud to laserscan節點將三維資料轉化成二維 roslaunch pointcloud to laserscan point to scan.launch 最後...

cartographer 安裝問題

這裡只說安裝過程中遇到的問題,ceres solver 與 eigen3 版本不相容問題,我是17年10月進行的測試,現在的eigen3 已經更新了,已經不是16年的 eigen3。cd ceres solver 1.13.0 mkdir build cd build cmake make j4 s...