增强现实AR交互方法、装置、电子设备及存储介质与流程

文档序号:23468611发布日期:2020-12-29 12:55阅读:74来源:国知局
增强现实AR交互方法、装置、电子设备及存储介质与流程

本公开涉及增强现实技术领域,具体而言,涉及一种增强现实ar交互方法、装置、电子设备和存储介质。



背景技术:

增强现实(augmentedreality,ar)技术是一种将虚拟信息与真实世界巧妙融合的技术,该技术可以将虚拟信息与真实环境实时地叠加到一个画面。虽然ar在过去数年间已经取得了长足的进步,但是在ar体验中可以发现,现有技术中的ar设备所呈现的ar显示效果较为单一。因此,对ar设备呈现的增强现实场景的效果的优化以及用户交互体验的提升,愈发重要。



技术实现要素:

本公开实施例至少提供一种ar交互方法、装置、电子设备及存储介质。

第一方面,本公开实施例提供了一种ar交互方法,包括:

基于ar设备拍摄的现实场景图像,在ar设备展示与所述现实场景图像匹配的ar画面;所述ar画面中展示有至少一个虚拟对象,所述至少一个虚拟对象中包括关联虚拟对象,所述关联虚拟对象包括第一虚拟子对象和第二虚拟子对象;

检测针对所述关联虚拟对象的目标触发操作,在所述目标触发操作满足预设条件的情况下,在所述ar画面中展示所述第一虚拟子对象对应的第一ar特效,以及所述第二虚拟子对象对应的第二ar特效,所述第一ar特效与所述第二ar特效之间存在关联。

本公开实施例中,基于ar设备拍摄的现实场景图像,显示相应的ar画面,且ar画面中展示有至少一个关联虚拟对象,使得在对关联虚拟对象触发时展示相关联的第一ar特效和第二ar特效,进而提升了ar特效的显示效果,丰富了用户体验。

根据第一方面,在一种可能的实施方式中,所述检测针对所述关联虚拟对象的目标触发操作,包括:

检测作用在所述ar设备的屏幕上的触发操作;

识别所述触发操作在所述ar设备的屏幕上的屏幕坐标位置;

基于所述屏幕坐标位置以及所述关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定所述触发操作是否为针对所述关联虚拟对象的目标触发操作。

本公开实施例中,基于触发操作在所述ar设备的屏幕上的屏幕坐标位置以及关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定触发操作是否为针对所述关联虚拟对象的目标触发操作,可以将作用在ar设备屏幕上的操作与现实场景相结合,提升交互的真实性。

根据第一方面,在一种可能的实施方式中,所述基于所述屏幕坐标位置以及所述关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定所述触发操作是否为针对所述关联虚拟对象的目标触发操作,包括:

根据所述触发操作作用在所述ar设备屏幕上的屏幕坐标位置,以及屏幕坐标系与实时定位与地图构建slam坐标系之间的转换关系,确定与所述屏幕坐标位置对应的slam坐标位置;

将所述slam坐标位置映射到所述三维虚拟场景地图中,得到所述触发操作作用在所述三维虚拟场景地图中的虚拟世界坐标位置;

在所述虚拟世界坐标位置位于所述预设位置区域内的情况下,确定所述触发操作为针对所述关联虚拟对象的目标触发操作。

本公开实施例中,通过实时定位与地图构建slam坐标,来实现触发操作作用在ar设备屏幕上的屏幕坐标位置到三维虚拟场景地图中的虚拟世界坐标位置的转换,进而确定该触发操作是否触发到虚拟对象,不仅实现了从现实世界到虚拟世界的定位,且该定位方法较为精准,提高了用户的交互体验。

根据第一方面,在一种可能的实施方式中,所述在所述ar画面中展示所述第一虚拟子对象对应的第一ar特效,以及所述第二虚拟子对象对应的第二ar特效,包括:

在所述ar画面中展示所述第一虚拟子对象发生第一状态变化的第一ar特效,以及所述第二虚拟子对象发生第二状态变化的第二ar特效。

