时间:2021年04月14日 分类:经济论文 次数:
摘要视觉里程计(VisualOdometry)作为视觉同步定位与地图构建技术(VisualSimultaneousLocalizationandMaping)的一部分,主要通过相机传感器获取一系列拥有时间序列图像的信息,从而预估机器人的姿态信息,建立局部地图,也被称为前端,已经被广泛应用在了多个领域,并取得了丰硕的实际成果。对于无人驾驶,全自主无人机,虚拟现实和增强现实等方面有着重要意义。本文在介绍了经典视觉里程计技术框架模块中的各类算法的基础上,对近年来新颖的视觉里程计技术VO)的研究和论文进行了总结,按照技术手段不同分为两大类——多传感器融合的视觉里程计以惯性视觉融合为例和基于深度学习的视觉里程计。前者通过各传感器之间的优势互补提高的精度,后者则是通过和深度学习网络结合。最后比较视觉里程计现有算法,并结合面临的挑战展望了视觉里程计的未来发展趋势。
关键字:视觉里程计;多传感器融合;深度学习
引言
为了使得计算机能够和人一样通过感官器官观察世界,理解世界和探索未知区域,视觉里程计(VO)技术应运而生,作为同步定位与地图构建(SLAM)[1的前端,它能够估计出机器人的位姿,一个优秀的视觉里程计技术能为SLAM的后端,全局地图构建提供优质的初始值,从而让机器人在复杂的未知环境中实现精准自主化来执行各种任务。传统的里程计,如轮式里程计容易因为轮子打滑空转而导致漂移,精确的激光传感器价格昂贵,惯性传感器虽然可以测量传感器瞬时精确的角速度和线速度,但是随着时间的推移,测量值有着明显的漂移,使得计算得到的位姿信息不可靠。而视觉里程计由于视觉传感器低廉的成本和长距离较为精准的定位在众多传统里程计中脱颖而出。
人工智能论文范例:适合视觉传达设计论文发表的期刊
所谓视觉里程计就是从一系列图像流中恢复出相机的运动位姿,这一思想最早是由Moravec等提出,成为了经典,是因为他们不仅在论文中第一次提出了单独利用视觉输入的方法估计运动,而且提出了一种最早期的角点检测算法,并将其使用在了行星探测车上,体现了现阶段视觉里程计的雏形,包括了特征点检测及匹配,外点排除,位姿估计三大块,使得视觉里程计从提出问题阶段过渡到了构建算法阶段,Nister[5]在CVPR上发表的《VisualOdometry》中提出了一种利用单目或者立体视觉相机来获取图像的视觉里程计系统,自此视觉里程计这个名词真正的被创造了,并宣告技术进入了优化算法阶段。随着RBSLAM6]的问世,作为SLAM的前端成为了研究热潮,也代表着主流基于特征点法的一个高峰。
ngle等[7]提出的SDSLAM则成功地把直接法的视觉里程计应用在了半稠密单目SLAM中,近年来涌现了各类的新颖视觉里程计系统。比如2019年Zheng等[8提出了一种基于RGB传感器的自适应视觉里程计,可以根据是否有足够的纹理信息来自动地选择最合适的视觉里程计算法即间接法或者直接法来估计运动姿态。
本文重点对视觉里程计的已有研究工作进行综述主要选取了近年来有代表性的或取得比较显著效果的方法进行详细的原理介绍和优缺点分析。根据是否需要提取特征点大致分为特征点法和直接法。也可以根据是否脱离经典的位姿估计模块方法分为经典视觉里程计和新颖视觉里程计。最终总结提出未来的发展前景。第节介绍传统视觉里程计框架的算法。其中包括了特征点法的关键技术和直接法视觉里程计中的相关算法。
第一节、第二节综述最新的视觉里程计研究方法,包括第一节中惯性视觉传感器融合的易于工程实现轻量型的,以及第二节中基于深度学习的视觉里程计可以通过高性能计算机实现精密建图等功能。第节简要概括了视觉里程计各类标志性算法。第节中结合视觉里程计面临的挑战,展望了未来的发展方向。
1传统视觉里程计
传统视觉里程计沿用了Nister[5]的框架即依据相邻帧之间特定像素几何关系,估计出相机的位姿信息,包括了位置和滚转角roll)、俯仰角(pitch以及偏航角(yaw)三个方向信息。根据是否需要提取特征,分为特征点法和以灰度不变假设为前提的直接法。
1.1特征点法
特征点法首先从图像中提取出关键特征点,然后通过匹配特征点的手段估计出相机运动。大致分为了两个部分即特征点的提取匹配和相机运动的位姿估计。特征点法在视觉里程计中占据了主要地位,是因为其运行稳定,而且近年来研究者们设计了许多具有更好鲁棒性的图像特征,这些特征对于光照敏感性低,而且基本都拥有旋转不变性和尺度不变性。线面特征的提出更是使得特征点法适应了纹理信息少的场景。
1.1.1特征提取及匹配
经典的特征算子有SUSAN、HARRIS10、FAST[1、ShiTomasi[1、SIFT[1、SURF[1、PCASIFT[1、ORB[1,其中最为基础也是最为经典的是HARRIS和SIFT算法,现有的算法基本都是基于这两者,可以看作是HARRIS和SIFT的简化和改进。HARRIS角点检测算法运用了微分运算和角点邻域的灰度二阶矩阵,而微分运算对图像密度和对亮度的变化不敏感性和二阶矩阵特征值不变性使得HARRIS角点检测算子拥有了光照变化不敏感,旋转不变性。后来出现了SUSAN算子它的原理和步骤和HARRIS较为相似,但是SUSAN算子不仅拥有较好的边缘检测性能,在角点检测方面也有较好的效果,能够应用在需要轮廓提取的环境下。
2惯性视觉融合
不管特征点法还是直接法要准确地估计出图像之间的变换需要消耗很大的计算量,所以实际应用中,为了易于工程的实现,一个机器人往往携带多种传感器,由于惯性传感器(IMU)能够短时间精确测量传感器的角速度和加速度,但是如果长时间应用累积误差严重。可以与相机传感器互补,称为视觉惯性里程计即VIOisualnertialdometry),可以分为基于滤波和基于优化的两大类VIO,也可以根据两个传感器数据应用的方法不同分为松耦合和紧耦合,松耦合是指IMU和相机分别进行位姿估计,紧耦合是指相机数据和IMU数据融合,共同构建运动方程和观测方程进行位姿估计。现阶段基于非线性优化的方案如VINSMono,OKVIS。
也有基于滤波的紧耦合算法,此类算法需要把相机图像特征向量加入到系统的状态向量中,使得状态向量的维度非常高,从而也会消耗更大的计算资源,MSCKFultitateonstraintKalmanilter)[35]和ROVIORObustVisualInertialOdometry)[36]是其中具有代表性的算法。传统的基于EKF的视觉里程计与IMU数据融合时,EKF的更新是基于单帧观测的,每个时刻的状态向量保存的是当前帧的位姿信息、速度、变换矩阵和IMU的误差等,使用IMU做预测步骤,视觉信息作为更新步骤。而MSCKF以类似滑动窗口(slidingwindow)的形式,使一个特征点在几个位姿都被观察到,从而建立约束,再进行滤波更新,它避免了仅依赖两帧相对的运动估计带来的计算负担和信息损失,大大提高了收敛性和鲁棒性。
ROVIO是一种基于单目相机的KF滤波VIO,它直接优点是计算量小,但是需要根据设备型号调整到适合的参数,参数也是影响精度的重要因素。ROVIO应用在SLAM系统中时没有闭环,也没有建图的线程,所以误差会有漂移。针对基于滤波的松耦合,为了降低计算量,通过把图像信息当作了一个黑盒,将VO的位姿估计结果与IMU数据进行融合,来减小状态向量维度。是一个很好的思路。
3基于深度学习的视觉里程计
除了与别的传感器进行融合这一思路之外,由于视觉里程计获得都是图像信息,而深度学习在对图像识别,检测,分割方面的发展尤为迅速,从而为两者结合提供了良好的基础。深度学习与视觉里程计的多方面都有所结合,相比传统视觉里程计的人工特征,深度学习有着较为优秀的自动特征表征能力,且和直接法一样不需要计算描述子,也不需要传统视觉里程计复杂的工程,比如相机参数标定,各种传统的人工特征或者角点在面临光照变化,动态场景或者是图像纹理较为单一的情况时都有一定的敏感性,对于这些问题,基于深度学习的特征提取技术使得视觉里程计的性能有了一定的改善。用来解决位姿估计问题的深度学习技术大致分为了监督学习和无监督学习。
监督学习网络中,最开始Kendall等人提出PoseNet[42],他们使用CNN粗略地预测出相机的运动的速度和方向,使用SFM自动生成训练样本的标注,通过迁移学习实现了在没有大量数据标签情况下,输出较为精准的位姿信息。Costante等[43]用稠密光流代替RGB图像作为CNN的输入。该系统设计了三种不同的CNN架构用于VO的特征学习,实现了算法在图像模糊和曝光不足等条件下的鲁棒性。然而实验结果表明同Poseet一样,训练数据对于算法影响很大,当图像序列帧间运动较大时,算法误差很大,这主要是由于训练数据缺少高速训练样本。
4总结与展望
本文对视觉里程计的三个模块即像素跟踪模块,外点排除模块和位姿估计模块进行了综述,介绍了近几年的视觉里程计算法。其中着重介绍了像素跟踪模块,包括传统的基于点特征法和直接法的视觉里程计(VO),还对比较新颖的线特征和线特征运用在VO系统中的优势进行了介绍,在外点排除和运动估计模块就对简略地介绍了相关理论知识。最后结合最新的算法详细介绍了当前较为火热的两个VO发展趋势,即以视觉惯性传感器数融合为例的多传感器融合的SLAM前端算法,以及基于深度学习的视觉里程计。挑战和机遇是一对“双胞胎”,技术也是如此,面临挑战时往往会带来机遇。如下是未来视觉里程计可能的发展趋势:
结合地图语义信息。由于环境中普遍存在动态场景造成的实际样本和检测样本之间误差降低了目前大部分的算法模型的位姿估计,轨迹的精度,通过结合语义地图的方式将从几何和,语义两个方面来感知场景,使得应用对象对环境内容有抽象理解,获取更多的信息,从而来减小动态场景带来的误差。还可以为优化和SLAM中的回环检测带来更多信息从而提高精度。但是计算成本会增加了很多。适合通过高性能的计算设备用于实现精密地图构建,场景理解等功能的场合。
多机器人协同的视觉里程计系统。单个机器人可能无法快速熟悉环境特征及其相对于环境特征的位置,也可能在执行任务的过程中损坏,为了稳定的精准导航,开发分布式系统来实现视觉里程计也将是一个发展方向,使用多个机器人可以有很多优点,例如,减少了探索一个环境所需的时间,不同的信息来源提供了更多的信息,分布式系统对故障更健壮。但是多个机器人VO的缺点就是必须将每个机器人生成的地图合并成一张全局地图,同时还需要自我定位与其他机器人协作。由于单个地图以及机器人之间的相对姿态的不确定性,使得地图合并变得更加困难。这两个方向都将是未来视觉里程计的研究者的感兴趣的方向。
参考文献Reference
[1]PatraS,AggarwalH,AroraH,etal.Computingegomotionwithlocalloopclosuresforegocentricvideos[C]//IEEEWinterConferenceonApplicationsofComputerVision(WACV),2017:454463
[2]WangS,Zhang,ZhuF.MonocularvisualSLAMalgorithmforautonomousvesselsailinginharborarea[C]//25thSaintPetersburgInternationalConferenceonIntegratedNavigationSystems(ICINS),2018:1
[3]HeH,JiaYH,SunL.SimultaneouslocationandmapconstructionbasedonRBPFSLAMalgorithm[C]//ChineseControlandDecisionConference(CCDC),2018:49074910
[4]MoravecHP.Obstacleavoidanceandnavigationintherealworldbyaseeingrobotrover[D].PaloAlto:StanfordUniversity,1980
[5]NisterD,NaroditskyO,BergenJ.Visualodometry[C]//Proceedingsofthe2004IEEEComputerSocietyConferenceonComputerVisionandPatternRecognition,2004:652659
作者:胡凯1,2,吴佳胜1,2,郑翡1,2,张彦雯1,2,陈雪超1,2,鹿奔1,2