虚拟物体被遮挡的区域确定方法、装置及终端设备制造方法及图纸

技术编号:26035741 阅读:28 留言:0更新日期:2020-10-23 21:13
本申请适用于软件技术领域,提供了虚拟物体被遮挡的区域确定方法、装置及终端设备,所述方法包括:根据当前帧的特征点以及对应的深度信息构建所述当前帧的场景三维地图;若检测到用户在所述场景三维地图上发出的点击操作,在所述点击操作对应的位置上显示指定的虚拟物体;根据所述当前帧的特征点信息构建三维场景模型;比较所述三维场景模型与所述虚拟物体的模型的深度值;根据比较结果确定所述虚拟物体在当前帧被遮挡的区域;根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在下一帧被遮挡的区域。通过上述方法能够极大提高识别虚拟物体在序列帧被遮挡的区域的运算速度。

【技术实现步骤摘要】
虚拟物体被遮挡的区域确定方法、装置及终端设备
本申请属于软件
,尤其涉及虚拟物体被遮挡的区域确定方法、装置、终端设备及计算机可读存储介质。
技术介绍
增强现实(AugmentedReality,AR)是一种能够把计算机产生的虚拟物体或系统提示信息叠加到真实场景中,实现对真实场景有效扩充和增强现实的新技术,并能支持用户与其进行交互。在使用AR技术的过程中,涉及到遮挡一致性的问题。遮挡一致性要求虚拟物体能够遮挡背景,也能被前景物体遮挡,具备正确的虚实遮挡关系。只有正确的处理虚拟物体在真实世界中的前后位置关系,才能使用户在实时的合成空间中正确感知虚实物体的层次关系。错误的虚实遮挡关系,容易造成感官上的空间位置错乱,不能达到超越现实的感官体验。随着AR研究领域细化发展,在解决AR虚实遮挡方面,目前主要2种解决方法。第一种方法:三维建模遮挡法。基于模型重建的遮挡方法需要预先对可能与虚拟物体发生遮挡关系的真实物体进行三维建模,用三维模型覆盖真实物体,然后比较虚实物体模型的深度值,根据比较结果,只渲染虚拟物体未被真实物体遮挡的部分,不渲染虚拟物体被遮挡的部分。第二种方法:基于深度计算的遮挡方法。基于深度计算的遮挡方法需要使用立体视差实时计算真实场景的深度信息,然后根据视点位置、虚拟物体的叠加位置以及求得的场景深度信息,判断虚拟物体与真实场景的空间位置关系,进行相应的遮挡渲染,从而实现虚实遮挡。由于第一种方法需要预先重建真实物体的三维模型,因此需要巨大的工作量。而第二种方法,由于需要利用立体视觉方法计算场景的深度,因此计算量也大,且在场景变化时还需要重新计算深度值。综上可知,现有方法需要较大的计算量才能确定出虚拟物体的被遮挡部分。
技术实现思路
有鉴于此,本申请实施例提供了虚拟物体被遮挡的区域确定方法、装置、终端设备及计算机可读存储介质,以解决现有技术中难以快速确定出虚拟物体被遮挡的区域的问题。本申请实施例的第一方面提供了一种虚拟物体被遮挡的区域确定方法,包括:根据当前帧的特征点以及对应的深度信息构建所述当前帧的场景三维地图;若检测到用户在所述场景三维地图上发出的点击操作,在所述点击操作对应的位置上显示指定的虚拟物体;根据所述当前帧的特征点信息构建三维场景模型;比较所述三维场景模型与所述虚拟物体的模型的深度值;根据比较结果确定所述虚拟物体在当前帧被遮挡的区域;若所述虚拟物体在当前帧被遮挡的区域的特征点在所述当前帧的下一帧被匹配的对数大于或等于预设匹配对数阈值,根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在所述当前帧的下一帧被遮挡的区域。本申请实施例的第二方面提供了一种虚拟物体被遮挡的区域确定装置,包括:场景三维地图构建单元,用于根据当前帧的特征点以及对应的深度信息构建所述当前帧的场景三维地图;虚拟物体显示单元,用于若检测到用户在所述场景三维地图上发出的点击操作,在所述点击操作对应的位置上显示指定的虚拟物体;三维场景模型构建单元,用于根据所述当前帧的特征点信息构建三维场景模型;深度值比较单元,用于比较所述三维场景模型与所述虚拟物体的模型的深度值;当前帧被遮挡的区域确定单元,用于根据比较结果确定所述虚拟物体在当前帧被遮挡的区域;下一帧被遮挡的区域确定单元,用于若所述虚拟物体在当前帧被遮挡的区域的特征点在所述当前帧的下一帧被匹配的对数大于或等于预设匹配对数阈值,根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在所述当前帧的下一帧被遮挡的区域。本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述方法的步骤。本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述方法的步骤。本申请实施例与现有技术相比存在的有益效果是:由于根据当前帧的特征点以及对应的深度信息构建所述当前帧的场景三维地图,而不是根据当前帧的所有信息构建该当前帧的场景三维地图,因此,减少了构建过程涉及的图像数据量,从而提高当前帧的场景三维地图的构建速度。并且,由于虚拟物体在当前帧被遮挡的区域的特征点在所述当前帧的下一帧被匹配的对数大于或等于预设匹配对数阈值时,根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在所述当前帧的下一帧被遮挡的区域,因此,无需参考该下一帧的所有图像数据,减少了参与计算的图像数据,从而极大提高了计算虚拟物体在下一帧被遮挡的区域的速度。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的第一种虚拟物体被遮挡的区域确定方法的流程图;图2是本申请实施例提供的第二种虚拟物体被遮挡的区域确定方法的流程图;图3是本申请实施例提供的第三种虚拟物体被遮挡的区域确定方法的流程图;图4是本申请实施例提供的一种虚拟物体被遮挡的区域确定装置的结构示意图;图5是本申请实施例提供的终端设备的示意图。具体实施方式以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。具体实现中本文档来自技高网
...