本公开实施例中,通过关联虚拟对象中的第一虚拟子对象和第二虚拟子对象的状态变化来展示相应的ar特效,使得ar特效灵活逼真,提高了ar特效的展示效果。

根据第一方面,在一种可能的实施方式中,所述第一状态变化包括形态变化,所述第二状态变化包括位置变化。

本公开实施例中,关联的第一虚拟子对象和第二虚拟子对象的ar特效分别包括了形态变化和位置变化的不同效果,使得特效画面丰富多彩,且通过关联的动态的展示效果更能提高视觉效果。

根据第一方面,在一种可能的实施方式中,基于ar设备拍摄的现实场景图像,在ar设备展示与所述现实场景图像匹配的ar画面,包括:

基于所述ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,在所述ar设备展示与所述ar设备的实时定位位姿匹配的ar画面。

本公开实施例中,基于预先构建的三维虚拟场景地图来设计虚拟对象在现实场景中的展示特效,可以使得虚拟对象的展示特效与现实场景融入性更好。

根据第一方面,在一种可能的实施方式中,基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,在ar设备展示与所述ar设备的实时定位位姿匹配的ar画面,包括:

基于所述ar设备拍摄的现实场景图像,以及所述预先构建的三维虚拟场景地图,确定所述ar设备的初始定位位姿;

基于所述ar设备的初始定位位姿,通过实时定位与地图构建slam,确定所述ar设备的实时定位位姿;

基于所述ar设备的实时定位位姿,在ar设备展示与所述ar设备的实时定位位姿匹配的ar画面。

本公开实施例中,通过slam确定ar设备的实时定位位姿,再基于ar设备的实时定位位姿,在ar设备展示与ar设备的实时定位位姿匹配的ar画面,如此,可使得每次展示虚拟对象的现实场景环境不同,进而使得虚拟对象可以在不同的现实空间内展示特效效果,为用户带来不同的视觉体验。

根据第一方面,在一种可能的实施方式中,所述目标触发操作满足预设条件包括以下至少一种:

所述目标触发操作的次数超出预设次数、所述目标触发操作的时长超出预设时长。

本公开实施例中,通过操作次数和操作时长来对目标触发操作满足预设条件进行限定,可以增加用户交互的趣味性。

根据第一方面,在一种可能的实施方式中,在ar设备展示与所述现实场景图像匹配的ar画面,包括:

基于预设的不同交互阶段分别对应的所述虚拟对象的ar特效数据,获取当前达到的目标交互阶段所对应的所虚拟对象的目标ar特效数据;

基于所述目标ar特效数据,在所述ar画面中展示所述虚拟对象。

本公开实施例中,基于预设的不同交互阶段分别对应的所述虚拟对象的ar特效数据,获取当前达到的目标交互阶段所对应的所虚拟对象的目标ar特效数据,在不同阶段匹配不同的ar特效数据,丰富了用户的交互体验。

第二方面,本公开实施例提供了一种ar交互装置,包括:

ar画面展示模块,用于基于ar设备拍摄的现实场景图像,在ar设备展示与所述现实场景图像匹配的ar画面;所述ar画面中展示有至少一个虚拟对象,所述至少一个虚拟对象中包括关联虚拟对象,所述关联虚拟对象包括第一虚拟子对象和第二虚拟子对象;

ar特效展示模块,用于检测针对所述关联虚拟对象的目标触发操作,在所述目标触发操作满足预设条件的情况下,在所述ar画面中展示所述第一虚拟子对象对应的第一ar特效,以及所述第二虚拟子对象对应的第二ar特效,所述第一ar特效与所述第二ar特效之间存在关联。

根据第二方面,在一种可能的实施方式中,所述ar特效展示模块具体用于:

检测作用在所述ar设备的屏幕上的触发操作;

识别所述触发操作在所述ar设备的屏幕上的屏幕坐标位置;

基于所述屏幕坐标位置以及所述关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定所述触发操作是否为针对所述关联虚拟对象的目标触发操作。

根据第二方面,在一种可能的实施方式中,所述ar特效展示模块具体用于:

