首页> 中国专利> 一种基于在线学习的移动增强现实跟踪注册方法

一种基于在线学习的移动增强现实跟踪注册方法

摘要

本发明提供一种基于在线学习的移动增强现实跟踪注册方法,通过减少反投影误差来优化摄像机的位姿矩阵,通过建立虚拟三维物体的坐标系和场景平面的坐标系,以利于更精确的完成虚拟物体对真实场景的注册;使用局部区域的特征点快速查找算法来恢复丢失的特征点,通过对检测到的场景特征点进行在线学习,使得场景三维点坐标的权值实时更新,贡献大的三维点逐步增大对应的权值,贡献小的逐步降低对应的权值,并通过学习计算出全局分值最大投影矩阵,从而进一步提高了增强现实注册的精准度。

著录项

  • 公开/公告号CN103854283A

    专利类型发明专利

  • 公开/公告日2014-06-11

    原文格式PDF

  • 申请/专利权人 北京理工大学;

    申请/专利号CN201410059259.3

  • 发明设计人 刘越;桂振文;王涌天;

    申请日2014-02-21

  • 分类号G06T7/00(20060101);G06T19/00(20110101);G06F17/30(20060101);

  • 代理机构11120 北京理工大学专利中心;

  • 代理人仇蕾安

  • 地址 100081 北京市海淀区中关村南大街5号

  • 入库时间 2024-02-20 00:11:30

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-04-05

    授权

    授权

  • 2014-07-09

    实质审查的生效 IPC(主分类):G06T7/00 申请日:20140221

    实质审查的生效

  • 2014-06-11

    公开

    公开

说明书

技术领域

本发明属于移动增强现实技术领域,具体涉及一种基于在线学习的移动增强现实跟踪注册方法。 

背景技术

增强现实技术(Augmented Real ity--AR)是当前计算机视觉领域中的研究热点之一,通过将虚拟物体与真实环境紧密结合,增强人们对真实环境的理解与体验。增强现实技术的特性是:虚实结合、实时交互和跟踪注册。其中,跟踪注册是增强现实技术需要解决的核心问题之一。尤其是基于视觉的无标志点跟踪注册技术,由于其精度高、设备简单且对环境无干扰,逐渐成为增强现实领域的研究热点。 

传统的无标志点跟踪注册技术大多适用于小范围的简单场景,算法只需处理少量的场景及其特征的跟踪注册问题。随着应用领域的不断拓宽,增强现实技术的应用开始向着户外复杂环境延伸。因此,适用于户外复杂环境的无标志点跟踪注册技术,尤其是跟踪精度高、实时性和鲁棒性强且存储容量低的无标志点跟踪注册技术,已经成为未来增强现实发展的难点和关键。国外相关机构已经在这一领域展开研究,并取得了一定的成果。国内在这方面的研究则刚刚起步,理论和实践均不够成熟。因此,进行户外复杂环境下的无标志点跟踪注册技术研究,是国内广泛深入开展相关增强现实系统研究的必然要求,也是我国发展具有独立自主知识产权的户外复杂环境下增强现实系统的必备条件。 

在移动增强现实领域中,针对平面物体及有标志物体的注册方法已经取得了很好的发展与应用。但是,智能手机端对自然场景的识别与跟踪注册仍然是一个困难的、开放的问题。 

2011年学者T.Guan等(文献1T.Guan;L.Y.Duan.“Real Time Camera Pose Estimation for WideAreaAugmented Reality Application”.IE EE Computer Graphics and Application,31(3):56-68,2011)为能够正确识别自然场景,保存了大量的参考视图,通过局部特征匹配方法来对自然场景 进行识别,但该算法计算量非常大,无法应用于智能手机端。 

