参照cartographer官方安装流程:http://google-cartographer-ros.readthedocs.io/en/latest/index.html 。流程会依次安装proto3、ceres-solver、cartographer和cartographer_ros。安装过程需要根据实际情况(针对无法翻墙的环境)做少许修改,流程如下:
一、安装wstool,rosdep,ninja等
1、sudo apt-get update
2、sudo apt-get install -y python-wstool python-rosdep ninja-build
二、创建cartographer的工作空间
3、mkdir catkin_ws
4、cd catkin_ws
5、wstool init src
三、下载ceres-solver、cartographer、cartographer_ros工程代码。在此需要注意的一点是需要把ceres-solver的下载地址由google修改为github。
6、到GitHub上的cartographer_ros目录下下载cartographer_ros.rosinstall文件。
https://github.com/googlecartographer/cartographer_ros
7、修改文件内容:
- git: {local-name: ceres-solver, uri:'https://ceres-solver.googlesource.com/ceres-solver.git', version: '1.13.0'}
修改为:
- git: {local-name: ceres-solver, uri:'https://github.com/ceres-solver/ceres-solver.git', version: '1.13.0'}
8、wstool merge -t src cartographer_ros.rosinstall
9、wstool update -t src
四、安装proto3.
10、src/cartographer/scripts/install_proto3.sh
该脚本实际上是进行下载protobuf,编译,安装。
五、安装deb依赖
11、sudo rosdep init
如果在安装ros已经进行过初始化,可以备份后删除/etc/ros/rosdep/sources.list.d/20-default.list再执行初始化
12、rosdep update
13、rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
六、编译
14、catkin_make_isolated --install --use-ninja
编译速度取决于处理器能力,一般来说编译时间十分漫长
15、source install_isolated/setup.bash
七、测试
1、下载任意数据包
http://google-cartographer-ros.readthedocs.io/en/latest/data.html
2、roslaunch cartographer_rosdemo_backpack_2d.launch bag_filename:=数据包路径
3、如能正常建图,则cartographer安装成功。
至此,cartographer安装完毕,下一步需要结合自身设备及环境进行参数配置,详情请关注cartographer在github上的项目。