根据所述触发操作作用在所述ar设备屏幕上的屏幕坐标位置,以及屏幕坐标系与实时定位与地图构建slam坐标系之间的转换关系,确定与所述屏幕坐标位置对应的slam坐标位置;

将所述slam坐标位置映射到所述三维虚拟场景地图中,得到所述触发操作作用在所述三维虚拟场景地图中的虚拟世界坐标位置;

在所述虚拟世界坐标位置位于所述预设位置区域内的情况下,确定所述触发操作为针对所述关联虚拟对象的目标触发操作。

根据第二方面,在一种可能的实施方式中,所述ar特效展示模块具体用于:

在所述ar画面中展示所述第一虚拟子对象发生第一状态变化的第一ar特效,以及所述第二虚拟子对象发生第二状态变化的第二ar特效。

根据第二方面,在一种可能的实施方式中,所述第一状态变化包括形态变化,所述第二状态变化包括位置变化。

根据第二方面,在一种可能的实施方式中,所述ar画面展示模块具体用于:

基于所述ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,在所述ar设备展示与所述ar设备的实时定位位姿匹配的ar画面。

根据第二方面,在一种可能的实施方式中,所述ar画面展示模块具体用于:

基于所述ar设备拍摄的现实场景图像,以及所述预先构建的三维虚拟场景地图,确定所述ar设备的初始定位位姿;

基于所述ar设备的初始定位位姿,通过实时定位与地图构建slam,确定所述ar设备的实时定位位姿;

基于所述ar设备的实时定位位姿,在ar设备展示与所述ar设备的实时定位位姿匹配的ar画面。

根据第二方面,在一种可能的实施方式中,所述目标触发操作满足预设条件,包括以下至少一种:

所述目标触发操作的次数超出预设次数、所述目标触发操作的时长超出预设时长。

根据第二方面,在一种可能的实施方式中,所述ar画面展示模块具体用于:

基于预设的不同交互阶段分别对应的所述虚拟对象的ar特效数据,获取当前达到的目标交互阶段所对应的所虚拟对象的目标ar特效数据;

基于所述目标ar特效数据,在所述ar画面中展示所述虚拟对象。

第三方面,本公开实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面所述的ar交互方法的步骤。

第四方面,本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面所述的增强现实ar交互方法的步骤。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开实施例所提供的一种ar交互方法的流程图;

图2示出了本公开实施例所提供的第一虚拟子对象和第二虚拟子对象的示意图;

图3示出了本公开实施例所提供的一种检测针对关联虚拟对象的目标触发操作的方法流程图;

图4示出了本公开实施例所提供的一种确定触发操作是否为针对关联虚拟对象的目标触发操作的方法流程图;

图5示出了本公开实施例所提供的一种展示ar画面的方法流程图;

图6示出了本公开实施例所提供的一种生成三维虚拟场景地图的方法流程图;

图7示出了本公开实施例所提供的一种确定ar设备的初始位姿数据的方法流程图;

图8示出了本公开实施例所提供的一种增强现实ar交互装置的结构示意图;

图9示出了本公开实施例所提供的一种电子设备的示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。

增强现实(augmentedreality,ar)技术是一种将虚拟信息与真实世界巧妙融合的技术,该技术可以将虚拟信息与真实环境实时地叠加到一个画面。虽然ar在过去数年间已经取得了长足的进步,但是在ar体验中可以发现,现有技术中的ar设备所呈现的ar显示效果较为单一。因此,对ar设备呈现的增强现实场景的效果的优化以及用户的交互体验的提升,为本公开要解决的技术问题。

基于上述研究,本公开提供了一种ar交互方法,基于ar设备拍摄的现实场景图像,在ar设备展示与现实场景图像匹配的ar画面;其中,该ar画面中展示有至少一个关联虚拟对象,该关联虚拟对象包括第一虚拟子对象和第二虚拟子对象,并使得在对关联虚拟对象触发时展示与该第一虚拟子对象对应的第一ar特效,以及与该第二虚拟子对象对应的第二ar特效,进而提升了ar特效的显示效果,丰富了用户交互体验。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种ar交互方法进行详细介绍,本公开实施例所提供的ar交互方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为移动设备、用户终端、终端、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该ar交互方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

