一种基于点和线的视觉惯性SLAM算法

发布日期:2021年12月13日
一种基于点和线的视觉惯性SLAM算法 一种基于点和线的视觉惯性SLAM算法

本内容试读结束

下载后可阅读完整内容,立即下载

传统的视觉惯性SLAM (Simultaneous Localization and Mapping)算法,在弱纹理场景下,往往存在定位精度差甚至失效的问题,本文提出一种基于点和线特征的视觉惯性SLAM算法。该算法以开源的VINS-Mono (Monocular Visual-Inertial Systems)系统为基础,在此基础上增加了线特征,结合点线特征各自独有的特性,并且提出一种新的数据选择策略,减少了因为线特征的加入而增加的计算量,保证了系统的实时性。实验采用开源数据集Euroc,通过与其他开源算法做对比,对本文算法进行评估,实验结果表明了本文算法的有效性。

视觉惯性系统VINS (Visual-Inertial System),是融合相机和IMU (Inertial Measurement Unit)数据实现SLAM 的算法,是机器人领域的一大关键技术。目前已有的视觉惯性SLAM 系统,主要采用特征点法进行跟踪, 首先从图像中选取特征点, 常用的特征点包括著名的PTAM (Parallel Tracking And Mapping) [1]、SIFT (Scale Invariant Feature Transform) [2]、SURF (Speeded Up Robust Features) [3]、ORB (Oriented Fast and Rotated Brief) [4]等等。基于点特征的SLAM 系统依赖于点特征的数量和质量,当在走廊、窗户等弱纹理场景下,往往检测不到足够数量的点特征,因此会影响系统的精度,甚至出现跟踪失败的情况。为了改善基于点特征SLAM 系统的性能,越来越多的人开始在点特征系统中加入线特征。Pumarola 等[5]在ORB-SLAM [6]的基础上加入线特征,提出了PL-SLAM (Visual SLAM With Points and Lines),并提出利用线特征进行系统初始化的方法,是一种点线结合的单目视觉SLAM 算法。HE Yijia 等[7]提出的基于点线特征结合的视觉惯导联合里程计PL-VIO (Point-Line VIO)将线特征集成到优化框架中,以图优化的方法实现了更高的精度。Gomez-Ojeda 等[8]在SVO (Semi-Direct Monocular Visual Odometry) [9]的基础上提出了基于点线结合的半直接法单目视觉里程计PLSVO (Point-Line SVO)。

谢晓佳[10]则采用普吕克坐标参数化空间直线,构建了一个点线综合的双目视觉SLAM 系统。Qiang Fu 等[11]在VINS-Mono [12]的基础上增加了线特征,针对线特征的提取算法,进行了隐参数调整并提出长度抑制策略,改进最小二乘法, 设计出一种具有点和线特征的实时单目视觉惯性系统。

以上是目前比较流行的点线结合的SLAM 系统,线特征提取大多采用LSD (Line Segment Detector) [13]算法,但由于LSD 算法,运行较慢,不适用于SLAM 这种对实时性要求较高的系统。Cuneyt Akinlar等[14]在2011 年提出一种快速线段特征提取算法EDlines, 其能够在线性时间内给出精确的结果, 并拥有比LSD 检测算法更快的提取速度,但精度与LSD 算法持平。因此本文对EDlines 算法进行改进,在保证原有运行速度的基础上,提高了算法精度;线段匹配采用LBD (Lind Band Descriptor) [15]描述子方案, 得到点、线特征数据后,提出一种数据选择策略,减少因为线特征的加入而增加的计算量,保证了系统的实时性,并以VINS-Mono 系统为基础搭建了本文的SLAM 系统。

2. 系统框架 本文SLAM 系统共分为四大线程:测量数据预处理、局部视觉–惯性BA 与重定位、回环检测和全



相关标签