一种用于配置增强现实内容的方法与设备与流程

文档序号:17487875发布日期:2019-04-23 20:07阅读:197来源:国知局
一种用于配置增强现实内容的方法与设备与流程

本申请涉及计算机领域,尤其涉及一种用于配置增强现实内容的技术。



背景技术:

增强现实(augmentedreality,ar)是自然图片识别技术的子领域,强调虚实融合的自然人机视觉交互。它是一种将真实世界信息和虚拟世界信息“无缝”集成的新技术,把真实的环境和虚拟的物体实时地叠加到了同一个画面或空间同时存在,从而达到超越现实的感官体验。

在现有技术中,用户在设置增强现实内容时,由于在实景中对增强现实内容的位置、大小等没有精确度量,只能依靠用户的主观观察,基于当前用户所用的设备对增强现实内容的添加位置等进行粗略的设置,很可能出现增强现实内容的叠加位置不够精确的问题。



技术实现要素:

本申请的一个目的是提供一种用于配置增强现实内容的方法。

根据本申请的一个方面,提供了一种用于配置增强现实内容的方法,该方法包括以下步骤:

获取关于实际场景的场景信息;

基于所述场景信息以及用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息;以及

基于所述场景信息、所述内容位置信息以及所述内容属性信息,生成关于所述增强现实内容的内容配置信息;

其中,所述内容配置信息用于供其他用户对所述增强现实内容进行协同配置。

根据本申请的另一个方面,提供了一种用于配置增强现实内容的设备,其中,该设备包括:

第一模块,用于获取关于实际场景的场景信息;

第二模块,用于基于所述场景信息以及用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息;以及

第三模块,用于基于所述场景信息、所述内容位置信息以及所述内容属性信息,生成关于所述增强现实内容的内容配置信息;

其中,所述内容配置信息用于供其他用户对所述增强现实内容进行协同配置。

根据本申请的另一个方面,提供了一种用于配置增强现实内容的方法,该方法包括以下步骤:

第一用户设备获取关于实际场景的场景信息,并基于所述场景信息以及用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息;

所述第一用户设备基于所述场景信息、所述内容位置信息以及所述内容属性信息,生成关于所述增强现实内容的内容配置信息;

第二用户设备获取所述内容配置信息,并基于所述场景信息以及用户的内容设置操作,更新所述增强现实内容在三维场景中的内容位置信息以及所述增强现实内容的内容属性信息中的至少一个;以及

所述第二用户设备基于所述场景信息,并基于更新后的内容位置信息或者更新后的内容属性信息,生成更新后的内容配置信息;

其中,所述内容配置信息用于供用户对所述增强现实内容进行协同配置。

根据本申请的另一个方面,提供了一种用于配置增强现实内容的设备,其中,该设备包括:

处理器;以及

被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以上所述的方法。

根据本申请的另一个方面,提供了一种包括指令的计算机可读介质,所述指令在被执行时使得系统执行以上所述的方法。

与现有技术相比,本申请通过生成用于供其他用户对增强现实内容进行协同配置的内容配置信息,使得其他用户可对相应的增强现实内容进行协同配置,以合作的方式修正增强现实内容的叠加位置或者颜色、大小等属性。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是根据本申请一实施例的用于配置增强现实内容的方法流程图;

图2是根据本申请另一实施例的用于配置增强现实内容的方法流程图;

图3是根据本申请另一实施例的用于配置增强现实内容的方法流程图;

图4示出根据本申请一实施例的用于配置增强现实内容的设备的功能模块图;

图5示出根据本申请另一实施例的用于配置增强现实内容的设备的功能模块图;

图6示出一种可被用于实施本申请中各个实施例的示例性系统。

附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

下面结合附图对本申请作进一步详细描述。

在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