参见图1所示,为本公开实施例提供的ar交互方法的流程图,该ar交互方法包括以下s101~s102:

s101,基于ar设备拍摄的现实场景图像,在ar设备展示与现实场景图像匹配的ar画面;ar画面中展示有至少一个虚拟对象,至少一个虚拟对象中包括关联虚拟对象,关联虚拟对象包括第一虚拟子对象和第二虚拟子对象。

示例性地,可以基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,在ar设备展示与ar设备的实时定位位姿匹配的ar画面,进而可以使得虚拟对象的展示特效与现实场景融入性更好。其中,ar设备具体可以包括智能手机、平板电脑和ar眼镜等,也即,该ar设备可以是前述具有一定计算能力的计算机设备中的终端设备。ar设备可以内置图像采集部件也可以外接图像采集部件,在ar设备进入工作状态后,可以通过图像采集部件实时拍摄现实场景图像。

示例性地,还可以基于ar设备拍摄的现实场景图像,识别该现实场景图像中是否包括目标物体,在识别出当前的现实场景图像中包含目标物体的情况下,在ar设备中展示与该目标物体相匹配的ar画面。例如,当目标物体为客厅中的沙发时,一旦识别出现实场景图像中包含沙发,即可在沙发的预设方位展示虚拟对象,以形成与该目标物体相匹配的ar画面。

其中,关联虚拟对象包括第一虚拟子对象和第二虚拟子对象,是指第一虚拟子对象和第二虚拟对象之间存在关联关系,该关联关系可以是第一虚拟子对象和第二虚拟子对象之间存在的依托关系;也可以是第一虚拟子对象和第二虚拟子对象之间存在的控制关系,比如第一虚拟子对象对第二虚拟子对象的行为控制等,在此不做限定。

参见图2所示,为本申请一实施例中的第一虚拟子对象和第二虚拟子对象的示意图。在一些实施方式中,该第一虚拟子对象可以是控制虚拟子对象,该第二虚拟子对象可以是被困虚拟子对象,该控制虚拟子对象用于困住所述被困虚拟子对象。

例如,以点泡泡游戏为例来进行说明,该控制虚拟子对象可以为虚拟泡泡,该被困虚拟子对象可以为被困虚拟活体,比如各种小动物。本实施方式中,该第二虚拟子对象完全被该第一虚拟子对象包围。可以理解,该被困虚拟子对象还可以是其他类型的虚拟物,比如,炸弹等,在此不做限定。

在另一些实施方式中,该控制虚拟子对象还可以是劫持者,该被困虚拟子对象还可以是被劫持人员,只要第一虚拟子对象和第二虚拟子对象存在关联关系即可,具体的第一虚拟子对象和第二虚拟子对象的类型不做限定。

需要说明的是,虚拟对象还可以包括除关联虚拟对象以外的其他虚拟对象,比如,虚拟对象还可以包括空虚拟泡泡。

s102,检测针对关联虚拟对象的目标触发操作,在目标触发操作满足预设条件的情况下,在ar画面中展示第一虚拟子对象对应的第一ar特效,以及第二虚拟子对象对应的第二ar特效,第一ar特效与第二ar特效之间存在关联。

其中,第一ar特效与第二ar特效之间存在关联,是指第一ar特效与第二ar特效之间存在一定的关联关系,例如,该第二ar特效是由该第一ar特效所引起的,或者该第一ar特效与第二ar特效在发生的时间上存在一定的联系(比如同时发生),在此对该第一ar特效与第二ar特效之间存在关联关系不做限定。

示例地,可以在所述ar画面中展示所述第一虚拟子对象发生第一状态变化的第一ar特效,以及所述第二虚拟子对象发生第二状态变化的第二ar特效。如此,通过关联虚拟对象中的第一虚拟子对象和第二虚拟子对象的状态变化来展示相应的ar特效,使得ar特效灵活逼真,提高了ar特效的展示效果。

