论文部分内容阅读
随着智能机器人在日常生活中的普及和自动驾驶技术的发展,同时定位与建图(Simultaneous Localization and Mapping , SLAM)受到广泛的关注。机器人在未知环境下如何进行自主定位与地图构建,是SLAM需要解决的问题。目前,SLAM是室内移动机器人以及室外无人驾驶汽车研究的重要课题之一。
SLAM根据传感器的类型分为激光雷达SLAM和视觉SLAM,激光雷达价格昂贵,不适合在日常生活中普及。相机成本低,具有很高的场景识别能力,可以在环境中获得比激光雷达更多的纹理信息,广泛应用到室内定位的机器人中。
本文对视觉SLAM进行研究,介绍了SLAM系统框架以及每个部分的实现原理,讨论并分析了滤波优化和非线性优化的特点,设计了一种基于ORB特征非线性优化的视觉SLAM系统,本文的主要内容如下:
第一,针对传统随机抽样一致(Random Sample Consensus, RANSAC)算法易受噪声影响,删除误匹配的准确率不够高的问题,提出了一种改进的RANSAC算法—LO*-RANSAC(简称LO*)。首先,迭代地筛选由传统RANSAC产生的内点,以进一步缩小内点的选择范围。然后,对估计的模型进行捆集调整(Bundle Adjustment, BA),通过最小化匹配误差优化模型。实验中使用公开的数据集,并和流行的SLAM系统对比,实验结果表明,LO*-RANSA算法可以提高SLAM的定位精度,优于目前流行的SLAM系统。
第二,深度相机可以获取图像的深度,直接获取的深度具有噪声,针对深度噪声对SLAM定位精度的影响,提出了一种自适应的图优化法。即针对不同情况,选择性采取不同的优化方式。对于估计帧间相机运动的优化,选择只优化位姿的方式;对于局部地图优化和全局地图优化,选择同时优化位姿和观测点的优化方式。建立3D-2D重投影误差模型,通过最小化重投影误差,选择性优化位姿和观测点。实验结果证明,该方法比传统优化位姿的方法提高了定位精度。
第三,传统闭环检测使用二进制字典表示单词的权重,根据图像的相似程度判断闭环,存在闭环检测准确率不高、SLAM定位精度低的问题。对此,本文提出了一种改进的闭环检测算法。使用频率-逆文档频率(Term Frequency-Inverse Document Frequency, TF-IDF)计算单词的权重,并使用Kullback-Leibler(KL)散度计算图像的相似度。此外,针对绝对相似度机制在相似场景下发生误检的问题,本文使用相对相似度机制,即利用图像之间的相对相似度,判断闭环。实验结果表明,改进的闭环检测算法提高了定位精度。
SLAM根据传感器的类型分为激光雷达SLAM和视觉SLAM,激光雷达价格昂贵,不适合在日常生活中普及。相机成本低,具有很高的场景识别能力,可以在环境中获得比激光雷达更多的纹理信息,广泛应用到室内定位的机器人中。
本文对视觉SLAM进行研究,介绍了SLAM系统框架以及每个部分的实现原理,讨论并分析了滤波优化和非线性优化的特点,设计了一种基于ORB特征非线性优化的视觉SLAM系统,本文的主要内容如下:
第一,针对传统随机抽样一致(Random Sample Consensus, RANSAC)算法易受噪声影响,删除误匹配的准确率不够高的问题,提出了一种改进的RANSAC算法—LO*-RANSAC(简称LO*)。首先,迭代地筛选由传统RANSAC产生的内点,以进一步缩小内点的选择范围。然后,对估计的模型进行捆集调整(Bundle Adjustment, BA),通过最小化匹配误差优化模型。实验中使用公开的数据集,并和流行的SLAM系统对比,实验结果表明,LO*-RANSA算法可以提高SLAM的定位精度,优于目前流行的SLAM系统。
第二,深度相机可以获取图像的深度,直接获取的深度具有噪声,针对深度噪声对SLAM定位精度的影响,提出了一种自适应的图优化法。即针对不同情况,选择性采取不同的优化方式。对于估计帧间相机运动的优化,选择只优化位姿的方式;对于局部地图优化和全局地图优化,选择同时优化位姿和观测点的优化方式。建立3D-2D重投影误差模型,通过最小化重投影误差,选择性优化位姿和观测点。实验结果证明,该方法比传统优化位姿的方法提高了定位精度。
第三,传统闭环检测使用二进制字典表示单词的权重,根据图像的相似程度判断闭环,存在闭环检测准确率不高、SLAM定位精度低的问题。对此,本文提出了一种改进的闭环检测算法。使用频率-逆文档频率(Term Frequency-Inverse Document Frequency, TF-IDF)计算单词的权重,并使用Kullback-Leibler(KL)散度计算图像的相似度。此外,针对绝对相似度机制在相似场景下发生误检的问题,本文使用相对相似度机制,即利用图像之间的相对相似度,判断闭环。实验结果表明,改进的闭环检测算法提高了定位精度。