2013年,学者Liya Duan等(文献2.Liya Duan;Tao Guan;Yawei Luo.“Wide area regi stration on camera phones for mobile augmented reality applications”Sensor Review,2013,33(3):209-219.)提出了局部区域特征的注册方法,将输入图像中提取的相应特征与场景图像的物体特征进行匹配,然后根据匹配点的对应关系对物体的三维位姿进行计算。但是,需要用计算机事先对所有场景进行三维重建,建立场景的三维点与场景相关图像的二维关系,并且都需要用户手动将所在场景的三维点坐标下载下来,才能实现后续的跟踪注册算法,否则将产生巨大的搜索空间,难以满足实时性的要求。 

发明内容

针对现有的技术存在的问题,本发明提供一种基于在线学习的移动增强现实跟踪注册方法。 

本发明的技术方案是: 

一种基于在线学习的移动增强现实跟踪注册方法,包括以下步骤: 

步骤1:对摄像机的内参进行标定; 

步骤2:建立场景特征点的三维坐标信息库,根据立体视觉三维重建的基本原理,对场景特征点进行重建; 

步骤3:继续拍摄当前场景,获取当前帧的视频图像,检测图像的自然特征; 

步骤4:将当前视频图像与指定的参考图像进行匹配,根据匹配结果,判断当前场景图像与参考图像是否相似;如果匹配不相似进入步骤5,匹配成功进入步骤6; 

步骤5:设定一个识别失败的计数器N,2≤N≤5,当失败次数大于N时,说明已经进入一个新的场景,进入步骤1对新场景进行重建,否则由于摄像头移动太快而导致匹配失败,则进入步骤3; 

步骤6:根据描述符映射表找到当前图像描述符对应的3D点坐标,描述符2D坐标到3D空间坐标的投影矩阵; 

步骤7:根据投影矩阵和已知的内参矩阵恢复出当前图像帧的位姿[R|t]矩阵; 

步骤8:进行几何校验和反投影误差分析判断是不是有效的位姿矩阵如果是有效的位姿矩阵执行步骤9,否则返回步骤3; 

步骤9:存在有效的位姿矩阵,定义虚拟物体的坐标系,合成有效的注册矩阵,叠加三维虚拟物体; 

步骤10:利用光流跟踪算法对场景图像的局部特征点进行跟踪和在线学习; 

步骤11:对跟踪的点进行分析,若跟踪上的特征点个数大于并且小于T1,20<T1<30,40<T1<50,跟踪到的点数影响了计算位姿矩阵的精度,则进行丢失的特征点恢复; 

步骤12:当跟踪到的特征点数小于,表明已经对当前场景跟踪失败,用户已经到达新的场景需要重新进行重建和识别,则返回步骤2。 

步骤2中对场景特征点进行重建的具体步骤包括: 

2.1从不同角度拍摄待注册场景的两幅图像作为参考图像,并做特征提取与匹配操作 

2.2根据特征匹配结果,利用RANSAC算法去除误匹配点,根据匹配的特征点对求取基本矩阵F。 

2.3由基本矩阵F和已知的摄像头内参得到本质矩阵E。 

2.4根据本质矩阵E正确估计摄像机外参数R和t。 

2.5将摄像机内参数K和外参数R和t组合成投影矩阵、。 

2.7重建两幅图像匹配好的特征点。 

2.8建立图像局部特征对应的三维坐标信息库。 

步骤2.1对图像的特征提取和匹配,包括对图像的去噪声和进行灰度处理。特征点提取使用二进制特征检测算法BRISK,特征匹配使用汉明距离度量法。设定一个阈值T,30≤T≤50,当前图像的特征与参考图像的所有特征进行比较,选取距离最短的,并且小于T的特征作为匹配特征。 

本发明的有益效果: 

(1)通过减少反投影误差来优化摄像机的位姿矩阵。。 

(2)通过建立虚拟三维物体的坐标系和场景平面的坐标系,以利于更精确的完成虚拟物体对真实场景的注册。 

(3)使用局部区域的特征点快速查找算法来恢复丢失的特征点,大大节 省了特征检测时间,进一步提高了实时更新注册信息的速度。 