示例性的,第一状态变化可以包括形态变化,第二状态变化可以包括位置变化。如图2所示,第一虚拟子对象(虚拟泡泡)可以展示自身破裂的形态变化的第一ar特效,第二虚拟子对象(活体动物)可以展示飞走的位置变化的第二ar特效,如此,使得ar特效画面丰富多彩,通过关联的动态展示效果更能提高视觉的冲击,进而提高用户视觉体验。

示例性地,该第一状态变化还可以包括姿势变化,该第二状态变化也可以包括姿势变化。例如,第一虚拟子对象可以展示切换呈现的姿势变化的第一ar特效,第二虚拟子对象也可以展示切换呈现的姿势变化的第二ar特效。

本公开实施例中,基于ar设备拍摄的现实场景图像,显示相应的ar画面,且ar画面中展示有至少一个关联虚拟对象,使得在对关联虚拟对象触发时展示相关联的第一ar特效和第二ar特效,进而提升了ar特效的显示效果,丰富了用户体验。

下面将结合具体实施例对上述s101~s102进行详细介绍。

针对上述s101,在基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,在ar设备展示与所述ar设备的实时定位位姿匹配的ar画面时,如图3所示,可以包括以下s1011~1013:

s1011,基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,确定ar设备的初始定位位姿。

示例性地,可以通过预先拍摄现实场景得到的视频或者图像数据,生成表征现实场景的三维虚拟场景地图,具体生成方式详见后文,该三维虚拟场景地图基于现实场景对应的视频数据生成,可以构建与现实场景在相同坐标系下完全重合的三维虚拟场景地图,因此可以将该三维虚拟场景地图作为现实场景的高精度地图使用。

示例性地,三维虚拟场景地图是基于该现实场景的视频数据构成的,现实场景图像为该现实场景的图像,因此可以基于该现实场景图像和三维虚拟场景地图,来确定图像采集部件的当前位姿数据,因为图像采集部件位于ar设备上,且ar设备的屏幕展示的现实场景图像是由图像采集部件采集到的,因此可以将图像采集部件的当前位姿数据作为ar设备在现实场所中的初始位姿数据。

示例性地,ar设备的初始位姿数据包括ar设备在现实场所对应的世界坐标系下的当前位置坐标和当前姿态数据,其中当前姿态数据可以包括该ar设备的当前朝向,ar设备的当前朝向可以通过ar设备中的图像采集部件的光轴与世界坐标系中的x轴、y轴和z轴的当前夹角来表示。

s1012,基于ar设备的初始定位位姿,通过实时定位与地图构建slam,确定ar设备的实时定位位姿。

其中,slam是指设备在未知环境中从一个未知位置(初始定位位置)开始移动,在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现设备的自主定位和导航。本实施方式中,ar设备将该初始定位位姿中的位置作为该slam地图的坐标原点,并以该坐标原点为基础建立slam坐标系,在ar设备移动过程中可以确定ar设备在该slam坐标系中的位姿,再结合该坐标原点在三维虚拟场景地图中的位姿,可确定ar设备在三维虚拟场景地图中的实时定位位姿。

s1013,基于ar设备的实时定位位姿,在ar设备展示与ar设备的实时定位位姿匹配的ar画面。

在一些实施例中,在该实时定位位姿与预设的定位位姿相同时,在ar设备展示与ar设备的实时定位位姿匹配的ar画面。如此,可以保证虚拟对象每次展示的现实场景不同,进而使得虚拟对象可以在不同的现实空间内展示特效效果,为用户带来不同的视觉体验。

针对上述s102,在检测针对所述关联虚拟对象的目标触发操作时,如图4所示,可以包括以下s1021~1023:

s1021,检测作用在ar设备的屏幕上的触发操作。

s1022,识别触发操作在ar设备的屏幕上的屏幕坐标位置。

s1023,基于屏幕坐标位置以及关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定触发操作是否为针对关联虚拟对象的目标触发操作。

