相关申请的交叉引用
本申请要求2019年6月18日提交的临时申请第62/863171号的权益,出于所有目的,该临时申请的全部公开内容被结合在本文中。
本公开总体上涉及计算机系统,并且更具体地涉及用于生成现实世界元素的虚拟副本、并且将现实世界元素的虚拟副本部署到情境充实的虚拟世界系统中的系统和方法。
背景技术:
虚拟世界是提供现实或虚拟世界的图形和物理表示的模拟环境,其中,用户可以经由化身或彼此的虚拟副本来彼此进行交互或与其它元素进行交互。虚拟世界用于例如创建视频游戏、动画电影或用于在飞行模拟器中训练飞行员。在所有这些应用中,程序用于基于用户输入或学习行为来模拟交互、移动和改变的虚拟对象。
虚拟世界中的对象可以遵循与重力、地形、物理和运动学有关的规则,该规则可以基于或可以不基于现实世界元素。因此,存在用于创建现实世界项目的虚拟副本的当前技术。然而,这些虚拟副本通常不包含现实世界元素的所有或大部分数据以及它们周围的情境,限制了虚拟副本可以向用户提供的视觉效果和交互类型的现实性。此外,副本通常不与它们的现实世界对应物同步,以反映现实世界中作出的改变。这限制了将虚拟世界用于交互式应用的能力。
需要可以以较少的计算密集方式精确地反映它们所表示的现实世界元素的虚拟副本,包括来自每个元素的高水平的同步信息,以及在如何在不同空间中向用户呈现副本方面的高水平的灵活性。
技术实现要素:
提供该发明内容以简化的形式介绍精选的概念,该概念在下面具体实施方式中被进一步描述。该发明内容不旨在标识所要求保护的主题的关键特征,也不旨在用作确定所要求保护的主题的范围的帮助。
本公开的空间流融合现实系统包括至少一个服务器,该服务器包括至少一个处理器和存储虚拟世界系统的存储器,该虚拟世界系统包括一个或多个虚拟对象,该虚拟对象包括第一位置,第二位置和在第一和第二位置的至少一个中的现实世界元素中的至少一个的虚拟副本。所述至少一个服务器被配置为从通过网络与所述至少一个服务器通信的多个连接的设备接收来自所述第一和第二位置中的所述至少一个中的现实世界元素的现实世界数据;利用来自虚拟世界系统中第一和第二位置的现实世界数据,将虚拟副本与相应的现实世界元素进行充实和同步;以及将来自所述第二位置的所述现实世界数据的至少一部分覆盖并且流式传送到所述第一位置。这样,来自第二位置的现实世界数据被用于形成用户对第一位置的虚拟副本的体验的一部分。从第二位置到第一位置的现实世界数据的至少一部分的所述覆盖可以由用户通过用户设备在任何增强的或虚拟的现实中观看。用户设备可以是移动设备、个人计算机、游戏机、媒体中心、智能隐形眼镜、增强现实眼镜和头戴式显示器等中的一个或多个。在一些实施例中,所述至少一个服务器被配置为将所述第二位置的虚拟副本的至少一部分覆盖并且流式传送到所述第一位置的虚拟副本的至少一个表面上。例如,第二位置的虚拟副本的一部分可以被投影到第一位置的虚拟副本的墙壁,建筑物,地板,游戏场,投影屏幕或其它表面上,或者投影到诸如多个内壁的多个表面上。
在一些实施例中,所述至少一个服务器被配置为将来自所述第二位置的所有现实世界数据覆盖并且流式传送到所述第一位置的虚拟副本上。在这些实施例中,来自第二位置的现实世界数据的至少一部分包括第二位置的所有现实世界数据。因此,来自第二位置的现实世界数据可以完全覆盖在第一位置的虚拟副本的顶部,这对于例如虚拟现实体验可能是足够的。例如,在一个位置的用户的城市的虚拟副本可以被在另一个位置的城市的虚拟副本完全覆盖。
在另一个实施例中,所述至少一个服务器被配置为在不包括所述第一位置的虚拟副本的情况下将来自所述第二位置的所有现实世界数据覆盖并且流式传送到所述第一位置中的用户设备的视场上。例如,用户在一个位置的视图可以被另一个城市的虚拟副本完全覆盖。
在其中使用来自第二位置的所有现实世界数据的实施例的一个说明性示例中,用户可以通过相应的用户设备来查看他或她自己的城市中的远程城市的所有元素,并且可以具有已经被虚拟地远程移植到另一个城市的体验。例如,用户可以在他或她自己的房间,或后台中经历虚拟现实体验,同时经历巴黎,包括在那时位于巴黎的一个或多个街道,地标,商店和人。在一些实施例中,虚拟对象还包括纯虚拟对象和在存储在服务器的存储器中的一个或多个应用程序库处可用的交互式应用,或者从外部源可用的交互式应用,或者它们的组合。
在一些实施例中,多个连接的设备包括一个或多个rgbd相机、深度相机、lidar相机、cctv相机或物联网设备或其组合。连接的设备被配置为记录第一位置和第二位置中的事件、扫描并且生成第一位置和第二位置的3d图像、检测第一位置和第二位置内的一个或多个现实世界对象中的状态改变或其组合。
在一些实施例中,虚拟对象包括通过多个软件平台、软件引擎或其组合输入的逻辑、虚拟数据和模型。多个外部平台可以包括例如一个或多个物联网(iot)平台、机器学习(ml)平台、大数据平台和模拟平台,这些平台可以通过应用程序接口(api)和软件开发工具包(sdk)连接到虚拟世界系统,以便提供和操纵模型以及消费或发布数据到虚拟副本。被包括在虚拟世界系统中的引擎服务可以包括人工智能引擎、模拟引擎、3d引擎和触觉引擎等。
在一些实施例中,现实世界数据包括世界空间数据,而虚拟数据包括虚拟空间数据。由所述至少一个服务器进行的它们的组合使得能够利用所述虚拟空间数据来增强所述现实空间数据。在进一步的实施例中,将来自第二位置的现实世界数据的至少一部分覆盖到第一位置的虚拟副本上包括空间数据混合。空间数据混合可以包括将虚拟空间数据的第一部分分类为在场空间数据,将虚拟空间数据的第二部分分类为远程空间数据,并混合第一部分和第二部分。在说明性的情形中,为了将第二位置的虚拟副本的至少一部分覆盖到表示第一位置的虚拟副本的至少一个表面上,包括执行将与世界空间数据相关联的虚拟空间数据分类为在场空间数据或远程空间数据,并且基于用户的偏好和期望的观看模式,混合在场空间数据和远程空间数据的一部分。
在一些实施例中,云服务器可以在至少一个服务器的存储器中存储增强现实和虚拟现实的分离的层。分离的层可以使得能够通过融合现实以增强现实或虚拟现实中的任何一个来访问虚拟副本现实,并且可以在访问一个或另一个类型的现实时通过被连接到至少一个服务器的用户设备来激活。融合现实向用户提供扩展的现实,其中,现实元素被持久性虚拟对象覆盖或增强、被锚定在特定的地理位置中或被锚定到现实元素、并且包括被连接到现实的虚拟副本的ai和模拟。用户可以通过他们的虚拟化身或虚拟全息图在增强的或虚拟的现实中与这种融合的现实无限制地交互。虚拟化身可以是被创建来表示用户的虚拟角色,并且可以包括与用户的物理外观相似或不同的物理外观。另一方面,虚拟全息图可以是由一个或多个照相机捕获,处理和流式传送的用户的虚拟投影,提供用户的忠实虚拟表示。
在一些实施例中,该系统还包括用户设备,其被配置为通过虚拟世界系统在第一位置上发布第二位置的虚拟副本,使得第二位置的虚拟副本对于第一位置中的一个或多个用户是可见的。所述用户设备还可以被配置为向位于所述第一位置的一个或多个其他用户设备发送邀请以远程查看所述第二位置,其中接受所述邀请触发所述至少一个服务器将所述第二位置的虚拟副本流式传送并覆盖到所述第一位置的虚拟副本上。在说明性的场景中,将现实世界数据从第二位置覆盖和流式传送到表示第一位置的虚拟副本的至少一个表面上需要位于第一位置中的第二用户设备,该第二用户设备被配置为通过虚拟世界系统在第一位置上复制第二位置,使得第二位置的虚拟副本对于第一位置中的一个或多个用户是可见的。第二用户设备还被配置为邀请位于第一位置的一个或多个用户设备远程查看第二位置,其中接受邀请触发服务器将第二位置的虚拟副本流式传送并覆盖到第一位置的虚拟副本的至少一个表面上。
在一些实施例中,虚拟对象还包括一个或多个纯虚拟对象,交互式应用或其组合,并且所述一个或多个纯虚拟对象,交互式应用或其组合被发布在第二位置上并且被覆盖在第一位置上。在替换实施例中,一个或多个纯虚拟对象,交互应用或其组合被发布在第一位置上,并且被覆盖在第二位置上,从而能够由第一和第二用户设备与其进行交互。
在一些实施例中,每个物理位置具有被存储在至少一个服务器中的相关联的数字标识符,数字标识符被配置为由用户设备从至少一个服务器检索,以便通过虚拟世界系统访问相关联的物理位置。数字标识符可以包括qr码、url、ip地址、mac地址、密码哈希、通用唯一标识符和组织唯一标识符中的一个或多个。
在一些实施例中,通过提供给位于第一位置中的一个或多个用户设备的邀请来共享相关联的数字标识符。在替代实施例中,相关联的数字标识符被公开地共享为第一位置数据的一部分。
在一些实施例中,虚拟副本还包括用户的虚拟手册和虚拟化身或虚拟全息图,化身显示用户的物理表示或提供不同于用户的图形表示,并且虚拟全息图提供由一个或多个设备捕获的用户的忠实虚拟表示。
在一些实施例中,提供了一种使得能够通过融合的现实系统进行空间流式传送的方法。所述方法包括在至少一个服务器的存储器中提供包括虚拟对象的虚拟世界系统,所述虚拟对象包括第一位置,第二位置和所述第一和第二位置中的至少一个中的现实世界元素中的至少一个的虚拟副本。该方法还包括通过虚拟世界系统从第一和第二位置的至少一个中的现实世界元素接收现实世界数据,以经由通过网络与至少一个服务器通信的多个连接的设备更新虚拟副本。该方法还包括将第二位置的虚拟副本的至少一部分覆盖到第一位置上,并且将覆盖的第二位置的至少一部分流式传送到第一位置上。
在一些实施例中,该方法还包括作为虚拟对象的一部分,提供在存储在至少一个云服务器的存储器中的一个或多个应用程序库处可用的纯虚拟对象和交互式应用,或者从外部源可用的纯虚拟对象和交互式应用,或者它们的组合。
在一些实施例中,该方法还包括向虚拟对象提供通过多个软件平台,软件引擎或其组合输入的逻辑,虚拟数据和模型。现实世界数据包括世界空间数据,虚拟空间数据包括虚拟空间数据。世界空间数据被数字化和集成为虚拟空间数据的一部分。
在一些实施例中,第二位置的覆盖部分被投影到第一位置的虚拟副本的至少一个表面上。在一些实施例中,将第二位置的虚拟副本的至少一部分覆盖到第一位置的虚拟副本上包括:将虚拟空间数据的第一部分分类为在场空间数据,将虚拟空间数据的第二部分分类为远程空间数据;混合部分在场空间数据和远程空间数据。在说明性情况下,将第二位置的虚拟副本的至少一部分覆盖到表示第一位置的虚拟副本的至少一个表面上包括将与世界空间数据相关联的虚拟空间数据分类为在场空间数据或远程空间数据。所述覆盖还可以包括,基于用户的偏好和期望的观看模式,混合在场空间数据和远程空间数据的一部分。
在一个实施例中,该方法还包括通过虚拟世界系统,由位于第一位置的用户设备在第一位置上公布第二位置的虚拟副本,使得第二位置的虚拟副本对于第一位置中的一个或多个用户是可见的;以及向位于所述第一位置的一个或多个其他用户设备发送邀请以远程查看所述第二位置,其中接受所述邀请触发所述服务器将所述第二位置的所述虚拟副本流式传送并覆盖到所述第一位置的所述虚拟副本上。还提供了一种计算机可读介质,其可以具有存储在其上的指令,所述指令被配置为使计算机系统(例如融合的现实系统)执行本文所述的任何方法。
上面的发明内容不包括本公开的所有方面的详尽列表。可以预期的是,本公开包括可以从上面概述的各种方面的所有合适的组合、以及下面的具体实施方式中公开的那些和与本申请一起提交的权利要求中具体指出的那些来实践的所有系统和方法。这种组合具有上面的发明内容中没有具体陈述的优点。根据附图并且根据下面的具体实施方式,其它特征和优点将是显而易见的。
附图说明
关于以下描述和附图,将更好地理解本公开的具体特征、方面和优点,其中:
图1描绘了根据实施例的可以用于实施虚拟空间的融合现实空间流的服务器计算机系统的云服务器的图。
图2示出了根据实施例的融合现实空间流系统的示意图。
图3a-3b示出了根据实施例的可以被采用的子宇宙和流的示意图。
图4描绘了根据实施例的描述用于生成在融合现实系统中使用的虚拟副本网络的平台和接口的示意图。
图5描绘了根据实施例的描述由虚拟副本使用的模型和数据的示意图。
图6描绘了根据当前公开的实施例的描述可以被采用的空间数据混合的示意图。
图7描绘了根据实施例的可以在融合现实系统中使用的连接的设备的操作组件图。
图8描绘了根据实施例的实施融合现实空间流系统的方法。
具体实施方式
在以下描述中,参考通过图示方式显示各种实施例的附图。此外,下面将通过参考多个示例来描述各种实施例。应该理解的是,在不脱离所要求保护的主题的范围的情况下,实施例可以包括设计和结构中的改变。
当前公开的系统可以使得能够通过复制现实世界的至少一些区域的虚拟世界系统,将现实世界的一个区域流式传送和投影到另一个区域上,这可以通过用户设备以增强现实或虚拟来查看。例如,一个区域的复制部分可以被投影到墙壁、建筑物、地板、游戏场、投影屏幕或另一个区域的其它表面上,或者被投影到多个表面上,诸如多个内部墙壁。此外,包括该区域中的所有数据的一个远程区域的复制部分可以被流式传送到用户可以位于的另一个区域上,需要或者不需要具有用户位于的复制区域,向用户提供已经被虚拟地传送到远程区域的感觉和体验。
图1描绘了根据实施例的可以用于实施融合现实空间流系统的服务器计算机系统的云服务器100的图。
云服务器100包括一个或多个处理器102和存储器104,该存储器104存储虚拟世界系统106,该虚拟世界系统106复制现实世界并且包括一个或多个虚拟对象108,该一个或多个虚拟对象108包括现实世界元素的虚拟副本110。多个连接的虚拟副本110形成虚拟副本网络112,该虚拟副本网络112使得能够通过直接物理通信或通过基于间接虚拟副本的连接来建立对等(p2p)连接。虚拟世界系统106可以进一步存储纯虚拟对象114和交互式应用116,该纯虚拟对象114在现实世界中不可用,该交互式应用116可以位于世界的各种部分,诸如在图2中进一步描述的第一位置和第二位置中的任何一个中。在一些实施例中,虚拟世界系统106可以通过适当的接口经由用户设备来访问。
在一些实施例中,虚拟世界系统106是持久性虚拟世界系统。在当前公开中,术语“持久性”用于表征在没有连续执行处理或网络连接的情况下可以继续存在的系统的状态。例如,术语“持久性”可以用于表征虚拟世界系统,其中,虚拟世界系统和其中包括的所有虚拟副本、纯虚拟对象和应用在用于创建虚拟副本、纯虚拟对象和应用的处理停止之后继续存在,并且不依赖于用户被连接到虚拟世界系统。因此,虚拟世界系统被保存在非易失性存储位置中(例如,在云服务器100中)。以该方式,即使用户没有被连接到服务器,虚拟副本、纯虚拟对象和应用在被配置用于实现特定目标时也可以彼此进行交互和协作。
在当前公开中,术语“虚拟副本”指的是现实世界元素的精确且持久的虚拟表示。在实施例中,虚拟副本110指的是现实世界元素(在本文中也被称为现实孪生)的虚拟版本(在本文中也被称为虚拟孪生),该虚拟副本110可以通过计算机辅助绘图(cad)或计算机辅助工程(cae)方法来映射或建模,由现实对象的计算机模型(例如,建筑物信息模型-bim)或其它合适的方法来输入,并且该虚拟副本110不仅可以反映现实孪生的外观,而且可以反映现实孪生的行为。现实世界对象可以另外包括可以向虚拟副本110提供多源输入数据的传感器,用于充实虚拟副本110并且将虚拟副本106与它们各自的现实对应物同步。因此,虚拟副本110可以从一个或多个源(例如,从一个或多个现实世界对象、环境传感器、计算设备等)获得数据。如本文中使用的,术语“多源”指的是可以从多个源获得的数据。
可以基于多源数据来更新虚拟副本,诸如通过更新已知的参数或特征,通过使用附加的参数或特征来充实虚拟副本等。在当前公开中,术语“充实”用于描述基于多源数据向虚拟副本提供进一步特性的动作。充实虚拟副本可以被认为是使用一个或多个新形式的数据来更新虚拟副本的特殊形式,该一个或多个新形式的数据先前可能不存在于虚拟副本中。例如,充实虚拟副本可以指的是提供从多个设备上的感测机构捕获的现实世界数据,其中,进一步的现实世界数据包括视频数据、温度数据、实时能量消耗数据、实时水消耗数据、速度或加速度数据等。
融合现实空间流系统的虚拟副本网络112使得能够机器对机器、人类对机器、机器对人类以及人类对人类进行通信和交互。交互机制通过使用被包括在计算机脚本和计算机程序中的计算机代码来定义,并且可以通过发生交互和交互应用的虚拟世界系统中提供的区块链或基于分布式账本的分布式数据库中可用的应用、智能合约或其组合来启用。因此,应用、智能合约或其组合使得能够通过虚拟世界系统来数字编码和表示预定区域中的现实世界的所有或大多数元素之间的可能的和期望的交互和交互接口。可以由用户以类似于交互游戏的应用的形式或通过类似于游戏的交互机制来体验交互。可以例如在通过物理位置的虚拟副本对物理位置进行虚拟访问期间来启用交互,从而访问这种位置的用户可以与通过启用虚拟存在被配置的元素进行虚拟交互。
图2示出了根据实施例的融合现实空间流系统的示意图。图2的一些元素可以指的是图1的相似或相同的元素,因此可以使用相同的附图标记。
图2的系统200包括被配置为存储和处理输入数据的至少一个云服务器100,至少一个云服务器100包括至少一个处理器和存储器,该存储器包括虚拟世界系统106,该虚拟世界系统106复制现实世界中的位置并且包括现实世界元素的一个或多个虚拟副本。虚拟世界系统106至少包括通过网络206连接到对应的第一和第二位置208和210的第一和第二位置虚拟副本202和204。第一和第二位置208和210包括通过网络206连接到虚拟世界系统106的多个连接的设备212,并且包括被配置为捕获第一和第二位置208和210中的现实世界元素214的现实世界数据的感测机构。然后,通过虚拟世界系统106将现实世界数据馈送到第一和第二位置虚拟副本202和204中的相应虚拟副本,以便使虚拟副本与相应现实世界元素214充实和同步。
至少一个云服务器100中的指令,当由至少一个处理器执行时,可以将来自第二位置210的现实世界数据的至少一部分覆盖并且流式传送到第一位置208,或者通过虚拟世界系统106中相应的第一和第二位置虚拟副本202和204。因此,例如,第一位置208中的第一用户216可以通过第一位置208中的第一用户设备218通过第一位置虚拟副本202以例如增强的现实,第二位置220的覆盖版本来观看,所述覆盖版本被投影在第一位置208中的表面或多个表面上,例如一个或多个壁或投影屏幕。用户设备可以是移动设备、个人计算机、游戏机、媒体中心、智能隐形眼镜、增强现实眼镜和头戴式显示器等中的一个。
在说明性的情况下,建筑业的贸易展览会在会议中心举行。一些用户出现在会议中心,并且经历了增强的现实中的贸易展示,同时具有现实的和虚拟的产品展示和演示。其他用户被安置在世界的远方的建筑场所,并远程体验贸易展览,观看会议中心的虚拟副本,其可以包括同一产品展示和演示的版本。在建筑工地的摄像机记录商业展览会的感兴趣内容,例如部署以商业展览为特征的新建筑设备。服务器系统将内容从建筑站点流式传送到商业展览的虚拟副本,这允许当前正在经历商业展览的用户看到建筑站点内容。服务器系统通过例如将内容投影到会议中心的墙壁或投影屏幕的表面上,将来自建筑站点的内容覆盖到会议中心的副本上。该表面可以是空白的或者不在使用中,使得内容在表面上的投影不会使其它感兴趣的内容从第一位置模糊。通过这种方式,用户对商业展览的体验得到了增强,同时增加了来自建筑场所的附加内容,而不会中断商业展览的原始体验。
这可以提供与使用投影仪在屏幕或墙壁上显示视频类似的效果。然而,在该示例中使用术语投影并不一定意味着现实投影仪的存在,而是可以包括在虚拟副本内呈现流式内容,使得流式内容代替了其最初出现在虚拟副本中的表面。在实践中,这可以通过存储墙壁或屏幕的表面的坐标,尺寸,朝向等来实现,使得当来自施工现场的内容覆盖到其上时,墙壁或屏幕的原始表示整体地或部分地被来自施工现场的内容流代替。在内容流已经结束之后,表面的外观可以返回到其原始状态,类似于关闭投影仪的效果。
或者,来自第二位置的流送内容可以与第一位置的虚拟副本覆盖,而不被投影到第一位置的任何表面上,例如通过呈现看起来在第一位置的虚拟副本中的空间中漂浮的内容,然后在流送结束之后消失。在这种情况下,在内容被呈现为覆盖第一位置的虚拟副本的附加层的意义上,流式传送的内容仍然可以被认为与第一位置的虚拟副本覆盖。
在一些实施例中,至少一个云服务器100被配置为将来自第二位置210的所有现实世界数据覆盖并且流式传送到第一位置208的虚拟副本上。在这些实施例中,来自第二位置210的现实世界数据的至少一部分包括第二位置210的所有现实世界数据。因此,来自第二位置210的现实世界数据可以完全覆盖在第一位置虚拟副本202的顶部,这对于例如虚拟现实体验可能是足够的。例如,在一个位置的用户的城市的虚拟副本可以被在另一个位置的城市的虚拟副本完全覆盖。
在另一个实施例中,至少一个云服务器100被配置为在不包括或利用第一位置虚拟副本202的情况下将来自第二位置210的所有现实世界数据覆盖并且流式传送到第一位置208中的用户设备218的视场上。例如,用户216在第一位置208的视图可以被另一城市的虚拟副本完全覆盖。
在使用来自第二位置的所有现实世界数据的实施例的一个说明性示例中,第一位置208中的用户216可以通过相应的用户设备218来查看他或她自己的城市中的远程城市的所有元素,并且可以具有已经被虚拟地远程移植到另一个城市的体验。例如,用户可以在他或她自己的房间,或后台中经历虚拟现实体验,同时经历巴黎,包括在那时位于巴黎的一个或多个街道,地标,商店和人。
在一些实施例中,现实世界元素214的数据包括被直接输入或者被捕获并传送到对应的第一位置虚拟副本202或第二位置虚拟副本204的现实空间数据,并且被转换为包括虚拟空间数据的虚拟数据。由至少一个云服务器100组合现实和虚拟空间数据,使得能够使用虚拟空间数据来增强现实空间数据。因此,例如,现实世界元素214和第二位置210内的用户(例如,第二用户222)的位置和朝向通过多个连接的设备212被映射或感测,并且通过第二位置虚拟副本204在虚拟世界系统106中被实时更新,使得第一用户216能够实时查看第二位置210中的任何变化。
使用虚拟数据来增强现实数据指的是经由在虚拟世界系统106中进行的计算,诸如通过实施虚拟传感器和无线电力传输,向现实世界对象提供更多能力。在另一示例中,可以由通过虚拟世界系统106中的计算来优化现实世界对象,来进行使用虚拟数据来增强现实数据的操作。使用虚拟世界数据来增强现实世界数据的其它示例可以包括,以增强现实向用户提供媒体流,该媒体流包括可以对现实世界的特定场景进行动画化的纯虚拟对象、现实对象的虚拟副本或其组合。
在一些实施例中,第一位置208和第二位置210中的多个连接的设备212包括一个或多个rgbd相机、深度相机、lidar相机、cctv相机和物联网设备。在又一实施例中,连接的设备212被配置为记录第一位置208和第二位置210中的事件、扫描并且生成3d图像、检测一个或多个现实世界元素214中的状态改变或其组合。在又一实施例中,第一位置208和第二位置210内采用的相机使用基于人工智能的机器视觉来识别现实世界元素214或人以及它们在第一位置208和第二位置210内的位置和朝向。
在一些实施例中,通过第一位置虚拟副本202将现实世界数据从第二位置210覆盖和流式传送到第一位置208的至少一个表面上要求第二用户222经由第二用户设备224通过虚拟世界系统106在第一位置208上发布第二位置虚拟副本204,使得第二位置虚拟副本204对第一位置208中的一个或多个用户可见(例如,第一用户216)。在一些实施例中,现实世界数据的覆盖和流式传送还可以包括邀请第一位置208中的一个或多个用户远程查看第二位置212。第一用户216接受邀请触发至少一个云服务器100通过虚拟世界系统106中相应的第一位置虚拟副本202将第二位置虚拟副本204流式传送并覆盖到第一位置208的至少一个表面上。
如参考图1所描述的,虚拟世界系统106中的虚拟对象108还可以包括一个或多个纯虚拟对象114和交互应用116。在另一些实施例中,并参考图1。在1和2中,通过相应的第二位置虚拟副本204在第二位置210上发布一个或多个纯虚拟对象114,交互应用116或其组合,并通过相应的第一位置虚拟副本202在第一位置208上覆盖。在另一个实施例中,一个或多个纯虚拟对象114,交互应用116或其组合通过相应的第一位置虚拟副本202在第一位置上发布,并通过相应的第二位置虚拟副本204在第二位置210上覆盖。一个或多个纯虚拟对象114和交互应用116的发布可以实现用户设备与其的交互。
在一些实施例中,第一和第二位置208和210包括存储在至少一个云服务器100中的相应的关联数字标识符。数字标识符可以由用户设备218从至少一个云服务器100检索,以便通过虚拟世界系统106访问相关联的物理位置。在一些实施例中,数字标识符包括qr码、url、ip地址、mac地址、密码哈希、通用唯一标识符和组织唯一标识符中的一个或多个。
在另外的实施例中,用户,例如第一用户216,可以在接收到来自通过第二用户设备224发送的第二用户222的邀请时,通过虚拟世界系统106经由第一用户设备218访问第二位置210。第二位置虚拟副本204可以通过相应的第一位置虚拟副本202通过空间数据混合过程流式传送并覆盖到第一位置208的至少一个表面上。作为示例,第二用户222可以是在第二位置210中发生的事件的主持者,该事件可以由第一用户218从第一位置208访问,该第一位置208在接收和接受邀请时充当事件的客户。主持者可以是在第二位置210中发生的现场事件的创建者,因此可以接收客户,并且在一些实施例中,可以另外充当专用于向客户提供帮助的个人助理。在一些实施方案中,主持者可以是人或人工智能个人助理。
在又一实施例中,在接收到邀请之后,由第一用户设备218检索数字标识符。在其它实施例中,数字标识符被公开地共享为第二位置210或第二用户设备224的联系细节的一部分。
在一些实施例中,用作客户的第一用户216可以由用作第二位置210中的主持者218的第二用户222接收。每个用户可以从他们的当前位置将彼此视作虚拟化身。例如,第二用户222可以将第一用户216视作用户化身226或视作虚拟全息图。第一用户216同样可以将第二用户222视作用户化身或视作可以覆盖到第一位置208的至少一个表面上的虚拟全息图。然而,在该示例中,只有第一用户216可以观看第二位置210在第一位置208的至少一个表面上的虚拟投影。换句话说,从第二用户222的角度来看,第一用户化身226被投影在第二位置210上,并且从第一用户216的角度来看,第二位置220连同第二用户222一起通过相应的第二用户化身或全息图(未示出)可以覆盖在第一位置208的至少一个表面上。客户实际上可以与包括在第二位置210内的主持者或任何现实世界元素214交互。此外,现场事件物理位置202内的现实世界元素214还可以经由现场事件物理位置虚拟副本206内的它们各自的虚拟副本彼此进行交互。
例如,位于第二位置210的用户可以经由他或她的用户设备发布第二位置虚拟副本204。发布第二位置虚拟副本204可能需要通过用户设备预先扫描第二位置210。然而,如果第二位置空间已经被包括在虚拟世界系统106中,则可能不需要再次扫描第二位置210。第一位置208中的用户可以经由用户设备从第一位置208查看可用的发布的第二位置虚拟副本204。例如,第二位置虚拟副本204可以从第一位置208中的用户可以查看的发布位置虚拟副本的列表中获得,并且如果需要,可以访问。或者,第二位置210中的用户也可以向第一位置208中的用户发送访问第二位置虚拟副本204的邀请。第二位置210中的用户还可以在第二位置虚拟副本204中发布纯虚拟对象114和/或交互式应用116。作为示例,纯虚拟对象114可以包括虚拟角色,漂浮项目或房间的完整虚拟“蒙皮”(例如,通过提供表示另一个气氛的虚拟图形层)。交互式应用116可以是例如可以实现用户之间的交互的游戏。此外,在该示例中,第二位置210可以包括相应的相关联的数字标识符,其可以在发布第二位置虚拟副本210时被公开共享,或者可以作为在第一位置208中被发送到用户的用户设备的邀请的一部分被发送。第一位置208中的用户可以查看所发布的第一位置并且可以访问它,触发至少一个云服务器100通过第一位置虚拟副本将来自第二位置210的现实世界数据覆盖到第一位置208的至少一个表面上。该覆盖可以在增强现实或虚拟现实中执行。因此,第一位置208中的用户可以具有在第二位置210中的印象,并且可以在第二位置210中观看用户的虚拟化身,其可以同样地在第一位置208中观看用户的虚拟化身。用户在第一位置208中对发布的第二位置210的访问可以在增强或虚拟现实中执行。在增强现实的情况下,第一位置208的一些部分仍然是可见的,而第二位置210的其它部分可以覆盖并且流式传送到第一位置208的至少一个表面上。在虚拟现实的情况下,可以通过将第二位置210的虚拟副本投影到第一位置208的虚拟副本上来虚拟地覆盖第一位置208的所有视图。因此,处于第一位置的用户可以具有在处于当前第一位置208的同时完全浸没在第二位置210中的感觉。在一个示例中,第二位置210中的用户可以在增强现实中观看第一位置208中的用户的虚拟化身或虚拟全息图。在另一示例中,第二位置210中的用户可以在虚拟现实中完全流式传送的第一位置208中观看用户的虚拟化身或虚拟全息图,其中第一和第二用户都将观看第二位置210的整个虚拟副本。
第一位置和/或第二位置210中的交互通过被包括在计算机脚本和计算机程序中的计算机代码来提供,并且通过包括传统的、分布式的或去中心化的应用,智能合约等或其组合来启用。因此,应用、智能合约或其组合能够数字编码各种虚拟交互,诸如虚拟购买、虚拟投资、虚拟拍卖、虚拟游戏、虚拟测试、虚拟检查、虚拟触摸、虚拟凝视、虚拟物理讲话、虚拟聆听、虚拟物理交互、虚拟投票、虚拟签名、虚拟绘图、虚拟作曲、虚拟创造、虚拟协作、虚拟运动、虚拟驾驶、虚拟飞行、虚拟进行手术、虚拟咨询、虚拟休假、虚拟建造、虚拟工程、虚拟设计、虚拟训练、虚拟学习、虚拟教育、虚拟医疗、虚拟远程控制、虚拟感觉、虚拟情绪、虚拟眨眼、虚拟挥动、虚拟支付、虚拟传送、虚拟共享和虚拟收集等。
在一些实施例中,由第一用户216以增强或虚拟现实通过虚拟世界系统106来访问第二位置虚拟副本204。在这些实施例中,至少一个云服务器100存储增强现实和虚拟现实中的每个的分离的层,通过被连接到至少一个云服务器100的第一用户设备218来激活该分离的层,每个层包括特定于每个层的现实和虚拟副本的增强。例如,第二位置210内的人可能在增强现实层中激活了特定对象,该特定对象仅可以以增强现实来查看。当第一用户216通过在第一位置208的至少一个表面上流式传送和覆盖第二位置来访问第二位置210时,第一用户216可以仅观看现场事件的每个参与者和对象,而没有进一步的增强,但是当第一用户216激活增强现实层时,与增强现实层中的增强的对象和交互可以对客户第一用户216是可用的。
根据实施例,用户设备(例如,第一用户设备218和第二用户设备222)具有个人标识符或相应的用户数据,使得至少一个云服务器100能够识别参与者以便提供个性化体验。此外,在该实施例中,由第一用户216或第二用户220进行的每个交易在用户设备个人标识符下被记录在至少一个云服务器100的存储器中。在又一实施例中,包括现场事件内的交易的每个交互在用户个人标识符下通过一个或多个相应的智能合约被记录在区块链或分布式账本上。在又一实施例中,虚拟副本之间的交互或任何其它元素通过智能合约被记录在区块链或分布式账本上。
在一些实施例中,当前公开的系统可以使用云到边缘基础设施,该云到边缘基础设施可以采用公共或私有云服务器、雾服务器以及诸如企业系统、移动平台、机械、机器人、车辆、传感器或用户设备的其它系统来实施分布式计算能力,所有这些可以通过网络206连接。在一些实施例中,云到边缘基础设施进一步包括基于分布式账本的基础设施,以促进广泛地分发虚拟世界系统106所需的数据的传送和存储,包括虚拟副本、纯虚拟对象、应用以及虚拟世界系统106内的任何事件或交互。这样,包括物理服务器和网络设备的资源实现共享的存储和计算,该共享的存储和计算可以根据诸如用户到资源和网络的距离以及来自用户相对于彼此以及相对于他们所在的位置地点而相应地命令更多或更少的计算的计算需求的因素来动态分配。在一些实施例中,使用分布式账本基础设施将存储和计算的动态分配编码为智能合约,对事务逻辑(例如,存储和计算的每个分配背后的计算机逻辑)以及分配的后果或结果进行自动化。
根据一实施例,由到达时间(toa)、到达角度(aoa)和视觉成像技术中的一个或多个来进行设备的跟踪。可以由雷达技术、天线、wi-fi、惯性测量单元、陀螺仪和加速度计中的一个或多个来进行跟踪。
在一些实施例中,为了减少硬件和网络需求,有助于减少网络延迟,并且改善一般的融合现实体验,系统可以通过包括毫米波(mmw)或者mmw和sub6ghz通信系统的组合的网络206来连接,诸如通过第五代无线系统通信(5g)。在其它实施例中,系统可以通过无线局域网络(wi-fi)来连接。在其它实施例中,系统可以通过第四代无线系统通信(4g)通信连接,可以由4g通信系统来支持,或者可以包括其它有线或无线通信系统。
在其它实施例中,全球导航卫星系统(gnss),其通常指的是任何基于卫星的导航系统,像是gps、bds、glonass、qzss、galileo和irnss,可以用于实现设备的定位。利用来自足够数量的卫星的信号以及诸如三角测量和三边测量的技术,gnss可以计算设备的位置、速度、高度和时间。
图3a-3b示出了根据实施例的可以被采用的子宇宙和流的示意图。
参考图3a,子宇宙网络300,诸如子宇宙3021-n,可以形成虚拟世界系统106。例如,城市子宇宙可以连接到其它城市子宇宙以形成国家子宇宙。如果国家子宇宙没有连接到任何其它子宇宙302,则国家子宇宙可以表示虚拟世界系统106的宇宙。因此,在本公开的图2中使用的一个或多个虚拟化位置,例如第一和第二位置208和210,可以是同一子宇宙的一部分或取决于地理位置的不同子宇宙的一部分。因此,每个子宇宙302在地理上彼此分离和区分。
图3b示出了子宇宙302的空间图,该子宇宙302包括多个流304,诸如流1-4,每个流304包括多个与流有关的虚拟副本110。在预定环境中包括整个虚拟副本110的多个流304形成子宇宙302。例如,城市子宇宙可以表示城市的所有的建筑物、树、人、街道、交通灯、车辆等。
图4描绘了根据实施例的描述用于生成在融合现实系统中使用的虚拟副本网络的平台和接口的示意图。参考图4,位于虚线内的元素表示虚拟副本和虚拟副本网络112驻留的虚拟世界系统106。
如图4中示出的,虚拟副本网络112可以连接到多个外部平台或连接到被包括在虚拟世界系统106中的引擎服务。多个外部平台可以包括例如一个或多个物联网(iot)平台402、机器学习(ml)平台404、大数据平台406和模拟平台408,这些平台可以通过应用程序接口(api)和软件开发工具包(sdk)410连接到虚拟世界系统106,以便提供和操纵模型以及消费或发布数据到虚拟副本。
iot平台402指的是能够管理从连接的设备和用户设备中的传感器接收的多源输入数据的软件和/或硬件。ml平台404指的是向虚拟副本提供使用机器学习模型和算法用于人工智能应用的能力的软件和/或硬件。大数据平台406指的是使得组织能够开发、部署、操作和管理与虚拟副本网络112有关的大数据的软件和/或硬件。模拟平台408指的是能够使用虚拟副本及其数据和模型以便虚拟地重建现实世界实体的现实行为的软件和/或硬件。
被包括在虚拟世界系统106中的引擎服务可以包括人工智能引擎412、模拟引擎414、3d引擎416和触觉引擎418等。人工智能引擎412指的是能够管理和应用用于人工智能应用的机器学习模型和算法的软件和/或硬件。模拟引擎414指的是能够使用虚拟副本及其数据和模型以便虚拟地重建现实世界实体的现实行为的软件和/或硬件。3d引擎416指的是可以在虚拟副本的3d图形的创建和处理中使用的软件和/或硬件。触觉引擎418指的是能够对应用和虚拟副本实施触觉特征以向用户提供基于触摸的交互的软件和/或硬件。虚拟世界系统还连接到空间数据流平台420,该空间数据流平台420被配置用于优化虚拟世界系统中以及虚拟世界系统和融合现实422之间的现实和虚拟空间数据的交换和管理。
3d引擎416和触觉引擎418可以经由用户设备中的合适的数字现实接口424连接到融合现实422,使得能够以虚拟现实或增强现实中的任何一个访问融合现实422。融合现实422向用户提供扩展的现实,其中,现实元素被持久性虚拟对象覆盖或增强、被锚定在特定的地理位置中或被锚定到现实中的现实元素、并且包括被连接到现实的虚拟副本的ai和模拟。用户可以通过他们的虚拟化身或虚拟全息图不受限制地与该融合现实422进行交互。
虚拟副本网络112是虚拟世界系统106的组成部分,并且实现虚拟副本现实426的实施方式,其中,所有或大多数的现实世界元素是完全虚拟的,并且可以被虚拟地增强(例如,向虚拟副本添加现实世界元素可能不具有的特征)。在当前公开中,虚拟副本现实426与虚拟现实的典型概念不同,在于虚拟现实可以表示世界的沉浸式实现,其中,所有或大多数的元素是虚拟的,而虚拟副本现实426考虑了情境、基于现实世界对象的精确地理位置以及虚拟副本之间的交互和连接,这些虚拟副本通过经由多个平台和/或引擎所输入和操纵的数据和模型来保持连续更新。因此,虚拟副本现实426指的是虚拟世界系统内的世界的实际虚拟副本,其中,虚拟世界系统提供每个虚拟副本的数据、模型、交互、连接和基础设施,在一些实施例中,该数据、模型、交互、连接和基础设施向虚拟副本提供自计算能力和自主行为。
在又一实施例中,系统400可以在至少一个服务器的存储器中存储增强现实和虚拟现实的分离的层。分离的层可以使得能够通过融合现实422以增强现实或虚拟现实中的任何一个来访问虚拟副本现实426,并且可以在访问一个或另一个类型的现实时通过与至少一个服务器连接的用户设备来激活。每个层可以包括可以特定于每个层的现实和虚拟副本的增强。例如,当以增强现实来访问融合现实422时,用户可以查看位于当前融合现实场景中的现实对象、经由对应的虚拟副本的每个现实对象的当前增强、以及被配置为仅在增强现实中可见的纯虚拟对象。在另一示例中,当以虚拟现实来查看融合现实422时,用户可以仅查看被配置用于虚拟现实的虚拟副本现实426的版本,包括仅被配置用于虚拟现实视图的增强。然而,当在虚拟现实中时,用户可以激活增强现实层,以便查看最初用于增强现实的增强和虚拟对象。同样,当在增强现实中时,用户可以激活虚拟现实层,以便被完全传输到虚拟现实,同时仍然能够查看增强现实中的增强。
“自计算能力”,也被称为“自管理能力”,在本文中指的是应用人工智能算法以便自主管理计算资源(例如,分布式计算资源)的能力。在实施例中,在持久性虚拟世界系统中具有自计算能力的虚拟副本能够自主管理计算资源,以适应对应的现实世界元素的环境或现实世界元素本身的变化。可以通过使用在区块链或分布式账本技术上运行的智能合约来进一步管理自管理规则和条件,以分布式和透明的方式来进一步对规则和条件进行编码。因此,在实施例中,每个虚拟副本可以表现出自主行为,根据虚拟世界系统中反映的现实世界中的条件而自主动作(例如,通过分配所需的资源,如由每个情况要求地自主发送和执行命令和/或生成事件)。实现该类型的行为可能需要在虚拟副本建模和开发期间使用人工智能算法来训练虚拟副本。因此,虚拟副本开发者的角色可以被限于定义引导自管理处理的一般策略和规则。
图5描绘了根据实施例的系统500的图,该系统300描述在融合现实系统中使用的虚拟副本和导出的虚拟副本网络的设计。图5的一些元素可以指的是图1-4的相似或相同的元素,因此可以使用相同的附图标记。
如图5中示出的,包括连接的设备504和用户506的现实世界502中的元素通过数据流508被连接到虚拟世界系统。根据连接的设备504的能力,这些数据流508可以是单向或双向的。如参考图1解释的,虚拟世界系统可以被存储在云服务器102中,并且在云到边缘计算和网络基础设施中被共享。在当前公开中,术语“用户”可以指的是与虚拟世界系统进行交互的人类或指的是由所述人类用来与应用进行交互的设备,诸如移动设备、个人计算机、游戏机、媒体中心和头戴式显示器等。在当前公开中,连接的设备504指的是基于技术的系统,该系统可以将数据连接并且共享到除用户506设备之外的网络,诸如监视相机、车辆,交通灯、建筑物、街道、火车轨道、家用电器、机器人、无人机等。
由连接的设备504发送的数据流508可以由被安装在连接的设备504上的传感器获得,诸如一个或多个温度传感器、接近传感器、惯性传感器(例如,惯性测量单元、加速度计、陀螺仪和磁力计)、红外传感器、污染传感器(例如,气体传感器)、压力传感器、光传感器、超声波传感器、烟雾传感器、触摸传感器、色度传感器、湿度传感器、水传感器、电传感器或其组合。用户506的数据流508除了传感器数据之外,还可以包括经由用户设备506与应用进行交互而产生的用户输入数据。
通过向多个连接的设备504和用户设备506提供不断从现实世界502捕获数据的感测机构,使用反映现实世界502的状况的实时、多源数据来保持更新虚拟世界和每个同步的虚拟副本110。多源数据包括每个现实世界元素的可捕获数据,包括3d图像数据、3d几何形状、3d实体、3d感测数据、3d动态对象、视频数据、音频数据、优先级数据、化学成分、废物产生数据、文本数据、时间数据、位置数据、朝向数据、速度数据、温度数据、湿度数据、污染数据、照明数据、体积数据、流量数据、色度数据、功耗数据、带宽数据和质量数据等中的一个或多个。
虚拟世界系统中与虚拟副本110的交互是通过使用被连接到每个虚拟副本110的数据存储510的发布/订阅服务进行数据交换来进行的。数据类型可以包括周期和非周期、同步和异步的数据。每个虚拟副本110保持数据存储510,其中,可以由现实孪生或由微服务(未示出)来更新数据。虚拟世界系统中的数据可以直接与特定的虚拟副本110相关联,或者可以被处理为匿名数据,该匿名数据可以包括有关的虚拟副本110的多个流源的聚合。
微服务指的是可以被独立开发、部署和维护的单独服务,每个服务被配置为进行离散任务并且通过api与其它服务进行通信。每个微服务可以使用虚拟副本模型以及与环境的关系来修改虚拟副本110的特定属性的值,从而更新虚拟副本110的数据存储510中的数据。微服务可以使用虚拟世界系统的特定核心服务,诸如多个引擎,或被连接到外部平台。
数据流508可以经由连接器512被存储在数据存储510中。连接器512可以包括用于读取数据流508的数据并且写入数据存储510的软件和硬件。连接器512可以使用发布/订阅应用程序接口(api)来连接到数据存储510,并且帮助向虚拟副本110馈送来自连接的设备504和用户设备506的数据流508。连接的设备504的数据流508进一步通过连接器512馈送给网络物理系统514,而用户设备506的数据流508通过连接器512馈送给用户506的虚拟化身516。系统500还包括机器人518的实施方式,该机器人518可以包括被配置为通过采用机器学习算法作为具有人类或类似人类的行为的自动代理来响应的硬件和软件。人类化身516可以被配置为显示人类用户506的物理特征,或者可以被配置为具有不同的视觉方面和特征。
在当前公开中,一对虚拟现实孪生或孪生对可以被认为是网络物理系统514,该网络物理系统310是计算与物理处理的集成,该网络物理系统310的行为由系统的网络和物理部分来定义。因此,虚拟副本110是网络物理系统514的网络部分。虚拟副本110然后可以被认为是现实孪生的扩展,该虚拟副本106允许将物理部分与人工智能和模拟连接以改善对象的能力和性能。在一些实施例中,虚拟副本110可以代替物理组件和处理的一部分。例如,在现实对应物中的传感器故障的情况下,现实孪生的感测输入由虚拟世界中的虚拟孪生的交互来提供。在另一示例中,如果现实孪生中的电池电量不足,则可以在虚拟世界中完成现实孪生的计算部分。
虚拟副本110还可以包括模型520,该模型520指的是可以用于在虚拟世界系统中复制现实的现实方面的任何图形、数学或逻辑表示。在一些实施例中,合适的模型520包括3d模型522、几何模型524、动态模型526和机器学习模型528中的一个或多个。虽然本文中仅公开了四个模型,但是本领域技术人员可以理解的是,系统可以适于实施比呈现的那些模型更少或更多的模型。
3d模型522与几何模型524相关联以显示被包括在虚拟副本110的每个几何形状中的数据,诸如纹理、颜色、阴影、反射、碰撞效果等。3d模型522包括3d数据结构,该3d数据结构用于视觉地表示虚拟副本110和虚拟世界系统中的其它虚拟元素,诸如应用、广告、虚拟机器人等。3d数据结构可以包括例如一或多个八叉树、四叉树、bsp树、稀疏体素八叉树、3d阵列、kd树、点云、线框、边界表示(b-rep)、构造实体几何树(csg树)、二叉树和六边形结构。3d数据结构具有准确且有效地表示虚拟世界系统中的虚拟对象的每个几何形状的数据的功能。3d数据结构的正确选择取决于数据的来源、渲染期间寻求的几何形状的精度;渲染是实时完成还是预先渲染;是否经由云服务器、经由用户设备、雾设备或其组合来进行渲染;采用虚拟世界系统的特定的应用,例如,与其它类型的应用相比,医疗或科学应用可能需要更高的定义水平;来自服务器和来自用户设备的存储器容量,以及因此期望的存储器消耗;以及其它。
几何模型524包括基于现实世界元素来定义虚拟副本110的形状的数学模型,并且可以由3d模型522来补充。
动态模型526表示描述虚拟世界中的现实世界对象随时间的行为的数学模型,可以包括以定义的顺序发生的一组状态,并且可以包括连续(例如,代数或微分方程)和离散(例如,作为状态机或随机模型)动力学模型。
机器学习模型528是现实世界对象和处理的数学表示,通常基于已经被用作训练数据以供学习的实际或模拟数据由机器学习算法来生成。该模型可以实现人工智能技术的实施方式,该人工智能技术可以用于通过虚拟孪生来优化现实孪生的操作和/或性能。机器学习模型可以采用机器学习算法,该机器学习算法允许教导虚拟副本110关于现实孪生的行为,以便模拟现实孪生的行为。
在一些实施例中,虚拟世界系统包括多个虚拟对象,其中,虚拟对象包括虚拟数据和模型。在虚拟副本110中使用的模型考虑了特定的场景计算所需的细节水平(lod)。lod涉及在虚拟副本远离查看者时或者根据诸如对象重要性、相对于视点的速度、查看者分类、或位置的其它度量来降低模型520表示的复杂性。lod是通常用在游戏引擎中以优化实时渲染的特征,仅在用户的视点更靠近对象时才使用更详细的模型。lod管理通过降低图形流水线使用(通常是顶点变换)的工作量或通过增强物理模拟来增加计算处理(诸如渲染处理)的效率,因为可以将不同的物理模型(从低保真到高保真模型)与虚拟副本相关联,使得能够根据情况和情形来进行不同的模拟。lod管理通过降低图形流水线使用(通常是顶点变换)的工作量或通过增强物理模拟来增加计算处理(诸如渲染处理)的效率,因为可以将不同的3d模型522或动态模型526(从低保真到高保真模型)与虚拟副本相关联,使得可以根据情况和情形来完成不同的模拟。通常,lod管理可以改善帧速率,并且减少存储器和计算需求。lod管理还允许根据特定的要求和情境来提供优化的用户体验。
多个连接的虚拟副本110形成虚拟副本网络106。每个虚拟副本110还可以显示彼此的社交连接350,即,彼此之间的交互。
在一些实施例中,虚拟副本110包括可以用于对数字现实应用的3d结构进行建模的3d世界和建筑物数据中的一个或多个,诸如基于slam或派生映射的数据;3d几何数据;3d点云数据;或者表示现实世界结构特性的地理信息系统数据。
在一些实施例中,可以使用适合于与当前地理定位技术一起使用的参考坐标系来对每个虚拟副本110进行地理定位。例如,虚拟副本可以使用诸如wgs84的世界大地测量系统标准,该wgs84是由gps使用的当前参考坐标系。
图6描绘了根据当前公开的实施例的描述可以被采用的空间数据混合系统600的示意图。
从现实世界或现实世界现实602中的现实世界元素获得的多源数据包括世界空间数据604,该世界空间数据504被传送到云服务器100以用于处理。更具体地,从第一和第二位置208和210中的多个连接的设备获得世界空间数据604。由云服务器100将世界空间数据604从虚拟世界系统发送到虚拟副本现实426,在虚拟世界系统中,相应的第一和第二位置虚拟副本202和204是可用的。
世界空间数据604表示特定位置的地面现实数据,并且与通过连接的设备的传感器物理捕获的测量数据相关联。世界空间数据604也被数字化并且此后是虚拟空间数据606的一部分。因此,在变成虚拟空间数据606之后,与世界空间数据604相关联的虚拟空间数据606可以被分类为在场空间数据608和远程空间数据610。在场空间数据608是指用户当前所处的世界空间604,而远程空间数据510是指一个或多个其它用户所处的远程位置的世界空间数据604。在一些实施例中,虚拟空间数据606可以进一步包括由用户306通过现实世界元素的现有计算机模型(例如,bim)手动输入的数据,或是由系统从其它数据(诸如通过模拟或元数据)推理出的数据,或是纯虚拟对象或交互式应用的空间数据。然后,可以在空间数据混合处理612中混合空间数据,该空间数据混合处理612包括根据用户的偏好组合虚拟空间数据506的部分。
在图6的示例中,第一位置208的在场空间数据608在融合现实422中与第二位置210的远程空间数据610混合。结果,第一位置208中的用户可以通过融合的现实422并经由用户设备观看来自第二位置210的覆盖在第一位置208的在场空间数据608上的远程空间数据610。此外,在第一或第二位置虚拟副本中的纯虚拟对象或应用程序也可以是虚拟空间数据的一部分,并且可以由用户在第一或第二位置观看。
在一些实施例中,获得世界空间数据604包括获得第一和第二位置210的虚拟地图,所述虚拟地图包括第一和第二位置210内的所有或最现实世界对象的3d坐标,从而获得提供第一和第二位置210的可靠版本的3d网格。第一和第二位置210的所述映射可以由至少一个云服务器100的一个或多个处理器通过可执行代码来执行,但是也可以在第一和第二位置210中部分地执行用户设备本身,或者由云到边缘基础设施(例如,云小程序,雾服务器等)内的任何计算设备来执行。然后,虚拟地图被馈送来自第一和第二位置208和210的另外的现实世界数据,提供另外的模型和数据,如参考图1所述。4和5,从而创建第一和第二位置208和210的虚拟副本。然后,在空间数据混合处理612中,根据用户的偏好和观看模式,一个位置的虚拟副本覆盖在另一个位置的地图上。观看模式可以包括增强现实,其中一个位置的虚拟地图的至少一部分覆盖在另一个位置上,但是其中用户当前位置的一些元素仍然可见;或者虚拟现实,其中远程位置完全覆盖原始位置,虚拟地将用户从当前位置“传送”到远程位置。在任何观看模式中,可以放置纯虚拟副本和交互式应用并与其交互。
图7描绘了根据实施例的可以在融合现实空间流系统中使用的连接的设备的操作组件图700。
设备702可以包括操作组件,诸如输入/输出(i/o)模块704;电源706;存储器708;形成跟踪模块714的感测机构710和收发器712;以及网络接口716,它们全部可操作地被连接到处理器718。
i/o模块704被实施为计算硬件和软件,该计算硬件和软件被配置为与用户进行交互,并且向一个或多个其它系统组件提供用户输入数据。例如,i/o模块704可以被配置为与用户进行交互,基于该交互生成用户输入数据,并且在用户输入数据经由网络被传送到其它处理系统(诸如到服务器)之前,向处理器718提供用户输入数据。在另一示例中,i/o模块704被实施为被配置为与其它连接的元素进行交互的外部计算指示设备(例如,触摸屏、鼠标、3d控件、操纵杆、游戏手柄等)和/或文本输入设备(例如,键盘、听写工具等)。在其它实施例中,i/o模块704可以提供与上面描述的功能附加、较少或不同的功能。
电源706被实施为被配置为向设备702提供电力的计算硬件和软件。在一个实施例中,电源706可以是电池。电源706可以被内置到设备中或者可以从设备中移除,并且可以是可再充电的或不可再充电的。在一个实施例中,可以通过使用另一电源706替换一个电源706来对设备重新供电。在另一实施例中,电源706可以由被附接到充电源的电缆,诸如被附接到个人计算机的通用串行总线(“usb”)火线、以太网、雷电接口或耳机电缆来再充电。在又一实施例中,电源706可以由感应充电来再充电,其中,当感应充电器和电源706非常接近但是不需要经由电缆彼此插入时,使用电磁场将能量从感应充电器传送到电源606。在另一实施例中,扩展坞可以用于促进充电。
存储器708可以被实施为适于存储应用程序指令并且存储由感测机构710捕获的多源数据的计算硬件和软件。存储器708可以是能够存储由处理器718可访问的信息的任何合适的类型,包括计算机可读介质,或存储可以借助于电子设备读取的数据的其它介质,诸如硬盘驱动器、存储卡、闪存驱动器、rom、ram、dvd或其它光盘,以及其它可写和只读存储器。除了持久性存储之外,存储器708还可以包括临时性存储。
感测机构710可以被实施为适于从现实世界获得多源数据并且确定/跟踪设备702的位置和朝向、因此确定/跟踪设备702可以被链接到的一个或多个现实世界元素的位置和朝向的计算硬件和软件。感测机构710可以包括但是不限于一个或多个,包括一个或多个温度传感器、接近传感器、惯性传感器、红外传感器、污染传感器(例如,气体传感器)、压力传感器、光传感器、超声波传感器、烟雾传感器、触摸传感器、色度传感器、湿度传感器、水传感器、电传感器或其组合。特别地,感测机构710包括一个或多个惯性测量单元(imu)、加速度计和陀螺仪。imu被配置为通过使用加速度计和陀螺仪的组合来测量和报告设备702的速度、加速度、角动量、平移速度、旋转速度以及其它遥测元数据。imu内和/或与imu分离配置的加速度计可以被配置为测量交互设备的加速度,包括由于地球的重力场引起的加速度。在一个实施例中,加速度计包括能够测量三个正交朝向上的加速度的三轴加速度计。
收发器712可以被实施为被配置为使得设备能够从天线接收无线电波并且将数据发送回天线的计算硬件和软件。在一些实施例中,可以采用mmw收发器712,该mmw收发器612可以被配置为从天线接收mmw波信号,并且在与沉浸式内容进行交互时将数据发送回天线。收发器712可以是双向通信收发器712。
根据实施例,收发器712使得能够经由被连接到网络的基于分布式账本的通信流水线在计算设备之间进行直接通信。基于分布式账本的通信流水线可以通过使用密码学、采用密码“密钥”和密码签名而允许以安全和精确的方式存储信息,使得能够通过去中心化网络在设备702之间进行直接通信。可能需要设备702之间的直接通信并且因此被服务器旁路处理的情况可能包括紧急情况,其中,可能需要在非常短的时间段内作出决定。例如,在两辆车辆可能即将碰撞的自主驾驶情况下,可能期望使得两辆车辆之间能够进行直接通信,以生成可以防止碰撞的更快的响应。在其它实施例中,也可以在服务器和设备702之间利用分布式账本,其中,服务器可以在将数据分发到每个设备702之前获得权限以验证数据。在进一步的实施例中,分布式账本可以使用更靠近服务器、更靠近天线或两者的设备,诸如通过使用图1中描绘的云到边缘基础设施100中的一个或多个设备,以便将这些设备702分配为中央结构来验证和分发数据。
在实施例中,可以通过将imu、加速度计和陀螺仪的能力与由收发器712提供的位置跟踪进行组合来实施跟踪模块714,并且由基于mmw的天线提供的精确跟踪、低延迟和高qos功能可以实现亚厘米或亚毫米的位置和朝向跟踪,这可以在跟踪设备702的实时位置和朝向时增加精度。在替代实施例中,感测机构710和收发器712可以一起被耦合在单个跟踪模块设备中。
网络接口716可以被实施为通信地连接到网络、从网络接收由服务器或由其它设备发送的计算机可读程序指令、并且转发指令以用于存储在存储器708中以用于由处理器718执行的计算软件和硬件。
处理器718可以被实施为被配置为接收和处理指令的计算硬件和软件。例如,处理器718可以被配置为提供成像请求,接收成像数据,将成像数据处理为环境或其它数据,处理用户输入数据和/或成像数据以生成用户交互数据,进行基于边缘(设备上)的机器学习训练和推理,提供服务器请求,接收服务器响应,和/或向一个或多个其它系统组件提供用户交互数据、环境数据和内容对象数据。例如,处理器718可以从i/o模块704接收用户输入数据,并且可以分别实施被存储在存储器708中的应用程序。在其它示例中,处理器718可以从感测机构710接收从现实世界捕获的多源数据,或者可以通过跟踪模块714接收设备702的精确的位置和朝向,并且可以在向服务器发送数据用于进一步处理之前准备一些数据。
图8描绘了根据实施例的实施融合现实空间流系统的方法800。方法800可以由系统来实施,诸如参考图1-7描绘的系统。
方法800开始于步骤802,在至少一个服务器的存储器中提供虚拟世界系统,该虚拟世界系统复制现实世界并且包括一个或多个虚拟对象,该虚拟对象包括现实世界元素的虚拟副本。方法800在步骤804中通过将第一和第二位置中的至少一个映射和复制到虚拟世界系统中来继续。
随后,方法800在步骤806中继续,通过虚拟世界系统,经由通过网络通信并包括感测机构的多个连接的设备将现实世界数据从第一和第二位置的至少一个中的现实世界元素馈送到相应的虚拟副本。将现实世界数据馈送到虚拟副本使得能够将来自第一和第二位置的现实数据与虚拟世界系统中的相应虚拟副本同步。因此,例如,现实世界中的任何事件被实时反映在虚拟世界系统中,并且导致虚拟世界系统中发生事件的任何计算被反映在现实世界中。
在步骤808中,方法800通过将第二位置的虚拟副本的至少一部分覆盖到表示第一位置的虚拟副本的至少一个表面上来进行。最后,方法800可以在步骤810中通过将覆盖的第二位置的至少一部分流式传送到表示第一位置的虚拟副本的至少一个表面上来结束。
在一些实施例中,方法800还包括作为虚拟对象的一部分,提供在存储在服务器的存储器中的一个或多个应用库处可用的纯虚拟对象和交互应用,或者从外部源可用的一个或多个应用库处可用的纯虚拟对象和交互应用,或者它们的组合。
在一些实施例中,方法800还包括向虚拟对象证明通过多个软件平台,软件引擎或其组合输入的逻辑,虚拟数据和模型,如参考图4和5所述。
在一些实施例中,将第二位置的虚拟副本的至少一部分覆盖到表示第一位置的虚拟副本的至少一个表面上包括将与世界空间数据相关联的虚拟空间数据分类为在场空间数据或远程空间数据;基于用户的偏好和期望的观看模式,将部分在场空间数据与远程空间数据混合。
在一些实施例中,所述覆盖和现实世界数据从第二位置到表示第一位置的虚拟副本的至少一个表面上的步骤还包括通过虚拟世界系统,由位于第一位置的第二用户设备在第一位置上复制第二位置,使得第二位置的虚拟副本对于第一位置中的一个或多个用户是可见的。该方法还可以包括邀请位于第一位置的一个或多个用户设备远程查看第二位置。接受邀请触发服务器将第二位置的虚拟副本流式传送并覆盖到第一位置的虚拟副本的至少一个表面上。
在一些实施例中,所述一个或多个纯虚拟对象,交互应用或其组合被发布在第二位置上并且被覆盖在第一位置上。在其它实施例中,所述一个或多个纯虚拟对象,交互应用或其组合在第一位置上发布并在第二位置上覆盖,从而使得第一和第二用户设备能够与其交互。
在一些实施例中,通过提供给位于第一位置中的一个或多个用户设备的邀请来共享相关联的数字标识符。在其它实施例中,相关联的数字标识符被公开地共享为第一位置数据的一部分。
虽然已经在附图中描述和示出了某些实施例,但是应该理解的是,这种实施例仅仅是说明性的,而不是对宽泛的发明的限制,并且本发明不限于示出和描述的特定构造和布置,因为本领域普通技术人员可以想到各种其他修改。因此,本说明书被认为是说明性的而不是限制性的。