(4)通过对检测到的场景特征点进行在线学习,使得场景三维点坐标的权值实时更新,贡献大的三维点逐步增大对应的权值,贡献小的逐步降低对应的权值,并通过学习计算出全局分值最大投影矩阵,从而进一步提高了增强现实注册的精准度。 

附图说明

图1为本发明具体实施的在线学习移动增强现实注册算法流程图; 

图2为本发明中场景重建三角测量法原理图; 

图3为本发明中图像尺度空间的BRISK特征示意图; 

图4为本发明中2D描述符到3D坐标点的关联表。 

具体实施方式

下面将结合附图对本发明的具体实施方式做详细描述。 

本实施方式中,实施基于户外自然场景的移动增强现实注册方法时,采用四核、1G内存的智能手机,摄像头分辨率为640*320,内参为标定好的,默认一直不变。对摄像头中出现的自然场景进行识别和跟踪注册。 

图1示出了本发明的户外自然场景移动增强现实跟踪注册流程,主要包括以下步骤: 

步骤1:用摄像机标定方法得到摄像机的内参K。 

通过摄像机定标,可以确定与摄像机自身的几何和光学特性有关的参数(即内部参数),以及它相对于某一世界坐标系的三维位置和方向(即外部参数)。摄像机的定标在增强现实系统中起着重要作用。本发明采用ARTOOLKIT方法,利用黑色边框的平板图案作为系统标识的四个角点及其在图像中的位置计算矩阵单应矩阵的值。 

摄像机成像基本原理,屏幕坐标系与世界坐标系之间的变换关系可用下式表示: 

xcyc1=λCTcwXwYwZw1=λCR1R2R3TXwYwZw1

=λfu0u00fvv0001r11r12r13t1r21r22r23t2r31r32r33t3XwYwZw1

其中λ为比例因子,C为未知摄像头内参矩阵,Tcw为待求三维注册矩阵,R1、R2、R3为旋转分量,T为平移分量,Xi=XwYwZw1为世界坐标系中点坐标, xi=xcyc1为对应的像素坐标。此处假设主点(u0,v0)值为(0,0)。规定标识平面与世界坐标系下的Z=0平面重合,则平面标识上某点在世界坐标系下的坐标(Xw,Yw,0,1)与该点在第k帧图像中的投影之间的关系可以用下式表示: 

xcyc1=λfu000fv0001r11r12r13t1r21r22r23t2r31r32r33t3XwYw01=λfur11fur22fut1fvr21fvr22fut2r31r320t3XwYw1=λm11m12m13m21m22m23m31m32m33XwYw1=λHwkXwYw1

其中3×3矩阵将真实世界中z=0平面上的某点映射到第k帧图像,称之为单应性矩阵,下标w代表世界坐标系。单应矩阵通过下式来计算: 

xi×HwkXi=0

求出由三维注册矩阵旋转分量的正交性可得: 

r112+r122+r132=1

r212+r222+r232=1

r11r21+r12r22+r13r23=0

由以上三式及可导出: 

m11m12/fu2+m21m22/fv2+m31m32=0---(1)

λ(m112/fu2+m212/fv2+m312)=1---(2)

λ(m122/fu2+m222/fv2+m322)=1---(3)

由上(2),(3)两式消去2λ,并结合式(1)可求出fu,fv,从而获取摄像头内参矩阵C=fu0u00fvv0001.

fu=m11m12(m212-m222)-m21m22(m112-m122)m21m22(m312-m322)-m31m32(m212-m222)

fv=m11m12(m212-m222)+m21m22(m112-m122)m11m12(m312-m322)-m31m32(m212-m222)

步骤2:建立场景自然特征的三维点坐标信息库: 

步骤2.1从不同角度拍摄待注册场景的两幅图像作为参考图像,并做特征提取与匹配操作,对当前场景的两幅参考图像,用BRISK算法提取图像的自然特征点,再对两幅图像的BRISK特征点进行匹配,找到两幅图像的相似特征点。 

步骤2.2根据图2所示的与原理,利用特征匹配点集,求取基本矩阵F。 

