在正式跑通导航之前,先补充一点上一节关于路线设定的细节。终端 2 启动时,建议将配置文件中的对应项设为 true,这样能自动加载预设的 RViz 界面,省去手动打开的步骤。不过播放 bag 包后,仍需单独添加话题显示。
生成 pcd 文件后,可以用 pcl_viewer 查看点云效果,把 filename.pcd 替换成实际文件名即可。这里要注意区分几种不同的地图类型,避免混淆。
一、项目准备与环境依赖
克隆导航栈源码并整理目录结构:
cd ~/ws_loc/src
git clone https://github.com/deepglint/ros_navigation_humanoid.git
mv ros_navigation_humanoid-master ros_navigation_humanoid
安装系统依赖,包括 PCL 库和 ROS 导航相关包:
sudo apt-get install libpcl-dev ros-noetic-navigation ros-noetic-tf ros-noetic-sbpl ros-noetic-visualization-msgs
sudo apt-get install kolourpaint
另外还需要下载 PCD 转栅格地图的工具:
cd ~/ws_loc/src
git clone https://github.com/Hinson-A/pcd2pgm_package.git
二、编译与错误修复
首次编译时可能会遇到 include 目录缺失的问题,直接创建该目录即可解决:
cd ~/ws_loc/src/ros_navigation_humanoid
mkdir -p include
cd ~/ws_loc
catkin_make
编译成功后记得更新环境变量:
source devel/setup.bash
三、地图文件转换
假设你已经有了建好的点云地图 map_1.pcd,将其复制到工作空间 maps 目录下:
cp ~/ws_loc/maps/map_1.pcd ~/ws_loc/src/ros_navigation_humanoid/maps/
接下来修改转换启动文件 conv_pcd2pgm.launch。这里需要自定义地图名称和路径参数,同时配置阈值以过滤无效点:
<?xml version="1.0"?>
<launch>
<arg name="file_name" default="map" />
<arg name= = />

