合成增强现实环境的构造

文档序号:10617937阅读:499来源:国知局
合成增强现实环境的构造
【专利摘要】揭示了涉及产生合成环境模型并从模型渲染各图像的各实施例,其中合成环境模型从环境的三维表示中导出。例如,所揭示的一个实施例提供了一种方法,该方法包括检测利用环境的三维表示来构建合成环境模型的触发,并且响应于该触发,获得合成图像元素的集合以供在构造该合成环境模型时使用。该方法还包括根据一组规则将来自合成图像元素的集合的一个或多个元素适配到环境的三维表示以产生合成环境模型,并从合成环境模型渲染图像供显示,该图像示出代替环境中的现实世界拓扑的来自合成图像元素的集合的一个或多个元素。
【专利说明】合成増强现实环境的构造
[0001 ] 背景
[0002]增强现实系统可被配置来捕捉现实世界环境的图像,并渲染包括虚拟对象的合成图像,其中虚拟对象被显示为现实世界图像的至少一部分上的覆盖。以此方式,虚拟对象可被添加到现实世界图像以提供现实世界的增强视图。
[0003]概述
[0004]揭示了涉及产生合成环境模型并从模型渲染各图像的各实施例,其中合成环境模型从环境的三维表示中导出。例如,一个所揭示的实施例提供了一种方法,该方法包括检测利用环境的三维表示来构建合成环境模型的触发,并且响应于该触发,获得合成图像元素的集合以用于构造该合成环境模型。该方法还包括将来自合成图像元素的集合的一个或多个元素根据产生合成环境模型的一组规则来适配到环境的三维表示,并从合成环境模型渲染图像供显示,该图像包括代替环境的三维表示中的现实世界元素的来自合成图像元素的集合的一个或多个元素。
[0005]提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。而且,所要求保护的主题不限于解决该公开的任一部分中所注的任何或全部缺点的实现方式。
[0006]附图简述
[0007]图1示出了根据本公开的一实施例的合成环境模型的示例渲染。
[0008]图2示出根据本公开的一实施例的用于产生从环境的三维表示中导出的合成环境模型的系统的框图。
[0009]图3是描绘根据本公开的一实施例的用于产生从环境的三维表示中导出的合成环境模型的方法的流程图。
[0010]图4示出了根据本公开的一实施例的合成环境模型的渲染的另一示例。
[0011]图5示出根据本公开的一实施例的计算设备的示例。
[0012]详细描述
[0013]揭示了涉及基于所观察的现实世界环境来生成合成环境模型的各实施例,其中现实世界环境中的三维表示中的元素用合成环境模型中的合成图像元素(例如三维图形模型)来代替。在从这样的合成环境模型中渲染出的增强现实图像中,合成元素代替现实世界元素,而不是被表示为现实世界元素之上的覆盖。因此,使用这样的合成环境模型可帮助简化渲染(相比于渲染现实世界图像的覆盖),因为现实世界图像和覆盖两者的渲染可能导致渲染现实世界图像中被覆盖遮挡的冗余数据。
[0014]图1示出了包括通信地连接到显示设备104和传感器系统106的计算设备102的非限制性示例使用环境100。尽管环境100被示为房间,使用环境可以是任何合适的物理空间,包括室内和/或室外环境。计算设备102可被用于玩各种不同的游戏、播放一个或多个不同的媒体类型、和/或控制或操纵非游戏应用和/或操作系统。计算设备102可接收来自一个或多个控制设备108的输入,控制设备108可包括任何合适的控制设备,诸如游戏控制器、遥控器、移动计算设备等。
[0015]传感器系统106可包括可见光相机(例如,RGB相机)、立体或阵列相机系统、和/或深度相机(飞行时间和/或结构化光深度相机)。例如,传感器系统106可包括配置成对环境100进行成像的一个或多个传感器、透镜元素、和/或光源。由深度相机捕捉的深度图像可指示每像素成像的表面的深度,以便提供关于环境100的一个或多个特征的信息。传感器系统106可包括附加的传感器,包括但不限于,一个或多个话筒(例如,指向性话筒阵列)。传感器系统106可生成图像并通过一个或多个接口经由任何合适的有线或无线数据连接将图像发送到计算设备102。
[0016]计算设备102可接收深度图像和/或描述环境100的其它信息(例如,RGB图像数据),该信息捕捉人、表面、对象、和/或形成环境100的现实世界拓扑的其它元素。捕捉这些现实世界元素的图像数据可被用来生成环境100的三维表示。参见图1,环境100包括诸如与瓶子114交互的用户112、控制设备108、书116、和诸如桌子118、书架、和大衣架的家具项目之类的各元素。
[0017]尽管在图1中例示出单个传感器系统106,但是要理解一个或多个额外相机可被包括该环境中。在这样的实施例中,每个相机可从与其它相机不同的视角对环境进行成像。此夕卜,一个或多个相机可在六个自由度中的任何一个中是可移动的(沿着三个垂直轴平移和绕三个垂直轴旋转),以从不同视角随时间捕捉环境的图像。例如,集成到移动设备(诸如智能电话、平板电脑、膝上电脑)的相机可由用户移动来从多个视角捕捉环境的图像。类似地,用户可拿着传感器系统106环绕房间,同时传感器系统106正在获取图像数据以由此扫描房间。
[0018]基于传感器系统106获取的图像数据,计算设备102可从传感器系统106捕捉的全部视角生成现实世界环境的三维表示。该三维表示可采取任何合适的形式,包括但不限于点云和/或网格表示。从这样的表示,计算设备102可接着通过根据一组规则(例如,全局规贝1J、用户专用规则,和/或与合成图像元素特定集合相关联的规则)用合成图像元素替换现实世界环境的三维表示的体素空间来构建合成环境模型。
[0019]在某些实施例中,用合成元素代替现实世界表示中的各元素可以是交互式的,因为,用户可指定要用来代替选定的现实世界对象的选定的合成元素。作为更特定的示例,用户可例如通过指着现实世界对象(例如,桌子)来指示该对象,并接着可指示要用来代替该现实世界元素的合成图像元素(例如,山)。用户可以以任何合适的方式(包括但不限于,通过语音命令、手势(例如,指向环境中的现实世界对象或位置或屏幕上显示的合成图像元素)、游戏控制器或其它物理致动器、触屏等)来执行这些输入以从列表中选择元素、搜索元素、浏览元素、或以其他方式指定元素以定义用户专用规则。
[0020]得到的合成环境模型可接着被渲染以供作为增强现实呈现显示在显示设备104上。此外,随着传感器系统106的视图改变(例如,对象/人在现实世界环境中移动,和/或传感器系统106在现实世界环境中移动),可在所渲染的增强现实图像中作出对应的改变,使得对应于现实世界对象的合成图像元素表现为跟踪对应的现实世界对象的移动。
[0021]任何合适的合成图像元素可被用来代替三维现实世界表示中的对象。在图1的示例中,计算设备102用攻城引擎122的合成图像元素来代替瓶子114的三维表示。此外,书116由城堡的合成图像代替,书架和大衣架分别由宝箱和树代替,用户112由化身124代替。此夕卜,控制设备108由一对岩石代替,且桌子118由地理或拓扑特征代替。这些专用的合成图像元素可对应于针对特定游戏、游戏标题等的合成图像元素集合,或可以不与任何特定程序相关联。如此,合成图像元素的不同集合和用于使用合成图像元素的对应的规则可被用于不同增强现实呈现。应当理解图1的示例是为了说明性示出的而不旨在进行限制,并且环境的三维模型中的任何合适的对象可由任何合适的合成图像元素来代替。此外,增强现实图像的至少部分可被渲染而不被合成图像元素代替,而改为用RGB相机获取的环境的图像数据代替。
[0022]图2示出根据本公开的一实施例的计算设备200的框图,并示出了用于形成和/或渲染合成环境模型的系统的实施例。计算设备200包括用于生成并渲染从环境的三维表示导出的合成环境模型的图像处理器202。图2还示出了包括配置用于捕捉现实世界环境的深度图像的深度相机的相机系统204。在某些实施例中相机系统还可包括RBG相机。
[0023]在图2的实施例中,来自相机系统的图像可经由现实世界建模器206来处理,以生成现实世界环境的三维表示。三维表示可包括环境的点云表示、环境的网格表示、和/或环境的基于从环境内各种视角获取的深度数据的其它合适的表示。一旦现实世界环境的三维表示被形成,它可被存储(例如,被描绘为存储设备208上的“现实世界模型”)以供用于环境的增强现实图像的将来渲染。
[0024]现实世界环境的三维表示可被提供给合成环境建模器216以供基于现实世界环境生成合成环境模型。合成环境建模器216可利用任何合适的信息来生成现实世界模型。例如,合成环境建模器216可(例如,从存储设备208)接收一组合成模型生成信息,其中该组合成图像生成信息可包括合成图像元素的集合以及对应的用于用合成图像元素替代现实世界环境的三维表示中的特征的规则的集合。在某些实施例中,合成模型信息可采取插件的形式(例如在新的或更新的增强现实程序被计算设备200获得时可被添加),和/或可采取任何其它合适的形式。
[0025]规则可指定,例如,哪些合成图像元素要被用来代替三维现实世界表示中的哪些现实世界元素(例如基于现实世界元素标识(例如,饮料瓶、人等)、基于对象大小、和/或基于任何其它合适的因素)。此外,如以下参考图4所描述的,规则可指定如何将较小合成元素组装成经扩展的结构。除了被结合在合成模型信息中的各规则之外,其它规则可与合成图像元素的任何集合分开存储,并被更全局地应用。在某些实施例中,规则还可被用户设置。现实世界模型和/或合成模型构造信息还可经由网络212从远程位置(诸如远程服务210)获得。
[0026]合成环境建模器216产生的合成环境模型可被发送到图像渲染器220来渲染可显示的图像以供显示在显示设备222上。此外,合成环境模型可(例如,经由存储设备202和/或远程地)被存储供以后使用。图像渲染器220可产生示出来自替代如由相机以该相机的当前视角成像的环境中的现实世界拓扑的合成图像元素集合的一个或多个元素的图像。例如,图像渲染器220可将从相机实时接收的深度图像信息与同现实世界环境模型相关联的深度图像信息进行比较以确定相机的当前朝向和位置。相机的视图可基于该朝向和位置信息来确定以将合成环境模型与获取的深度数据对齐。
[0027]参考图1的示例实施例,各规则可指定专用合成图像元素(诸如图1的攻城引擎122)总是代替诸如图1的瓶子114的处在指定朝向的瓶子。这样的规则可以是用户设置的,或可是预设的。因此,当瓶子由深度相机成像(例如,基于深度数据与描述先前扫描的对象和/或具有已知的特征对象的对象模型的对象数据库的比较被标识出)时,规则可被用来指示合成建模器来将对应于攻城引擎的合成图像元素适配到当前由瓶子占据的体素空间(例如,通过用合成元素代替要被渲染的体素处的现实世界特征)。在渲染一个或多个体素以形成可显示图像之际,增强图像(诸如图1的显示设备104上所示的图像)可被显示,使得攻城引擎代替图像中的瓶子。因此,与覆盖方法相反,瓶子不被渲染,并且攻城引擎不被渲染为要被显示在瓶子之上的分开的层。
[0028]图3是描绘用于从现实世界环境的三维表示中产生合成环境模型并基于该模型渲染图像的方法300的实施例的流程图。方法300可以由任何合适的计算设备来执行,包括但不限于图1 一2中描绘的那些。示例计算设备在以下被进一步详细描述。
[0029]方法300包括,在302,检测构建合成环境模型的触发。任何合适的触发可被用来触发对合成环境模型的构建。例如,触发可包括从现实世界建模器接收现实世界环境的三维表示,如在304所指示的。例如,在执行和/或响应于检测到用深度相机对现实世界环境的扫描的完成时,这样的触发可被使用,并且该触发可包括扫描操作和相关联的处理已经完成的消息。如上面所描述的,扫描现实世界环境可包括用一个或多个相机从一个或多个视角捕捉一个或多个图像,并可包括用多个相机进行扫描,每个相机具有与其它相机不同的视图(不同的视角)。在扫描期间,相机移动可以在移动的六个自由度的一个或多个中被跟踪,以确定相机的姿态(例如,位置和朝向)。
[0030]在其它实例中,触发可包括对请求构造合成环境模型的用户输入的接收,如在306所示。例如,想要构建自定义合成环境的用户可提供定义模型生成的参数的输入,诸如要被利用的合成图像元素、用于将合成图像元素应用到现实世界环境的三维表示的规则、现实世界环境的三维表示的选择,以及其它这样的信息。术语“集合”包括一个或多个合成图像元素的任何集合,并且可在用户选择各元素来使用时被预定义或定义。
[0031]在其它实例中,检测触发可包括从应用接收对合成环境模型的构造的请求,如在308所示。例如,在启动应用(诸如增强现实视频游戏应用)之际,应用可请求合成环境模型的构造,以利用增强现实图像作为交互游戏空间。其中触发包括用户输入或来自应用的请求、先前生成的现实世界环境的三维表示可被用来形成合成环境模型,或用户可被请求在形成合成环境模型之前执行环境扫描来构建现实世界环境的三维表示。
[0032]在310,方法300包括获得合成图像元素的集合。合成图像元素的集合可基于指定该合成图像元素的集合的用户输入、基于利用该合成元素的集合的程序的身份(例如,游戏应用)、基于所观察的现实世界环境(例如,基于现实世界环境内的各对象的身份)来选择或以任何其它合适发方式来选择。
[0033]接着,在312,方法300包括将合成图像元素适配到表示要用合成元素来代替的现实世界元素的体素空间。这样的体素空间可通过使用标识功能(例如,分类器)来标识现实世界环境的三维表示中的对象来被标识。合成图像元素的适配可根据一组规则来执行,如在314所指示的,该组规则可被用户预定义和/或设置。例如,用户可指定要被替代现实世界对象和/或要用来代替现实世界对象的一个或多个合成图像元素。预定义的规则可接着被用来执行实际的适配过程(例如,通过利用指定哪些合成图像元素要以什么朝向、接近哪些其它合成元素被适配到现实世界对象的哪些部分等的规则)。合成图像元素的适配还可涉及如合成图像元素的旋转、缩放等这样的过程。
[0034]作为更特定的示例,用户可通过姿势输入(例如,指着瓶子)来指定要被代替的现实世界对象,并接着通过语音输入指定哪个合成元素(例如,“攻城引擎”)将代替该对象。输入可由姿势识别和语音标识的组合来检测。这个用户定义的规则可接着在将来渲染合成模型时被应用,使得瓶子被渲染为攻城引擎,并且其它规则可指定关于如何将攻城引擎合成元素适配到瓶子的细节。
[0035]以此方式,合成环境模型通过用适配到包括现实世界表示中的体素的体素空间的合成图像元素代替那些体素来被产生。将理解,如果某些体素不用合成图像元素代替,那么通过对现实世界环境进行成像的相机(例如RGB相机)获得的图像数据可被适配到那些体素以产生包括现实世界图像和虚拟图像元素两者的增强现实图像。
[0036]继续,方法300包括,在316,例如,通过RGB相机和/或深度相机获得环境的实时图像数据。图像数据可与现实世界环境模型和/或合成环境模型进行比较,以确定相机的朝向和位置。方法300接着包括从合成环境模型渲染可显示图像,如在318所指示的。渲染可显示图像可包括对合成环境模型的图形元素执行一个或多个图像处理例程,以创建二维图像以供显示在显示设备上。例如,二维图像可通过执行光线投射来生成,如在320所指示的。在光线投射时,对于被渲染的二维图像的每个像素,光线可从提供实时图像数据的相机的视角被投射通过合成图像模型的体素。对于其中合成环境模型中与每根光线相交的第一表面被定义为透明的实施例,该第一表面可定义要被渲染的表面,并且在这些位置的合成图像元素可代替在那些位置的现实世界数据来被渲染,而非作为覆盖。在某些实例中,与光线相交的表面可被定义为至少部分透明。在这样的实例中,那个表面后面的一个或多个也可用合成图像元素来渲染。类似地,RGB相机获取的现实世界图像可被显示以得到没有合成图像元素的任何体素。渲染可显示图像可包括通过执行加阴影、纹理化、反射、投射和/或其它合适的图像处理例程来调整一个或多个体素的图像数据以产生二维图像。
[0037]图像中的合成图像元素代替环境的所渲染图像中的现实世界拓扑,如上面所提及的。这可允许覆盖图像的渲染被忽略,这可帮助避免在覆盖图像渲染中发生的冗余渲染。
[0038]从合成环境模型渲染的图像可随用户与增强现实体验进行交互而被实时更新。因此,如在322所指示的,方法300可包括通过经由通信地耦合到计算设备的相机获取的图像数据来标识现实世界对象的移动,如在324所指示的,并基于现实世界对象的移动来更新所渲染的图像,如在326所指示的。例如,更新图像的所渲染视图可包括调整合成图像元素的位置以将该元素与对应的现实世界对象的新位置对齐。参考图1所示的示例,用户112对瓶子114的移动可触发显示在显示设备104上的图像的更新,以将攻城引擎122示出在经更新的位置中。作为更特定的示例,现实世界环境中瓶子114朝着书架和大衣架的方向的移动可导致攻城引擎122朝着可显示图像中的宝箱和树的相等或成比例的移动量。
[0039]在某些实例中,合成图像元素的所显示的移动速度可基于现实世界对象的移动速度和/或呈现该增强现实体验的应用(例如,视频游戏)提供的预定义速度限制。例如,与瓶子114相关联的合成图像元素(例如,攻城引擎)可具有相关联的最大和/或最小速度。响应于瓶子114的移动,攻城引擎122从初始位置移动到经更新位置的动画可以以与瓶子114在现实世界环境中的移动速度相等、成比例的速度或以其他方式基于该速度的速度来呈现该调整。如果瓶子114在现实世界环境中的移动速度高于或低于最大或最小速度,则攻城引擎的移动的动画化呈现的速度可分别被设置到最大或最小速度。进一步,在某些实施例中,针对被定义为不被许可的移动,现实世界对象的移动可不反映在对应的合成图像元素中。例如,如果瓶子114的移动将对应于攻城引擎122在合成环境中不能达到的位置的移动(例如,如果移动将把攻城引擎置于山顶而没有路通向山顶),则攻城引擎122可不响应于移动瓶子114而从初始位置移动。
[0040]图4示出了渲染合成环境模型以便以增强的形式示出现实世界对象的表示的另一示例实施例。环境400包括向显示设备404提供可显示输出的计算设备402。相机406可被可通信地连接到计算设备402以提供现实世界环境400的图像以供计算设备402进行处理。[0041 ]在图4所示的示例中,诸如长椅408、书架410、和大衣架412之类的对象被从合成图像元素以构件块的形式形成的类似形状对象代替。例如,长椅、书架、和大衣架中的每一个在显示设备404上的可显示图像中被表示为表现为是被连接以形成类似相应的对象的形状的构件块414的集合的对象。在此示例中,规则可指定要基于关于对象大小、形状、和/或其它合适因素的规则为对象使用哪些构件块(例如,大小、颜色、形状)。
[0042]在某些实施例中,本文所述的方法和过程可以与一个或多个计算设备的计算系统绑定。具体而言,这样的方法和过程可以实现为计算机应用程序或服务、应用程序编程接口(API)、库和/或其他计算机程序产品。
[0043]图5示意性地示出计算系统500的非限制性实施例,该计算系统可以进行上述方法和过程中的一个或多个。计算系统500以简化形式示出。计算系统500可采取以下形式:一个或多个个人计算机、服务器计算机、平板计算机、家庭娱乐计算机、网络计算设备、游戏设备、移动计算设备、移动通信设备(例如,智能电话),和/或其他计算设备,这些计算设备包括但不限于图1和2的上下文中描述的那些。
[0044]计算系统500包括逻辑设备502和存储设备504。计算系统500可任选地包括显示子系统506、输入子系统508、通信子系统510和/或在图5中未示出的其他组件。
[0045]逻辑设备502包括被配置为执行指令的一个或多个物理设备。例如,逻辑设备可以被配置成执行指令,所述指令是一个或多个应用、服务、程序、例程、库、对象、部件、数据结构或其他逻辑构造的一部分。这种指令可被实现以执行任务、实现数据类型、转换一个或多个部件的状态、实现技术效果、或以其他方式得到期望结果。
[0046]逻辑设备可以包括被配置成执行软件指令的一个或多个处理器。附加地或替换地,逻辑设备可以包括被配置成执行硬件或固件指令的一个或多个硬件或固件逻辑设备。逻辑设备的处理器可以是单核的或多核的,其上执行的指令可以被配置用于串行、并行和/或分布式处理。逻辑设备的个体组件可任选地分布在两个或更多个分开的设备之间,所述设备可以位于远程以及/或者被配置用于协同处理。逻辑设备的各方面可由以云计算配置进行配置的可远程访问的联网计算设备来虚拟化和执行。
[0047]存储设备504包括被配置成保持可由逻辑设备执行的指令以实现此处描述的方法和过程的一个或多个物理设备。当实现这样的方法和过程时,存储设备504的状态可以被变化一一例如以保持不同的数据。
[0048]存储设备504可以包括可移动和/或内置设备。存储设备504可以包括光学存储器(例如,CD、DVD、HD-DVD、蓝光碟等)、半导体存储器(例如,RAM、EPROM、EEPROM等)和/或磁性存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)、等等。存储设备504可包括易失性、非易失性、动态、静态、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址和/或内容可寻址设备。
[0049]将理解,存储设备504包括一个或多个物理设备,并排除传播信号自身。然而,本文所述的指令的各方面替代地可由通信介质(如电磁信号、光学信号等)来传播,而不是存储在存储设备上。
[0050]逻辑设备502和存储设备504的各方面可以被一起集成到一个或多个硬件逻辑组件中。这种硬件逻辑组件可以包括例如场可编程门阵列(FPGA)、程序和应用专用集成电路(PASIC/ASIC)、程序和应用专用标准产品(PSSP/ASSP)、片上系统(SOC)以及复杂可编程逻辑器件(CPLD)。
[0051]术语“程序”可用于描述被实现来执行特定功能的计算系统500的一方面。在某些情况下,可以经由执行存储设备504所保持的指令的逻辑设备502来实例化程序。将理解,可以从同一应用、服务、代码块、对象、库、例程、AP1、函数等实例化不同的模块。类似地,相同的模块可由不同的应用、服务、代码块、对象、例程、AP1、功能等来实例化。术语“程序”可涵盖单个或成组的可执行文件、数据文件、库、驱动程序、脚本、数据库记录等。
[0052]应该理解,在此使用的“服务”是跨多个用户会话可执行的应用程序。服务可用于一个或多个系统组件、程序和/或其他服务。在某些实现中,服务可以在一个或多个服务器计算设备上运行。
[0053]在包括显示子系统506时,显示子系统506可用于呈现由存储设备504所保持的数据的视觉表示。该视觉表示可以采用图形用户界面(GUI)的形式。由于此处所描述的方法和过程改变了由存储设备保持的数据,并由此变换存储设备的状态,因此同样可以变换显示子系统506’的状态以可视地表示底层数据的改变。显示子系统506可以包括使用实质上任何类型的技术的一个或多个显示设备。这样的显示设备可与逻辑设备502和/或存储设备504—起组合在共享封装中,或者这样的显示设备可以是外围显示设备。例如,显示子系统506可包括图1的显示设备104。
[0054]当被包括时,输入子系统508可包括诸如键盘、鼠标、触摸屏或游戏控制器等一个或多个用户输入设备或者与这些用户输入设备对接。在一些实施例中,输入子系统可以包括或相接于所选择的自然用户输入(NUI)部件。这种元件部分可以是集成的或外围的,输入动作的转导和/或处理可以在板上或板外被处理。NUI部件的示例可包括用于语言和/或语音识别的话筒;用于机器视觉和/或姿势识别的红外、色彩、立体显示和/或深度相机;用于运动检测和/或意图识别的头部跟踪器、眼睛跟踪器、加速计和/或陀螺仪;以及用于评估脑部活动的电场感测部件。
[0055]在包括通信子系统510时,通信子系统510可以被配置成将计算系统500与一个或多个其他计算设备通信耦合。例如,图2的通信模块214可通过网络将计算设备200通信地耦合到远程服务210。通信子系统510可以包括与一个或多个不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,通信子系统可以被配置用于经由无线电话网络、或者有线或无线局域网或广域网来通信。在一些实施例中,通信子系统可允许计算系统500经由诸如因特网这样的网络将消息发送至其他设备以及/或者从其他设备接收消息。
[0056]将会理解,此处描述的配置和/或方法本质是示例性的,这些具体实施例或示例不应被视为限制性的,因为许多变体是可能的。此处描述的具体例程或方法可以表示任何数量的处理策略中的一个或多个。如此,所示和/或所述的各种动作可以以所示和/或所述顺序、以其他顺序、并行地执行,或者被省略。同样,上述过程的次序可以改变。
[0057]本公开的主题包括各种过程、系统和配置以及此处公开的其他特征、功能、动作和/或属性、以及它们的任一和全部等价物的所有新颖且非显而易见的组合和子组合。
【主权项】
1.在一个计算设备上,一种显示图像的方法,所述方法包括: 检测利用环境的三维表示来构建合成环境模型的触发; 响应于所述触发,获取合成图像元素的集合以供在构造所述合成环境模型时使用;根据一组规则,将来自所述合成图像元素的集合的一个或多个元素适配到所述环境的所述三维表示,以产生所述合成环境模型;以及 从所述合成环境模型渲染所述图像用于显示,所述图像示出代替所述环境中的现实世界拓扑的来自所述合成图像元素的集合的一个或多个元素。2.如权利要求1所述从方法,其特征在于,所述合成图像元素的集合是从多个合成图像元素的集合中选择的。3.如权利要求2所述的方法,其特征在于,所述合成图像元素的集合是基于要被所述一个或多个元素代替的一个或多个现实世界对象的每一个的身份来选择的。4.如权利要求1所述从方法,其特征在于,将元素适配到所述三维表示包括执行所述元素的旋转和缩放中的一个或多个。5.—种计算系统,包括: 显不设备; 相机; 逻辑子系统;以及 配置用于保持能够由逻辑子系统执行的指令以进行以下操作的存储设备: 检测利用环境的三维表示来构建合成环境模型的触发; 响应于所述触发,获取合成图像元素的集合以供在构造所述合成环境模型时使用; 对于要被渲染的一个或多个体素空间的每一个,根据一组规则,将来自所述合成图像元素的集合的一个或多个元素适配到所述体素空间,以产生所述合成环境模型;以及 从所述合成环境模型渲染图像用于显示,所述图像包括代替所述环境中的现实世界对象的来自所述合成图像元素的集合的一个或多个元素。6.如权利要求5所述的计算系统,其特征在于,所述环境的所述三维表示通过从多个视角扫描所述环境以获取所述环境的图像数据来确定。7.如权利要求5所述的计算系统,其特征在于,所述指令还可被执行以接收对所述环境中的要用来自所述合成图像元素的集合的一个或多个元素代替的现实世界对象进行选择的用户输入。8.如权利要求5所述的计算系统,其特征在于,所述环境的所述三维表示是通过通信子系统从所述远程服务接收的。9.如权利要求5所述的计算系统,其特征在于,所述环境的所述三维表示被存储在所述存储设备上。10.如权利要求5所述的计算系统,其特征在于,所述指令还可被执行以基于从相机接收的数据标识现实世界对象的移动,并基于所述现实世界对象的移动更新所渲染的图像。
【文档编号】G06T19/20GK105981076SQ201480060644
【公开日】2016年9月28日
【申请日】2014年11月4日
【发明人】D·莫利内奥克斯, C·怀特, A·曹
【申请人】微软技术许可有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1