具体实施方式
图1示出了全息对象呈现***10的一个实施例的示意图,全息对象呈现***10用于呈现具有选择性信息细节水平的全息对象。全息对象呈现***10包括全息对象呈现程序14,其可被存储在计算装置22的大容量存储18中。全息对象呈现程序14可以被加载到存储器26中并且由计算装置22的处理器30执行以完成一个或多个将在后面更加详细地描述的方法和过程。
全息对象呈现程序14可以包括一个或多个具有各种和选择性的信息细节水平的全息对象。应当意识到,全息对象的信息细节水平可以与由全息对象呈现的或者与该全息对象一起呈现的视觉信息量相对应,所述视觉信息包括但不限于,各种图像分辨率水平、色彩、亮度水平、描述性的视觉细节水平、图像格式和形状、文本信息等。
在一个示例中并且如图1所示,全息对象呈现程序14可以包括具有选择性信息细节水平的全息对象36,该选择性信息细节水平可以是默认的信息细节水平。正如将在后面更加详细地进行解释的,默认的信息细节水平可以与开发者定义的信息细节水平相对应,该开发者定义的信息细节水平可由全息对象36的开发者进行设置。同样如同将在后面更加详细地进行解释的,全息对象呈现程序14可以以编程方式将全息对象36的选择性信息细节水平调整到调整过的全息对象36'中的调整过的信息细节水平。同样应当意识到,任何适当数量的调整过的信息细节水平,例如两个、三个、四个、或者更多个的调整过的信息细节水平可以被包含在全息对象呈现***10中。
在一个示例中,全息对象呈现***10可以包括增强现实的显示程序32,其可以被存储在计算装置22的大容量存储18中。增强现实的显示程序32可以生成虚拟环境34供显示在显示装置(例如头戴显示(HMD)装置38)上。虚拟环境34可以包括一个或多个虚拟对象表示,例如全息对象。在一些示例中,可以生成虚拟环境34以提供交互视频游戏、运动图片体验、或者其他适合的电子游戏或体验形式的增强现实的体验。在另一实施例中,增强现实的显示程序32可以被远程存储并且可以由计算装置22通过网络40来访问,该计算装置***作性地连接到网络40。
计算装置22可以采用桌面计算装置、移动计算装置,例如智能电话、膝上型计算机、笔记本或者平板计算机、网络计算机、家庭娱乐计算机、交互电视、游戏***、或者其他适合类型的计算装置的形式。关于计算装置22的组件和计算方面的附加细节将在后面参考图12进行更加详细的描述。
可以使用有线连接、或者可以使用经由WiFi、蓝牙、或者任何其他适合的无线通信协议,将计算装置22与HMD装置38操作性地连接。另外地,图1图示的示例将计算装置22示为与HMD装置38分开的组件。应当意识到,在其他示例中,计算装置22可以被集成在HMD装置38中。
也可以经由网络40将计算装置22与一个或多个附加装置操作性地连接。在一个示例中,计算装置22可以与服务器42和移动装置46通信。网络40可以采用局域网(LAN)、广域网(WAN)、有线网络、无线网络、个人区域网、或者它们的结合的形式,并且可以包括因特网。
图2示出了一幅包括透明显示器50的可戴眼镜形式的HMD装置200的一个示例。在其他示例中,HMD装置200可以采用其他适合的形式,其中可以将透明的、半透明的、或者不透明的显示器支撑在观看者的眼睛或双眼的前方。应当意识到,图1示出的HMD装置38可以采用HMD装置200的形式,正如将在后面更加详细描述的,或者采用任何其他适合的HMD装置的形式。附加地,同样应当意识到,也可以使用具有各种形式因素的许多其他类型和配置的显示装置。例如,也可以使用可提供增强现实体验的手持显示装置。
参考图1和2,在这个示例中,HMD装置200包括透明显示器50,其使图像能够被传递到用户52的双眼。透明显示器50可以被配置为通过透明显示器观看物理环境的用户视觉地增强该物理环境的外观。例如,该物理环境的外观可以由经由透明显示器50呈现的图形内容(例如,每个都具有各自的色彩和亮度的一个或多个像素)来增强。
透明显示器50也可以被配置为使用户能够通过一个或多个显示虚拟对象表示的部分透明的像素来观看物理环境中的真实世界对象。在一个示例中,透明显示器50可以包括位于透镜204(例如,像透视的有机发光二极管(OLED)显示器)内的图像生成元件。作为另一个示例,透明显示器50可以包括在透镜204的边沿上的光调制器。在这个示例中,透镜204可以当作用于将光从该光调制器传递到用户双眼的光导。
在其他示例中,透明显示器50可以支持在光到达佩戴HMD装置200的用户的眼睛之前对从物理环境接收的光的选择性过滤。这种过滤可以在逐像素的基础上或者像素组的基础上被执行。在一个示例中,透明显示器50可以包括以一个或多个发光像素的形式来添加光的第一显示层,以及过滤从该物理环境接收的环境光的第二显示层。这些层可以具有不同的显示分辨率,像素密度,和/或显示能力。
HMD装置也可以包括各种***和传感器。例如并且同样参考图1的HMD装置38,HMD装置200可以包括眼睛追踪***54,其利用至少一个面向内的传感器208。面向内的传感器208可以是图像传感器,其被配置为从用户的双眼获取眼睛跟踪信息形式的图像数据。倘若该用户已经同意这个信息的获取以及使用,眼睛追踪***54可以使用这个信息来追踪用户双眼的位置和/或移动。眼睛追踪***54接着可以确定用户正在注视哪里和/或用户正在注视什么真实世界或者虚拟对象。
HMD装置200也可以包括光传感器***58,其利用至少一个面向外的传感器212,例如光传感器。面向外的传感器212可以检测其视野内的移动,例如,由在该视野内的用户或者人执行的基于姿势的输入或者其他移动。面向外的传感器212也可以从物理环境和该环境内的真实世界对象捕获图像信息和深度信息。例如,面向外的传感器212可以包括深度照相机、可见光照相机、红外光照相机、和/或位置追踪照相机。在一些示例中,面向外的传感器212可以包括一个或多个光传感器,用于观察来自物理环境中的真实世界照明条件的可见光谱和/或红外光。这种传感器可以包括,例如,电荷耦合器件图像传感器。
如上所指出的,HMD装置200可以包括经由一个或多个深度照相机进行感测。例如,每个深度照相机可以包括立体视觉***的左面和右面照相机。来自这些深度照相机中的一个或多个的时间解析的图像可以彼此记录和/或被记录到来自另一个光传感器(例如可见光谱照相机)的图像,并且可以被结合以产生深度解析的视频。
在一些实施例中,深度照相机可以采用结构化光深度照相机,其被配置为投射包括大量离散特征(例如,线或点)的结构化红外照明。该深度照相机可以被配置为成像从场景反射的结构化照明,该结构化照明被投射在该场景上。可以基于在所成像场景的各种区域中的相邻特征间的间隔来构建该场景的深度图。
在其他示例中,深度照相机可以采用飞行时间深度照相机的形式,飞行时间深度照相机被配置为将脉冲的红外照明投射在场景上。这个深度照相机可以被配置为检测从该场景反射的脉冲照明。这些深度照相机中的两个或更多个可以包括与该脉冲照明同步的电子快门。用于该两个或更多个深度照相机的积分时间可以不同,使得从源到该场景并接着到该深度照相机的该脉冲照明的像素解析的飞行时间可以从在两个深度照相机的相应像素中接收的相对量的光中分辨出来。HMD装置200也可以包括红外投影仪,以帮助结构化光和/或飞行时间深度分析。
在其他示例中,也可以经由一个或多个深度照相机检测来自物理环境中的用户52和/或人们的基于姿势的和其他运动输入。例如面向外的传感器212可以包括两个或更多个具有已知相对位置用于创建深度图像的光传感器。使用来自这些具有已知相对位置的光传感器的运动结果,这种深度图像可以随着时间演变。
面向外的传感器212可以捕获用户52位于其中的物理环境的图像。正如下面将更加详细地进行讨论的,这种图像可以是物理环境信息60的一部分,物理环境信息60可以由HMD装置38进行接收并且被提供给计算装置22。在一个示例中,增强现实的显示程序32可以包括3D建模***,其使用这种输入来生成虚拟环境34,虚拟环境34对被捕获的物理环境进行建模。
HMD装置200也可以包括位置传感器***62,其利用一个或多个运动传感器216以使能HMD装置200的位置追踪和/或方向感测,并且确定该HMD装置在物理环境中的位置。作为一个示例,位置传感器***62可以包括惯性测量单元,被配置为六个轴或者六个自由度的位置传感器***。这个示例的位置传感器***可以例如,包括三个加速计和三个陀螺仪,以指示或者测量HMD装置200在三维空间中沿着三个正交轴的位置(例如x,y,z)的改变,以及该HMD装置关于三个正交轴的方向(例如,滚动、倾斜度、偏航度)的改变。
位置传感器***62可以支持其他适合的定位技术,例如GPS或者其他全球导航***。例如,位置传感器***62可以包括无线接收器(例如,GPS接收器或者蜂窝接收器),以从卫星和/或陆地基站接收无线信号广播。这些无线信号可以被用于识别HMD装置200的地理位置。
从HMD装置200接收的无线信号获得的定位信息可以与从运动传感器216获得的定位信息相结合以提供对HMD装置200的位置和/或方向的指示。虽然已经描述了位置传感器***的具体示例,应当意识到,可以使用其他适合的位置传感器***。
运动传感器216也可以作为用户输入装置来使用,这样用户可以经由脖子和头的、或甚至身体的姿势与HMD装置200交互。运动传感器的非限制示例包括加速计、陀螺仪、指南针、和方向传感器,它们可以被纳入其任意组合或子组合。
HMD装置200也可以包括一个或多个话筒220。在一些实施例中以及如下面将更加详细讨论的,话筒220可以接收来自用户的音频输入和/或来自围绕用户的物理环境的音频输入。另外地或者另选地,与HMD装置200分离的一个或多个话筒可用于接收音频输入。
HMD装置200也可以包括具有逻辑子***和数据保持子***的控制器224,正如下面将关于图12进行更加详细讨论的,其与该HMD装置各种输入和输出装置通信。简要地,该数据保持子***可以包括可由该逻辑子***执行的指令,例如,以经由通信子***从该传感器接收输入并将其转发到计算装置22(以非处理过或者处理过的形式),并且经由透明显示器50将图像呈现给用户52。
应当意识到,作为示例提供HMD装置200和相关的传感器以及上述的和图1及2所图示的其他组件。这些示例并不意旨以任何方式进行限制,如任何其他适合的传感器、组件、和/或传感器和组件的组合都可以被利用。因此,将被了解的是,HMD装置200可以包括附加的和/或替代的传感器、照相机、话筒、输入装置、输出装置等,而不脱离本公开的范围。进一步地,HMD装置200的物理配置及其各种传感器和子组件可以采用许多不同的形式,而不脱离本公开的范围。
现在同样参考图3-10,将提供对利用全息对象呈现***10和HMD装置200的示例实施例和使用情况的描述。在描述这些实施例和使用情况中,提供图9和10来示出通过用户52佩戴的HMD装置200的透明显示器50看到的物理环境230的示意图。
应当意识到,在一些示例中,全息对象呈现程序14可以从计算装置22的存储器26接收处于默认信息细节水平的全息对象36。在其他示例中,可以经由网络40,从计算装置22外部的源(例如,服务器42或移动装置46)接收全息对象36。
现在参考图3和4,全息对象36可以包括一个或多个开发者定义的信息细节水平64。在图4示出的一个示例中,并且同样参考图9和10,全息对象36可以采用表示地球的球体地球234的形式。全息对象36的开发者可以包括开发者定义的信息细节水平64,其对应于由地球234显示的各种信息细节水平。
如图4所示,在一个示例中,地球234的最大细节水平可以对应于完整地形起伏中的地球,包括地形等高线的三维表示,水体的详细描绘,森林覆盖等。中等细节水平可能对应于具有比最大细节水平更少的视觉信息的地球234,例如,地球234具有大陆和水体的二维轮廓。低细节水平可能对应于具有比中等细节水平更少的视觉信息的地球234,例如被描绘为固体蓝色球面的地球234。最小细节水平可以对应于具有比低细节水平更少的视觉信息的地球234,例如被描绘为透明无色球体的地球234。在一个示例中,地球234的默认信息细节水平也可以被设置为低细节水平,如图4所示。同样应当意识到,在其他示例中,可以为全息对象36提供更少或更多的信息细节水平。
再次参考图1和2,如上所述,HMD装置200的各种传感器和***的一个或多个可以接收用户行为信息74和/或物理环境信息60。在一些示例中,用户行为信息74可以包括语音识别信息,眼睛追踪信息、头部姿态信息,用户移动信息以及用户姿势信息。物理环境信息60可以包括,例如,光信息、物理对象接近信息、和物理对象速度信息。
正如下面将更加详细地解释的,基于用户行为信息74和物理环境信息60中的一个或多个,全息对象呈现***10可以将全息对象36的选择性信息细节水平调整到在全息对象36'中呈现的调整过的信息细节水平。全息对象呈现***10随后可以将处于调整过的信息细节水平的全息对象36'提供给增强现实的显示程序32,而全息对象36'被配置为显示在HMD装置200上。
在一个示例中并参考图9,最初可以以默认信息细节水平显示地球234,例如,对应于固体蓝色球体的低信息细节水平,如图4的表格所指示的。对应于物理环境信息60和/或用户行为信息74的开发者定义的触发也可以与地球234相关联。在一个示例中,基于语音识别信息、眼睛追踪信息、头部姿态信息、用户移动信息和用户姿势信息中的一个或多个,全息对象呈现程序14可以被配置为检测增加兴趣的触发,该触发暗示用户52可能对全息对象具有增加的兴趣水平。基于检测该增加兴趣的触发,全息对象呈现程序14可以增加该全息对象的选择性信息细节水平。
在一个示例中,全息对象呈现程序14可以在从眼睛追踪***54接收的眼睛追踪信息中检测到用户52正在注视地球234。基于检测该用户的注视,全息对象呈现程序14可以将地球234的默认信息细节水平从低信息细节水平增加到中等信息细节水平,该中等信息细节水平对应于具有大陆和水体轮廓的地球234',如图10所示。
现在参考图5,表格68包括开发者定义的触发和与该用户的注视相关的对应信息细节水平的四个其他示例。第一触发被定义为用户注视全息对象超过三秒。当这个触发被检测到时,全息对象呈现程序14可以将该对象的信息细节调整到最大细节水平。应当意识到,这个第一触发可以对应于增加兴趣的触发,其暗示用户对该对象的兴趣正在增长。
继续参考表格68,第二触发可以被定义为用户注视离开该用户曾经注视的全息对象。当这个触发被检测到时,全息对象呈现程序14可以将该对象的信息细节调整到中等细节水平。第三触发可以被定义为用户注视已经离开该全息对象超过三秒了。当该触发被检测到时,全息对象呈现程序14可以将该对象的信息细节调整到低细节水平。第四触发可以被定义为用户与不同全息对象交互。当这个触发被检测到时,全息对象呈现程序14可以将该之前对象的信息细节调整到最小细节水平。
应当意识到,上述第二、第三和第四触发可以对应应于降低兴趣的触发,其暗示用户对该对象的兴趣正在降低。同样应当意识到,可以利用许多其他类型的触发,相关联的用户行为信息74和/或物理环境信息60,和与触发相关联的值。
在另一个示例中,可以将两个或更多个开发者定义的条件与每个开发者定义触发相关联,其中每个条件与特定信息细节水平相对应。现在参考图6,在一个示例中,表格72包括图5的四个开发者定义的触发,以及对于每个该触发的两种可能的条件。对于每种条件,提供一个对应的调整过的信息细节水平。在图6示出的示例中,可以检测物理环境照明条件并将其分类为白天或黑夜。关于第一触发,当用户注视该全息对象超过三秒时,如果检测到的条件是白天,那么全息对象呈现程序14可以提供处于最大细节水平的对象。如果检测到的情况是黑夜,那么全息对象呈现程序14可以提供处于中等细节水平的对象。
关于第二触发,当用户注视离开该对象时,如果检测到的条件是白天,那么全息对象呈现程序14可以将该对象的信息细节调整到中等细节水平。如果检测到的条件是黑夜,那么全息对象呈现程序14可以将该对象的信息细节调整到低细节水平。关于第三触发,当用户注视已经离开该对象超过三秒时,如果检测到的条件是白天,那么全息对象呈现程序14可以将该对象的信息细节调整到低细节水平。如果检测到的条件是黑夜,则全息对象呈现程序14可以将该对象的信息细节调整到最小细节水平。关于第四触发,当该用户与另一全息对象交互时,不论检测到的条件是白天还是黑夜,全息对象呈现程序14可以将该之前对象的信息细节调整到最小细节水平。
有利地,在这个示例中,开发者可以基于用户可能正在体验的物理环境条件,进一步控制全息对象的信息细节水平。应当意识到,可以利用许多其他类型的条件来调整信息细节水平。这种情况可以包括但不限于:其他用户的行为、其他物理环境条件,例如噪音水平和天气、其他对象或人的数量和/或邻近性、用户的生理状况、虚拟环境中其他全息对象的数量和/或邻近性等。
在另一示例中,一个或多个用户定义的设置可以与开发者定义触发相关联,其中每个用户定义的设置确定用于调整全息对象的信息细节水平的参数。在一个示例中并且参考图7,表格76包括两个用户定义的设置,它们与某些用户行为相关联。第一用户定义的设置可以涉及用户注视全息对象的最小时间,以产生最大信息细节水平。在这个示例中,熟悉经由全息对象呈现程序14与全息对象交互的有经验用户可以输入1秒的用户定义的设置值。因此,当用户注视全息对象1秒时,全息对象呈现程序14将信息细节水平调整到最大水平。在另一示例中,对使用全息对象呈现程序14不太熟悉的新手用户可以输入例如,4秒的更长的用户定义的设置值。
继续参考图7,第二用户定义的设置可以涉及用户注视离开全息对象之后的最小时间,以产生低信息细节水平。在这个示例中,有经验用户可以输入1秒的用户定义的设置值。因此,当用户注视离开全息对象时,在1秒之后,全息对象呈现程序14将信息细节水平调整到低水平。在另一示例中,对使用全息对象呈现程序14不太熟悉的新手用户可以输入例如,2秒的更长的用户定义的设置值。应当意识到,用户定义的设置值可以在开发者定义的触发中重写相应设置。
在增加兴趣的触发的另一示例中,并且再次参考图9和10,全息对象呈现程序14可以从位置传感器***62接收的用户移动信息中检测用户52正在向地球234移动。基于检测用户的移动,全息对象呈现程序14可以将地球234的默认信息细节水平从低细节信息水平增加到如图9所示的地球234’相对应的中等细节信息水平。
在增加兴趣的触发的另一示例中,并且再次参考图9和10,全息对象呈现程序14可以从光传感器***58接收的用户姿势信息中检测用户52正在向地球234做姿势。例如,用户52可以将手指56指向地球234处。基于检测到暗示对地球234增加的兴趣的用户姿势,全息对象呈现程序14可以将地球234的默认信息细节水平从低细节信息水平增加到与图10所示的地球234'相对应的中等细节信息水平。应当意识到,可以检测许多其他类型和形式的用户姿势(例如向地球234点头),并将其用于推断用户52对地球234的兴趣增加。
在增加兴趣的触发的另一示例中,全息对象呈现程序14可以检测从话筒220接收的语音识别信息中的口头提示,其暗示该用户对地球234增加的兴趣水平。例如,用户52可以说“地球看起来好漂亮”。基于检测到这种口头提示,全息对象呈现程序14可以增加地球234的默认信息细节水平。应当意识到,可以检测口头提示的许多其他示例并且将其用于推断用户52对地球234的兴趣增加。
在另一示例中,可以为全息对象提供一个或多个开发者定义的全息对象行为状态。参考图9,在一个示例中,可以在HMD装置200的透明显示器50上显示气球238形式的全息对象。如在图8的表格80中所示的,可以提供气球238的两个不同的开发者定义行为状态。在第一个,静态行为状态中,气球238对用户52而言看起来可以是静止的。在第二个,动态行为状态中,并且如图10所示,气球238'可以看起来是飘动的,像是被风冲击时。
应当意识到,可以由各种用户行为、物理环境条件、虚拟环境参数和/或其他因素调用开发者定义的全息对象行为状态。同样应当意识到,可以为各种全息对象提供许多不同形式的开发者定义的全息对象行为状态。
在其他示例中,全息对象呈现***10可以使用从物理环境230接收的物理环境信息60,以将全息对象36的选择性信息细节水平调整到调整过的全息对象36'的信息细节水平。在物理环境信息60包括物理对象接近信息的一个示例中,当另一个人在距用户52的指定范围内,例如,3英尺半径之内移动时,全息对象呈现程序14可以将全息对象的信息细节水平调整到较低的细节水平。
在物理环境信息60包括外部音频信息的另一示例中,当检测到可能是对用户很重要的音频信息时,全息对象呈现程序14可以将全息对象的信息细节水平调整到较低的细节水平。在一个示例中,这种音频信息可以包括关于用户的预定航班的机场通告。在物理环境信息60可以包括物理对象速度信息的另一示例中,当检测到外部对象正以超过阈值的速度向用户52行进时,全息对象呈现程序14可以将全息对象的信息细节水平调整到较低的细节水平。在检测到真实世界的棒球正以超过15公里/小时的速度向用户52行进的一个示例中,全息对象呈现程序14可以将全息对象36的选择性信息细节水平调整到较低的细节水平。应当意识到,可以使用物理环境信息60的许多其他示例来将全息对象36的选择性信息细节水平调整到调整过的信息细节水平,不管是更高还是更低的细节水平。
在一些示例中,与更高的信息细节水平相比,较低的信息细节水平可以与更高的全息对象透明度相对应。类似地,与更低的信息细节水平相比,较高的信息细节水平可以与更高的全息对象不透明度相对应。在其他示例中,调整全息对象的信息细节水平可以包括改变该全息对象的形式或形状。例如,一个人的最小信息细节水平可以对应于线条画图标,而那个人的低细节信息水平可以对应于带有脸的二维画。
图11A和11B图示了根据本公开的实施例的,用于呈现具有选择性信息细节水平的全息对象的方法300的流程图。将参考上述以及图1所示的全息对象呈现***10的软件和硬件组件提供对方法300的下述描述。应当意识到,方法300也可以在使用其他适合的硬件和软件组件的其他上下文中被执行。
参考图11A,在304,该方法可以包括接收用户行为信息74,例如,语音识别信息、眼睛追踪信息、头部姿态信息、用户移动信息和用户姿势信息。在308,该方法可以包括在语音识别信息、眼睛追踪信息、头部姿态信息、用户移动信息和用户姿势信息中的一个或多个中检测增加兴趣的触发。在一个示例中,在312,该方法可以包括在眼睛追踪信息中检测用户正在注视全息对象。在另一示例中,在316,该方法可以包括在用户移动信息中检测用户正在向全息对象移动。在另一示例中,在320,该方法可以包括在用户姿势信息中检测用户正在向全息对象做姿势。
在324,该方法可以包括在语音识别信息、眼睛追踪信息、头部姿态信息、用户移动信息和用户姿势信息中的一个或多个中检测降低兴趣的触发。在328,该方法也可以包括接收物理环境信息60。
在332,该方法可以包括基于用户行为信息74和物理环境信息60中的一个或多个,将该全息对象的选择性信息细节水平调整到调整过的信息细节水平。在一个示例中,在336,该方法可以包括基于检测增加兴趣的触发,增加该全息对象的选择性信息细节水平。例如,在340,该方法可以包括随着用户注视全息对象,增加该全息对象的选择性信息细节水平。在另一示例中,在344,该方法可以包括随着用户向全息对象移动,增加该全息对象的选择性信息细节水平。在又一示例中,在348,该方法可以包括在用户向全息对象做姿势时,增加该全息对象的选择性信息细节水平。
在另一示例中,在352,该方法可以包括基于检测降低兴趣的触发,降低该全息对象的选择性信息细节水平。
在356,该方法可以包括当符合第一条件时,将该全息对象的选择性信息细节水平调整到第一调整过的信息细节水平。在360,该方法可以包括当符合第二条件时,将该全息对象的选择性信息细节水平调整到第二调整过的信息细节水平。在364,该方法可以包括将处于调整过的信息细节水平的全息对象提供给增强现实的显示程序32,以供显示于HMD装置200上。
图12示意性地示出了可以执行一个或多个上述方法和过程的计算装置400的非限制实施例。以简化的形式示出计算装置400。将被了解的是,实际上可以使用几乎任何计算机体系结构,而不脱离本公开的范围。在不同的实施例中,计算装置400可以采用大型机计算机、服务器计算机、桌面计算机、膝上型计算机、平板计算机、家庭娱乐计算机、网络计算装置、移动计算装置、移动通信装置、游戏装置等。
如图12所示,计算装置400包括:逻辑子***404、数据保持子***408、显示子***412,通信子***416,和传感器子***420。计算装置400也可以任选地包括图12未示出的其他子***和组件。计算装置400也可以任选地包括其它用户设备举例来说,例如,键盘、鼠标、游戏手柄、和/或触摸屏。进一步地,在一些实施例中,本文所述的方法和过程可以被实现为计算机应用、计算机服务、计算机API、计算机库、和/或计算***中的其他计算机程序产品,该计算***包括一个或多个计算机。
逻辑子***404可以包括一个或多个物理装置,被配置为执行一个或多个指令。例如,该逻辑子***可以被配置为执行作为一个或多个应用、服务、程序、例程、库、对象、组件、数据结构、或者其他逻辑结构的一部分的一个或多个指令。这种指令可以被实现为执行任务、实现数据类型、转换一个或多个装置的状态、或者以其他方式到达所需结果。
该逻辑子***404可以包括一个或多个处理器,被配置为执行软件指令。另外地或者可选地,该逻辑子***可以包括一个或多个硬件或固件逻辑机,被配置为执行硬件或固件指令。该逻辑子***的处理器可以是单核或者多核,并且在其上执行的程序可以被配置为并行或分布式的处理。该逻辑子***可以任选地包括分布于两个或更多个装置中的独立组件,该两个或更多个装置可以位于远程,和/或被配置为协作处理。该逻辑子***的一个或多个方面可以被虚拟化并且由配置于云计算配置中的可远程访问的联网计算装置所执行。
数据保持子***408可以包括一个或多个物理的,非暂时的装置,被配置为保持可由该逻辑子***404执行以实现本文所述的方法和过程的数据和/或指令。当这种方法和过程被实现时,可以转换数据保持子***408的状态(例如,以保持不同的数据)。
数据保持子***408可以包括可移除介质和/或内置装置。数据保持子***408可以包括光存储器装置(例如,CD、DVD、HD-DVD、蓝光光盘等),半导体存储装置(例如,RAM、EPROM、EEPROM等)和/或磁存储装置(例如,硬盘驱动器、软驱、磁带驱动器、MRAM等)以及其他。数据保持子***408可以包括具有以下特征中的一个或多个的装置:易失性、非易失性、动态、静态、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址、和内容可寻址。在一些实施例中,逻辑子***404和数据保持子***408可以被集成到一个或多个共用装置中,例如,应用专用集成电路或片上***。
图12也示出了可移除计算机可读存储介质424形式的数据保持子***408,其可以被用于存储和/或传送可执行以实现本文所述的方法和过程的数据和/或指令。可移除计算机可读存储介质424可以采用CD、DVD、HD-DVD、蓝光光盘、EEPROM、和/或软盘,以及其他。
应当意识到,数据保持子***408包括一个或多个物理的,非暂时的装置。相反地,在一些实施例中,本文所述的指令的各方面可以通过由不由物理装置在至少有限持续时间期间保持的纯信号(例如,电磁信号、光信号等)以暂时的方式传播。此外,可以由纯信号传播关于本公开的数据和/或其他形式的信息。
显示子***412可以被用于呈现由数据保持子***408保持的数据的视觉表示。显示子***412可以包括,例如,HMD装置200的透明显示器50。当本文所述的方法和过程改变由该数据保持子***408保持的数据,并且因此将该数据保持子***的状态转换时,显示子***412的状态可以同样地被转换以在视觉上表示底层数据的改变。显示子***412可以包括一个或多个利用几乎任何类型的技术的显示装置。这种显示装置可以与逻辑子***404和/或数据保持子***408组合在一个共享的机壳内,或者这种显示装置可以是***显示装置。
通信子***416可以被配置为通信地耦合计算装置400与一个或多个网络(诸如网络40)、和/或一个或多个其他计算装置。通信子***416可以包括与一个或多个不同的通信协议兼容的有线和/或无线通信装置。作为非限制示例,该通信子***416可以被配置为经由无线电话网络、无线局域网、有线局域网、无线广域网、有线广域网等进行通信。在一些实施例中,该通信子***可以允许计算装置400经由例如互联网的网络将消息发送到其他装置,和/或从其他装置接收消息。
传感器子***420可以包括一个或多个传感器,被配置为传感如上所述的不同物理现象(例如,可见光、红外光、声、加速度、方向、位置等)。例如,传感器子***420可以包括一个或多个眼睛追踪传感器、图像传感器、话筒、运动传感器,例如,加速计、触摸板、触摸屏、和/或其他任何适合的传感器。举例来说,传感器子***420可以被配置为将观察信息提供给逻辑子***404。如上所述,观察信息诸如眼睛追踪信息、图像信息、音频信息、环境照明信息、深度信息、位置信息、运动信息、和/或其他任何适合的传感器数据可用于执行上述方法和过程。
术语“程序”可以被用于描述全息对象呈现***10的方面,全息对象呈现***10被实现为执行一个或多个具体功能。在一些情况中,可以经由执行数据保持子***408所保持的指令的逻辑子***404来实例化这种程序。将被了解的是可以从相同的应用、服务、代码块、对象、库、例程、API、函数等来实例化不同的程序。相同地,可以由不同的应用、服务、代码块、对象、例程、API、函数等来实例化相同的程序。术语“程序”意味着包含单独的可执行文件、数据文件、库、驱动器、脚本、数据库记录等或者它们的组。
将被了解的是,文本所述的配置和/或方法本质上是示范性的,并且这些特定的实施例或者示例并不被认为是具有限制意义,因为许多变化是可能的。本文所述的特定的例程或方法可以表示一个或多个任意数量的处理策略。由此,可以以图示的顺序、其他的顺序、并行地、或者在某些情况下省略地执行图示的各种动作。同样地,可以改变上述过程的顺序。
本公开的主题包括所有新颖的和非明显的本文公开的各种过程、***和配置、和其他特征、功能、动作、和/或特性的组合和子组合,以及它们的任意和所有等价物。