示例地,当用户触摸该ar设备的屏幕时,ar设备可以检测到作用在该屏幕上的触发操作,并识别出该触发操作在ar设备的屏幕上的屏幕坐标位置。

针对上述s1023,在基于屏幕坐标位置以及关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定触发操作是否为针对关联虚拟对象的目标触发操作时,如图5所示,可以包括以下s10231~10233:

s10231,根据触发操作作用在ar设备屏幕上的屏幕坐标位置,以及屏幕坐标系与实时定位与地图构建slam坐标系之间的转换关系,确定与屏幕坐标位置对应的slam坐标位置。

可以理解,ar设备在slam坐标系中的位置,为ar设备上某一参考点(比如摄像头所在的位置)在slam坐标系中的位置,而屏幕相对于该参考点的相对坐标是固定的,也即,屏幕坐标系与slam坐标系之间存在一个固定的转换关系,因此,基于屏幕坐标系中某一点的坐标以及该点相对于参考点的相对坐标,可确定与屏幕坐标位置对应的slam坐标位置。

s10232,将slam坐标位置映射到三维虚拟场景地图中,得到触发操作作用在三维虚拟场景地图中的虚拟世界坐标位置。

示例地,由于该slam坐标系是以该ar设备在三维虚拟场景地图中的初始定位位姿为坐标原点而建立的,因此,基于该slam坐标系中的当前点的坐标以及坐标原点(初始定位位置)相对于三维虚拟场景地图中的坐标,可以得出slam坐标系中当前点所对应的三维虚拟场景地图中的虚拟世界坐标。

s10233,在虚拟世界坐标位置位于预设位置区域内的情况下,确定触发操作为针对关联虚拟对象的目标触发操作。

示例地,当虚拟世界坐标位置位于预设位置区域内时,说明用户的触摸位置与关联虚拟对象在三维虚拟地图中的位置重合,也即,用户点击到了该关联虚拟对象,此时确定该触发操作有效,为针对关联虚拟对象的目标触发操作。

在一些实施方式中,在该目标触发操作的次数超出预设次数或者该目标触发操作的时长超出预设时长时,确定该目标触发操作满足预设条件。例如,只有在点击屏幕的次数超过预设次数时,才确定击中虚拟泡泡而使得虚拟泡泡破裂,如此,可以增加游戏交互的趣味性。

可以理解,在另一些实施例中,针对上述s101,在ar设备展示与所述ar设备的实时定位位姿匹配的ar画面时,还可以基于预设的不同交互阶段分别对应的虚拟对象的ar特效数据,获取当前达到的目标交互阶段所对应的虚拟对象的目标ar特效数据,并基于目标ar特效数据,在ar画面中展示所述虚拟对象。其中,该目标ar特效数据包括但不限于虚拟对象的类型、移动速度、产生的频次及产生的数量等。

其中,不同的交互阶段是指当前所显示的ar画面所对应的不同状态。该阶段可以由用户设定,也可以根据用户对该ar画面的操作程度来确定。比如,在通关游戏中,用户的初始状态都相同,随着对游戏的操作,不同用户通关程度不同,进而展示与用户当前关卡所对应的状态。

示例性地,在点泡泡游戏中,不同的交互阶段可以对应该游戏的等级,在不同的等级下可以展示特效数据不同的ar画面。例如,在不同的等级下,可以不断生成不同类型的虚拟泡泡,根据调整虚拟泡泡的运动速度,生成速度、点破需要的次数控制游戏的难度,进而实现用户丰富的游戏体验。

针对上述多次提到的三维虚拟场景地图,如图6所示,具体可以按照以下方式预先构建,包括s601~s603:

s601,获取多张现实场景样本图像。

示例性地,可以预先通过ar设备对该现实场景,比如客厅进行多角度拍摄,得到该现实场景对应的大量现实场景样本图像。

s602,基于多张现实场景样本图像,构建表征现实场景的初始三维场景虚拟模型。

针对s602,在基于多张现实场景样本图像,生成现实场景对应的初始三维场景虚拟模型时,可以包括:

