一种基于SLAM的移动增强现实跟踪注册方法和系统与流程

文档序号:18400976发布日期:2019-08-09 23:52阅读:266来源:国知局
一种基于SLAM的移动增强现实跟踪注册方法和系统与流程

本发明涉及增强现实跟踪注册技术领域,具体而言涉及一种基于slam的移动增强现实跟踪注册方法和系统。



背景技术:

目前,增强现实跟踪注册技术主要可分为基于传感器跟踪注册技术、基于视觉跟踪注册技术和混合跟踪注册技术三类。其中基于视觉跟踪注册技术受到业内越来越多的关注,主要可分为基于标识或自然特征的方法。基于标识的方法是室内增强现实应用中最为常用的跟踪注册方法,典型如artoolkit库、artag库和src库等。但是该方法受标识物的约束,且对光照、遮挡等因素有较为严格的要求。另外就是基于自然特征的跟踪注册算法,该方法在现实场景中选取固定的特征点,最后通过跟踪注册算法在场景中叠加虚拟物体。虽然该类方法识别精度高、判别力强,但是复杂度高,且鲁棒性和准确性有待进一步提高。

slam算法最初是在机器人领域得到应用,主要是通过特征点来确定目标在未知场景中的姿态和实时构建三维环境地图,本发明申请把slam算法引入到增强现实中可以更好的提升跟踪注册方法的精确度和鲁棒性,从而能够有效地解决增强现实中因相机快速运动导致注册的虚拟物体漂移的问题。



技术实现要素:

本发明目的在于提供一种基于slam的移动增强现实跟踪注册方法,通过移动相机采集现实场景图像,采用agast-freak算法提取现实场景图像中的特征点,完成场景地图初始化,再使用imu数据和所提取到的特征点构建局部场景地图,插入关键帧,拓展并优化全局地图,注册虚拟物体以备实时调用。本发明在局部地图扩展优化用时、移动端表现、定位精度、速度、鲁棒性等方面均占有优势。

为达成上述目的,结合图1至图3,本发明提出一种基于slam的移动增强现实跟踪注册方法,所述方法包括:

s1:移动相机采集现实场景图像,采用agast-freak算法提取现实场景图像中的特征点,完成场景地图初始化;

s2:使用imu数据和所提取到的特征点定位相机姿态信息和构建局部场景地图;

s3:构建全局地图,并在全局地图中插入关键帧,拓展和优化全局地图;

s4:根据所拍摄现实场景图像中的特征点完成相机实时定位和虚拟物体精确注册。

本发明采用改进后的agast和freak算法,在相机视差满足θ≥1°条件下能够稳定提取现实场景图像中的特征点,完成场景地图初始化。

进一步地,在使用imu数据和所提取到的特征点定位相机姿态信息和构建局部场景地图步骤中,利用移动设备自带的imu惯性传感器,测量出线性加速度a和角速度ω,通过限制线性加速度a和角速度ω的取值以约束滑动窗口内相邻帧之间的运动,包括以下步骤:

s21:测量得到线性加速度和角速度

s22:根据下述公式计算得到线性加速度a和角速度ω的真实值:

其中,为加速度和角速度测量值与真实值之间误差的高斯噪声,ba和bω为加速度和角速度跟随时间变换的偏移量,采用角速度和加速度的高斯噪声nω、na由驱动的随机游走模型计算。

s23:计算得到当前帧在全局坐标系下的实时线性速度v;

s24:获取相机的运动参数扩展公式为m=(r,p,v,ba,bω),其中,r为旋转矩阵,p为当前帧相机的速度;

s25:根据连续时间下的运动模型,计算得到相机运动参数的瞬时变化率为:

其中,ωx、ωy、ωz分别是在x、y和z方向上的角速度;wa和wω分别是加速度、角速度的惯性测量的高斯噪声。

在步骤s3中,后台构建全局地图,并在全局地图中插入关键帧,拓展、更新、优化全局地图的过程包括以下子步骤:

s31,在前台线程将当前帧确定为一个新关键帧fk,加入全局地图;

s32,在每个新关键帧fk中观测是否存在新的特征点x,如果存在新的特征点,判断特征点x与新关键帧fk最大的射线夹角α(i,k)是否满足条件α(i,k)≥δα,若满足,将特征点x定义为全局地图中的一个特征点,其中,δα为相机的最小旋转角;

s33,使用新加入的特征点x扩展新关键帧fk中已有的可见三维平面,通过计算特征点x到平面距离|ntx+d|的值,确定特征点x是否在平面p上,具体的:

如果三维点x同时满足以下条件,将该三维点x加入到属于平面p的三维点集p中:

(1)x不属于其他任何三维平面;

