SLAM学习笔记【二】A-loam运行数据集以及使用激光雷达运行

一、A-LOAM安装

A-LOAM需要用到ceres库与pcl库,请确保已完成安装。

A-LOAM下载编译:


 
 
  1. #创建工作空间
  2. mkdir -p ~/aloam_ws/src
  3. cd ~/aloam_ws/src
  4. catkin_init_workspace
  5. #克隆A-LOAM源码
  6. git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
  7. #编译
  8. cd ../
  9. catkin_make
  10. source ~/aloam_ws/devel/setup.bash

二、A-LOAM跑数据包

运行A-LOAM:


 
 
  1. #运行A-LOAM
  2. roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch

运行rosbag:


 
 
  1. #在你的bag文件夹下运行
  2. rosbag play xxx.bag

这里提供一个供测试用的bag,链接:rosbag,提取码:diiq

三、Turtlebot3跑A-LOAM(velodyne16)

首先确保Turtlebot3激光雷达配置完成,方法见笔者单、双激光雷达启动与双激光雷达的外参标定(VLP-16)

启动Turtlebot3:


 
 
  1. #启动turtlebot底盘
  2. roslaunch turtlebot3_bringup turtlebot3_robot.launch
  3. #另起终端启动键盘控制
  4. roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

如此就可以通过键盘wxads(前后左右停)控制Turtlebot3。

启动velodyne16:


 
 
  1. #启动激光雷达
  2. roslaunch velodyne_points VLP16_points.launch

启动A-LOAM:

roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
 
 

控制Turtlebot3运动,就能在rviz中看到所建地图了。

四、数据包创建

如果想要创建一个属于自己的rosbag,很简单,在启动A-LOAM后,另起终端开始记录数据:


 
 
  1. #创建rosbag
  2. rosbag record -o xxx.bag /velodyne_points /laser_cloud_surround

其中xxx为创建的bag名,/velodyne_points为激光雷达发布点云话题名,/laser_cloud_surround为A-LOAM所建地图话题名。如此就创建了我们自己的rosbag,便于后期调优。

五、点云地图保存与查看

点云地图保存,第一种:


 
 
  1. #运行A-LOAM
  2. roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
  3. #另起终端运行rosbag
  4. rosbag play xxx.bag
  5. #另起终端用bag_to_pcd方法保存点云图
  6. rosrun pcl_ros bag_to_pcd xxx.bag /laser_cloud_surround pcd

运行结束,可以看到生成了一个pcd文件夹,将里面的文件按照修改时间排序,最新的就是最后的点云地图pcd文件。

点云地图保存,第二种:


 
 
  1. #运行A-LOAM
  2. roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
  3. #另起终端运行rosbag
  4. rosbag play xxx.bag
  5. #另起终端,用pointcloud_to_pcd方法保存点云图
  6. mkdir pcd
  7. cd pcd
  8. rosrun pcl_ros pointcloud_to_pcd input:=/laser_cloud_surround

运行结束,可以看到生成了一个pcd文件夹,将里面的文件按照修改时间排序,最新的就是最后的点云地图pcd文件。

点云地图查看:

pcl_viewer xxx.pcd
 
 

pcd点云地图转ply格式

pcl_pcd2ply xxx.pcd xxxxxxx.ply
 
 

当我们需要用第三方软件(MatLab/MeshLab)对点云地图进行处理时就需要将pcd转为ply,其中MeshLab必须使用由pointcloud_to_pcd方法创建pcd转成的ply格式点云!

</article>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值