视觉SLAM研究分析的一点认识

 在近10多年,基于视觉的SLAM成为了一个比较热门的研究方向,有大量的相关突破性理论出现。在视觉SLAM的研究上较为领先的国家有英国、美国、德国等。常见的SLAM算法一般分为相机定位跟踪和场景地图构建两个高度相关的部分。场景地图构建是指构建相机所在场景的三维地图,相机定位跟踪是指利用相机自身位姿的估计值和通过传感器得到的观测值来确定相机在环境中的位置。基于视觉的SLAM实现的目的与运动恢复结构(SFM)类似,但是运动恢复结构(SFM)大多应用数值优化来进行求解,基于视觉的SLAM则大多应用递归滤波的方法。单目相机不同于双目或者多目相机,它利用帧与帧之间的运动距离和运动角度来估算深度信息,传统的视觉SLAM方法多采用特征提取和数据关联的方式来完成。单目视觉SLAM算法分类
单目视觉SLAM方法在是否引入概率框架方面分为基于概率框架的方法和基于非概率框架的方法。其中前者的代表方法是基于Kalman滤波(KF)的方法,基于粒子滤波(PF)的方法等;后者的代表方法是基于关键帧和稀疏捆绑调整优化的方法,基于图优化的方法等。
采用概率框架的方法的思路大致为:假设从初始时刻到当前 时刻的观测数据和控制输入已知,那么就可以联合后验概率来构建一个后验概率密度函数,这个函数用来描述相机姿态和地图中的特征的空间位置,进而通过递归的贝叶斯滤波算法来对构建的概率密度函数进行估计,从而完成SLAM问题的解决。在基于KF的方法中,假设满足高斯分布并且系统的非线性较小时可以得到不错的效果,另外从后验概率的不同可以分为EKF-SLAM方法、扩展信息滤波(EIF)方法、UKF-SLAM方法、SEIF方法等,例如,Davison等提出的单目视觉SLAM系统(MonoSLAM)和Roussillon[提出的实时单目视觉SLAM系统(RTSLAM)就是建立在扩展卡尔曼滤波(EKF)的基础上的。再基于PF的方法中,主要有Doucet[7]提出的基于Rao-Blackwellized粒子滤波器(RBPF)的方法和在此基础上Montemerlo[8]提出的FastSLAM方法等,其中FastSLAM方法可以用于非线性的系统。基于概率框架的方法的计算框架类似,其中基于EKF的单目视觉,一般可以分为运动模型和观测模型并在HMM的假设下可以实现系统状态的预测和观测更新。地图也可以在线更新,但是这种方法多采用增量式的地图创建方法,故在系统不稳定和观测的不确定性的影响下造成误差的累积,在大规模场景时会导致最终地图的不一致性,难于保持准确度和鲁棒性。

       在非概率框架的方法中Klein等在基于关键帧的基础上提出的PTAM系统Parallel Tracking andMapping),该系统会在后文给出详细的分析和优化措施。基于图优化的SLAM方法[9]在采取了全局优化的基础上,在大规模场景下可以取得好的效果。在国外,基于图优化的方法大都被划分为前端和后端的问题,
1.1.3       关键问题分析
(1)特征点检测与匹配:
图像的特征一般可以分为点特征、直线特征和边缘、轮廓特征,其中点特征对遮挡相对鲁棒、提取速度快并且识别性好,所以应用较多;线、边缘、轮廓等特征在高维空间进行,其计算量大。
角点在保留图像重要特征的同时减少了信息的数据量,加快了计算速度和匹配的速度,Harris角点具有旋转不变性且对亮度和对比度的变化不敏感,但是不具备尺度不变性,一般采用的是Harris角点 。Fast角点可以在短时间内生成大量角点,在实时性要求较高时应用较多。SIFT特征对于图像的旋转、尺度变化和缩放具有不变形,并且对于图像变形和光照变化较为鲁棒,由于其浮点运算造成计算量大,可以采用GPU加速或者使用PCA降维来减少运算量。SURF特征是对SIFT的改进,速度快且稳定性好,应用也较为广泛。BRIEF特征是Calonder在2010年提出的二进制编码的描述子,可以实现快速计算,速度比SIFT和SURF远高,但是它不具有旋转不变性。于是EthanRublee[19]在2011年提出了ORB特征,使其具有了尺度不变性,使得ORB特征在SLAM系统中应用广泛
(2)数据关联的优化:
由于特征点的检测和匹配带有误差,所以我们要对图像特征匹配的结果进行优化,主要有:固定区域匹配、Active Matching、1-Point RANAC、几何约束等方法。
PTAM及其改进算法主要使用固定区域匹配的方法,该方法假定前后两帧图像中像素的距离超过一定范围就认为是匹配错误,适用于特征点里相机稍远、深度变化不大的场景,不适用于相机快速运动的场合。基于EKF滤波的视觉SLAM系统多采用Davison提出的Avtive Matching方法,环境中的特征点会在摄像机估计的姿态中的投影图像位置,通过估计这个位置来获取特征点的在图像中的分布区域,在相机姿态估计协方差较大时不适用。Civera等[22] [23]为去除Active Matching中的错误匹配而提出的1-Point RANSAC方法,它首先随机选择一个匹配点来更新相机姿态,然后再剔除外点,最后利用内点集来更新滤波器状态,它也主要应用在基于EKF滤波的SLAM系统中,由于其存在的频繁的更新系统状态造成其运算时间稍大。几何约束方法解决了这个问题,比如利用PNP[24] [25](perspective N points)、对极几何等剔除误匹配点等。
(3)特征点深度的提取:
单目相机无法直接获取深度信息,深度信息可以通过反深度法(Inverse depth)、几何三角法、粒子滤波法等来获取。
Civera[27]等提出了Inverse Depth的方法是为了减少深度分布非高斯性的影响,这种方法通过使用深度的倒数在EKF系统里进行更新取得了比较好的线性效果。该方法使用一个6维向量描述一个特征点的3维位置,滤波器不断更新直到特征点的估计协方差小于某一阈值时,特征点的6维描述就转变为了3维的欧氏坐标
类似于SFM(Structure from Motion)中的多关键帧匹配点三角化的方法多用于关键帧与稀疏捆绑调整(sparse bundle adjustment,SBA)的系统,如图1-10所示来重建特征点的三维位置,对于非关键帧则不做处理。

最先被Davison等采用的Particle Filter方法会在特征所在的深度方向上生成多个粒子。通过粒子的匹配和更新来回复特征点深度的概率分布,其收敛过程如图1-7所示,SVO中的Depth Filter方法采用了类似的方法,不足之处是容易增加系统的不一致性,致使最后概率估计的发散。
(4)地图尺度控制:
单目视觉SLAM中我们采用多帧图像的匹配来回复深度信息,因此会出现尺度漂移,我们可以采用7自由度(DOF)SLAM方法、Global SBA方法、结合IMU等其他传感器方法来进行控制。
Strasdat最早(2010年)提出7DOF SLAM的方法,将地图尺度作为一个估计量加入到系统中 ,使3维摄像机姿态有6DOF变为7DOF,通过使尺度的估计量一起更新,进而控制尺度漂移。基于关键帧的方法[29][30]中多用Global SBA方法。真实的加速度信息可以利用IMU(inertial measurement unit)等惯性传感器来实时的测出,故可以在分析加速度信息与相机运动之间的相关性之后结合运动学方程来获得地图真实尺度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值