本申请所指设备包括但不限于用户设备、网络设备、或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备包括但不限于任何一种可与用户进行人机交互(例如通过触摸板进行人机交互)的移动电子产品,例如智能手机、平板电脑等,所述移动电子产品可以采用任意操作系统,如android操作系统、ios操作系统等。其中,所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(asic)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、嵌入式设备等。所述网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(cloudcomputing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述网络包括但不限于互联网、广域网、城域网、局域网、vpn网络、无线自组织网络(adhoc网络)等。优选地,所述设备还可以是运行于所述用户设备、网络设备、或用户设备与网络设备、网络设备、触摸终端或网络设备与触摸终端通过网络相集成所构成的设备上的程序。

当然,本领域技术人员应能理解上述设备仅为举例,其他现有的或今后可能出现的设备如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在本申请的描述中,“多个”的含义是两个或者更多,除非另有明确具体的限定。

根据本申请的一个方面,提供了一种用于配置增强现实内容的方法。下面以一种用户设备为例对该方法进行详细描述。参考图1,该方法包括步骤s100、步骤s200以及步骤s300。

在步骤s100中,用户设备获取关于实际场景的场景信息。在一些实施例中,实际场景可以包含某些真实物品,例如包括但不限于家具、摆件、艺术品等;也可包含环境中的其他实物,例如包括但不限于墙壁、门窗、桌面或其他固定物或者障碍物。其中,所述场景信息包含实际场景的相关信息,例如场景中物品的数量、大小、位置等。在一些实施例中,所述场景信息包含以下至少一种:关于实际场景的目标图像(例如由该用户设备或者其他设备所拍摄的二维图像),以及关于实际场景的三维数据。

其中,以上所述三维数据在一些实施例中又包含以下的一种或者多种:实际场景的边缘数据、实际场景的表面结构数据、实际场景的点云数据。其中,边缘数据主要表现为物体局部特征的不连续性,例如垂直、直角、圆、锐角等等;在检测物体边缘时,根据梯度分布信息先对具有明显边缘特征轮廓点进行粗略检测,然后通过链接规则把原来检测到的轮廓点连接起来,同时也检测和连接遗漏的边界点及去除虚假的边界点。表面结构数据为目标装置的表面数据结构,由构成一个基础面的顶点索引;构成一个三维结构的三角面片索引或四角面片的索引信息构成;三角面片或四角面片的表面法向;顶点和三角面片或四角面片的表面rgb颜色、灰度值、深度值、表面光度属性等构成。点云数据是指在一个三维坐标系统中的一组向量的集合,这些向量通常以(x,y,z)三维坐标的形式表示,一般主要用来代表一个物体的外表面形状;除(x,y,z)代表的几何位置信息之外,点云数据还可以表示一个点的rgb颜色、灰度值、深度、分割结果、物体反射面强度等,大多数点云数据是由3d扫描设备产生的,例如2d/3d激光雷达、立体摄像头(stereocamera)、越渡时间相机(time-of-flightcamera),这些设备用自动化的方式测量在物体表面的大量的点的信息,然后用某种数据文件输出点云数据。三维点云包括通过slam(simultaneouslocalizationandmapping,即时定位与地图构建)算法得到的稀疏点云,也包括通过深度信息获取装置获得的稠密点云,例如,由深度摄像头获得的数据也是点云数据。

在步骤s200中,用户设备基于所述场景信息以及用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息。例如,首先,在获取上述场景信息后,若在此之前尚未有任何设备建立该场景信息所对应的三维场景,则建立相应的三维场景,从而为后续新增或编辑三维空间中的增强现实内容做准备;而若是已有设备(包括当前用户设备以及其他设备)建立了该场景信息所对应的三维场景,则呈现该三维场景,从而为进一步新增或编辑三维空间中的增强现实内容做准备。随后,基于用户的内容设置操作确定增强现实内容在该三维场景中的位置信息(称为内容位置信息),以及增强现实内容的相关属性信息(称为内容属性信息,包括但不限于增强现实内容的类型、尺寸、形状、长宽比例、色彩等)。例如,就用户的内容设置操作用于确定增强现实内容的内容位置信息而言,系统根据用户相对于原始的二维图像或者三维数据而摆放增强现实内容的位置,以确定增强现实内容的位置,例如根据原始二维图像或者三维数据建立一空间坐标系,而用户选择增强现实内容摆放的位置后,即确定了增强现实内容在该空间坐标系下的位置。其中,增强现实内容包括但不限于用于在用户设备的显示装置上呈现的标签、图像、视频、链接、3d模型或者讨论留言区等。

其中,在一些实施例中,基于用户设备和增强现实内容之间的相对空间位置关系,增强现实内容被呈现于用户设备的显示装置上的相应位置,即增强现实内容在用户设备的显示装置上的呈现位置与增强现实内容的空间位置存在关联;用户通过改变增强现实内容在该显示装置上的位置,亦能调整该增强现实内容的空间位置。

在步骤s300中,用户设备基于所述场景信息、所述内容位置信息以及所述内容属性信息,生成关于所述增强现实内容的内容配置信息。在一些实施例中,所述内容配置信息为包括所述场景信息、所述内容位置信息以及所述内容属性信息的打包文件。除此之外,所述内容配置信息还可包括其他信息,例如所述场景信息所对应的、用于定位增强现实内容的三维场景的相关信息,在一些实施例中包括用于确定增强现实内容的空间位置的空间坐标系的原点位置(例如基于所述场景信息确定)等。所述内容配置信息用于供其他用户对所述增强现实内容进行协同配置,例如供其他用户在其他设备上修改增强现实内容的内容位置信息、内容属性信息,这些修改在一些实施例中是基于所述场景信息进行的,例如基于上述空间坐标系进行。

通过以上方式,多个用户可对相应的增强现实内容进行协同配置,以合作的方式修正增强现实内容的叠加位置或者颜色、大小等属性。尤其是在增强现实内容由移动设备创建而难以在空间中精确定位的情形下,通过用户之间的协同配置,以上方式能够实现增强现实内容的快速创建,并实现后续的精确编辑。

在一些实施例中,用户需要针对某个实际场景创建一个新的增强现实内容,首先需要获取与该实际场景相对应的场景信息。在未有其他用户就该实际场景创建过相应的场景信息的情况下,在步骤s100中,用户设备采集至少一个关于实际场景的场景信息。其中,在一些实施例中,所述场景信息包括通过用户设备的摄像装置拍摄的实际场景的二维图像;在另一些实施例中,所述场景信息则包括实际场景的三维数据。对于场景信息为三维数据的情形而言,以三维数据为三维点云为例,三维点云的获取在一些实施例中是经过slam(simultaneouslocalizationandmapping,即时定位与地图构建)算法得到的,其中采用单目相机至少需要两帧图像,而采用双目相机至少需要一帧图像;在另一些实施例中,可基于带有获取深度信息的摄像装置(例如rgb-d深度摄像头)获得三维点云,获取三维点云的过程也可结合slam算法。当然,本领域技术人员应能理解,以上所述的采集二维图像、三维数据等实际场景所对应的场景信息的方式仅为举例,其他现有的或者今后可能出现的用于采集场景信息的方式如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。

另外,实际场景所对应的场景信息除了按照以上所述的由用户设备的摄像装置实时采集的方式获取之外,也可事先采集待用,例如由上述用户设备或者其他设备针对博物馆中的一个或者多个场景先行采集;在步骤s100中,用户设备读取所需的预先采集的场景信息(包括但不限于实际场景的二维图像、三维数据),以供用户基于该场景信息设置增强现实内容。

在另一些实施例中,用户需要基于上述内容配置信息与其他用户协同配置一个或者多个增强现实内容,例如修正所述增强现实内容在空间中的叠加位置(即增强现实内容的内容位置信息),或者修改增强现实内容的类型、尺寸、形状、长宽比例、色彩等(即增强现实内容的内容属性信息)。在步骤s100中,用户设备获取已存在的关于增强现实内容的内容配置信息,该内容配置信息中包括先前已经获取的关于实际场景的场景信息,从而在步骤s100中,用户设备能够获取该场景信息;在步骤s200中,用户设备基于所述场景信息以及用户的内容设置操作,更新所述增强现实内容在三维场景中的内容位置信息以及所述增强现实内容的内容属性信息中的至少一个;在步骤s300中,用户设备基于所述场景信息,并基于更新后的内容位置信息或者更新后的内容属性信息,生成更新后的内容配置信息。以这种方式,多个用户可以对同一增强现实内容进行协同配置。

例如,用户甲佩戴透射式增强现实眼镜游览博物馆,在查看一瓷花瓶时,用户甲实时拍摄该瓷花瓶的图像,在该瓷器的上方添加增强现实标签,并生成了相应的内容配置信息;用户乙在台式计算机上打开该内容配置信息,发现用户甲在眼镜实景中所编辑的增强现实标签的位置有误(例如该标签并非位于该瓷花瓶的正上方,而是位于该瓷花瓶的斜上方),因而对该增强现实标签进行内容设置操作,以更新其在空间中的内容位置信息而使其位于瓷花瓶的正上方,并生成更新的内容配置信息;后续,其他用户亦可基于更新后的内容配置信息,对该增强现实标签进行进一步的编辑和调整。

其中在一些实施例中,先前创建或编辑的关于增强现实内容的内容配置信息保存于用户设备对应的网络设备(例如网络存储器、网络服务器、云端服务器、用户设备可访问的网络数据库等)上。在步骤s100中,用户设备向对应的网络设备请求关于增强现实内容的内容配置信息,其中所述内容配置信息包括关于实际场景的场景信息。基于对应的网络设备,可实现多个用户对增强现实内容的协同编辑,提升对增强现实内容的编辑和配置效率。

在涉及多个用户协同配置增强现实内容的情况下,为避免在一个用户完成配置工作后其他用户未能及时更新版本而造成的版本不一致的问题,在一些实施例中,上述方法还包括步骤s400。参考图2,在步骤s400中,用户设备同步所述内容配置信息。其中,在一些实施例中,两个或更多个用户的用户设备直接连接(例如通过有线或者无线方式),或者通过局域网进行连接,则在其中一位用户完成配置工作后,相应的用户设备向其他用户设备发送更新后的内容配置信息,以同步所有用户设备上的内容配置信息;在另一些实施例中,两个或者更多个用户的用户设备均连接至一网络设备且该网络设备保存有一份内容配置信息的副本,则完成配置工作的用户设备将该副本同步为更新后的内容配置信息,其他用户设备在检测到网络设备上内容配置信息的更新后,分别根据更新后内容配置信息同步本地的内容配置信息。

在一些实施例中,上述步骤s200包括子步骤s210(未示出)和子步骤s220(未示出)。

在子步骤s210中,用户设备确定所述场景信息所对应的空间坐标系,例如,但不限于,三维直角坐标系。该空间坐标系用于确定增强现实内容在三维空间中的位置(例如基于该空间坐标系和增强现实内容的空间坐标)。

在子步骤s220中,用户设备基于用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息。其中,用户的内容设置操作包括但不限于用户对实体或虚拟按键的触碰或按压操作、对增强现实内容的拖动操作,以及语音控制操作、手势控制操作、眼球追踪控制操作等,并且这些控制操作仅为举例,其他现有的或者今后可能出现的内容设置操作如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。

其中,为便于其他设备定位和继续配置增强现实内容,在一些实施例中,在子步骤s210中,用户设备确定所述场景信息所对应的至少一个特征点,其中所述场景信息包括关于所述实际场景的目标图像,并基于所述至少一个特征点确定对应的空间坐标系。例如,先通过用户设备的摄像装置拍摄实际场景的二维图像,并对该二维图像进行特征点提取,以获得一个或者多个特征点(如,纹理点或者角点)。随后,可将其中一个特征点作为空间直角坐标系的原点以建立空间直角坐标系,后续再以该坐标系为基准设置或调整增强现实内容的空间位置。

而在另一些实施例中,用户设备所采集的二维图像可能并不适于提取上述特征点,例如纹理不够丰富,则有可能无法从该二维图像中提取到足够多的特征点,或者提取特征点需要耗费大量的系统资源。为便于对增强现实内容进行空间定位,在子步骤s210中,用户设备基于所述场景信息确定对应的空间坐标系,其中所述场景信息包括关于所述实际场景的三维数据。例如,以三维数据(例如边缘数据、表面结构数据、点云数据等)上的一点作为空间坐标系的原点,以建立空间坐标系,后续再以该坐标系为基准设置或调整增强现实内容的空间位置。

当然,本领域技术人员应能理解,以上所述的用于建立空间坐标系的方式仅为举例,其他现有的或者今后可能出现的用于建立空间坐标系的方式如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。例如,在一些实施例中,上述空间坐标系是基于用户设备所拍摄的二维图像四个顶点的其中一个顶点为坐标原点的;为便于处理,还可进一步地以二维图像的与该顶点相邻的两条边为基准确定空间直角坐标系的两条坐标轴,并建立一右手坐标系。

本申请所指的用户设备包括但不限于智能手机、平板电脑、智能眼镜或头盔等计算设备。在一些实施例中,该用户设备还包括用于采集图像信息的摄像装置,该摄像装置一般包括用于将光信号转换为电信号的感光元件,根据需要还可包含用于调整入射光线的传播路径的光线折/反射部件(例如镜头或镜头组件)。为便于用户进行操作,在一些实施例中,所述用户设备还包括显示装置,用于向用户呈现和/或用于设置增强现实内容。其中,在一些实施例中,该增强现实内容叠加呈现于目标装置上,而目标装置通过用户设备(例如透射式眼镜或具有显示屏幕的其他用户设备)呈现;该显示装置在一些实施例中包括触控屏幕,该触控屏幕不仅能用于输出图形画面,还可用作用户设备的输入装置以接收用户的操作指令(例如与前述增强现实内容互动的操作指令)。当然,本领域技术人员应能理解,用户设备的输入装置不仅限于触控屏幕,其他现有的输入技术如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。例如,在一些实施例中,用于接收用户的操作指令的输入技术是基于语音控制、手势控制和/或眼球追踪实现的。

基于以上所述的用于配置增强现实内容的方法,可以实现多设备对增强现实内容的协同配置。根据本申请的另一个方面,提供了一种用于配置增强现实内容的方法。参考图3,该方法包括:

第一用户设备获取关于实际场景的场景信息,并基于所述场景信息以及用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息;

所述第一用户设备基于所述场景信息、所述内容位置信息以及所述内容属性信息,生成关于所述增强现实内容的内容配置信息;

第二用户设备获取所述内容配置信息,并基于所述场景信息以及用户的内容设置操作,更新所述增强现实内容在三维场景中的内容位置信息以及所述增强现实内容的内容属性信息中的至少一个;

所述第二用户设备基于所述场景信息,并基于更新后的内容位置信息或者更新后的内容属性信息,生成更新后的内容配置信息;

其中,所述内容配置信息用于供用户对所述增强现实内容进行协同配置。

其中,上述第一用户设备和上述第二用户设备直接或者间接连接以通信。例如,在一些实施例中,第一用户设备和第二用户设备之间通过有线(例如通过usb线缆)或者无线(例如基于蓝牙、wifi等无线通信协议)进行直接通信;或者第一用户设备和第二用户设备加入同一局域网以通信。在另一些实施例中,第一用户设备和第二用户设备通过网络设备(例如云端服务器等)进行通信,例如所述网络设备直接转发二者的消息、数据包等,或者在接收一方的数据之后进行相应处理,并向另一方发送处理后得到的相应数据。

根据本申请的另一个方面,提供了一种用于配置增强现实内容的设备。下面以该设备为一种用户设备为例进行详细描述。参考图4,该设备包括第一模块100、第二模块200以及第三模块300。

第一模块100获取关于实际场景的场景信息。在一些实施例中,实际场景可以包含某些真实物品,例如包括但不限于家具、摆件、艺术品等;也可包含环境中的其他实物,例如包括但不限于墙壁、门窗、桌面或其他固定物或者障碍物。其中,所述场景信息包含实际场景的相关信息,例如场景中物品的数量、大小、位置等。在一些实施例中,所述场景信息包含以下至少一种:关于实际场景的目标图像(例如由该用户设备或者其他设备所拍摄的二维图像),以及关于实际场景的三维数据。

其中,以上所述三维数据在一些实施例中又包含以下的一种或者多种:实际场景的边缘数据、实际场景的表面结构数据、实际场景的点云数据。其中,边缘数据主要表现为物体局部特征的不连续性,例如垂直、直角、圆、锐角等等;在检测物体边缘时,根据梯度分布信息先对具有明显边缘特征轮廓点进行粗略检测,然后通过链接规则把原来检测到的轮廓点连接起来,同时也检测和连接遗漏的边界点及去除虚假的边界点。表面结构数据为目标装置的表面数据结构,由构成一个基础面的顶点索引;构成一个三维结构的三角面片索引或四角面片的索引信息构成;三角面片或四角面片的表面法向;顶点和三角面片或四角面片的表面rgb颜色、灰度值、深度值、表面光度属性等构成。点云数据是指在一个三维坐标系统中的一组向量的集合,这些向量通常以(x,y,z)三维坐标的形式表示,一般主要用来代表一个物体的外表面形状;除(x,y,z)代表的几何位置信息之外,点云数据还可以表示一个点的rgb颜色、灰度值、深度、分割结果、物体反射面强度等,大多数点云数据是由3d扫描设备产生的,例如2d/3d激光雷达、立体摄像头(stereocamera)、越渡时间相机(time-of-flightcamera),这些设备用自动化的方式测量在物体表面的大量的点的信息,然后用某种数据文件输出点云数据。三维点云包括通过slam(simultaneouslocalizationandmapping,即时定位与地图构建)算法得到的稀疏点云,也包括通过深度信息获取装置获得的稠密点云,例如,由深度摄像头获得的数据也是点云数据。

第二模块200基于所述场景信息以及用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息。例如,首先,在获取上述场景信息后,若在此之前尚未有任何设备建立该场景信息所对应的三维场景,则建立相应的三维场景,从而为后续新增或编辑三维空间中的增强现实内容做准备;而若是已有设备(包括当前用户设备以及其他设备)建立了该场景信息所对应的三维场景,则呈现该三维场景,从而为进一步新增或编辑三维空间中的增强现实内容做准备。随后,基于用户的内容设置操作确定增强现实内容在该三维场景中的位置信息(称为内容位置信息),以及增强现实内容的相关属性信息(称为内容属性信息,包括但不限于增强现实内容的类型、尺寸、形状、长宽比例、色彩等)。例如,就用户的内容设置操作用于确定增强现实内容的内容位置信息而言,系统根据用户相对于原始的二维图像或者三维数据而摆放增强现实内容的位置,以确定增强现实内容的位置,例如根据原始二维图像或者三维数据建立一空间坐标系,而用户选择增强现实内容摆放的位置后,即确定了增强现实内容在该空间坐标系下的位置。其中,增强现实内容包括但不限于用于在用户设备的显示装置上呈现的标签、图像、视频、链接、3d模型或者讨论留言区等。

其中,在一些实施例中,基于用户设备和增强现实内容之间的相对空间位置关系,增强现实内容被呈现于用户设备的显示装置上的相应位置,即增强现实内容在用户设备的显示装置上的呈现位置与增强现实内容的空间位置存在关联;用户通过改变增强现实内容在该显示装置上的位置,亦能调整该增强现实内容的空间位置。

第三模块300基于所述场景信息、所述内容位置信息以及所述内容属性信息,生成关于所述增强现实内容的内容配置信息。在一些实施例中,所述内容配置信息为包括所述场景信息、所述内容位置信息以及所述内容属性信息的打包文件。除此之外,所述内容配置信息还可包括其他信息,例如所述场景信息所对应的、用于定位增强现实内容的三维场景的相关信息,在一些实施例中包括用于确定增强现实内容的空间位置的空间坐标系的原点位置(例如基于所述场景信息确定)等。所述内容配置信息用于供其他用户对所述增强现实内容进行协同配置,例如供其他用户在其他设备上修改增强现实内容的内容位置信息、内容属性信息,这些修改在一些实施例中是基于所述场景信息进行的,例如基于上述空间坐标系进行。

通过以上方式,多个用户可对相应的增强现实内容进行协同配置,以合作的方式修正增强现实内容的叠加位置或者颜色、大小等属性。尤其是在增强现实内容由移动设备创建而难以在空间中精确定位的情形下,通过用户之间的协同配置,以上方式能够实现增强现实内容的快速创建,并实现后续的精确编辑。

在一些实施例中,用户需要针对某个实际场景创建一个新的增强现实内容,首先需要获取与该实际场景相对应的场景信息。在未有其他用户就该实际场景创建过相应的场景信息的情况下,第一模块100采集至少一个关于实际场景的场景信息。其中,在一些实施例中,所述场景信息包括通过用户设备的摄像装置拍摄的实际场景的二维图像;在另一些实施例中,所述场景信息则包括实际场景的三维数据。对于场景信息为三维数据的情形而言,以三维数据为三维点云为例,三维点云的获取在一些实施例中是经过slam(simultaneouslocalizationandmapping,即时定位与地图构建)算法得到的,其中采用单目相机至少需要两帧图像,而采用双目相机至少需要一帧图像;在另一些实施例中,可基于带有获取深度信息的摄像装置(例如rgb-d深度摄像头)获得三维点云,获取三维点云的过程也可结合slam算法。当然,本领域技术人员应能理解,以上所述的采集二维图像、三维数据等实际场景所对应的场景信息的方式仅为举例,其他现有的或者今后可能出现的用于采集场景信息的方式如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。

另外,实际场景所对应的场景信息除了按照以上所述的由用户设备的摄像装置实时采集的方式获取之外,也可事先采集待用,例如由上述用户设备或者其他设备针对博物馆中的一个或者多个场景先行采集;第一模块100读取所需的预先采集的场景信息(包括但不限于实际场景的二维图像、三维数据),以供用户基于该场景信息设置增强现实内容。

在另一些实施例中,用户需要基于上述内容配置信息与其他用户协同配置一个或者多个增强现实内容,例如修正所述增强现实内容在空间中的叠加位置(即增强现实内容的内容位置信息),或者修改增强现实内容的类型、尺寸、形状、长宽比例、色彩等(即增强现实内容的内容属性信息)。第一模块100获取已存在的关于增强现实内容的内容配置信息,该内容配置信息中包括先前已经获取的关于实际场景的场景信息,从而第一模块100能够获取该场景信息;第二模块200基于所述场景信息以及用户的内容设置操作,更新所述增强现实内容在三维场景中的内容位置信息以及所述增强现实内容的内容属性信息中的至少一个;第三模块300基于所述场景信息,并基于更新后的内容位置信息或者更新后的内容属性信息,生成更新后的内容配置信息。以这种方式,多个用户可以对同一增强现实内容进行协同配置。

例如,用户甲佩戴透射式增强现实眼镜游览博物馆,在查看一瓷花瓶时,用户甲实时拍摄该瓷花瓶的图像,在该瓷器的上方添加增强现实标签,并生成了相应的内容配置信息;用户乙在台式计算机上打开该内容配置信息,发现用户甲在眼镜实景中所编辑的增强现实标签的位置有误(例如该标签并非位于该瓷花瓶的正上方,而是位于该瓷花瓶的斜上方),因而对该增强现实标签进行内容设置操作,以更新其在空间中的内容位置信息而使其位于瓷花瓶的正上方,并生成更新的内容配置信息;后续,其他用户亦可基于更新后的内容配置信息,对该增强现实标签进行进一步的编辑和调整。

其中在一些实施例中,先前创建或编辑的关于增强现实内容的内容配置信息保存于用户设备对应的网络设备(例如网络存储器、网络服务器、云端服务器、用户设备可访问的网络数据库等)上。第一模块100向对应的网络设备请求关于增强现实内容的内容配置信息,其中所述内容配置信息包括关于实际场景的场景信息。基于对应的网络设备,可实现多个用户对增强现实内容的协同编辑,提升对增强现实内容的编辑和配置效率。

在涉及多个用户协同配置增强现实内容的情况下,为避免在一个用户完成配置工作后其他用户未能及时更新版本而造成的版本不一致的问题,在一些实施例中,上述方法还包括第四模块400。参考图5,第四模块400同步所述内容配置信息。其中,在一些实施例中,两个或更多个用户的用户设备直接连接(例如通过有线或者无线方式),或者通过局域网进行连接,则在其中一位用户完成配置工作后,相应的用户设备向其他用户设备发送更新后的内容配置信息,以同步所有用户设备上的内容配置信息;在另一些实施例中,两个或者更多个用户的用户设备均连接至一网络设备且该网络设备保存有一份内容配置信息的副本,则完成配置工作的用户设备将该副本同步为更新后的内容配置信息,其他用户设备在检测到网络设备上内容配置信息的更新后,分别根据更新后内容配置信息同步本地的内容配置信息。

在一些实施例中,上述第二模块200包括第一单元210(未示出)和第二单元220(未示出)。

第一单元210确定所述场景信息所对应的空间坐标系,例如,但不限于,三维直角坐标系。该空间坐标系用于确定增强现实内容在三维空间中的位置(例如基于该空间坐标系和增强现实内容的空间坐标)。

第二单元220基于用户的内容设置操作,确定增强现实内容在三维场景中的内容位置信息,以及所述增强现实内容的内容属性信息。其中,用户的内容设置操作包括但不限于用户对实体或虚拟按键的触碰或按压操作、对增强现实内容的拖动操作,以及语音控制操作、手势控制操作、眼球追踪控制操作等,并且这些控制操作仅为举例,其他现有的或者今后可能出现的内容设置操作如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。

其中,在一些实施例中,第一单元210确定所述场景信息所对应的至少一个特征点,其中所述场景信息包括关于所述实际场景的目标图像,并基于所述至少一个特征点确定对应的空间坐标系。例如,先通过用户设备的摄像装置拍摄实际场景的二维图像,并对该二维图像进行特征点提取,以获得一个或者多个特征点(如,纹理点或者角点)。随后,可将其中一个特征点作为空间直角坐标系的原点以建立空间直角坐标系,后续再以该坐标系为基准设置或调整增强现实内容的空间位置。

而在另一些实施例中,用户设备所采集的二维图像可能并不适于提取上述特征点,例如纹理不够丰富,则有可能无法从该二维图像中提取到足够多的特征点,或者提取特征点需要耗费大量的系统资源。为便于对增强现实内容进行空间定位,第一单元210基于所述场景信息确定对应的空间坐标系,其中所述场景信息包括关于所述实际场景的三维数据。例如,以三维数据(例如边缘数据、表面结构数据、点云数据等)上的一点作为空间坐标系的原点,以建立空间坐标系,后续再以该坐标系为基准设置或调整增强现实内容的空间位置。

当然,本领域技术人员应能理解,以上所述的用于建立空间坐标系的方式仅为举例,其他现有的或者今后可能出现的用于建立空间坐标系的方式如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。例如,在一些实施例中,上述空间坐标系是基于用户设备所拍摄的二维图像四个顶点的其中一个顶点为坐标原点的;为便于处理,还可进一步地以二维图像的与该顶点相邻的两条边为基准确定空间直角坐标系的两条坐标轴,并建立一右手坐标系。

本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机代码,当所述计算机代码被执行时,如前任一项所述的方法被执行。

本申请还提供了一种计算机程序产品,当所述计算机程序产品被计算机设备执行时,如前任一项所述的方法被执行。

本申请还提供了一种计算机设备,所述计算机设备包括:

一个或多个处理器;

存储器,用于存储一个或多个计算机程序;

当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前任一项所述的方法。

图6示出了可被用于实施本申请中所述的各个实施例的示例性系统。

如图6所示,在一些实施例中,系统600能够作为各所述实施例中的任意一个用户设备。在一些实施例中,系统600可包括具有指令的一个或多个计算机可读介质(例如,系统存储器或nvm/存储设备620)以及与该一个或多个计算机可读介质耦合并被配置为执行指令以实现模块从而执行本申请中所述的动作的一个或多个处理器(例如,(一个或多个)处理器605)。

对于一个实施例,系统控制模块610可包括任意适当的接口控制器,以向(一个或多个)处理器605中的至少一个和/或与系统控制模块610通信的任意适当的设备或组件提供任意适当的接口。

系统控制模块610可包括存储器控制器模块630,以向系统存储器615提供接口。存储器控制器模块630可以是硬件模块、软件模块和/或固件模块。

系统存储器615可被用于例如为系统600加载和存储数据和/或指令。对于一个实施例,系统存储器615可包括任意适当的易失性存储器,例如,适当的dram。在一些实施例中,系统存储器615可包括双倍数据速率类型四同步动态随机存取存储器(ddr4sdram)。

对于一个实施例,系统控制模块610可包括一个或多个输入/输出(i/o)控制器,以向nvm/存储设备620及(一个或多个)通信接口625提供接口。

例如,nvm/存储设备620可被用于存储数据和/或指令。nvm/存储设备620可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(hdd)、一个或多个光盘(cd)驱动器和/或一个或多个数字通用光盘(dvd)驱动器)。

