相机姿态追踪过程的重定位方法、装置、设备及存储介质制造方法及图纸

技术编号:19216608 阅读:44 留言:0更新日期:2018-10-20 07:02
本申请公开了一种相机姿态追踪过程的重定位方法、装置、设备及存储介质,属于计算机领域。所述方法包括:前端程序获取所述多个标记图像中第i个标记图像后采集的目标图像;当目标图像符合重定位条件时,前端程序将目标图像发送给后端程序;前端程序将当前图像进行特征点追踪得到第一单应性矩阵;后端程序将目标图像进行重定位得到第二单应性矩阵;前端程序根据第一单应性矩阵和第二单应性矩阵计算得到第三单应性矩阵,将第三单应性矩阵进行分解得到当前图像的当前相机姿态参数。本申请解决了后端程序无法控制重定位结果成功的时间,得到的好几帧图像之前的重定位结果不能直接用于当前图像的重定位的问题。

【技术实现步骤摘要】
相机姿态追踪过程的重定位方法、装置、设备及存储介质
本申请实施例涉及计算机
,特别涉及一种相机姿态追踪过程的重定位方法、装置、设备及存储介质。
技术介绍
在AR(AugmentedReality,增强显示)领域,搭载相机的主体需要在没有环境先验信息的情况下,于运动过程中追踪相机在现实环境中的运动姿态。在相关技术中将相机的运动过程划分为至少两段追踪过程进行追踪,每段追踪过程对应各自的标记图像(Anchor)。通常将相机采集的第一帧图像作为第1个标记图像,在相机后续采集到当前图像时,设备对当前图像与第1个标记图像之间共同具有的特征点进行追踪,根据当前图像与第1个标记图像之间的特征点位置变化计算得到相机在现实世界中的相机姿态变化。当当前图像相对于第i个标记图像的追踪效果差于预设条件时,将当前图像的上一个图像切换为第i+1个标记图像,开启第i+1段追踪过程。其中,i为正整数。但某些场景下会发生当前图像中的特征点丢失(Lost),无法继续追踪的情况。此时需要使用重定位方法对当前图像进行重定位,但重定位过程耗时较高,不仅可能会阻塞主线程,还可能会在若干帧图像以后才得到重定位结果。
技术实现思路
本申请实施例提供了一种相机姿态追踪过程的重定位方法、装置、设备及存储介质,可以用于解决重定位过程耗时较高,不仅可能会阻塞主线程,还可能会在若干帧图像以后才得到重定位结果的问题。所述技术方案如下:根据本申请的一个方面,提供了一种相机姿态追踪过程的重定位方法,应用于运行有前端程序和后端程序的设备中,所述前端程序用于按序执行多个标记图像的相机姿态追踪过程,所述方法包括:所述前端程序获取所述多个标记图像中第i个标记图像后采集的目标图像,i为正整数;当所述目标图像符合重定位条件时,所述前端程序将所述目标图像发送给所述后端程序;所述前端程序获取在所述目标图像后采集的当前图像,将所述当前图像进行特征点追踪得到第一单应性矩阵,所述第一单应性矩阵用于计算从所述目标图像至所述当前图像之间的相机姿态变化量;所述后端程序将所述目标图像进行重定位得到第二单应性矩阵,向所述前端程序发送所述第二单应性矩阵,所述第二单应性矩阵用于计算从第一个标记图像至所述目标图像之间的相机姿态变化量;所述前端程序根据所述第一单应性矩阵和所述第二单应性矩阵计算得到第三单应性矩阵,将所述第三单应性矩阵进行分解得到所述当前图像的当前相机姿态参数。根据本申请的另一方面,提供了一种相机姿态追踪过程的重定位装置,所述装置包括:前端程序模块和后端程序模块的设备中,所述前端程序模块用于按序执行多个标记图像的相机姿态追踪过程,所述前端程序模块,还用于获取所述多个标记图像中第i个标记图像后采集的目标图像,i为正整数;所述前端程序模块,还用于当所述目标图像符合重定位条件时,将所述目标图像发送给所述后端程序模块;所述前端程序模块,还用于获取在所述目标图像后采集的当前图像,将所述当前图像进行特征点追踪得到第一单应性矩阵,所述第一单应性矩阵用于计算从所述目标图像至所述当前图像之间的相机姿态变化量;所述后端程序模块,还用于将所述目标图像进行重定位得到第二单应性矩阵,向所述前端程序模块发送所述第二单应性矩阵,所述第二单应性矩阵用于计算从第一个标记图像至所述目标图像之间的相机姿态变化量;所述前端程序模块,还用于根据所述第一单应性矩阵和所述第二单应性矩阵计算得到第三单应性矩阵,将所述第三单应性矩阵进行分解得到所述当前图像的当前相机姿态参数。根据本申请的另一方面,提供了一种电子设备,所述电子设备包括存储器和处理器;所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上所述的重定位方法。根据本申请的另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的重定位方法。本申请实施例提供的技术方案带来的有益效果是:通过前端程序在目标图像的重定位过程中,将当前图像进行特征点追踪得到第一单应性矩阵,由后端程序对目标图像进行重定位得到第二单应性矩阵,根据第一单应性矩阵和第二单应性矩阵计算得到第三单应性矩阵,分解第三单应性矩阵得到当前图像的当前相机姿态参数,不仅解决了后端程序无法控制重定位结果成功的时间,则得到的好几帧图像之前的重定位结果不能直接用于当前图像的重定位的问题,还由于该第三单应性矩阵用于表征当前图像相对于第一个标记图像的相机姿态变化,而第一个标记图像的尺度默认为1,所以能够消除多次单应性矩阵分解时因实际尺度参数的变化所带来的误差,提高重定位的精度。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请一个示例性实施例提供的AR应用场景的场景示意图;图2是本申请一个示例性实施例提供的AR应用场景的场景示意图;图3是本申请一个示例性实施例提供的Anchor-SwitchingARSystem算法的原理示意图;图4是本申请一个示例性实施例提供的电子设备的结构框图;图5是本申请一个示例性实施例提供的重定位过程的时序示意图;图6是本申请一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;图7是本申请另一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;图8是本申请另一个示例性实施例提供的相机姿态追踪过程的重定位方法的原理示意图;图9是本申请另一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;图10是本申请另一个示例性实施例提供的相机姿态追踪过程的重定位方法的原理示意图;图11是本申请另一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;图12是本申请一个示例性实施例提供的第一个标记图像、目标图像和一阶关键帧图像的对比示意图;图13是本申请一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;图14是本申请一个示例性实施例提供的结果模块的框图;图15是本申请一个示例性实施例提供的后端程序的工作流程图;图16是本申请一个示例性实施例提供的前端程序的工作流程图;图17是本申请一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;图18是本申请一个示例性实施例提供的相机姿态追踪过程的重定位装置的框图;图19是本申请一个示例性实施例提供的电子设备的框图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。首先对本申请涉及的若干个名词进行简介:AR:一种在相机采集图像的过程中,实时地计算相机在现实世界(或称三维世界、真实世界)中的相机姿态参数,根据该相机姿态参数在相机采集的图像上添加虚拟元素的技术。虚拟元素包括但不限于:图像、视频和三维模型。AR技术的目标是在屏幕上把虚拟世界套接在现实世界上进行互动。该相机姿态参数包括旋转矩阵和位移向量,旋转矩阵用于表征相机在现实世界中发生的旋转角度,位移向量用于表征相机在现实世界中发生的位移距离。例如,参见图1和参见图2,设备在相机拍摄到的图像中添加了一个虚拟人物形象。随着相机在现实世界中的运动本文档来自技高网...

