Karto_slam/cartographer/ROS試跑鐳射雷達資料集
老規矩,先簡單列下已經安裝的配置
- Ubuntu 16.04
- ROS Kinetic
- Opencv 3.4.1
- Ceres-solver
- *Eigen3
- *G2O
*Python 2.7.12
當然上述其中很多有許多依賴項,例如安裝Ceres-solver,g2o等.都有不少的依賴項,在這就不列出來了.
之前有轉載介紹了一篇ORBSLAM2的配置和執行TUM測試資料集的部落格.由於我的任務要求,需要再跑一下鐳射SLAM的資料集.這裡簡單介紹下配置過程.
1. SLAM_karto
首先給了我這個讓我用,但我發現,這個在跑給我的資料集的時候似乎沒有用到,但還是先git clone下來了.
首先, 在昨天的目錄中繼續進行的,你需要一個在/home/yourusername/
catkin_ws/src
目錄, 之後
~$ cd src
~$ git clone https://github.com/ros-perception/slam_karto
克隆下來後再試不管了,你肯能注意到這是indigo
版本的,但親測在kinetic
下沒出現問題.
往下是參考博文這裡
2 .Ceser-solver
需要說明的是我已經安裝了Ceser
,所以不再安裝.但需要說明的的,不要把Cerser-solver
放到catkin_ws/src
下,否則一會兒catkin_make
時極大概率報如下錯誤:
額,錯誤資訊不見了,大概就是Ceres-solver doesn't have catkin_make file you should use catkin_make_isolated
3. Cartographer
同上,不要在catkin_ws/src
下.
1.git clone https://github.com/hitcm/cartographer.git
2.cd cartographer/build
3.cmake .. -G Ninja
4.ninja
5.ninja test
6.sudo ninja install
如果幸運的化會成功,因為這個cartographer
的CMakeLists.txt
被轉載的博主改過,不容易出錯,出錯參照這裡第2步.
4. Cartographer-ros
這個需要在catkin_ws/src
下進行.
git clone https://github.com/hitcm/cartographer_ros.git
弄玩之後,在catkin_ws
下
catkin_make
如果你幸運的話應該會成功.
5. 雷達資料集
- 2d資料,大概500M
- 3d資料,8G左右,用迅雷下載吧
https://storage.googleapis.com/cartographer-public-data/bags/backpack_3d/cartographer_3d_deutsches_museum.bag
參考結束
6. 資料集結果
執行下面指令
roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=YOUR_PATH_TO/cartographer_paper_deutsches_museum.bag
7. 關於SLAM_Karto
—2018.7.27修改
slam_karto 與 cartographer是兩個不同的演算法,對資料集的要求也不同,效果也各有好壞.本次只是記錄了跑cartographer的結果,後續會介紹使用slam_kart的過程.
執行roslaunch slam_karto karto_slam.launch
後繼續執行rqt_graph
檢視節點間的關係,如下圖所示:
可以看到,cartographer_node
與slam_karto
之間只有/tf Topic
聯絡,而且不啟動slam_karto
節點時,cartographer_node
完全正常執行,
鐳射雷達2D資料集基本上就可以跑成功了,至於3D資料集,Emmm…..,8G….下載完我的寬頻又得充錢了…..就當跑過且成功了吧.
溜啦溜啦.