(2)三维点集p中至少有一个三维特征点靠近点x;

(3)|ntx+d|≤0.01dk,其中dk是关键帧fk中所有可见三维特征点的平均深度;

s34,对平面p上未确定的三维点采用以下步骤获取新三维平面:

s341,随机抽取三个三维特征点初始化三维点集合p,采用奇异值分解求解三维平面参数p;

s342,判断与三维点集p中点相邻的三维点是否符合平面方程,若符合,将三维点添加至三维点集p中;

s343,采用三维点集p中所有点对平面p进行优化,优化公式为:

s344,使用经过优化的平面参数p扩展三维点集p,重复步骤s343,反复执行扩展三维点集p与平面参数p优化,直至没有新的三维特征点能够被加入至三维点集p;

s345,随机抽取三个三维特征点重复步骤s341~s344。

最后采用unity进行三维建模,绘制虚拟物体,将虚拟物体导入至编程环境中以备实时调用。

基于前述方法,本发明还提及一种基于slam的移动增强现实跟踪注册系统,所述系统包括以下模块:

1)相机。

2)用于移动相机采集现实场景图像,采用agast-freak算法提取现实场景图像中的特征点,完成场景地图初始化的模块。

3)用于使用imu数据和所提取到的特征点定位相机姿态信息和构建局部场景地图的模块。

4)用于构建全局地图,并在全局地图中插入关键帧,拓展和优化全局地图的模块。

5)用于根据所拍摄现实场景图像中的特征点完成相机实时定位和虚拟物体精确注册的模块。

以上本发明的技术方案,与现有相比,其显著的有益效果在于:

(1)可以应对相机的快速运动,保证虚拟物体注册的精确度和稳定性。

(2)使用imu数据,能够准确定位相机的姿态信息,确保方法的鲁棒性。

(3)由于融合imu数据的agast-freakslam,即使在缺少特征点的情况下,在跟踪和定位精度方面都有优秀表现。

应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的发明主题的一部分。

结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。

附图说明

附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:

图1是本发明的一种基于slam的移动增强现实跟踪注册方法流程图。

图2是本发明的一种基于slam的移动增强现实跟踪注册方法定位相机姿态信息和构建局部场景地图流程图。

图3是本发明的一种基于slam的移动增强现实跟踪注册方法插入关键帧构建全局地图流程图。

图4是本发明的使用agast-freak方法提取并匹配场景中特征点的实验结果图及原理示意图。

图5是本发明的使用融合imu数据的agast-freakslam方法构建的场景地图及原理示意图。

图6是本发明的一种基于slam的移动增强现实跟踪注册方法的实验结果图。

具体实施方式

为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。

在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定义在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。

结合图1至图3,本发明提及一种基于slam的移动增强现实跟踪注册方法,其特征在于,所述方法包括:

s1:移动相机采集现实场景图像,采用agast-freak算法提取现实场景图像中的特征点,完成场景地图初始化。其中,使用agast-freak方法提取并匹配场景中特征点的实验结果图及原理示意图如图4所示。

在相机视差满足θ≥1°条件下,缓慢移动相机,采集几帧现实场景图像,使用改进后的agast和freak算法(以下称为agast-freak算法)稳定提取现实场景图像中的特征点,完成场景地图初始化。改进后的agast-freak算法在尺度和旋转等方面具有良好的鲁棒性。

s2:使用imu数据和所提取到的特征点定位相机姿态信息和构建局部场景地图。

延续orb-slam算法框架,使用agast-freak算法提取到的现实场景图像中的特征点,并且与imu数据相融合,定位相机姿态信息和构建局部场景地图。

该方法主要针对移动端的增强现实。由于移动设备通常自带imu惯性传感器,因此可利用自带的imu惯性传感器,测量出线性加速度a和角速度ω,通过限制线性加速度a和角速度ω的取值以约束滑动窗口内相邻帧之间的运动,起到定位相机姿态信息及构建局部场景地图的目的。该步骤s2具体可分解为如下子步骤:

s20:假设惯性传感器与相机的位置一样。

s21:测量得到线性加速度和角速度

s22:根据下述公式计算得到线性加速度a和角速度ω的真实值,

其中,为加速度和角速度测量值与真实值之间误差的高斯噪声,ba和bω为加速度和角速度跟随时间变换的偏移量,采用角速度和加速度的高斯噪声nω、na由驱动的随机游走模型计算。

s23:计算得到当前帧在全局坐标系下的实时线性速度v。

s24:获取相机的运动参数扩展公式为m=(r,p,v,ba,bω),其中,r为旋转矩阵,p为当前帧相机的速度。

