首先介紹答主平臺:Ubuntu 16.04 + Kinetic的ROS平臺
大部分內容跟ROS官網步驟一樣,我主要介紹在運行官網時遇到的一些問題以及解決辦法
爲了構建Cartographer ROS,我們建議使用wstool和rosdep。爲了加快構建速度,我們還建議使用 Ninja。
sudo apt-get update
sudo apt-get install -y python-wstool python-rosdep ninja-build
此處容易出現的問題是更新時找不到某個鏈接,原因是修改sources.list中下載獲取的鏡像鏈接,這個自行搜索怎麼修改,修改後再執行以下更新操作,如果提示沒有Error,更新完成,就可以執行下一行命令了,否則,你不能安裝成功。
在“ catkin_ws”中創建一個新的cartographer_ros工作空間。
mkdir catkin_ws
cd catkin_ws
wstool init src
wstool merge -t src https://raw.githubusercontent.com/googlecartographer/cartographer_ros/master/cartographer_ros.rosinstall
wstool update -t src
這裏第四行下載catgrapher算法時容易出現超時現象,建議重新查看一下sources.lists是否爲國內最新鏡像網址,否則請更新,另外建議在網速好的情況下進行下載。
安裝cartographer_ros的依賴項(proto3和deb軟件包)。如果自安裝ROS以來已經執行過命令,則命令’sudo rosdep init’將顯示錯誤。該錯誤可以忽略。
src/cartographer/scripts/install_proto3.sh
sudo rosdep init
rosdep update
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
這部分內容只要按照要求來執行,應該不會出錯。
生成並安裝。
catkin_make_isolated --install --use-ninja
此處安裝需要較多時間,建議耐心等待。此處執行成功,你已成功過半
現在已經安裝了Cartographer和Cartographer的ROS集成,在這種情況下,您可以將示例包進行運行出來;
首先
cd ~/Downloads
然後執行下載操作 (1)
wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag
此處執行完成後
cd ..
到用戶主頁,然後進入catkin_ws空間
cd catkin_ws
然後執行
roscore
啓動ROS平臺,這一步,非常重要,否則執行命令容易不成功
然後再打開一個終端,刷新環境,依次執行命令
cd catkin_ws
source install_isolated/setup.bash
刷新過後,然後再執行下面命令 (2)
roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag
這是二維離線數據跑出的圖
如果你想下載跑出3D數據集對應的圖,請將(1)的操作步驟的命令分別修改爲
wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_3d/with_intensities/b3-2016-04-05-14-14-00.bag
將(2)的操作命令修改爲
roslaunch cartographer_ros demo_backpack_3d.launch bag_filename:=${HOME}/Downloads/b3-2016-04-05-14-14-00.bag
上面的其它步驟都完全相同,你會發現執行成功了。
這是我跑catgrapher算法時,安裝官方文檔跑時,由於一些細節沒有解釋太清楚,所以中間當誤了好長時間,這裏總結一下,分享給大家,也希望大家少走彎路,如有問題,還請告知,謝謝