视觉SLAM综述

视觉SLAM(Simultaneous Localization And Mapping)是机器人领域的核心技术,它结合传感器数据实现实时环境建图与自身定位。经典vSLAM系统通常包含视觉里程计、后端优化、闭环检测和建图四个部分。本文详细介绍了间接法和直接法两种SLAM方法,包括MonoSLAM、ORB-SLAM、DTAM等典型系统,并探讨了基于深度学习的SLAM进展,如UnDeepVO和CNN-SLAM等。未来视觉SLAM将朝着主动SLAM、语义SLAM和多传感器融合方向发展。

其它机器学习、深度学习算法的全面系统讲解可以阅读《机器学习-原理、算法与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造。

什么是视觉SLAM

 

SLAM是“Simultaneous Localization And Mapping”的缩写,可译为同步定位与建图。概率 SLAM 问题 (the probabilistic SLAM problem) 起源于 1986 年的IEEE Robotics and Automation Conference 大会上,研究人员希望能将估计理论方法 (estimation-theoretic methods) 应用在构图和定位问题中。 SLAM最早被被应用在机器人领域,其目标是在没有任何先验知识的情况下,根据传感器数据实时构建周围环境地图,同时根据这个地图推测自身的定位[1]。

 

假设机器人携带传感器 (相机) 在未知环境中运动,为方便起见,把一段连续时间的运动变成离散时刻 t=1,…k,而在这些时刻,用 x 表示机器人的自身位置,则各时刻的位置就记为 x1,x2…xk,它构成了机器人的轨迹。地图方面,假设地图由许多个路标组成,而每个时刻,传感器会测量到一部分路标点,得到它们的观测数据。设路标点共有 N 个,用 y1,y2…yn 表示。通过运动测量 u 和传感器读数 z 来求解定位问题 (估计 x)和建图问题 (估计 y)。

1.png

图 1 SLAM系统示意图[16]

 

只利用相机作为外部感知传感器的SLAM称为视觉SLAM (vSLAM [2])。相机具有视觉信息丰富、硬件成本低等优点,经典的vSLAM系统一般包含前端视觉里程计、 后端优化、 闭环检测和构图四个主要部分[3]。

2.png

图 2 经典vSLAM系统流程图[5,16]

 

●  视觉里程计 (Visual Odometry):仅有视觉输入的姿态估计[4];

 

●  后端优化 (Optimization): 后端接受不同时刻视觉里程计测量的相机位姿,以及闭环检测的信息,对它们进行优化,得到全局一致的轨迹和地图[5];

 

●  闭环检测 (Loop Closing): 指机器人在地图构建过程中, 通过视觉等传感器信息检测是否发生了轨迹闭环, 即判断自身是否进入历史同一地点[6];

 

●  建图 (Mapping): 根据估计的轨迹,建立与任务要求对应的地图[5]。

根据生成方法的不同,SLAM可以分成两大类:间接方法和直接方法。下面依次介绍这两种方法。

 

间接法及其典型系统

 

间接法首先对测量数据进行预处理来产生中间层,通过稀疏的特征点提取和匹配来实现的,也可以采用稠密规则的光流,或者提取直线或曲线特征来实现。然后计算出地图点坐标或光流向量等几何量,因此间接法优化的是几何误差:

 

T_{k-1,k}= _{T}^{argmin}\sum_{i}||u_{i}^{'}-\pi (p_{i})||_{\sum }^{2}

 

其中 ui 为 Ik-1 中任意像素点,它投影到空间点的坐标为 Pi, u′i是 Pi 投影到 Ik 上的坐标。之后利用中间层的数值来估计周围环境的三维模型和相机运动。

3.png

图 3 间接法示意图[3]

 

MonoSLAM

MonoSLAM 是第一个实时的单目视觉 SLAM 系统[7]。 MonoSLAM 以EKF(扩展卡尔曼滤波)为后

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值