图2为欧式空间场景三维重建的原理图,图2中的两个摄像机,设O1和O2分别是两个摄像机的光心;X为三维空间中一点,它在第一个摄像机的成像平面A1上的投影点为x1,在第二个摄像机的成像平面A2上的投影点为x2。则x2必然位于平面A2内,而且必然位于由x1决定的一条直线L1上,其中L2是A2和由三维点X、两光心O1和O2决定的平面T的交线。这是因为在图像A1上的投影点是x2的空间三维点,必然位于射线O1X上,而O1X在A2上的投影为L2。L2称为x1决定的极线(epipolar line)。不仅如此,从图中还可以发现,A2上所有的极线交于同一点e2,此点称为极点(epipolar point)。它是O1O2和A2的交点。可以这样解释:任给A1上一点x1它在A2上决定的极线L2是A2与T的交线,其中T是由x1决定的极平面(epipolar plane)。由于两摄像机的地位 是完全对称的,因而类似的分析可发现,A2上任一点x2在A1上决定一条极线L1,L1上所有极线交于极点e1。e1和e2都在直线O1O2上。x1、x2、O1和O2四点共面,其中x1和x2是对应点,这被称为共面约束。它在已知摄像机内部参数的情况下从运动求解结构中有重要作用。 

步骤2.3在已知摄像机内参的情况下,很容易由基本矩阵F得到本质矩阵E由基本矩阵F得到本质矩阵E。基本矩阵到本质矩阵的转换关系为: 

F=C2-TEC1-1

E=C2TFC1

C1,C2是摄像机的内参矩阵,摄像机2内参矩阵的转置的逆矩阵是摄像机1的内参矩阵的逆矩阵。 

步骤2.4根据本质矩阵E正确估计摄像机外参数R和t。通过对本质矩阵E进行奇异值分解,可以得到两个3阶的酉矩阵U,V和一个3阶的对角阵S,如下式: 

E=USVT

在通过设置W=0-10100001,求出旋转矩阵R和平移向量t可以表示为R=UWVT或者R=UWTVT,t=u3或者t=-u3,其中u3是矩阵U的最后一列。 

2.5将摄像机内参数K和外参数R和t组合成投影矩阵P1、P2。 

P1=KI0P2=KRt

其中K为摄像机内部参数,我们假设两幅图像的摄像机内参相同,R和t为两个摄像机之间的外部参数,I为3×3的单位矩阵。 

根据步骤1.5,R和t都有两种取值,则推出此时摄像机的第二个投影矩阵P2有四种可能出现的情况,分别表示为: 

