近年来,三维(3D)显示技术经历了快速发展,尤其是在消费市场中。现在高分辨率3D眼镜和护目镜对消费者是可用的。使用现有的微投影技术以便向右眼和左眼立体地投射相关图像,这些显示系统使佩戴者沉浸于令人信服的虚拟现实中。然而,市场上对消费者销售的3D显示系统仍有一定的挑战。一个问题是佩戴者可能因显示系统相对于佩戴者眼睛的不对齐而体验到的不舒适。
概述
本发明的一个实施例提供了一种在观察者前指定距离处显示虚拟物体的方法。在立体显示系统中执行,该方法包括感测观察者的右眼和左眼位置,并基于这些位置,偏移虚拟物体的右或左显示图像。偏移是这样的量级和方向以将右和左显示图像之间的位置视差以在指定距离放置虚拟物体的量限制到平行于观察者的双眼间轴线的方向。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本
技术实现要素:
并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。而且,所要求保护的主题不限于解决该公开的任一部分中所注的任何或全部缺点的实现方式。
附图简述
图1示出根据本发明的一实施例的可穿戴立体显示系统和计算机系统的各方面。
图2示出根据本发明的一实施例的右或左光学系统和相关联的显示窗口的各方面。
图3和4示出了根据本发明的一实施例的虚拟物体的立体显示。
图5描绘了可穿戴立体显示系统相对于佩戴者的眼睛的不对齐。
图6示出示例瞳孔位置及其关于眼睛的转动中心。
图7示出了根据本发明的一个实施例的一种在观察者前指定距离处显示虚拟物体的方法。
图8示出根据本发明的一实施例的示例计算系统的各方面。
详细描述
现在将通过示例并参照所示的以上列出的实施例来描述本公开的各方面。在一个或多个实施例中基本相同的组件、过程步骤和其他元素被协调地标识并且以重复最小的方式描述。然而将注意到,被协调地标识的元素可能也会有一定程度的不同。将进一步注意到,本公开中包括的附图是示意性的并且通常未按照比例绘制。当然,附图中所示的各种绘图比例、纵横比、以及组件的数量可故意地失真,以更容易看到某些特征或关系。
图1示出操作上耦合到计算机系统12A的可穿戴立体显示系统10的各个方面。所例示出的显示系统类似于普通眼镜。它包括具有定位于佩戴者面部的鼻梁16的耳拟合框架14。显示系统还包括右显示窗口18R和左显示窗口18L。在一些实施例中,右和左显示窗口18从佩戴者的角度看是全部或部分透明的,以便给予佩戴者他或她的周围环境的清晰视图。此特征使得计算机化的显示影像能与来自周围环境的影像混合,以获得“增强现实”(AR)的假象。
在一些实施例中,显示影像被实时地从计算机系统12A传送到显示系统10。显示影像可以以任何合适形式(即,类型)的传输信号和数据结构被传送。编码显示影像的信号可经由至显示系统的微控制器12B的任何种类的有线或无线通信链路被传递。在其它实施例中,至少一些显示图像合成和处理可在微控制器中执行。
在图1中继续,微控制器12B操作上耦合到右和左光学系统22R和22L。在所例示的实施例中,微控制器连同右和左光学系统一起隐藏于显示系统框架内。微控制器可包括合适的输入/输出(IO)部件,使其能够接收来自计算机系统12A的显示影像。微控制器还可包括位置感测部件22——例如,全球定位系统(GPS)接收器、陀螺传感器或加速度计,以便评估头部定向和/或移动等。当显示系统10在操作中时,微控制器12B向右光学系统22R发送适当的控制信号,导致右光学系统在右显示窗口18R中形成右显示图像。类似地,微控制器向左光学系统22L发送适当的控制信号,导致左光学系统在左显示窗口18L中形成左显示图像。显示系统的佩戴者通过右和左眼分别观看右和左显示图像。当右和左显示图像被组成并以适当的方式(参见下文)呈现时,佩戴者体验在指定位置并具有指定3D内容和其它显示属性的虚拟物体的假象。将理解,“虚拟物体”,如在此使用的,可以是任何期望的复杂度的物体并且不需要被限制为单个物体。相反,虚拟物体可包括具有前景和背景部分两者的完整的虚拟场景。虚拟物体还可对应于更大的虚拟物体的一部分或位点。
图2在一个非限制性实施例中示出了右或左光学系统22以及相关联的显示窗口18的各方面。光学系统包括背光24和液晶显示器(LCD)阵列26。背光可包括发光二极管(LED)的系综——例如,白LED或红、绿和蓝LED的某种分布。可放置背光以便引导其发射光穿过LCD阵列,该LCD阵列被配置以基于来自微控制器12B的控制信号形成显示图像。LCD阵列可包括布置于矩形网格或其它几何形状上的众多可单独寻址的像素。在一些实施例中,透射红光的像素可在阵列中与透射绿和蓝光的像素并置,使得LCD阵列形成彩色图像。一个实施例中LCD阵列可以是硅上液晶(LCOS)阵列。在其它实施例中,数字微镜阵列可被用于代替LCD阵列,或有源矩阵LED阵列可被替代使用。在又一些实施例中,扫描束技术可被用于形成显示图像。应当理解,这里所描述的立体渲染技术可与任何适当的显示技术兼容。
在图2中继续,光学系统22还包括被配置成感测显示系统10的佩戴者的右或左眼28的位置的眼睛跟踪传感器。在图2的实施例中,眼睛跟踪传感器采用对来自眼灯32的被佩戴者的眼睛反射的光进行成像的成像系统30的形式。眼灯可包括被配置成照亮眼睛的红外或近红外LED。在一个实施例中,眼灯可提供相对窄角的照明,以便在眼睛的角膜36上创建镜面反射34。成像系统30包括被配置为对眼灯的发射波长范围中光进行成像的至少一个相机。可布置并以其它方式配置此相机以便捕获来自眼灯的被眼睛反射的光。来自相机的图像数据被传达到微控制器12B或计算机系统12A中相关联的逻辑。在那里,可处理图像数据以便解析如瞳孔中心38、瞳孔轮廓40、和/或来自角膜的一个或多个镜面反射34之类的特征。图像数据中这些特征的位置可被用作把特征位置与眼睛的注视向量42联系起来的模型(例如多项式模型)中的输入参数。在一些实施例中,该模型可以在显示系统10的设置期间被校准——例如,通过将佩戴者的注视吸引到移动目标或跨佩戴者的视野分布的多个固定目标,同时记录图像数据并评估输入参数。佩戴者的注视向量可以各种方式被用于AR应用。例如,它可被用于确定在何处和以何距离显示通知或其它虚拟物体,使得被佩戴者不改变她的当前焦点就可辨析。
在某些实施例中,来自LCD阵列26的显示图像可能不适合被显示系统10的佩戴者直接观看。具体而言,显示图像可能偏移开佩戴者的眼睛,可能具有不期望的聚散度,和/或非常小的出射光瞳(即,显示光的释放区域,不要与佩戴者的解剖瞳孔相混淆)。鉴于这些问题,来自LCD阵列的显示图像可在中途被进一步适应于佩戴者的眼睛,如下面进一步描述。
在图2的实施例中,来自LCD阵列26的显示图像被接收到垂直瞳孔扩展器44中。垂直瞳孔扩展器将显示图像降低至佩戴者的视野中,并且通过这样做,在“垂直”方向上扩展了显示图像的出射光瞳。在此上下文中,垂直方向是与佩戴者的双眼间轴线且与佩戴者正面对的方向正交的方向。从垂直瞳孔扩展器44,显示图像被接收到可被耦合于或被实现为显示窗口18的水平瞳孔扩展器。在其它实施例中,水平瞳孔扩展器可与显示窗口不同。无论何方式,水平瞳孔扩展器将显示图像的出射光瞳在“水平”方向上扩展。在此上下文中,水平方向是平行于显示系统10的佩戴者的双眼间轴线的方向——即,在图2中进出页面的方向。通过穿过水平和垂直瞳孔扩展器,显示图像被呈现于覆盖眼睛的区域上。这使佩戴者能在光学系统和眼睛之间适当的水平和垂直偏移范围上看到显示图像。在实践中,这个偏移范围可反映诸如佩戴者之间解剖学眼睛位置的变化性、显示系统10的制造公差和材料灵活性、以及显示系统在佩戴者的头部上的不精确安置之类的因素。
在一些实施例中,光学系统22可将光功率应用于来自LCD阵列26的显示图像,以便调整显示图像的聚散度。这样的光功率可由垂直和/或水平瞳孔扩张器,或者由把来自LCD阵列的显示图像耦合进垂直瞳孔扩张器的透镜46提供。例如,如果来自LCD阵列的光线显现出会聚或发散,则光学系统可反转图像聚散度使得光线被准直接收进佩戴者的眼睛。这种手段可被用于形成遥远的虚拟物体的显示图像。类似地,光学系统可被配置为向显示图像赋予固定的或可调整的发散,与被置于佩戴者前部有限距离的虚拟物体一致。在一些实施例中,其中透镜46是电子可调透镜,可基于观察者与正被显示的虚拟物体之间的指定距离动态地调整显示图像的聚散度。
观察者对到虚拟显示物体的距离的感知不仅受到显示图像聚散度的影响,而且受到右和左显示图像之间的位置视差的影响。这个原理通过图3中的示例来解说。图3示出了为说明目的而相互叠加的右和左图像框48R和48L。右和左图像框分别对应于右和左光学系统的LCD阵列26的图像形成区域。由此,右图像框包围右显示图像50R,而左图像框包围左显示图像50L。适当渲染的话,右和左显示图像可显得像是任何期望复杂度的虚拟3D物体。在图3的示例中,虚拟物体包括具有与右或左显示图像的每个像素(X,Y)相关联的深度坐标Z的表面轮廓。所需的深度坐标可参考图4以以下方式模拟。
一开始,选择距显示系统10的焦平面F的距离Z0。左和右光学系统然后被配置为以适合于所选距离的聚散度呈现它们各自的显示图像。在一个实施例中,Z0可被设定为“无穷大”,使得每个光学系统以准直光线的形式呈现显示图像。在另一实施例中,Z0可被设定为两米,从而要求每个光学系统以发散光的形式呈现显示图像。在一些实施例中,Z0可在设计时被选择,并对由显示系统呈现的所有虚拟物体保持不变。在其它实施例中,每个光学系统可被配置有电子可调光功率,以便允许Z0根据呈现虚拟物体的距离的范围而动态地变化。
在距焦平面的距离Z0已被建立之际,可对虚拟物体52的每个表面点P设定深度坐标Z。这是通过调整右和左显示图像中对应于点P的两个位点的位置视差(相对于它们各自的图像框)完成的。在图4中,右图像框中对应于点P的位点被表示为PR,而左图像框中的对应位点被表示为PL。在图4中,位置视差为正——即,在叠加的图像框中PR在PL的右边。这导致点P出现在焦平面F的后面。如果位置视差是负的,则P将出现在焦平面的前面。最后,如果右和左显示图像被重叠(无视差,PR和PL重合),则P将显得正好位于焦平面上。无需使本公开受任何特定的理论约束,位置视差D可以按下式与Z、Z0、以及瞳距(IPD)相关:
在上述方法中,试图在右和左显示图像的相应位点之间引入的位置视差平行于显示系统10的佩戴者的瞳间轴线。在这里和其它地方,此方向上的位置视差被称为“水平视差”,不考虑佩戴者的眼睛或头的朝向。水平视差的引入对于虚拟物体显示是合适的,因为它模仿了真实物体深度对人类视觉系统的作用,其中由右和左眼接收的真实物体的图像沿瞳间轴线自然地偏移。如果观察者选择聚焦在这样的物体上,并且如果该物体比无限远近,则眼睛肌肉将趋向于将每个眼睛绕其垂直轴旋转,以便将那个物体成像到每个眼睛的中央凹上,视觉敏锐度在眼睛的中央凹上最大。
相反,左和右显示图像之间的垂直视差在自然世界中不常见并且对于立体显示无用。“垂直视差”是这样一类位置视差,其中右和左显示图像对应的位点在垂直方向偏移——即,垂直于IPA和观察者面对的方向。尽管眼睛肌肉组织可将眼睛朝向观察者头部上方或下方的图像物体上或下地旋转,此类调节总是在双眼一起进行。眼睛具有非常有限的能力以将一只眼睛独立于另一只上或下移动,因此当呈现具有垂直视差的图像对时,由于眼睛肌肉紧张以将每个图像聚焦导致眼睛疲劳和/或头痛。
基于在此提供的描述,本领域读者将理解显示系统10对佩戴者眼睛的不对齐易于引入右和左显示图像之间的垂直视差的成分。这样的不对齐可能因显示系统在佩戴者脸上的不精确定位(如图5所示)、脸的不对称(例如,低耳或眼)、斜视(其中至少一个瞳孔可能采用不期望的位置,有效地倾斜了相对于佩戴者的脸的“水平”方向)而发生。
以上问题可通过利用构建在显示系统10中的眼跟踪功能来解决。具体而言,每个成像系统30可被配置来评估相关联的眼睛相对于固定到显示系统的参考系的瞳孔位置。有了瞳孔位置,显示系统能够将显示图像偏移并缩放适当的量来消去位置视差的任何垂直分量,并且确保余下的水平视差是将所渲染的虚拟物体放置在观察者前指定位置处的量。
上述方法准许许多变体以及同样准许许多算法来执行所需偏移和缩放。在一个实施例中,计算机系统12A或微控制器12B中的逻辑以固定于显示系统10的参考系维持观察者前面的笛卡尔空间的模型。观察者者的瞳孔位置,如由眼睛跟踪传感器所确定的,被映射到该空间,被定位于预定深度Z0处的叠加的图像框架48R和48L也一样。(读者被再次引导至图3和4。)然后,虚拟物体52被构造,其中物体的可视表面上的每个点P都具有显示系统的参考系中的坐标X、Y、和Z。针对可视表面的每个点,构造两条线段——至观察者的右眼的瞳孔位置的第一线段以及至观察者的左眼的瞳孔位置的第二线段。右显示图像中对应于点P的位点PR被取为第一线段在右图像框48R中的交点。类似地,左显示图像中的位点PL被取为第二线段在左图像框48L中的交点。此算法自动提供适当量的移位和缩放以便消除垂直视差并创建正确的量的水平视差从而正确地渲染虚拟物体的可视表面,从而将每个点P放置于距观察者的所需距离处。
在某些实施例中,所需要的偏移和缩放可在微控制器12B的一个或多个图形处理单元(GPU)的帧缓冲中完成,其累积右和左显示图像。在其它实施例中,光学系统22中的电子可调节光学元件(图中未示出)可被用来将显示图像偏移和/或缩放适当的量。
尽管排除各组成显示图像之间的垂直视差有益处,但一般而言,偏移和缩放显示图像以实时跟踪瞳孔位置可能不是合乎需要的。首先,可预料到佩戴者的眼睛将作出快速转移移动,其中视觉焦点短暂或甚至长时间移离显示内容。显示影像持续跟踪这些移位可能是令人分心的或不受欢迎的。此外,可能有与瞳孔位置的确定相关联的噪声。显示影像响应于这样的噪声而到处移动可能是令人分心的。最后,伴随显示影像的实时调整的准确的、即时即刻的眼睛跟踪可能要求比消费者设备中提供的更多的计算能力。
解决上述各问题中的每一者的一种方式是测量并使用眼睛的旋转中心来替代上述办法中的瞬时瞳孔位置。在一个实施例中,眼睛的旋转中心可根据一段时间内记录的瞳孔位置的连续测量值确定。图6在一个实施例中示出该办法的各方面。实际上,旋转中心C可被用作瞳孔位置K的更稳定且较少噪声的替代物。自然地,这种近似在观察者直接向前看使得旋转中心位于瞳孔正后方时最有效,而在观察者向上、下、或侧边看时最不有效。无需使本公开受任何特定的理论约束,相信该近似是有效的,因为大脑工作得更辛苦来为中央凹54接收到的图像解析深度——即,当凝视方向是向前或近乎向前时。离开中央凹中的少量垂直视差较少可能触发眼镜肌肉的不自然调节尝试。
前述的描述或附图的任何方面都不应以限制的意义被解读,因为众多变型都位于本公开的精神和范围之内。例如,以上描述的眼睛跟踪办法仅作为示例方式来被提供。其它类型的眼睛跟踪部件可被替代地使用,并且事实上本公开与可被用于为了在此描述的目的的定位瞳孔位置或旋转中心的任何传感办法一致。此外,尽管图1的显示系统10是近眼显示系统(其中右显示图像形成于右显示窗口之后,而左显示图像形成于左显示窗口之后),但右和左显示图像也可由同一图像形成阵列形成。用基于快门的近眼显示,例如,相同图像形成阵列在被导向至右显示窗口和左显示窗口两者的右眼图像和左眼图像的显示之间交替。电光(例如基于液晶的)快门被安排在每个眼睛之上,并被配置来仅在用于那个眼睛的图像正被显示时打开。在又一些其它实施例中,右和左显示图像可在同一屏幕上形成。在用于膝上型计算机或被配置用于私人观看的家庭影院系统的显示系统中,右显示图像可使用一种偏振态的光被形成于显示屏上,而左显示图像可使用不同偏振态的光形成于同一显示屏上。观察者的眼镜中的正交对准偏振滤光器可被用于确保每个显示图像被接收进适当的眼睛。
上述配置使得能用各种方法来显示虚拟物体。继续参照以上配置,现在通过示例来描述一些此类方法。然而,应该理解,本文所述的方法以及落在本公开范围内的其它方法也可以由不同配置来实现。
图7示出了一种在观察者前指定距离处显示虚拟物体的示例方法56。在这一方法中,虚拟物体的右和左显示图像被偏移使得右和左显示图像之间的位置视差以将虚拟物体放置在指定距离处的量平行于观察者的双眼间轴线。此方法可在可穿戴立体显示系统,诸如以上描述的显示系统10中,被执行。
在方法56的58处,对应于要被显示的虚拟物体的右和左显示图像在计算机系统和/或显示系统的逻辑中形成。该动作可包括在计算机系统的一个或多个GPU的帧缓冲中积累右和左显示图像。在某些实施例中,该动作也可包括将帧缓冲数据发送到显示系统的右和左显示图像形成阵列。
在60,观察者的每个眼睛被照亮以启用眼睛跟踪。如以上所描述的,照亮可包括窄角度照亮以创建一个或多个角膜闪光以被成像或以其他方式检测。在62,通过显示系统的眼睛跟踪部件来感测观察者的右眼和左眼的位置。这样的部件可感测眼睛的任何特征的位置。在某些实施例中,各种特征位置可相对于固定到显示系统的参考系来被确定。在其它实施例中,右眼的特征位置可相对于左眼的特征位置来被确定,反之亦然。
在一个实施例中,在62感测的眼睛位置可包括右眼和左眼的即时瞳孔位置。在此使用的术语“即时”意味着测量按相对于眼睛运动的时间范围而言短的一时间间隔来进行或求平均。在另一个实施例中,在62感测的眼睛位置可包括每个瞳孔绕着各眼旋转的中心的位置。在此,感测动作可包括进行每只眼的即时瞳孔位置的重复的测量,并组合这样的测量以得到每只眼的旋转中心的位置。
任何合适的策略可被用于感测眼睛的位置或其任何特征,包括非成像传感方法。然而,在其它实施例中,通过获得每只眼的一个或多个高对比度图像—例如,右眼的图像和左眼的分开的图像—并分析该高对比度图像以定位一个或多个眼睛特征来感测眼睛位置。这样的特征可包括,例如,眼睛瞳孔的中心位置,眼睛瞳孔的轮廓,以及从眼睛角膜反射的闪光。
在64,感测的眼睛位置被组合以在显示系统的参考系中定义观察者的双眼间轴线并计算对应的双眼间距离。双眼间轴线的性质和双眼间距离在本发明的不同实施例中可以是不同的。在其中即时瞳孔位置被感测并被用于偏移右和左显示图像的各实施例中,64的双眼间轴线可以是观察者的双瞳间轴线,并且双眼间距离可以是瞳孔中心之间的即时距离。在另一方面,在其中瞳孔的旋转中心被感测并被用于偏移右和左显示图像的各实施例中,双眼间轴线可以是通过每个瞳孔的旋转中心的轴线。
在66计算定义一个或多个时间区间的时间安排数据,在该一个或多个时间区间上虚拟物体的右或左显示图像中的偏移被作出。时间安排数据可以是使得右或左显示图像的偏移对于观察者而言最不明显或最少分散注意力的。例如,时间安排数据可提供一个或多个时间区间包括其中观察者正从正在显示的虚拟对象移开目光的区间。在其它示例中,一个或多个时间区间可随时间来分布,使得右或左显示图像的偏移对于观察者而言不被注意。在其它示例中,一个或多个时间区间可跟随显示系统相对于观察者单眼或双眼的移动,或可跟随观察者的头或眼位置的突然改变,如由显示系统的加速度计所揭示的。
因此,在68,确定右或左显示图像中的偏移是否被安排在当前时间区间中。如果偏移被安排,则该方法前进到70,其中右或左显示图像基于右眼和左眼的位置来被偏移。一般而言,右和/或左显示图像可相对于固定到显示系统的参考系来被偏移。此外,右或左显示图像中的偏移可至少包括,“垂直”方向的偏移——即,垂直于双眼间轴线并垂直于观察者正面对的方向的方向。在一个实施例中,仅右或左显示图像被偏移以影响视差校正,而在其它实施例中,右和左显示图像两者被适当地偏移。
在一个实施例中,偏移可通过将右显示图像的每个像素在右图像帧内平移所计算的量来执行。在另一实施例中,左显示图像的每一像素可在左图像帧内被平移所计算的量,并且在其它实施例中,左和右显示图像可在它们各自的图像帧内被平移不同量。在又一些其它实施例中,右和/或左显示图像可通过以下来被偏移:向显示系统中的可调谐光学元件发送合适的模拟信号,实际上,偏移在其中显示右和左显示图像的图像帧。
在这些实施例的每一个中,偏移的幅度和方向可在计算上基于观察者的眼睛的位置(如在62确定的)——例如,基于相对于左眼的高对比度图像中的左眼的眼部特征的位置的、右眼的高对比度图像中的右眼的眼部特征的位置。具体而言,偏移的幅度和方向可以是使得将右和左显示图像之间的位置视差限制到以将虚拟物体放置在指定距离测的量平行于观察者的双眼间轴线的方向。以此方式,右和左显示图像之间的位置视差被限制到“水平”视差,这将不引起观察者的不自然的调节尝试。此外,水平视差的量可以相关于虚拟物体的每个像素相对于的焦平面的深度Z0的指定深度Z及在64计算的双眼间距离。
如上所述,方法56中使用的特定双眼间轴线可随各实施例而不同。在某些实施例中,即时瞳间轴线(从即时瞳孔位置获得)可被使用。在其它实施例中,可能偏好通过每个瞳孔的旋转中心获取双眼间轴线并将右和左显示图像之间的位置视差限制到那个轴线。
在图7的实施例中,右和/或左显示图像的偏移在72伴随适当地右和/或左显示图像的缩放,使得虚拟图像显得在距观察者指定距离处。在一个实施例中,右或左显示图像可基于在方法56的64计算的双眼间距离来缩放一几何因子。
最后,在74,右显示图像被引导通过显示系统的光学组件至观察者的右眼,而左显示图像被引导至观察者的左眼。
从前述描述中显而易见,本文所描述的方法和过程可被绑定到一个或多个计算机器的计算系统。这样的方法和过程可被实现为计算机应用程序或服务、应用编程接口(API)、库和/或其它计算机程序产品。
以简化形式示于图9的是被用于支持本文描述的方法和过程的计算系统的一个非限制性示例。计算系统中的每个计算机器12包括逻辑机76和指令存储机78。计算系统还包括采用光学系统22R和22L形式的显示器、通信系统80A和80B、GPS 82、陀螺仪84、加速度计86,以及未在图8中示出的各种组件。
每个逻辑机76包括被配置成执行指令的一个或多个物理设备。例如,逻辑机可被配置来执行作为以下各项的一部分的指令:一个或多个应用、服务、程序、例程、库、对象、组件、数据结构、或其它逻辑构造。这种指令可被实现以执行任务、实现数据类型、转换一个或多个部件的状态、实现技术效果、或以其它方式得到期望结果。
每个逻辑机76可以包括被配置成执行软件指令的一个或多个处理器。作为补充或替换,逻辑机可包括被配置成执行硬件或固件指令的一个或多个硬件或固件逻辑机。逻辑机的处理器可以是单核或多核,且在其上执行的指令可被配置用于串行、并行和/或分布式处理。逻辑机的各个组件可任选地分布在两个或更多单独设备上,这些设备可以位于远程和/或被配置用于进行协同处理。逻辑机的各方面可由以云计算配置进行配置的可远程访问的联网计算设备来虚拟化和执行。
每个指令存储机78包括被配置成保持可由相关联的逻辑机76执行以实现此处描述的方法和过程的指令的一个或多个物理设备。当实现这样的方法和过程时,指令存储机的状态可以被变换—例如用来保持不同的数据。指令存储机可包括可移动的和/或内置设备;它可包括光学存储器(例如,CD、DVD、HD-DVD、蓝光碟等)、半导体存储器(例如,RAM、EPROM、EEPROM等)、和/或磁性存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)、以及其他。指令存储机可以包括易失性的、非易失性的、动态的、静态的、读/写的、只读的、随机存取的、顺序存取的、位置可定址的、文件可定址的、和/或内容可定址的设备。
将理解,每个指令存储机78包括一个或多个物理设备。然而,本文描述的指令的各方面可另选地通过不由物理设备在有限时长内持有的通信介质(例如,电磁信号、光信号等)来传播。
逻辑机(一个或多个)和指令存储机(一个或多个)的各方面可一起被集成于一个或多个硬件逻辑组件中。这些硬件逻辑组件可包括例如现场可编程门阵列(FPGA)、程序和应用专用的集成电路(PASIC/ASIC)、程序和应用专用的标准产品(PSSP/ASSP)、片上系统(SOC)以及复杂可编程逻辑器件(CPLD)。
术语“模块”、“程序”和“引擎”可用于描述被实现为执行一特定功能的计算系统的一方面。在某些情况下,可经由执行由指令存储机所保持的指令的逻辑机来实例化模块、程序或引擎。应当理解,可以从同一应用、服务、代码块、对象、库、例程、API、函数等来实例化不同的模块、程序和/或引擎。类似地,相同的模块、程序和/或引擎可由不同的应用、服务、代码块、对象、例程、API、功能等来实例化。术语“模块”、“程序”和“引擎”意在涵盖单个或成组的可执行文件、数据文件、库、驱动程序、脚本、数据库记录等。
应该理解,在此使用的“服务”是跨多个用户会话可执行的应用程序。服务可用于一个或多个系统组件、程序和/或其它服务。在某些实现中,服务可以在一个或多个服务器计算设备上运行。
通信系统80可被配置为将计算机器通信地耦合于一个或多个其它机器。通信系统可包括与一个或多个不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,通信系统可被配置成用于经由无线电话网络或者有线或无线局域网或广域网来进行通信。在一些实施例中,通信系统可允许计算机器经由诸如因特网这样的网络将消息发送至其他设备以及/或者从其它设备接收消息。
将会理解,此处描述的配置和/或方法本质是示例性的,这些具体实施例或示例不应被视为限制性的,因为许多变体是可能的。此处描述的具体例程或方法可以表示任何数量的处理策略中的一个或多个。如此,所示和/或所述的各种动作可以以所示和/或所述顺序、以其它顺序、并行地执行,或者被省略。同样,上述过程的次序可以改变。
本公开的主题包括各种过程、系统和配置以及此处公开的其他特征、功能、动作和/或属性、以及它们的任一和全部等价物的所有新颖且非显而易见的组合和子组合。