下载A-LOAM开源代码,配置所需的环境,下载其所提供的相关数据集,进行运行测试:
A-LOAM源码:https://github.com/HKUST-Aerial-Robotics/A-LOAM
1、NSH indoor outdoor数据集
首次运行时,报以下错误,出现Rviz闪退,但是点云包还在正常播放,也就是还有一些ROS节点是正常的。
由于报了一个warning,因为LOAM对于点线特征要求较高。
因此,后来猜测可能是点云数据不够,因此调整了一下播放速率,rosbag play nsh_indoor_outdoor.bag -r 3,正常建图显示!
2、KITTI数据集
由于我下载的是KITTI网站的raw data,跟A-LOAM需要的odometry data文件结构不一样,在A-LOAM源码文件:kittiHelp.cpp可见。
解决A-LOAM没有点云输出的问题,昨晚发现是由于kitti2bag转换出来的bag文件其中的发数据的Topic与A-LOAM源码接收点云数据的Topic名称不同,由下图可见:
使用rosbag info ***.bag命令可以查看bag文件信息,由kitti2bag转换出来的bag包其中的Topic信息为:
在阅读以上代码后,发现将A-LOAM接收点云的Topic名称改为上图中的/kitti/velo/pointcloud即有点云输出:
看上去效果并不怎么好。