①P2=K[UWVT|u3

   ②P2=K[UWVT|-u3

③P2=K[UWTVT|u3

    ④P2=K[UWTVT|-u3

本发明中根据空间的三维点必须同时在两个摄像机的前面,才能重建出空间三维坐标。这样只要用一个三维点作测试验证它是否在两个摄像机前面就可以从4个不同的解中确定一个作为摄像机矩阵P2。采用下面公式所示的方法,同时满足公式的为投影矩阵为P2。令 

x1,x2分别为重建点W=w1w2w3对应的反投影图像点,如果重建点W均在两个摄像机前面,它必须满足: 

x1w3>0且x2w3>0 

在得到摄像机内外参数K,R,t以及匹配点图像坐标x1和x2之后,我们接下来可以计算出每一个匹配点所对应的物体空间点X的具体坐标。对于投影矩阵P1,令P11,P12,P13,为对应于P1的行向量,(ui,vi,1)为对应于P1的图像上的第i个匹配点的齐次坐标,Xi为对应该匹配点的空间齐次坐标,s为一常量因子,则有: 

suivi1=P11P12P13Xisui=P11Xisvi=P12Xis=P13XiP13Xiui=P11XiP13Xivi=P12XiP13Xiui-P11Xi=0P13Xi-P12Xi=0P13ui-P11P13vi-P12Xi=0

同理,对于投影矩阵P2,令与点(ui,vi,1)对应的图像点的像素坐标为(ui′,vii,1),也可以得到类似的等式 

P23ui-P11P23vi-P12Xi=0

2.6重建两幅图像匹配好的特征点。根据图2所示欧式空间重建的三角测量法,已知匹配的图像点对直接反求出空间点三维坐标,重建出场景的三维结构。 

通过联立上两式可得: 

P13ui-P11P13vi-P12P23ui-P11P23vi-P12Xi=0

从上式中可以看出,此时是通过四个方程式求解三个未知数,在这种情况下,可以通过最小二乘法原理求解出Xi的值,具体实现步骤如下: 

首先令B=P13ui-P11P13vi-P12P23ui-P11P23vi-P12,则上式可写成BXi=O的形式,然后对4阶矩阵A的每一行进行规一化处理,即行中的每一个元素都除以该行的模,我们就可以得到一个新的4阶矩阵Bn,对BXi=0的求解问题就可变为求解对应(Bn)TBn的最小特征值的特征向量。对Bn进行奇异值分解, 

Bn=USVT

可以推导出Xi就等于最后一个酉矩阵V的最后一列。奇异值分解是最有用的矩阵分解方法中的一种,特别是对数值计算而言。给定一个方阵Bn,SVD把Bn分解为Bn=USV,其中U和V是正交矩阵,而S是一个元素为非负的对角阵。 

2.7建立图像局部特征对应的三维坐标信息库。将参考图像上的匹配的2D描述符与重建的场景3D点进行绑定,建立2D/3D的信息库。 

步骤3:继续拍摄当前场景,获取视频图像。将采集到的图像帧降采用为640*320分辨率的图像,再进行灰度处理转为灰度图,检测图像的自然特征。 

步骤4:将当前视频图像与指定的参考图像进行匹配,根据匹配结果,判断当前场景图像与参考图像是否相似拍。如果匹配不相似进入步骤5,匹配成功进入步骤6; 

关键匹配的具体步骤为: 

首先,进行特征提取。用BRISK算法构造图像金字塔,在每一层图像上使用fast算法提取角点,并对角点进行打分。满足如下情况的角点被认为是稳定特征点:得分高于相同层上相邻的8像素且得分高于相邻层上对应的像素点, 若角点位于最底层,则只需得分高于上一层即可。考虑到图像在坐标和尺度空间上的连续性,对提取到的特征点在坐标平面上和尺度空间上进行优化,得到表示特征点的最优坐标和尺度,如图3所示。 

再进行特征点描述符的构造与匹配。为了使特征点具有方向不变性,使用与SIFT相同的方法计算特征点的主方向。确定主方向以后,将特征点旋转到主方向。在特征点周围选取具有代表性的比较像素对pi和pj,通过对这些像素对灰度值的比较获得描述符的一位,具体公式如下。 

b=1,I(pjα,σj)>I(piα,σi)0,otherwise

选取n对比较像素对可以得到长度为n的描述符,BRISK特征描述符总共512位。 

其次,进行特征点匹配,因为BRISK特征是用二进制描述符来进行标示的,在进行匹配的时候需要在汉明空间进行比较。设定汉明距离阈值为设定一个阈值T,30≤T≤50,当前图像的特征与参考图像的所有特征进行比较,选取距离最短的,并且小于T的特征作为匹配特征。对于户外建筑,Brisk具有较好的匹配效果,如图4所示。 

最后,匹配图像的确定。当两幅图像匹配上的特征点数大于设定的阈值时确定为相似图像。或者设置一个匹配率,匹配上特征数量占总特征数量的比率,一般在户外场景干扰因素较多的情况比率阈值一般设定为30%-50%。 

步骤5:设定一个识别失败的计数器count,2≤N≤5,当失败次数大于N时,说明已经进入一个新的场景,进入步骤1对新场景进行重建,否则可能由于摄像头移动太快而导致匹配失败,进入步骤3; 

步骤6:根据描述符映射表找到当前图像描述符对应的3D点坐标,描述符2D坐标到3D空间坐标的投影矩阵。 

步骤7:根据投影矩阵和已知的内参矩阵恢复出当前图像帧的位姿[R|t]矩阵。根据已知的摄像机内参和投影矩阵以及坐标轴间的正交性恢复出每个平面三维注册矩阵T4,如下式。 

T4=r11r12r13t1r21r22r33t2r31r32r33t3

r11=λm11/fu,r12=λm12/fu,r13=r21r32-r3cr22, 

t1=λm13/fu,r21=λm21/fv,r22=λm22/fv,r23=r31r12-r11r32, 

t2=λm23/fv,r31=λm31,r32=λm32,r33=r11r22-r21r12, 

t2=λm33

步骤8:进行几何校验和反投影误差分析判断是不是有效的位姿矩阵如果是有效的位姿矩阵执行步骤9,否则执行步骤3。 

本发明使用RANSAC对2D/3D的对匹配点对进行几何校验,剔除误匹配点。在随机选择3对匹配点对计算投影矩阵时,确保选择的匹配对的图像特征点不是共线或者距离较近。 

每次选择三对匹配点计算出投影矩阵后,再随机选择一个空间特征点,进行测试,计算在图像上的投影点,判断能否在真实的图像上找到匹配的特征点。如果不存则丢弃此次投影矩阵。本发明通过设计一个计时器,设置为30ms,在这个时间里不断测试是否找到计算出来的投影矩阵较准确,并且包含匹配特征点对最多的投影矩阵。如果超时没有找到则判断没有有效的位姿矩阵。 

最后用Levenberg-Marquardt算法对投影矩阵进行优化,如下式: 

minPΣj=1N||xj-P(Xj)||

P是计算出来初始投影矩阵,xj是图像上的像素点,Xj是对应的是三维点,||xj-P(Xj)||是计算像素距离。 

步骤9:存在有效的位姿矩阵,定义虚拟物体的坐标系,合成有效的注册矩阵,叠加三维虚拟物体。由投影矩阵以及所获得的世界坐标系与平面坐标系之间的变换关系合成三维注册所需的变换矩阵。 

为了确定虚拟场景的叠加位置必须指定世界坐标系,本发明方法非常简单,只需在参考图像上指定四个可以构成方形的点即可。为了提高精确性,当用户在一幅图像上指定一点后,我们在另一幅图像上绘出与该点相对应的极 线,从而为用户指定对应点提供参照。通过以上重建的方法,可以计算出上述四点在摄像机坐标系中的位置,进而求出由四点构成的方形的平面,我们以方形的中心点为坐标原点0,方形的所在平面为世界坐标系XOY面,Z轴为XOY轴的法线。在建立世界坐标系的同时,已经确立了它与摄像机坐标系的变换关系T1。 

接下来的任务是为每一个平面指定一个坐标系。利用三维重建的方法,我们已经获取真实世界中平面上的特征点在摄像机坐标系下的位置,事实上由于不可能完全避免成像畸变和图像处理过程中的误差,同一平面上的特征点在经过上述重建过程后不可能精确的位于一张平面上,本专利是利用最小二乘法拟合一张与所有特征点距离平方和最小的平面来代表实际平面。将拟合平面作为平面坐标系的XOY面,以所有特征点的重心在拟合平面上的投影为原点构建坐标系,要求X,Y,Z三个坐标轴两两垂直,但对X和Y轴的具体方向不做要求。在建立平面坐标系的同时,已经获取了它与摄像机坐标系的变换关系T2。进而平面坐标系与世界坐标系的变换关系可以计算如下: 

T3=T2T1

三维注册的最终目的是获取摄像机坐标系与世界坐标系之间的坐标变换关系在离线阶段我们已经获取了平面坐标系与世界坐标系之间的变换关系Tend,而且规定待注册场景结构在系统运行过程中不发生变化,则Tend完全可以由下式推出。 

Tend=T4T3

完成虚拟叠加的三维物体到场景的移动增强现实的三维注册。 

步骤10:利用光流跟踪算法对场景图像的局部特征点进行跟踪和在线学习。 

在本发明中,参考图像以及摄像机连续拍摄的视频帧的分辨率统一设置为640*321。经测试,对纹理丰富的图像可以提取超过一千个特征点。特征点数目过多给后续的匹配和姿态计算增加了许多工作量,同时跟踪精度并不能够得到提高。在特征提取阶段,每一个特征点都可以计算出一个响应强度信息,响应强度越高,特征点越稳定。所以本文将图像特征点按响应强度进行排序,最后只选取响应强度最高的400个特征点。 

受限于移动平台的计算能力,无法对每一帧图像都通过提点匹配来计算摄 像机的姿态。在实际应用中,摄像机的姿态在相邻帧之间变化不会太大,通过帧与帧之间的连续性可以有效的估计特征点在下一帧中出现的位置,从而快速计算摄像机的姿态。 

在发明中,当通过brisk提点算法成功计算出摄像机的姿态以后,后续帧通过光流来计算特征点的坐标,进而计算摄像机的姿态。光流利用图像序列中的像素强度的时域变化和相关性来确定像素点的“运动”。光流算法基于如下假设:相邻帧之间亮度恒定,相邻帧之间目标运动比较微小。用I(x,y,t)表示t时刻像素点(x,y)的灰度值,可得如下公式: 

I(x,y,t)=I(x+dr,y+dy,t+dy) 

使用泰勒级数展开: 

I(x+dx,y+dy,t+dt)=I(x,y,t)+Ixdx+Iydy+Itdt

即:Ixdx+Iydy+Itdt=0 

u=dxdt,v=dydt

可得:Ixu+Iyv=-It

光流算法基于上述公式计算特征点像素的“运动”。在手机端使用光流算法计算相邻帧之间特征点的坐标变化用时只需几十毫秒。随着时间的推移,光流跟踪上的点数将越来越少,进而影响摄像机姿态的计算精度。在本发明中在光流点数小于一定阈值的情况下对当前图像提取特征点与参考图像进行匹配,同时如果在一定时间内都无法与关键帧建立匹配关系,则说明手机场景已经改变,则重新寻找正确的参考图像,直接进入步骤2场景初始化。 

本发明中利用已经跟踪到的特征点对在线场景进行学习,选择最分值最高的投影矩阵作为当前图像帧到三维坐标的投影矩阵,具体如下: 

设跟踪到的当前图像的2维坐标点为I={x1,....,xK},相应的描述符为D={d1,....,dk},对应的场景特征点的三维点为M={X1,...,XJ},C为匹配集合,C={(Xj,xk,sjk)|Xj∈M,xk∈I,sjk∈R},sjk为它们的匹配分数,R是分值集合。以前通常用公式(1),通过匹配点数最多的作为最好的投影矩阵,要不断的循环计算投影空间中的所有投影矩阵,时间代价非常大几乎是不可行。所以,本发 明进行采用改进的公式(2)设置了特征点分值集合w=[w1,....,wJ]T,得分最大的P投影矩阵作为最好的当前图像相对空间特征点投影矩阵,每采集一副图像都进行学习,对表现比较突出设置较高的权值。(3)式为场景三维点对应的权值。(4)式匹配的2D坐标对应的描述符。 

F(C,P)=Σ(Xj,xk)CE(||xk-P(Xj)||2<τ)---(1)

Fw=Σ(Xj,xk)CsjkE(||xk-P(Xj)||2<τ)=<w,L(C,P)>---(2)

w=[w1,....,wJ]T     (3) 

L(C,P)=[L1(C,P),…,LJ(C,P)]TLj(1≤j≤j)     (4) 

Lj(C,P)=dk(Xj,xk)C:||xk-P(xj)||2<τ0otherwise

w=[w1,....,wJ]T权值的获得通过式(5)来获得。式(5)类似于支持向量机计算最大分类面的解法。为N个样本的惩罚参数。Δ(Pi,P)为损失函数,从Pi,P考虑的内点数量不一样。Pi样本图像正确投影矩阵为得分值最大的投影矩阵,P为任何其它尝试投影矩阵。γij为内点得分的惩罚参数,内点的得分值应该高于其它的图像非内点的分值,v为应于内点分值小于其它图像非内点的分值时的权值参数。如下面公式: 

minw,ϵλ2||w||2+Σi=1Nϵi---(5)

s.t.i:ϵi0

i,PPi:δFwi(P)Δ(Pi,P)-ϵi

δFwi(P)=Fw(Ci,P)-Fw(Ci,Pi)

本发明才用式(6)所示的公式来计算最大分类面的参数。并考虑内点的分值,内点的的分值要高于其它图像相对应的匹配点。 

minw,ϵλ2||w||2+Σi=1Nϵi+vΣiNΣ(X,xk)Ci*γij---(6)

s.t.PP::δFwi(P)Δ(Pi,P)-ϵi

j:γij0

i,(Xj,xk),kk:<wj,dk-dk>1-γij

公式(7)是对公式(6)以损失函数的形式进行的优化 

minw,ϵλ2||w||2+Σi=1N(maxTT1{Δ(Pi,P)-δFwi(p)})+vΣiNΣ(uj,vk)Ci*(maxkk{1-<wj,dk-dk>})}---(7)

本发明中采用梯度下降的方法对wj的值进行更新,如式(8)。设(It,Pt)为第t副训练图像三维点坐标集和需要估计的投影矩阵,在三维坐标点重建好时都会设置一个初始的权值wj,并关联一个描述符,Pt通过逐个方法t副图像对应三维点投影矩阵的分值,选择最大的为Pt计算得出,再通过公式(7)计算出第j个三维点的权值然后利用公式(8)更新

wjt+1(1-ηtλ)wjt+E(maxPPi{Δ(Pt,P)-δFwi(P)}>0)ηtajt+E(ujCt*)E(maxkk{1-<wj,dk-dk>}>0)ηtvβjt,

P^argmaxPPi{Δ(Pt,P)-δFwi(P)}

k^argmaxkk{1-<wj,dk-dk>}

ajt=Lj(Ct,Pt)-Lj(Ct,P^),

βjt=dk-dk^.---(8)

而在线学习阶段,通过RANSAC计算方法,得到的中间P投影矩阵进行得分值判断,选择得分最高的作为Pt,次高的为Pi用来进行更新下一帧的输出分值最高的Pt,为当前图像的投影矩阵,进行分解,分解出当前帧的位姿矩阵[R|t]。 

步骤11:对跟踪的点进行分析,若跟踪上的特征点个数大于T1并且小于T2,20<T1<30,40<T2<50,跟踪到的点数影响了计算位姿矩阵的精度,则进行丢失的特征点恢复。T1为最少跟踪到点的阈值,T2位置矩阵计算的质量控制阈值。 

丢失的特征点恢复通过计算参考图像与关键帧图像的单应矩阵来和当前图像对应三点的投影矩阵来实现,如下式: 

x2jy2j1=Hr2xrjyrj1

对空间三维点X对应在第二幅图像上参考图像的2D坐标点为xr=xrjyrj1如果在当前图像上没有匹配的2D特征点,利用投影矩阵进行重投影,计算对应当前图像的坐标,并在该图像坐标点的周围10个像素领域内,计算BRISK特征向量D1。再根据上式,利用当前图像的与第二幅参考图像的单应矩阵将以x2为中心的像素块位置投影到当前图像,xrjyrj1为xr领域上的第j个像素,x2jy2j1为单应变换后当前图像的像素坐标,并计算单应变化后的像素块的BRISK特征向量D2。计算D1与D2的汉明距离,满足设定的阈值T,则认为是匹配特征点,将D1向量对应的特征点进行恢复,否则认为该特征点被遮挡了丢掉该特征点。 

步骤12:当跟踪到的特征点数小于T1,表明已经对当前场景跟踪失败,用户已经到达新的场景需要重新进行重建和识别,进入步骤2。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号