s25:根据连续时间下的运动模型计算,得到相机运动参数的瞬时变化率为,

其中ωx、ωy、ωz分别是在x、y和z方向上的角速度;wa和wω分别是加速度、角速度的惯性测量的高斯噪声。

在实际应用中,通常将优化变量设置为imu的方位,通过相机和imu的相对位置得到相机的实际方位。前文假设imu惯性传感器与相机的位置一样,但实际上imu传感器与相机位置并不相同,所以可事先对imu传感器进行标定。

s3:在后台构建全局地图,并在全局地图中插入关键帧,拓展和优化全局地图。

可分解为如下子步骤:

s31,在前台线程将当前帧确定为一个新关键帧fk,加入全局地图,后台进程被激活。

s32,在每个新关键帧fk中观测是否存在新的特征点x,如果存在新的特征点,判断特征点x与新关键帧fk最大的射线夹角α(i,k)是否满足条件α(i,k)≥δα,若满足,将特征点x定义为全局地图中的一个特征点,其中,δα为相机的最小旋转角。

s33,使用新加入的特征点x扩展新关键帧fk中已有的可见三维平面,通过计算特征点x到平面距离|ntx+d|的值,确定特征点x是否在平面p上,具体的:

如果三维点x同时满足以下条件,将该三维点x加入到属于平面p的三维点集p中:

(1)x不属于其他任何三维平面。

(2)三维点集p中至少有一个三维特征点靠近点x。

(3)|ntx+d|≤0.01dk,其中dk是关键帧fk中所有可见三维特征点的平均深度。

s34,对平面p上未确定的三维点采用以下步骤获取新三维平面,可采用类似ransac的方案:

s341,随机抽取三个三维特征点初始化三维点集合p,采用奇异值分解求解三维平面参数p。

s342,判断与三维点集p中点相邻的三维点是否符合平面方程,若符合,将三维点添加至三维点集p中。

s343,采用三维点集p中所有点对平面p进行优化,优化公式为:

s344,使用经过优化的平面参数p扩展三维点集p,重复步骤s343,反复执行扩展三维点集p与平面参数p优化,直至没有新的三维特征点能够被加入至三维点集p。

s345,随机抽取三个三维特征点重复步骤s341~s344。

全局地图在后台构建并优化完成。图5是使用融合imu数据的agast-freakslam方法构建的场景地图及示意图。

s4:根据所拍摄现实场景图像中的特征点完成相机实时定位和虚拟物体精确注册。

可任意选择要注册的位置,也即特征点位置,通过在unity中进行三维建模,绘制虚拟物体,并将虚拟物体导入以备实时调用。图6是基于本发明的实验结果图。

利用本发明方法,按照实施方案所述,本发明算法在特征提取和特征跟踪模块用时基本与其它算法(实验对比算法为orb-slam、ptam算法)持平,但在地图拓展部分用时明显优于其它算法。并且本发明算法能够保证程序运行超过30帧,良好满足在移动端增强现实的表现。各算法在前台图像每帧处理时间指标的对比结果如表1所示。

表1前台图像每帧处理时间

进一步的,在具体实施中,将本发明算法与orb-slam、lsd-slam算法在定位关键帧和跟踪关键帧两个方面进行比较。在比较过程中,根据相机移动速度将算法对比按两种情况进行区分。a种情况中相机在小范围内移动,包括三种序列;b种情况中相机在快速运动过程中,也包括三种序列。

通过对两种情况六种序列进行算法比较,结果如下:

(1)相机在小范围内移动情况下,比较定位关键帧的标准误差、成功跟踪帧数占总帧数的比率两个指标,各算法表现均良好,本发明算法整体表现与其它两种算法无差别。

(2)相机在快速运动过程中,与增强现实应用在初始化时的真实情况最为符合,本发明算法在定位关键帧的标准误差指标上存在一定误差,但在成功跟踪帧数占总帧数的比率指标上明显高于其他算法。

在相机快速运动过程中,每种算法成功跟踪帧数占总帧数的比率指标都较低,这是增强现实所面临最具挑战性的问题,但通过比较具体数值可知本发明算法的整体跟踪效果优于orb-slam与lsd-slam。

(3)从定位关键帧的标准误差指标上看,本发明算法能够达到orb-slam算法的定位精度,而且在速度上略快于orb-slam算法,鲁棒性略优于orb-slam算法。

在真实的增强现实应用中,无规律的运动相对较多,本文算法的鲁棒性略占优势。

表2、表3分别为定位关键帧的标准误差、成功跟踪帧数占总帧数的比率两个指标在两种情况六种序列下三种算法的对比结果。

表2定位关键帧的标准误差

表3成功跟踪帧数占总帧数的比率

虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1