(1)从获取的每张现实场景样本图像中提取多个特征点;

(2)基于提取的多个特征点,以及预存的与现实场景匹配的三维样本图,生成初始三维场景虚拟模型;其中,三维样本图为预存储的表征现实场景形貌特征的三维图。

具体地,针对每张现实场景样本图像提取的特征点可以为能够表征该张现实场景样本图像关键信息的点,比如针对包含目标物(比如墙壁)的现实场景样本图像,这里的特征点可以表示该目标物轮廓信息的特征点。

示例性地,这里预存的与现实场景的三维样本图可以包括提前设置好的能够表征该现实场景形貌特征、且带有尺寸标注的三维图,比如可以是表征该现实场景形貌特征的计算机辅助设计(computeraideddesign,cad)三维图。

针对该现实场景,当提取的特征点足够多时,特征点构成的特征点云,可以构成表征该现实场景的三维模型,这里的特征点云中的特征点是没有单位的,特征点云构成的三维模型也是没有单位的,然后将该特征点云与带有尺度标注的且能够表征该现实场景形貌特征的三维图对齐后,即得到该现实场景对应的初始三维场景虚拟模型。

s603,将构建的初始三维场景虚拟模型上的标定特征点与现实场景对应的标定特征点进行对齐,生成三维虚拟场景地图。

生成的初始三维模型可能会存在失真现象,然后可以通过现实场景对应的二维地图对其进行调整,可以得到准确度较高的三维场景虚拟模型。

针对s603,在将构建的初始三维场景模型上的标定特征点与现实场景对应的标定特征点进行对齐,生成三维虚拟场景地图时,包括:

(1)在现实场景对应的初始三维场景模型中提取用于表征现实场景多个空间位置点的标定特征点;

(2)确定标定特征点在现实场景对应的真实二维地图中的真实坐标数据,并基于每个标定特征点对应的真实坐标数据,调整初始三维场景模型中各个特征点的坐标数据。

示例性地,可以选择一些表征目标物边缘、角落的空间位置点的特征点作为这里的标定特征点,然后基于标定特征点对应的真实坐标数据以及该标定特征点在初始三维场景虚拟模型中的坐标数据,确定坐标数据调整量,然后基于该坐标数据调整量对初始三维模型中各个特征点的坐标数据进行修正,即可以得到准确度较高的三维场景虚拟模型。

针对上述s1011,在基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,确定ar设备的初始定位位姿时,如图7所示,可以包括以下s10111~s10113:

s10111,提取现实场景图像包含的特征点,以及提取预先构建三维虚拟场景地图时的每张现实场景样本图像的特征点。

s10112,基于现实场景图像对应的特征点以及预先构建三维虚拟场景地图时的每张现实场景样本图像对应的特征点,确定与现实场景图像相似度最高的目标现实场景样本图像。

s10113,基于目标现实场景样本图像对应的拍摄位姿数据,确定ar设备的初始位姿数据。

示例性地,在获取到ar设备拍摄的现实场景图像后,可以通过该现实场景图像中特征点,以及预先构建三维虚拟场景地图时每张现实场景样本图像的特征点,找到与该现实场景图像相似度最高的目标现实场景样本图像,比如可以基于现实场景图像的特征点的特征信息与每张现实场景样本图像的特征点的特征信息,确定该现实场景图像和每张现实场景样本图像的相似度值,将相似度值最高且超过相似度阈值的现实场景样本图像作为这里的目标现实场景样本图像。

在确定出目标现实场景样本图像后,可以基于将该目标现实场景样本图像对应的拍摄位姿数据确定ar设备的初始位姿数据。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一技术构思,本公开实施例中还提供了与增强现实ar交互方法对应的增强现实ar交互装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述增强现实ar交互方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图8所示,为本公开实施例提供的一种ar交互装置500的示意图,该增强现实ar交互装置包括:

ar画面展示模块501,用于基于ar设备拍摄的现实场景图像,在ar设备展示与现实场景图像匹配的ar画面;ar画面中展示有至少一个虚拟对象,至少一个虚拟对象中包括关联虚拟对象,关联虚拟对象包括第一虚拟子对象和第二虚拟子对象;