【技术保护点】
1.一种相机姿态追踪过程的重定位方法,其特征在于,应用于运行有前端程序和后端程序的设备中,所述前端程序用于按序执行多个标记图像的相机姿态追踪过程,所述方法包括:所述前端程序获取所述多个标记图像中第i个标记图像后采集的目标图像,i为正整数;当所述目标图像符合重定位条件时,所述前端程序将所述目标图像发送给所述后端程序;所述前端程序获取在所述目标图像后采集的当前图像,将所述当前图像进行特征点追踪得到第一单应性矩阵;所述后端程序将所述目标图像进行重定位得到第二单应性矩阵,向所述前端程序发送所述第二单应性矩阵;所述前端程序根据所述第一单应性矩阵和所述第二单应性矩阵计算得到第三单应性矩阵,将所述第三单应性矩阵进行分解得到所述当前图像的当前相机姿态参数。

【技术特征摘要】
1.一种相机姿态追踪过程的重定位方法,其特征在于,应用于运行有前端程序和后端程序的设备中,所述前端程序用于按序执行多个标记图像的相机姿态追踪过程,所述方法包括:所述前端程序获取所述多个标记图像中第i个标记图像后采集的目标图像,i为正整数;当所述目标图像符合重定位条件时,所述前端程序将所述目标图像发送给所述后端程序;所述前端程序获取在所述目标图像后采集的当前图像,将所述当前图像进行特征点追踪得到第一单应性矩阵;所述后端程序将所述目标图像进行重定位得到第二单应性矩阵,向所述前端程序发送所述第二单应性矩阵;所述前端程序根据所述第一单应性矩阵和所述第二单应性矩阵计算得到第三单应性矩阵,将所述第三单应性矩阵进行分解得到所述当前图像的当前相机姿态参数。2.根据权利要求1所述的方法,其特征在于,所述将所述当前图像进行特征点追踪得到第一单应性矩阵之前,还包括:将所述目标图像切换为第i+1个标记图像;所述将所述当前图像进行特征点追踪得到第一单应性矩阵,包括:将所述当前图像相对于所述第i+1个标记图像进行特征点追踪,得到所述第一单应性矩阵。3.根据权利要求2所述的方法,其特征在于,所述前端程序根据所述第一单应性矩阵和所述第二单应性矩阵计算得到第三单应性矩阵,包括:所述前端程序根据如下公式计算得到所述第三单应性矩阵hcf;hcf=hcl*hrelocalization;其中,hcf是所述第一单应性矩阵,hrelocalization是所述第二单应性矩阵。4.根据权利要求1所述的方法,其特征在于,所述将所述当前图像进行特征点追踪得到第一单应性矩阵之前,还包括:获取第四单应性矩阵H4,所述第四单应性矩阵H4是所述目标图像相对于所述第i个标记图像进行特征点追踪得到的;所述将所述当前图像进行特征点追踪得到第一单应性矩阵,包括:将所述当前图像相对于所述第i个标记图像进行特征点追踪,得到第五单应性矩阵H5;根据所述第四单应性矩阵H4和所述第五单应性矩阵H5,计算得到所述第一单应性矩阵。5.根据权利要求4所述的方法,其特征在于,所述根据所述第四单应性矩阵H4和所述第五单应性矩阵H5,计算得到所述第一单应性矩阵,包括:所述前端程序按照如下公式计算得到所述第一单应性矩阵hcl:hcl=h5*h4-1;所述前端程序根据所述第一单应性矩阵和所述第二单应性矩阵计算得到第三单应性矩阵,包括:所述前端程序按照如下公式计算得到所述第三单应性矩阵:hcf=hcl*hrelocalization=h5*h4-1*hrelocalization;其中,hrelocalization是所述第二单应性矩阵。6.根据权利要求1至5任一所述的方法,其特征在于,所述后端程序将所述目标图像进行重定位得到第二位姿参数,包括:所述后端程序将所述目标图像相对于所述第一个标记图像进行重定位,得到所述第二位姿参数;和/或,所述后端程序将所述目标图像相对于关键帧图像库中的关键帧图像进行重定位,得到所述第二位姿参数;所述关键帧图像是重定位成功且相对于所述第一个标记图像存在重定位结果的图像。7.根据权利要求6所述的方法,其特征在于,所述关键帧图像库包括:相对于所述第一个标记图像进行一阶重定位成功的一...

【专利技术属性】
技术研发人员:林祥凯凌永根暴林超刘威
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1