适用于低端激光雷达的优化Hector SLAM算法
2019-10-15苏易衡张奇志周亚丽
苏易衡, 张奇志, 周亚丽
(北京信息科技大学 自动化学院,北京 100192)
0 引 言
建立环境模型并且确定自身位置是移动机器人在真实场景中应用所需的一项重要功能,实时定位与建图(Simultaneous Localization and Mapping,SLAM)关注的正是这一问题。随着SLAM研究的不断深入与激光雷达性能的提升迭代,建图与定位的精度已经基本满足室内、室外环境中的应用。例如基于改进的Rao-Blackwellized粒子滤波SLAM方法Gmapping[1-2],利用激光雷达数据与高精度的里程计,在办公室环境具有较强的鲁棒性;此外基于Gauss-Newton方法的Hector SLAM,使用较少的运算资源,因此可用于无人机等装置在三维场景中建立环境模型[3-4],但该方式对激光雷达的精度与刷新频率有很高要求,由于高性能的激光雷达价格昂贵,在许多场景中不太适用。
Hector SLAM是一种利用现代高精度激光雷达的数据,不需要依赖里程计数据的SLAM方法。该算法的一般处理过程为[5]:获取概率栅格地图、Gauss-Newton法扫描匹配、使用多分辨率地图避免陷入局部极小值。首先利用高精度激光雷达的数据,使用双线性插值算法获取连续的概率栅格地图;接下来继续获取雷达数据,使用当前帧与已有地图的数据构建误差函数,并用Gauss-Newton法得到最优解与偏移量;最后使用3种不同分辨率的栅格地图,避免匹配结果陷入局部极小值。
扫地机器人、家庭服务机器人[6]等应用场景中,经常由于成本控制或是设备老化等原因,所使用的激光雷达性能较低。本文在Hector SLAM研究的基础上,对前端进行了较为全面的优化,降低了算法的硬件应用门槛,消除了算法对高精度、高刷新频率激光雷达的依赖;……