ar特效展示模块502,用于检测针对关联虚拟对象的目标触发操作,在目标触发操作满足预设条件的情况下,在ar画面中展示第一虚拟子对象对应的第一ar特效,以及第二虚拟子对象对应的第二ar特效,第一ar特效与第二ar特效之间存在关联。

在一种可能的实施方式中,ar特效展示模块502具体用于:

检测作用在ar设备的屏幕上的触发操作;

识别触发操作在ar设备的屏幕上的屏幕坐标位置;

基于屏幕坐标位置以及关联虚拟对象在预先构建的三维虚拟场景地图中的预设位置区域,确定触发操作是否为针对关联虚拟对象的目标触发操作。

在一种可能的实施方式中,ar特效展示模块502具体用于:

根据触发操作作用在ar设备屏幕上的屏幕坐标位置,以及屏幕坐标系与实时定位与地图构建slam坐标系之间的转换关系,确定与屏幕坐标位置对应的slam坐标位置;

将slam坐标位置映射到三维虚拟场景地图中,得到触发操作作用在三维虚拟场景地图中的虚拟世界坐标位置;

在虚拟世界坐标位置位于预设位置区域内的情况下,确定触发操作为针对关联虚拟对象的目标触发操作。

在一种可能的实施方式中,ar特效展示模块502具体用于:

在ar画面中展示第一虚拟子对象发生第一状态变化的第一ar特效,以及第二虚拟子对象发生第二状态变化的第二ar特效。

在一种可能的实施方式中,第一状态变化包括形态变化,第二状态变化包括位置变化。

在一种可能的实施方式中,ar画面展示模块501具体用于:

基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,在ar设备展示与ar设备的实时定位位姿匹配的ar画面。

在一种可能的实施方式中,ar画面展示模块501具体用于:

基于ar设备拍摄的现实场景图像,以及预先构建的三维虚拟场景地图,确定ar设备的初始定位位姿;

基于ar设备的初始定位位姿,通过实时定位与地图构建slam,确定ar设备的实时定位位姿;

基于ar设备的实时定位位姿,在ar设备展示与ar设备的实时定位位姿匹配的ar画面。

在一种可能的实施方式中,目标触发操作满足预设条件,包括以下至少一种:

目标触发操作的次数超出预设次数、目标触发操作的时长超出预设时长。

在一种可能的实施方式中,ar画面展示模501块具体用于:

基于预设的不同交互阶段分别对应的虚拟对象的ar特效数据,获取当前达到的目标交互阶段所对应的所虚拟对象的目标ar特效数据;

基于目标ar特效数据,在ar画面中展示虚拟对象。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

基于同一技术构思,本公开实施例还提供了一种电子设备。参照图9所示,为本公开实施例提供的电子设备700的结构示意图,包括处理器701、存储器702、和总线703。其中,存储器702用于存储执行指令,包括内存7021和外部存储器7022;这里的内存7021也称内存储器,用于暂时存放处理器701中的运算数据,以及与硬盘等外部存储器7022交换的数据,处理器701通过内存7021与外部存储器7022进行数据交换。

本申请实施例中,存储器702具体用于存储执行本申请方案的应用程序代码,并由处理器701来控制执行。也即,当电子设备700运行时,处理器701与存储器702之间通过总线703通信,使得处理器701执行存储器702中存储的应用程序代码。

其中,存储器702可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器702用于存储程序,处理器703在接收到执行指令后,执行程序,后述本发明实施例任一实施例揭示的流程定义的电子设备200所执行的方法可以应用于处理器703中,或者由处理器703实现。

处理器701可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

可以理解的是,本申请实施例示意的结构并不构成对电子设备700的具体限定。在本申请另一些实施例中,电子设备700可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中的ar交互方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例所提供的ar交互方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行上述方法实施例中的ar交互方法的步骤,具体可参见上述方法实施例,在此不再赘述。

本公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(softwaredevelopmentkit,sdk)等等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

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