使用预先计算的光照构建增强现实环境的制作方法

文档序号:6527397阅读:240来源:国知局
使用预先计算的光照构建增强现实环境的制作方法
【专利摘要】涉及使用全局光照效果高效地构建增强现实环境的实施例被公开。例如,一个公开的实施例提供了一种通过显示设备显示增强现实图像的方法。该方法包括接收图像数据,该图像数据捕获显示设备的局部环境的图像;以及通过该图像数据标识局部环境的物理特征。该方法进一步包括构建从用户的视角与物理特征在空间上配准、用于显示在物理特征上的虚拟结构的增强现实图像,该增强现实图像包括被布置在相邻的位置以形成虚拟结构特征的多个模块化的虚拟结构片段,每个模块化的虚拟结构片段包括预先计算的全局光照效果;以及输出该增强现实图像到该显示设备。
【专利说明】使用预先计算的光照构建增强现实环境
【背景技术】
[0001]增加逼真的光照和阴影到诸如虚拟视频游戏环境的虚拟环境中,可能在运算量上是昂贵的。同样地,供在玩视频游戏期间使用的用于光照效果的渲染时间会可能是不可接受的长。例如,在虚拟环境中编码逼真光照(例如,全局照明)和阴影(“光地图”)的纹理地图的创建将可能花费几个小时,或甚至几天来计算。因此,这种光照效果通常在虚拟环境开发期间为虚拟环境预先计算,而不是在玩游戏期间实时计算。
[0002]动态光照和阴影将会被计算的更快。然而,动态光照的视觉质量可能远远低于预先计算的光照效果的视觉质量。此外,动态光照在运行时可能使用大量的资源。
发明概要
[0003]涉及使用全局光照效果高效地构建增强现实环境的多个实施例被公开。例如,一个公开的实施例提供了一种通过显示设备显示增强现实图像的方法。该方法包括接收捕获显示设备的局部环境的图像的图像数据;以及通过该图像数据标识局部环境的物理特征。该方法进一步包括构建用于从用户的视角与物理特征在空间上配准地显示在物理特征上的虚拟结构的增强现实图像,该增强现实图像包括被布置在相邻的位置来形成虚拟结构特征的多个模块化的虚拟结构片段,每个模块化的虚拟结构片段包括预先计算的光照效果;以及输出该增强现实图像到该显示设备。
[0004]本概要被提供来以简化的形式介绍概念的选择,其将在下文的详细描述中进一步描述。本概要并不意图确定被要求的主题的关键特征或必要特征,也不意图用来限制被要求的主题的范围。此外,被要求的主题不限于解决在本公开的任意部分指出的任意或所有的缺点的实现。
[0005]附图简要描述
[0006]图1示出了在一个示例使用环境中的透视(see-through)显示设备的示例性实施例。
[0007]图2示出了图1的示例使用环境中的增强现实图像的实施例。
[0008]图3示出了模块化的虚拟结构片段集合的示例性实施例。
[0009]图4示出了被应用到一个模块化的虚拟结构片段的部分的预先计算的光照效果的示意描述。
[0010]图5A图示了增加动态点光效果到图2的增强现实图像中,而图5B图示了在具有预先计算的光照效果的一个模块化的虚拟结构片段的部分上的动态点光效果的效果示例。
[0011]图6示出了描述用于构建适应于检测的物理环境的虚拟环境的方法的实施例的流程图。
[0012]图7示出了透视显示设备的示例性实施例的框图。
[0013]图8示出了计算系统的示例实施例的框图。
[0014]详细描述
[0015]如上文提到的,用于虚拟环境的逼真光照效果通常是在虚拟环境被构建好之后预先被计算,然后被存储,例如,被存储为用于虚拟环境的光地图。这种虚拟环境一般使用固定的几何形状来建造,而所述固定的几何形状不适应于用户的周围环境。
[0016]相反,增强现实显示系统可被配置以使虚拟图像适应于用户的周围环境。例如,增强现实视频游戏可使得游戏中的虚拟结构适于用户的物理环境的相应的物理结构。因此,增强现实图像对象的几何形状可基于用户的物理环境而改变。
[0017]由于使得增强现实环境适于物理环境在实时使用期间发生,如果高质量的光照效果在环境被创建后被应用到该环境上,那么该光照计算也将在此时发生。然而,如果在将增强现实图像适于物理环境之后用于增强现实环境的这种光照效果被计算,那么取决于用于计算光照效果的特定计算系统,由于应用逼真光照效果的计算花费,用户可能不得不等待几个小时到几天来经历增强现实体验。这会导致慢得不可接受的用户体验。进一步地,在这么长的延迟期间物理环境的外观可能会变化。这会导致现实世界和虚拟世界之间的不匹配,其可能显著地影响增强现实体验。
[0018]作为一个可能的解决方案,动态光照可被用来代替预先计算的光照效果用于增强现实环境。然而,如上文提到的,动态光照比预先计算的光照可能具有更低的质量,因此可能不提供同样好的用户体验。此外,动态光照在运行时在运算量上是昂贵的,这可能减少诸如其他视觉和玩游戏的体验的其他方面的计算预算。
[0019]因此,此处公开的实施例涉及用高质量的预先计算的光照效果来高效构建增强现实环境,其适于局部物理环境的几何形状。简要地,该公开的实施例使用模块化的虚拟结构片段,所述结构片段可被布置在互相相邻的位置以为增强现实图像形成虚拟结构,其中该模块化的虚拟结构片段包括高质量的预先计算的光照效果。由于光照效果为每个模块化的虚拟结构片段预先计算,该光照效果将会被包括在经由模块化的虚拟结构片段构造的虚拟结构中。进一步地,在一些实施例中,局部光照特征可被检测,并被用于调节模块化的虚拟结构片段的外观。这种局部光照特征的示例可包括但不限于:局部物理环境中的颜色特征以及光源的位置。
[0020]图1示出了用于增强现实显示系统的使用环境100的以起居室的形式的示例性实施例。用户102被示出为通过透视显示设备104观察该起居室。图1也描述了用户的视野103,其代表通过透视显示设备104可见的环境的一部分,因此该环境的该部分可通过透视显示设备104显示的图像被增强。在一些实施例中,用户的视野103基本上与用户的实际视野同延(coextensive),而在其他实施例中,用户的视野103占据了用户的实际视野的更少的部分。
[0021]将在下文更详细地描述的是,透视显示设备104可包括一个或多个朝向外面的图像传感器(例如,二维相机和/或深度相机),其被配置以当用户走过环境时获取表示使用环境100的图像数据(例如,彩色/灰度图像,深度图像/点云数据/网格数据等等)。该图像数据可被用来获得关于诸如天花板106和墙壁108的环境的布局和其结构特征以及其他特征的信息。
[0022]透视显示设备104进一步被配置来在经过通过设备可见的物理对象上放叠加显示的虚拟对象以创建增强现实图像。例如,参考图2,示例增强现实图像被示出,其中诸如虚拟的墙壁立柱202,顶梁204等等的虚拟的房间框架结构200被显示为用户的墙壁上的叠层(overlay) 0诸如管道206、导管/电缆等等的基础设施图像以及任何其他适当的虚拟结构同样可被显示。类似的结构(未示出)同样可为天花板被显示。此外,图像可被显示对应于房间中的家具或其他非结构化对象,并被显示为占据房间中的空的空间。需要理解的是为了更完整地说明增强现实环境,图2中描述的增强现实图像并不限于图1中示出的用户的视野。
[0023]图2的虚拟墙壁框架结构在几何上适于下面的物理结构(例如,墙壁108)。由于每个用户的局部物理环境很可能不同,用于每个玩家的局部物理环境的整个虚拟结构在获取局部物理环境的图像数据(例如,立体深度图像数据,结构化光图像数据,飞行时间(time-of-f light)图像数据或其他深度图像数据)后被构建,而不是被预先设计。如此,如果全局光照效果在虚拟结构被构建之后被应用到该虚拟结构,那么在活动能够被玩之前,玩家可能被迫要等待不期望的长时间,并且在游戏期间可被限制改变环境(例如,走到不同的房间),因为建造并应用光照到新的环境可能花费不适宜的长时间段。
[0024]因此,如上面提到的,虚拟结构200由带有预先计算的光照效果的模块化的虚拟结构片段集合组装而成,其中模块化的虚拟结构片段的实例可被布置在互相相邻的位置并被处理(例如,旋转、缩放等等)来形成统一的虚拟结构的外观。图3示出了模块化的虚拟结构片段集合300的示例性实施例,其包括墙壁立柱片段302,带有相连接管道的墙壁立柱片段304,带有水平管道的墙壁立柱片段306,一对门框架片段308,310,以及一对窗户框架片段312,314。参考图2,需要注意的是,虚拟结构200可完全由从集合300中选择出的虚拟墙壁片段的实例经过缩放、旋转、修剪、变形和/或基于每个特定实例的布置的另外的适当的处理来构建。
[0025]尽管在图3中描述了模块化的虚拟结构片段的相对简单的集合,可以理解的是,模块化的虚拟结构片段的集合可具有任何适当的数量和任意期望的复杂度的片段的选择。进一步地,可以理解的是,带有预先计算的光照的模块化的虚拟结构片段的集合可被用来构建不同于适于墙壁的虚拟结构的任何其他的适当的结构来适应任何其他期望的物理特征,包括但不限于:适于天花板,以及诸如家具、墙壁帘子、植物、外部对象、柜台面、吧台面等等的非结构特征的虚拟结构。例如,预先照亮的模块化的虚拟结构片段可包括预先照亮的虚拟沙发、桌子、电视、镜子以及其他通常在物理环境中被找到的对象,但是它们在不同的物理环境中可具有不同的形状和/或外观。需要理解的是,在一些示例中,用于这种对象的这种虚拟结构片段可包括单独的“片段”,使得单独的虚拟结构元素被调节大小、旋转以及其他处理来适应于期望的物理结构而不必和相邻的片段结合。此外,需要理解的是,在物理环境中的一个空的空间可被考虑成环境的一个物理特征,且模块化的虚拟结构片段可被布置来在房间或其他使用环境中的空间中没有被占据的部分构建虚拟对象。
[0026]一些模块化的虚拟结构片段可包括约束可被连接到该片段的其他片段的集合的连接限制。例如,在图3中,每个窗户片段和门片段可在一侧(例如,窗户/门侧)被连接到另一个窗户或门片段,而不是墙壁立柱片段302在该侧,否则片段可能不正确地匹配。进一步地,连接的管道304和水平管道306片段可被约束为连接到带有互补的管道部分的片段。需要理解的是,这些连接限制是为了举例的目的而被描述,任意其他适当的连接限制可被使用。
[0027]任何适当的预先计算的光照效果可被应用到模块化的虚拟结构片段。例如,在一些实施例中,模块化的虚拟结构片段集合被意图用在任何局部光照环境中,而不参考环境中的物理光的位置。在这种实施例中,定向光效果可被采用。一个这样的示例被显示在图4中,定向光入射在虚拟墙壁立柱片段的部分400上。应用的虚拟光照可具有任何适当的方向。例如,对于水平平铺的块,光可垂直于水平轴,而对于垂直平铺的块,光可垂直于垂直轴。此外,对于同时水平和垂直平铺的模块化的块,光可以同时垂直于两个轴。这可有助于保证为片段预先计算的阴影和光照对于每个片段具有共同的光照特征,并因此可有助于防止相邻的片段相交处的视差和/或其他不连续。在图4的实施例中,定向光被显示为以相对于垂直面的大约45度角被应用,但是可以理解的是这是为了举例的目的而被介绍,且任意其他适当的角度可被使用。
[0028]在其他的实施例中,模块化的虚拟结构片段集合可被配置来和特定的光照特征一起使用-例如,单独的头顶上的点光源,相邻于墙壁的灯等等。在这种实施例中,任何适当种类的虚拟光照可被用于预先计算光照效果。在任何情况下,在预先计算光照效果之后,计算后的光地图将会和相关联的模块化的虚拟结构片段一起以信息的高等级保存,使得由片段组装的虚拟结构的图像具有逼真的光照效果。
[0029]任何适当的光照信息的种类可为模块化的虚拟结构片段被存储。例如,预先计算的光照效果可被存储为光地图、立方体图、球调波(spherical harmonic)(例如,预先计算的辐射传输函数)和/或任何其他适当的形式。预先计算的辐射传输函数的使用可允许在虚拟的对象上的逼真的光照和阴影被生成,例如,基于检测到的在使用环境中的物理光的位置,通过在物理环境中的物理光的位置应用虚拟点光照,如通过图5A中的虚拟点光源500示出的。图5B显示了图4示出的墙壁立柱部分的外观如何基于图5A的虚拟点光源被改变的示例。此外,程序的或动态的光照同样可被实时应用(例如,光由在增强现实图像中显示的动态虚拟对象引起)。
[0030]局部物理光照特征同样可被用来以其他的方式调节模块化的虚拟结构片段的外观。例如,模块化的虚拟结构片段的预先计算的光照效果可基于白光的应用来被计算。然后,当为该特定的物理环境创建虚拟图像时,在物理环境中的物理光照的颜色特征可从由透视显示设备获取的图像数据被分析,且被确定的颜色特征(例如,色度、饱和度、反射率)可被应用到虚拟光照效果使得该虚拟光照更接近地匹配局部物理光照。通过这种方式,预先照亮的虚拟墙壁/天花板片段、预先照亮的虚拟家具、以及任何其他适当的预先照亮的虚拟对象的显示的实例可被更接近地匹配到该物理环境的外观。
[0031]图6示出了通过应用模块化的虚拟结构片段的实例到检测到的物理结构的用于构建增强现实环境的方法600的实施例。方法600包括,在602,接收捕获透视显示设备的局部环境的图像的图像数据。该图像数据可包括任何适当的数据,包括但不限于深度图像604和/或二维图像,并且可从透视显示设备上的或是透视显示设备外部的图像传感器处接收。该深度图像数据可从任何适当的深度成像系统处接收,包括但不限于立体成像系统、飞行时间(time-of-flight)成像系统以及结构化光成像系统。
[0032]方法600然后包括,在606,从该图像数据标识局部环境的物理特征。该物理特征可以任何适当的方式被标识。例如,在一些实施例中,物理环境的网格表示从深度图像数据确定,并在608执行网格分析,以在610标识物理环境中的主要表面。示例包括但不限于,墙壁612,天花板614,以及诸如门、窗、天窗、柱子、房间中的其他突出物/切割等等的墙壁和天花板的特征。此外,几何形状中的开放空间可被标识,例如,以允许期望的虚拟结构适于所标识的开放空间。
[0033]方法600同样可包括,在616,标识物理环境的一个或多个局部光照特征。局部光照特征的示例可包括但不限于,颜色特征618以及局部光源620的位置。
[0034]方法600进一步包括,在622,构建增强现实图像,该增强显示图像包括用于显示在检测到的物理特征上的虚拟结构特征,其与物理特征在空间上配准。如上文提到并在624指示的,该虚拟结构可通过布置多个模块化的虚拟结构片段来构建,模块化的虚拟结构片段的每一个包括预先计算的光照效果。该虚拟结构片段可以任何适当的方式被布置,包括但不限于,通过旋转、缩放、变形、修剪等等块来适应感兴趣的物理几何形状。类似地,该模块化的虚拟结构片段可包括任何适当的预先计算的关于预先计算的光照效果的信息。示例包括但不限于,光地图626和/或辐射传输函数628。进一步地,如上面描述的,当选择并布置模块化的虚拟结构片段来保证互补的特征被适当地连接在相邻的片段上时,可在630应用限制可连接到选择的模块化的虚拟结构片段的其他模块化的虚拟结构片段的集合的连接限制。
[0035]此外,如上文提到的,局部光照特征可被用来构建增强现实图像。例如,如在632指示的,在一些实施例中,模块化的虚拟结构片段的外观可基于局部光照特征而被调节。该外观可以任何适当的方式被调节。例如,如在634指示的,局部光照环境的颜色可被施于预先计算的光照效果。同样地,如在636指示的,虚拟光源,例如虚拟点光源,可被应用在环境中物理光源的位置处。
[0036]在其他实施例中,替代改变模块化的虚拟结构片段的外观,具有不同的光照特征的多个模块化的虚拟结构片段的不同的集合可以是可用的。例如,模块化的虚拟结构片段的一个集合可包括预先计算的对应于头顶上的点光源的光照效果,而另一个集合可包括预先计算的对应于来自侧窗的定向光的光照效果。在这个实例中,如在638指示的,局部光照特征可被用来选择具有对应的光照特征的模块化的虚拟结构片段的集合,使得产生的虚拟结构可具有与环境中的物理光类似的光照特征。
[0037]—旦构建了增强现实图像,方法600包括输出该增强现实图像到透视显示设备,如在640指示的。来自透视显示设备的传感器数据(例如,内部的或外部的图像传感器)可被用来检测用户的眼睛位置和注视方向,并同样被用来检测用户视野中的物理对象,以及在对应的物理特征上显示虚拟结构,该虚拟结构与该物理特征在空间上配准来给予用户该物理环境的增强现实视角。
[0038]如上文提到的,上面描述的方法可经由任何适当的显示设备执行。示例包括但不限于透视显示设备,例如图1中的头戴式透视显示设备104,以及其他具有一个或多个图像传感器的诸如智能电话以及笔记本计算机的显示设备。图7示出了透视显示设备104的示例配置的框图。
[0039]透视显示设备104可包括一个或多个镜头702,所述镜头形成了近眼透视显示子系统704的一部分。透视显示设备104可进一步包括一个或多个面向外的图像传感器706,所述图像传感器被配置来获取由用户观察到的背景场景的图像,并可包括一个或多个麦克风708,所述麦克风被配置来检测声音,例如来自用户的语音命令。面向外的图像传感器706可包括一个或多个深度传感器(包括但不限于立体深度成像装置)和/或一个或多个二维图像传感器。[0040]透视显示设备104进一步包括注视检测子系统710,其被配置来检测用户的每个眼睛的注视方向,如上面所描述的。该注视检测子系统710可被配置来以任何适当的方式确定用户的每个眼睛的注视方向。例如,在该描述的实施例中,该注视检测子系统710包括一个或多个闪光源712,例如红外光源,其被配置来使得从用户的每个眼睛的角膜反射的光线闪光,以及被配置来捕获用户的一个或多个眼睛的图像的一个或多个图像传感器714。从经由图像传感器714收集的图像数据确定的闪光和瞳孔的图像可被用来确定每个眼睛的光轴。可以理解的是,注视检测子系统710可具有任何适当数量和布置的光源和图像传感器。
[0041]透视显示设备104可进一步包括额外的传感器。例如,透视显示设备104可包括全球定位(GPS)子系统716以允许透视显示设备104的位置被确定。
[0042]透视显示设备104进一步可包括一个或多个运动传感器718来在用户佩戴透视显示设备104时检测用户头部的运动。运动数据可被用于,例如,图像稳定化来帮助校正来自面向外的图像传感器706的图像中的模糊。同样地,运动传感器718,以及麦克风708和注视检测子系统710,同样可被使用来作为用户的输入设备,使得用户可通过眼睛、脖子和/或头部的姿势、以及经由口头命令来与透视显示子系统704交互。可以理解的是,图7中图示的传感器是为了举例的目的被显示,并不意图以任何方式限制,因为任何其他适当的传感器和/或传感器的组合可被采用。
[0043]透视显示设备104进一步包括计算设备720,计算设备720具有与传感器、注视检测子系统710以及透明显示子系统704通信的逻辑子系统722和存储子系统724。存储子系统724包括指令存储在其上,该指令由逻辑子系统722执行,例如,以从捕获透视显示设备的局部环境的图像的面向外的图像传感器706接收图像数据,并通过图像数据标识局部环境的物理特征。该指令还能被执行以通过将多个模块的虚拟结构片段布置在相邻的位置来构建虚拟结构的增强现实图像,每个模块化的虚拟结构片段包括预先计算的全局光照效果,并在物理特征上显示该增强现实图像,该增强显示图像从用户的视角与该物理特征在空间上配准。该指令还能被执行以检测局部光照特征,来基于局部光照特征调节该增强现实图像,并在物理特征上显示该增强现实图像,该增强现实图像通过透视显示子系统704与该物理特征在空间上配准。
[0044]涉及用于逻辑子系统722、存储子系统724以及其他上面提到的组件的示例硬件的进一步信息将在下面参考图8进行描述。
[0045]将会理解的是,描述的透视显示设备104通过举例的方式被提供,因此并不意图限制。因此可以理解的是,显示设备可包括与所显示的那些不同的附加的和/或替代的传感器、相机、麦克风、输入设备、输出设备等等而不背离本公开的范围。显示设备的物理配置以及它的各种传感器和子部件可以采用多种不同的形式而不背离本公开的范围。
[0046]此外,可以理解的是一个被配置以通过透视显示设备显示增强现实图像的计算系统可采用除了头戴式显示设备的任何适当的形式,包括但不限于大型计算机、服务器计算机、台式计算机、膝上型计算机、平板计算机、家庭娱乐计算机、网络计算设备、游戏设备、移动计算设备、移动通信设备(例如,智能电话)、其它可穿戴式计算机等等。可以进一步理解的是,上面描述的方法和过程可被实现为计算机应用程序或服务、应用编程接口(API)、库和/或其它计算机程序产品。[0047]图8示出了可执行上面描述的一个或多个方法和过程的计算机系统800的非限制的实施例。计算系统800以简化的形式被显示,并如上面提到的可代表任何适当的设备和/或设备的组合,包括但不限于那些上文中参考图1-9描述的。
[0048]计算设备800包括逻辑子系统802和存储子系统804。计算设备800可以可选地包括显不子系统806、输入设备子系统808、通信子系统810、和/或其它在图8中未不出的组件。计算系统800也可可选地包括一个或多个用户输入设备或与它们相连接,例如上面描述的眼睛追踪系统,以及例如,键盘、鼠标、游戏控制器、相机(深度和/或二维)、麦克风、和/或触摸屏。这些用户输入设备可形成输入设备子系统808的部分或与输入设备子系统808相连接。
[0049]逻辑子系统802包括配置来执行指令的一个或多个物理设备。例如,该逻辑子系统可被配置来执行机器可读指令,该指令是一个或多个应用、服务、程序、例程、库、对象、组件、数据结构或者其他逻辑构造的部分。这种指令可被实现来执行任务、实现数据类型、传输一个或多个组件的状态、或者以其他方式达到期望的结果。
[0050]逻辑子系统802可包括被配置来执行软件指令的一个或多个处理器。附加地或是可选地,逻辑子系统802可包括一个或多个被配置来执行硬件或固件指令的硬件或固件逻辑机器。逻辑子系统802的处理器可以是单核或多核的,并且在其上执行的程序可被配置用于顺序、并行或分布式处理。逻辑子系统802可可选地包括分布在两个或多个设备之间的单独组件,其可被位于远程和/或被配置用于协同处理。逻辑子系统的方式可以被虚拟化并被配置为由处于云计算组态中的远程可访问网络计算设备执行。
[0051]存储子系统804包括一个或多个物理的非瞬态计算机可读存储设备,其被配置来保存数据和/或可由逻辑子系统执行的指令来实现此处描述的方法和过
[0052]程。当这种方法和过程被实现时,存储子系统804的状态可被转换,例如,来保存不同的数据。
[0053]存储子系统804可包括可移动介质和/或内置设备。存储子系统804可包括光学存储器设备(例如,CD、DVD、HD-DVD、蓝光碟等等)、半导体存储器设备(例如,RAM、EPR0M、EEPROM等等)和/或磁存储器设备(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等等)以及其他。存储子系统804可包括易失性、非易失性、动态的、静态的、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址和/或内容可寻址设备。在一些实施例中,逻辑子系统802和存储子系统804可被集成到一个或多个统一的设备中,例如专用集成电路(ASIC)或片上系统。
[0054]可以理解的是,存储子系统804包括一个或多个物理的非瞬态设备。然而,在一些实施例中,此处描述的指令的方面可以瞬态方式通过不能被物理设备保存有限持续时间的纯信号(例如,电磁信号、光信号等等)被传播。此外,与本公开有关的数据和/或其它信息形式可通过纯信号被传播。
[0055]术语“程序”可被用来描述计算系统800的实现来执行特定功能的方面。在一些情况下,程序可通过逻辑子系统802被执行由存储子系统804保存的指令被实例化。可以理解的是不同的程序可从相同的应用、服务、代码块、对象、库、例程、AP1、函数等实例化。同样地,相同的程序可从不同的应用、服务、代码块、对象、例程、AP1、函数等实例化。术语“程序”可包含单独的可执行文件、数据文件、库、驱动、脚本、数据库记录等等个体或它们的集人
口 O
[0056]可以理解的是,正如此处使用的“服务”可以是跨越多个用户会话可执行的应用程序。一个服务可以是对一个或多个系统组件、程序和/或其它服务可用的。在一些实现中,一个服务可以运行在一个或多个服务器计算设备上。
[0057]当被包括时,显示子系统806可被用来呈现由存储子系统804保存的数据的视觉表示。该视觉表示可采用图形用户界面(GUI)的形式。当此处描述的方法和过程改变由存储子系统保存的数据并因此改变存储子系统的状态时,显示子系统806的状态可同样被改变以在视觉上表示底层数据的变化。显示子系统806可包括基本上上采用了任何种类的技术的一个或多个显示设备。这种显示设备可与逻辑子系统802和/或存储子系统804相结合在一个共享的外壳中,或者这种显示设备可以是外围的显示设备。
[0058]当被包括时,通信子系统810可被配置以通信式耦合计算系统800和一个或多个其它的计算设备。通信子系统810可包括与一个或多个不同的通信协议兼容的有线和/或无线通信设备。作为非限制性的示例,该通信子系统可被配置用于通过无线电话网络或者有线或无线局域网或广域网通信。在一些实施例中,该通信子系统可允许计算系统800通过诸如因特网的网络向其他设备发送消息和/或从其他设备接收消息。
[0059]可以理解的是此处描述的配置和/或方法本质上是示例性的,这些特定的实施例和示例不被看做具有限制意义,因为多种变型是可能的。此处描述的特定的程序或方法可表示任意数量的处理策略的一个或多个。如此,图示的和/或描述的多种动作可以图示的和/或描述的顺序执行,以其他的顺序执行,并行执行,或被省略。同样地,上面描述的步骤的顺序可被改变。
[0060]本公开的主题包括此处公开的多种步骤、系统和配置以及其他特征、功能、动作和/或属性的所有新颖的和非显而易见的组合和子组合,以及任何及所有等同。
【权利要求】
1.一种在显示设备中显示包括光照效果的增强现实图像的方法(600),所述方法(600)包括: 接收(602)图像数据,所述图像数据捕获所述显示设备的局部环境的图像; 通过所述图像数据标识(606)所述局部环境的物理特征; 构建(622)从用户的视角与所述物理特征在空间上配准、用于显示在所述物理特征上的虚拟结构的增强现实图像,所述增强现实图像包括被布置在相邻的位置以形成虚拟结构特征的多个模块化的虚拟结构片段,每个模块化的虚拟结构片段包括预先计算的全局光照效果;以及 输出(640)所述增强现实图像到所述显示设备。
2.根据权利要求1所述的方法,其中标识所述局部环境的物理特征包括执行对所述局部环境的网格分析。
3.根据权利要求1所述的方法,其中所述物理特征包括墙壁和天花板中的一个或多个。
4.根据权利要求1所述的方法,其中所述物理特征包括在所述局部环境中的非结构对象。
5.根据权利要求1所述的方法,其中所述物理特征包括在所述局部环境中的空的空间。
6.根据权利要求1所述 的方法,其中所述预先计算的全局光照效果包括预先计算的定向光照效果。
7.根据权利要求1所述的方法,其中所述预先计算的全局光照效果包括预先计算的辐射传输函数。
8.根据权利要求1所述的方法,进一步包括通过所述图像数据标识所述局部环境的光照特征,以及基于所述局部环境的所述光照特征调节所述多个模块化的虚拟结构片段的外观。
9.根据权利要求8所述的方法,其中所述光照特征包括所述局部环境的颜色特征,以及其中调节所述多个模块化的虚拟结构片段的外观包括将所述颜色特征施于所述模块化的虚拟结构片段。
10.根据权利要求8所述的方法,其中所述光照特征包括所述局部环境中的物理光的位置,以及其中调节所述多个模块化的虚拟结构片段的外观包括计算由在所述物理光位置处的虚拟点光引起的光照效果。
【文档编号】G06T15/50GK103761763SQ201310757195
【公开日】2014年4月30日 申请日期:2013年12月18日 优先权日:2013年12月18日
【发明者】J·斯蒂德, A·克劳斯, M·斯卡维泽, 张炜, A·汤姆林, T·安布鲁斯, B·芒特, S·拉塔, R·哈斯汀斯 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1