赵 芸,赵 敏
(上海理工大学光电信息与计算机工程学院,上海 200093)
即时定位与建图(Simultaneous Localization and Mapping,SLAM)最早由Smith 等[1]在1988 年提出,它是机器人技术研究方向。机器人在应用中能自己移动的前提是需要扫描当下环境并生成地图。实现机器人SLAM 需要知道其在当前地图中的姿势和位置。因此,SLAM 是移动机器人领域的一个关键问题。
早期SLAM 研究多用激光雷达作为主要传感器,将扩展卡尔曼滤波(EKF)应用于机器人位姿估计,但效果不理想。对于一些强非线性系统,这种方法会带来更多的截断误差,从而导致定位和映射不准确。2007 年,Grisetti 等[2]提出改进的Rao-Blackwellized particle filter(RBPF)激光雷达Gmapping 方法,这在SLAM 领域堪称里程碑通过改进所提出的分布和自适应采样技术,提高了定位精度,降低了计算复杂度;优化方法作为概率方法的一种有效替代,近年得到广泛应用;2010 年Konolige 等[3]提出一种具有代表性的方法Karto-SLAM,该方法利用稀疏位姿调整解决非线性优化中的矩阵直接求解问题;2011 年提出的Hector SLAM[4]采用高斯—牛顿法解决扫描匹配问题,该方法不需要里程表信息,但需要高精度的激光雷达;2016 年,谷歌提出Cartographer[5],通过对子图和全局图同时使用激光闭环,减少累积误差。
本文针对Cartographer SLAM 算法在回环匹配时使用Scan to Map(帧与子图)方法容易在环境相似的地方或者长距离走廊等处出现匹配出错高的缺点,提出改进方法,将Scan to Map 用Map to Map(子图与子图)方法替代,优化Cartographer SLAM 算法构建更精确的地图;阐述了Map to Map 方法理论,利用实验对比改进前后算法,对实验结果进行分析。
在分析Cartographer SLAM 算法之前先分析基于图优化的SLAM 框架原理。……