nvm/存储设备620可包括在物理上作为系统600被安装在其上的设备的一部分的存储资源,或者其可被该设备访问而不必作为该设备的一部分。例如,nvm/存储设备620可通过网络经由(一个或多个)通信接口625进行访问。

(一个或多个)通信接口625可为系统600提供接口以通过一个或多个网络和/或与任意其他适当的设备通信。系统600可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信。

对于一个实施例,(一个或多个)处理器605中的至少一个可与系统控制模块610的一个或多个控制器(例如,存储器控制器模块630)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器605中的至少一个可与系统控制模块610的一个或多个控制器的逻辑封装在一起以形成系统级封装(sip)。对于一个实施例,(一个或多个)处理器605中的至少一个可与系统控制模块610的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器605中的至少一个可与系统控制模块610的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(soc)。

在各个实施例中,系统600可以但不限于是:服务器、工作站、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)。在各个实施例中,系统600可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,系统600包括一个或多个摄像机、键盘、液晶显示器(lcd)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(asic)和扬声器。

需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(asic)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,ram存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。

另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。本领域技术人员应能理解,计算机程序指令在计算机可读介质中的存在形式包括但不限于源文件、可执行文件、安装包文件等,相应地,计算机程序指令被计算机执行的方式包括但不限于:该计算机直接执行该指令,或者该计算机编译该指令后再执行对应的编译后程序,或者该计算机读取并执行该指令,或者该计算机读取并安装该指令后再执行对应的安装后程序。在此,计算机可读介质可以是可供计算机访问的任意可用的计算机可读存储介质或通信介质。

通信介质包括藉此包含例如计算机可读指令、数据结构、程序模块或其他数据的通信信号被从一个系统传送到另一系统的介质。通信介质可包括有导的传输介质(诸如电缆和线(例如,光纤、同轴等))和能传播能量波的无线(未有导的传输)介质,诸如声音、电磁、rf、微波和红外。计算机可读指令、数据结构、程序模块或其他数据可被体现为例如无线介质(诸如载波或诸如被体现为扩展频谱技术的一部分的类似机制)中的已调制数据信号。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。调制可以是模拟的、数字的或混合调制技术。

作为示例而非限制,计算机可读存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质。例如,计算机可读存储介质包括,但不限于,易失性存储器,诸如随机存储器(ram,dram,sram);以及非易失性存储器,诸如闪存、各种只读存储器(rom,prom,eprom,eeprom)、磁性和铁磁/铁电存储器(mram,feram);以及磁性和光学存储设备(硬盘、磁带、cd、dvd);或其它现在已知的介质或今后开发的能够存储供计算机系统使用的计算机可读信息/数据。

在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

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