【技术保护点】
1.一种虚拟物体被遮挡的区域确定方法,其特征在于,包括:/n根据当前帧的特征点以及对应的深度信息构建所述当前帧的场景三维地图;/n若检测到用户在所述场景三维地图上发出的点击操作,在所述点击操作对应的位置上显示指定的虚拟物体;/n根据所述当前帧的特征点信息构建三维场景模型;/n比较所述三维场景模型与所述虚拟物体的模型的深度值;/n根据比较结果确定所述虚拟物体在当前帧被遮挡的区域;/n若所述虚拟物体在当前帧被遮挡的区域的特征点在所述当前帧的下一帧被匹配的对数大于或等于预设匹配对数阈值,根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在所述当前帧的下一帧被遮挡的区域。/n

【技术特征摘要】
1.一种虚拟物体被遮挡的区域确定方法,其特征在于,包括:
根据当前帧的特征点以及对应的深度信息构建所述当前帧的场景三维地图;
若检测到用户在所述场景三维地图上发出的点击操作,在所述点击操作对应的位置上显示指定的虚拟物体;
根据所述当前帧的特征点信息构建三维场景模型;
比较所述三维场景模型与所述虚拟物体的模型的深度值;
根据比较结果确定所述虚拟物体在当前帧被遮挡的区域;
若所述虚拟物体在当前帧被遮挡的区域的特征点在所述当前帧的下一帧被匹配的对数大于或等于预设匹配对数阈值,根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在所述当前帧的下一帧被遮挡的区域。


2.如权利要求1所述的虚拟物体被遮挡的区域确定方法,其特征在于,所述根据所述虚拟物体在当前帧被遮挡的区域确定所述虚拟物体在所述当前帧的下一帧被遮挡的区域,包括:
获取区域放大值,根据所述区域放大值以及所述虚拟物体在当前帧被遮挡的区域,在所述当前帧的下一帧确定放大后的区域,所述区域放大值大于或等于1;
根据所述放大后的区域的特征点信息构建新的三维场景模型;
比较所述新的三维场景模型与所述虚拟物体的模型的深度值;
根据比较结果确定所述虚拟物体在所述当前帧的下一帧的被遮挡的区域。


3.如权利要求2所述的虚拟物体被遮挡的区域确定方法,其特征在于,在所述获取区域放大值之前,包括:
获取相机从当前帧到所述当前帧的下一帧的旋转角度,根据所述旋转角度定区域放大值。


4.如权利要求1所述的虚拟物体被遮挡的区域确定方法,其特征在于,所述根据所述当前帧的特征点信息构建三维场景模型具体为:
根据所述当前帧的特征点信息以及预先标定的外参矩阵确定所述当前帧的特征点的三维坐标;
根据所述特征点的三维坐标构建三维场景模型。


5.如权利要求4所述的虚拟物体被遮挡的区域确定方法,其特征在于,在所述根据所述特征点的三维坐标构建三维场景模型之前,包括:
判断所述当前帧的特征点的数量是否少于预设特征点数量阈值;
对应地,所述根据所述特征点的三维坐标构建三维场景模型具体为:
若所述当前帧的特征点的数量少于预设特征点数量阈值,则获取所述当前帧的深度图的深度信息;
从所述深度信息提取深度特征点数据;
根据所述特征点的三维坐标以及所述深度特征点数据构建三维场景模型。


6.如权利要求1至5任一项所述的虚拟物体被遮挡的区域确定方法,其特征在于,所述根据比较结果确定所述虚拟物体在当前帧被遮挡的区域,包括:
若虚拟物体的模型的所有...

【专利技术属性】
技术研发人员:王宇鹭
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:广东;44

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

1