论文部分内容阅读
近年来,世界上主要经济体纷纷将智能机器人产业视为国家重要战略发展方向,在制造业领域,工业机器人可以接替大多数劳动强度大、简单重复、安全风险高的工作岗位;与此同时,机器人技术也逐渐从工业制造领域走入服务业的各个领域,服务机器人能够满足消费者感情交流、陪伴互动、生活服务等多样化诉求。大多数服务机器人需要具备自主移动的功能,如何利用机器人自身搭载的传感器和所处环境信息进行自主导航是移动机器人的核心问题。要实现自主导航,则要求机器人能够进行自身定位和建图并根据所处环境的地图进行路径规划,这就涉及到机器人领域中的一个重要问题,即同步定位与地图创建(Simultaneous Localization and Mapping,SLAM),SLAM被认为是实现机器人自主性的关键问题之一。当前解决SLAM问题的主要方法是基于扩展卡尔曼滤波或粒子滤波等算法,但这类算法存在线性化和累积误差等问题,无法应用于大规模建图;近年来,SLAM问题得到了更深入的研究,当前基于图优化理论的SLAM方法能够有效解决大规模环境下建图时所存在的累积误差问题,然而该算法仍然存在对环境要求高,鲁棒性差等问题。基于该现状,本文深入分析了 SLAM系统中的运动估计、闭环检测以及图优化等部分存在的各种问题,设计出采用Kinect作为传感器的SLAM系统,该系统在多个方面做出了改进,提高了整个算法的准确性和鲁棒性。在顺序数据关联部分,本文充分考虑周围环境的实际情况,采用基于特征匹配和基于ICP算法相结合的方式求解运动估计,该方法在周围环境过于单一、环境特征不足的情况下仍然能够有效运行,并且本文在经典ICP算法的基础上进行了一定的改进,提高了算法的准确性和计算效率;在求出粗略运动估计的基础之上采用BA(Bundle Adjustment)优化得到局部优化后的运动估计,从而在局部范围内减小了累积误差,得到更加准确和可靠的运动估计。在闭环检测部分,本文结合基于外观相似以及空间位置约束的方法进行闭环检测,采用基于视觉字典树的图像相似性检测方法确定候选闭环节点,然后对这些节点添加空间位置约束以提高闭环检测的正确性。建立顺序数据关联以及闭环检测后即可构建位姿图,图中边的约束能力不一致,因此本文参考关联节点所对应相对运动估计的误差情况,为图中每条边建立了信息矩阵,以获取更加准确的图优化结果。在求解图优化问题时,充分考虑到稀疏矩阵的特点,采用高效的求解方法使得该非线性优化问题快速地收敛到全局最优值。