SLAM-学习笔记(III):安装运行 SLAM 激光算法

SLAM-学习笔记(III):安装运行 SLAM 激光算法

Hector Mapping

  1. 软件包直接安装
    sudo apt install -y ros-noetic-hector-mapping
    
  2. 下载源码编译(推荐)
    cd ~/catkin_ws/src
    git clone https://github.com/tu-darmstadt-ros-pkg/hector_slam.git
    cd ~/catkin_ws
    catkin_make
    
  3. 运行 Bag 仿真
    roslaunch hector_slam_launch tutorial.launch
    rosbag play Team_Hector_MappingBox_RoboCup_2011_Rescue_Arena.bag  --clock
    
  4. 故障排除
    如果你从源码构建hector_slam,但在 Team_Hector_MappingBox_RoboCup_2011_Rescue_Arena.bag 上发现你的 hector 映射与作者的映射不同。检查您是否在 Release 版本中构建了 hector_slam 以获得完整的性能:
    catkin_make -DCMAKE_BUILD_TYPE=Release
    
    hector_slam的参数在映射结果中也起着作用。例如,检查 hector_mapping/mapping_default.launch 中的 map_update_angle_thresh:
    <param name="map_update_angle_thresh" value="0.9" />

G Mapping

  1. 软件包直接安装
    sudo apt install -y ros-noetic-openslam-gmapping ros-noetic-gmapping
    
  2. 下载源码编译(推荐)
    sudo apt remove ros-noetic-openslam-gmapping ros-noetic-gmapping # 先通过软件包安装,再卸载软件包保证依赖
    cd ~/catkin_ws/src
    git clone https://github.com/ros-perception/slam_gmapping.git
    git clone https://github.com/ros-perception/openslam_gmapping.git
    cd ~/catkin_ws
    catkin_make
    
  3. 运行 Bag 仿真
    rosrun gmapping slam_gmapping scan:=base_scan
    rosbag play --clock basic_localization_stage_indexed.bag
    

Cartographer

参考官方指导教程

  1. 安装构建工具
    sudo apt-get update
    sudo apt-get install -y python3-wstool python3-rosdep ninja-build stow
    
  2. 新建 cartographer 的工作空间
    由于 cartographer 编译略有不同,建议不要再 catkin_ws/src 编译 cartographer
    cd ~
    mkdir cartographer_ws
    cd cartographer_ws
    wstool init src
    
    wstool merge -t src https://raw.githubusercontent.com/cartographer-project/cartographer_ros/master/cartographer_ros.rosinstall
    
    wstool update -t src
    
  3. 安装 cartographer_ros 的依赖项
    首先 删除 或 注释 cartographer_ws/src/cartographer/package.xml<depend>libabsl-dev</depend> 一项
    sudo rosdep init # 安装 ROS 时已执行,可以不执行
    
    rosdep update
    
    rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
    
    src/cartographer/scripts/install_abseil.sh
    
    sudo apt-get remove ros-${ROS_DISTRO}-abseil-cpp # 如果发生 abseil-cpp 库版本冲突再运行该指令
    
    catkin_make_isolated --install --use-ninja
    
  4. 构建和安装
    catkin_make_isolated --install --use-ninja
    # 在 ~/cartographer_ws 下运行此命令
    
  5. 配置环境变量
    echo "source ~/cartographer_ws/install_isolated/setup.bash" >> ~/.bashrc
    
  6. 运行 Bag 仿真
    roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=<自行修改为 bag 文件位置>
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值