cartographer是google开发的实时室内SLAM项目,其采用基于google自家开发的ceres非线性优化的方法,cartographer的亮点在于代码规范与工程化,非常适合于商业应用和再开发。并且cartographer基于submap子图构建全局地图的思想,能有效的避免建图过程中环境中移动物体的干扰。并且cartographer支持多传感器数据(odometry、IMU、LaserScan等)建图,支持2D_SLAM和3D_SLAM建图。
环境:Ubunt18 VMware虚拟机, ros-melodic
一、安装cartographer及相关环境
cartographer安装教程(超详细,保姆级教程)_顽强的小蜗牛的博客-CSDN博客
etc
二、安装turtlebot3环境
cd ~/catkin_ws/src
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
三、编译
catkin_make_isolated --install --use-ninja
source install_isolated/setup.bash
四、启动地图节点
source devel_isolated/setup.bash
export TURTLEBOT3_MODEL=waffle_pi
roslaunch turtlebot3_gazebo turtlebot3_house.launch
五、启动rviz及cartographer节点
source devel_isolated/setup.bash
export TURTLEBOT3_MODEL=waffle_pi
roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer configuration_basename:=turtlebot3_lds_2d_gazebo.lua
六、启动自主建图节点
source devel_isolated/setup.bash
export TURTLEBOT3_MODEL=waffle_pi
roslaunch turtlebot3_gazebo turtlebot3_simulation.launch
参考代码链接:【免费】cartographer自主建图资源-CSDN文库
编译:catkin_make_isolated --install --use-ninja -j3