来自多个视听源的信息的合成的制作方法

文档序号:6426384阅读:399来源:国知局

专利名称::来自多个视听源的信息的合成的制作方法
技术领域
:本发明涉及信息合成系统,尤其涉及用于合成从聚焦于单个场景的多个音频和可视源接收到的信息的系统。背景在过去,诸如计算机游戏和多媒体应用等计算应用使用控制器、遥控器、键盘、鼠标等来允许用户操纵游戏人物或应用的其他方面。近来,计算机游戏和多媒体应用已开始使用照相机和软件姿势识别引擎来提供自然用户界面(“NUI”)。对于NUI,使用捕捉设备来检测用户移动、姿势和语音。相关联的视听数据被转发至处理器,该处理器解释该数据并使用该数据来控制游戏人物或者应用程序的其他方面。当前NUI系统可以使用单个捕捉设备来记录来自玩游戏空间或场景的数据。然而,可能需要增大玩游戏空间或场景的大小。在此情况下,使用单个捕捉设备可能由于许多原因而不适合,诸如,例如,分辨率或场景的照明度不够,或对象在场景内被遮蔽。对于这样的情况,使用一个以上的捕捉设备将是有利的。需要一种系统来合成来自拍摄一个共同的场景的多个捕捉设备的数据,以协调来自多个源的数据。
发明内容此处公开了用于合成从聚焦于单个场景的多个音频和可视源接收到的信息的系统。该系统可包括从两个或更多源接收数据的计算环境。源可以是用于从玩游戏空间或场景捕捉音频和/或可视数据的捕捉设备。本技术的各实施方式首先将捕捉设备彼此校准以及与场景校准。场景常常可以具有移进移出场景的用户和对象。如此,校准过程的第一阶段可包括时间同步来自多个捕捉设备的数据,以确保来自音频和可视源的数据在相同时间提供同一场景的数据。此后,可以通过标识各种捕捉设备的图像数据内的关键点不连续性或线索来将捕捉设备彼此校准。然后,可以通过标识两个或更多捕捉设备的图像所共有的线索的数量,确定两个或更多捕捉设备相对于彼此的相对位置。重复此过程,直到所有捕捉设备的位置都已经相对于彼此被校准。此后,可以将来自多个捕捉设备的可视数据协调并在缝合一起,以改进系统的感应和解释场景的可视方面的能力。类似地,一旦校准了不同的捕捉设备的位置,来自多个捕捉设备的音频数据可以提供改进的音频质量、噪声消减和声源定位。本技术的一个实施方式可以涉及用于合成来自多个源的场景的信息的方法。该方法下列步骤a)从第一源和第二源接收场景信息,第一和第二源在空间上彼此并与场景是分开的;b)根据场景信息以及由第一和第二源从场景共同检测到的一个或多个线索,确定第一和第二源中的每一个的位置;以及c)基于在所述步骤b)中确定的第一和第二源的位置,以及从第一和第二源接收到的信息,创建场景的表示。本技术的再一个实施方式可以涉及用于合成来自多个源的场景的信息的方法,包括下列步骤a)从第一源和第二源接收场景信息,第一源相对于第二源的初始位置是未知的,第一和第二源在空间上彼此并与场景是分开的,场景信息包括图像深度数据和RGB数据中的至少一种;b)根据图像数据和RGB数据中的至少一种,以及来自场景的由第一和第二源共享的场景信息,确定第一和第二源00)中的每一个的位置;以及c)基于在所述步骤b)中确定的第一和第二源的位置,以及从第一和第二源接收到的信息,创建场景的表示。本技术的再一个实施方式可以涉及用于合成来自多个捕捉设备的游戏应用程序中的玩游戏空间的信息的方法,多个捕捉设备中的捕捉设备包括深度照像机、RGB照像机和至少一个话筒。该方法可包括下列步骤a)从第一捕捉设备和第二捕捉设备接收图像深度数据和RGB深度数据,来自第一和第二捕捉设备的图像深度数据和RGB深度数据被时间同步在一起,第一和第二捕捉设备在空间上彼此并与玩游戏空间是分开的;b)根据已同步的图像深度数据和RGB数据的组合,以及由第一和第二捕捉设备从玩游戏空间共同检测到的多个线索,确定第一和第二捕捉设备中的每一个的位置和方向;c)基于在所述步骤b)中确定的第一和第二捕捉设备的位置,以及从第一和第二捕捉设备接收到的图像深度数据和RGB深度数据,创建玩游戏空间的表示;d)将来自第一捕捉设备的玩游戏空间表示的第一部分与来自第二捕捉设备的玩游戏空间表示的第二部分缝合在一起;以及e)在与第一和第二捕捉设备相关联的显示器上呈现玩游戏空间的表示。提供本
发明内容以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本
发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。图IA示出了目标识别、分析,及跟踪系统的示例实施方式,用户正在玩游戏。图IB示出了目标识别、分析,及跟踪系统的另一示例实施方式,用户正在操作图形用户界面。图IC示出了目标识别、分析,及跟踪系统的另一示例实施方式,用户正在玩游戏。图2示出了可以用于目标识别、分析和跟踪系统中的捕捉设备的示例实施方式。图3A示出了可以被用来解释目标识别、分析和跟踪系统中的一个或多个姿势的计算环境的示例实施方式。图IBB示出了可以被用来解释目标识别、分析和跟踪系统中的一个或多个姿势的计算环境的另一示例实施方式。图4示出了从图2的目标识别、分析,及跟踪系统生成的用户的骨架映射。图5是用于将捕捉设备彼此校准以及针对场景校准的过程的高级别流程图。图6是用于同步图像数据以便将捕捉设备彼此校准以及与场景校准的过程的流程图。图7是带有用于捕捉设备彼此校准以及针对场景校准的过程的进一步的细节的流程图。图8是用于从多个捕捉设备捕捉数据并同步该数据以呈现场景的表示的的流程图。图9是带有用于将图像缝合在一起的过程的进一步的细节的流程图。图10是对来自多个捕捉设备的音频数据的流程图。具体实施例方式现在将参考图1-10描述本技术的各实施方式,它们一般涉及用于合成从聚焦于单个场景的多个音频和可视源接收到的信息的系统。在各实施方式中,该系统在NUI系统内操作,包括用于从单个玩游戏空间或场景捕捉音频和/或可视数据的两个或更多捕捉设备。由于捕捉设备的位置一般可能不是已知的,因此,可以确定捕捉设备相对于场景和相对于彼此的位置和方向。由于场景常常可以具有移进移出场景的用户和对象,可以使来自多个捕捉设备的数据在时间上同步,以确保来自音频和可视源的数据在相同时间提供同一场景的数据。可以一起协调和吸收来自多个源的音频和/或可视数据,以改进系统的解释场景的音频和/或可视方面的能力。最初参考图1A-2,用于实现本发明的技术的硬件包括目标识别、分析和跟踪系统10,该系统可用于识别、分析和/或跟踪诸如用户18等一个或多个人类目标。目标识别、分析与跟踪系统10的实施方式包括用于执行游戏或其他应用的计算环境12。计算环境12可以包括硬件组件和/或软件组件,使得计算系统12可以用于执行诸如游戏应用和非游戏应用之类的应用。在一个实施方式中,计算环境12可以包括诸如标准化处理器、专用处理器、微处理器等之类的处理器,该处理器可以执行存储在处理器可读存储设备上的用于执行在此所述的过程的指令。该计算环境可以从在各实施方式中可以是或包括多个捕捉设备20的多个源接收信息。捕捉设备20捕捉与捕捉设备感测到的一个或多个用户和/或对象相关的图形和音频数据。在各实施方式中,捕获设备20可以用于捕获与一个或多个用户的移动、姿势和话音相关的信息,所述信息被计算环境接收并且被用于呈现游戏或其他应用的方面、与所述方面交互和/或控制所述方面。在各实施方式中,每一个捕捉设备20可以是彼此相同的,但在另外的实施方式中它们不一定是相同的。下面更详细地解释计算环境12和捕获设备20的示例。目标识别、分析与跟踪系统10的实施方式可以连接到具有显示器14的音频/视觉设备16。设备16例如可以是可以向用户提供游戏或应用视觉和/或音频的电视机、监视器、高清电视机(HDTV)等等。例如,计算环境12可以包括诸如图形卡之类的视频适配器和/或诸如声卡之类的音频适配器,这些适配器可提供与游戏应用、或其他应用相关联的音频/视觉信号。音频/视觉设备16可以从计算环境12接收音频/视觉信号,并且然后可以向用户18输出与该音频/视觉信号相关联的游戏或应用视觉和/或音频。根据一个实施方式,音频/视觉设备16可以通过例如S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆、分量视频电缆等等连接到计算环境12。在各实施方式中,计算环境12、A/V设备16和捕获设备20可以协作以在显示器14上呈现一个或多个化身或屏幕上人物19。在各实施方式中,化身19模仿对应的用户18在现实世界空间中的移动,使得用户18可以执行控制化身19在显示器14上的移动和动作的移动和姿势。如图IA到图IC所示,可以定位一个或多个用户18以使其移动和/或语音被两个或更多捕捉设备20捕捉到。如此处所使用的,场景是由捕捉设备20的图像和/或音频传感器捕捉到的聚集区域。玩游戏空间是由捕捉设备20在运行在计算环境12上的游戏应用程序的上下文中捕捉到的场景。图IA示出了包括两个捕捉场景的捕捉设备20的实施方式。图IB示出了包括三个捕捉场景的捕捉设备20的实施方式。应该理解,在更进一步的实施方式中,可以有三个以上的捕捉设备20。每一个捕捉设备20都可以被设置为任意位置和方向,并带有一焦距,以捕捉场景的至少一部分。在各实施方式中,每一个捕捉设备都可以捕捉场景的一部分,多个捕捉设备之间的重叠只在一个或多个边界区发生。在更进一步的实施方式中,可以将第一捕捉设备20聚焦到一特定区域,该特定区域完全包含在由一个或多个附加的捕捉设备20捕捉到的更大的场景内,并是其一部分。在图IA到IC所示出的实施方式中,一般在单个区域训练捕捉设备20。然而,应该理解,多个捕捉设备可以被用来捕捉更大场景。在各实施方式中,可以提供两个到四个捕捉设备。以这些数量,典型的处理器能够接收和处理所有数据,在显示器14呈现的图像中不会产生延迟。然而,除诸如处理速度之类的考虑之外,在本技术的各实施方式中,可以使用任意数量的捕捉设备来捕捉任何大小的场景的某些部分。可以将捕捉设备20定位在相对于捕捉到的场景的任何位置。图IA示出了在被捕捉的场景的前面和侧面的两个捕捉设备。图IB示出了位于被捕捉的场景后面的第三捕捉设备20。如下面所说明的,在各实施方式中,可以根据本技术,来确定不同的捕捉设备20相对于彼此以及相对于被捕捉的场景的位置,当设置捕捉设备20时,其位置不必是已知的。在例如在图IC中所示出的更进一步的实施方式中,关于捕捉设备相对于彼此的位置的一般知识可以是已知的。图IC示出了固定于固定装置23的一对捕捉设备,以使得相关联的捕捉设备的间隔和朝向一般是已知的。这可以减少校准捕捉设备位置所需的处理,如下面所说明的。尽管图IA到IC中的捕捉设备20—般彼此平行对齐和/或正交,但是,这只作为示例,在更进一步的实施方式中,它们不必是这样。此外,在更进一步的实施方式中,还可以省略图IB和IC所示出的捕捉设备20中的任何一个。在其他位置,可以使用附加的捕捉设备20,以代替,或补充图IA到IC所示出的捕捉设备。在图IA和IC中,捕获设备20用在NUI系统中,其中例如一对用户18正在玩足球游戏。在该示例中,计算环境12可以使用视听显示14来提供以由相应用户18控制的足球移动员形式的两个化身19的视觉表示。用户18可以在物理空间中移动或执行踢移动以致使其相关联的移动员化身19在游戏空间中移动或踢足球。因此,根据一示例性实施方式,计算机环境12和捕捉设备20可以用于识别和分析用户58在物理空间中的移动和姿势,并且这样的移动和姿势使可以被解释成用户在游戏空间中相关联的玩家化身19的游戏控制或动作。图IA和IC的实施方式是可以在计算环境12上运行的许多不同应用程序之一,并且在计算环境12上运行的应用程序可以是多种其他游戏和非游戏应用程序。此外,系统10还可以用于将用户18移动解释成处于游戏或运行在计算环境12上的特定应用程序的领域之外的操作系统(OS)和/或应用程序控制。图IB中示出了一个示例,其中用户18在具有多种呈现在显示14上的菜单选项的用户界面21的范围内滚动并且控制该用户界面21。事实上,操作系统和/或应用程序的任何可控方面都可以由用户18的移动和/或语音来控制。系统10及其内部组件的适合的示例位于如下共同待审的专利申请中,所有这些专利申请都特此通过引用并入本申请于2009年5月四日提交的名称为“EnvironmentAnd/OrTargetSegmentation(环境和/或目标分割)”的美国专利申请序列号No.12/475,094;于2009年7月四日提交的名称为"AutoGeneratingaVisualRepresentation"(自动生成视觉表示),,的美国专利申请序列号No.12/511,850;于2009年5月四日提交的名称为“GestureTool(姿势工具)”的美国专利申请序列号No.12/474,655;于2009年10月21日提交的名称为“PoseTrackingPipeline(姿势跟踪流水线)”的美国专利申请序列号No.12/603,437;于2009年5月四日提交的名称为“DeviceforIdentifyingandTrackingMultipleHumansOverTime(用于随时间标识和跟踪多个人类的设备)”的美国专利申请序列号No.12/475,308;于2009年10月7日提交的名称为“HumanTrackingSyStem(人类跟踪系统)”的美国专利申请序列号No.12/575,388;于2009年4月13日提交的名称为“GestureRecognizerSystemArchitecture(姿势识别器系统架构)”的美国专利申请序列号No.12/422,661;于2009年2月23日提交的名称为‘、tandardGestures(标准姿势)”的美国专利申请序列号No.12/391,150;以及于2009年5月四日提交的名称为"GestureTool(姿势工具)”的美国专利申请12/474,655。如上所示,捕捉设备20在本发明技术的各实施方式中可以是相同或不同的。可用作所示设备20中的任一个或全部的捕捉设备20的一个示例现在将参考图2来描述。在一个示例性实施方式中,捕获设备20可以被配置为通过任何合适的技术捕获具有可以包括深度值的深度图像的视频,这些技术包括例如飞行时间、结构化光、立体图像等等。根据一实施方式,捕捉设备可将所计算的深度信息组织为“Z层”,或可与从深度照相机沿其视线延伸的Z轴垂直的层。在其他实施方式中,捕捉设备可将计算出的深度信息组织成以不同角度从深度照相机延伸至捕捉到的数据点的向量。如图2所示,每一个捕获设备20可以包括图像照相机组件22。根据一个示例实施方式,图像照相机组件22可以是可以捕捉场景的深度图像的深度照相机。深度图像可包括所捕捉的场景的二维0-D)像素区域,其中2-D像素区域中的每一像素可表示诸如按照以厘米、毫米等为单位的所捕捉的场景中的物体离照相机的长度或距离等的深度值。如图2所示,根据一个示例性实施方式,图像照相机22可以包括可以用于捕获场景的深度图像的顶光组件对、三维(3-D)照相机26,以及RGB照相机28。例如,在飞行时间分析中,捕捉设备20的顶光组件M可以将红外光发射到场景上,然后,可以使用传感器(未示出),用例如3-D照相机沈和/或RGB照相机观,来检测从场景中的一个或多个目标和对象的表面反向散射的光。在某些实施方式中,可以使用脉冲式红外光从而可以测量出射光脉冲和相应的入射光脉冲之间的时间差并将其用于确定从捕捉设备20到场景中的目标或物体上的特定位置的物理距离。另外,在其他示例实施方式中,可将入射光波的相位与出射光波的相位进行比较来确定相移。然后可以使用该相移来确定从捕捉设备20到目标或物体上的特定位置的物理距离。根据另一示例实施方式,可使用飞行时间分析,通过经由包括例如快门式光脉冲成像的各种技术来分析反射光束随时间的强度变化以间接地确定从捕捉设备20到目标或物体上的特定位置的物理距离。在另一示例实施方式中,捕捉设备20可使用结构化光来捕捉深度信息。在这样的分析中,图案化光(即被显示成诸如网格图案或条纹图案的已知图案的光)可以通过例如顶光组件对被投影到场景上。在撞击到场景中的一个或多个目标或物体的表面时,作为响应,图案可变形。图案的这种变形可由例如3-D照相机沈和/或RGB照相机观来捕捉,然后可被分析以确定从捕捉设备20到目标或物体上的特定位置的物理距离。根据另一实施方式,每一个捕捉设备20可包括可以从不同的角度观察场景的两个或更多个在物理上分离的照相机,以获取可以被解析以生成深度信息的视觉立体数据。在另一示例实施方式中,捕捉设备20可使用点云数据(pointclouddata)和目标数字化技术来检测场景和/或用户的特征。这些技术在下文中在一起校准不同的捕捉设备20的上下文中更详细地解释。每一个捕捉设备20还可包括话筒阵列30,其包括一个或多个话筒。话筒阵列30可以包括可以接收声音并将其转换成电信号的换能器或传感器。根据一个实施方式,话筒阵列30可以被用来减少目标识别、分析和跟踪系统10中的捕捉设备20和计算环境12之间的反馈。另外,话筒阵列30可用于接收也可由用户提供的音频信号,以控制可由计算环境12执行的诸如游戏应用程序、非游戏应用程序等应用。在一示例实施方式中,每一个捕捉设备20还可以包括可以与图像照相机组件22进行可操作的通信的处理器32。处理器32可包括可执行指令的标准处理器、专用处理器、微处理器等,这些指令可包括用于接收深度图像的指令、用于确定合适的目标是否可被包括在深度图像中的指令、用于将合适的目标转换成该目标的骨架表示或模型的指令、或任何其他合适的指令。每一个捕捉设备20还可以包括存储器组件34,该存储器组件34可以存储可以由处理器32执行的指令,由3-D照相机或RGB照相机捕捉到的图像或图像的帧,或任何其他合适的信息、图像等等。根据一个示例实施方式,存储器组件34可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘或任何其他合适的存储组件。如图2所示,在一个实施方式中,存储器组件34可以是与图像照相机组件22和处理器32通信的单独的组件。根据另一实施方式,存储器组件34可以集成到处理器32和/或图像照相机组件22中。如图2所示,每一个捕获设备20可以通过通信链路36与计算环境12通信。通信链路36可以是包括例如USB连接、火线连接、以太网电缆连接等的有线连接和/或诸如无线802.lib,802.llg、802.Ila或802.Iln连接等无线连接。根据一个实施方式,计算环境12可以向捕捉设备20提供主时钟,可以使用该时钟来通过通信链路36确定何时捕捉,例如,场景,如以下参考同步引擎184解释的。图2示出了计算环境12的可以被用来校准捕捉设备20的相对位置,并同步从设备中获取的音频和/或可视数据的多个组件。这样的组件包括同步引擎180、捕捉设备校准引擎182、图像缝合引擎184和/或声源定位引擎186。这些引擎可以用软件、硬件或软件和硬件的组合来实现。下面将说明引擎180到186中的每一个。另外,每一个捕捉设备20可以通过通信链路36向计算环境12提供深度信息和由例如3-D照相机沈和/或RGB照相机观捕捉到的图像,以及可以由捕捉设备20生成的骨架模型。存在用于判断由捕获设备20检测到的目标或对象是否与人类目标相对应的各种已知技术。骨架映射技术因而可用于确定该用户的骨架上的各个点,手、腕、肘、膝、鼻、踝、肩的关节,以及骨盆与脊椎相交之处。其他技术包括将图像转换为人的人体模型表示以及将图像转换为人的网格模型表示。然后,可以将骨骼模型提供给计算环境12,使得计算环境可以执行各种动作。计算环境还可基于例如从骨架模型中识别出的用户的姿势来确定在计算机环境上执行的应用中要执行哪些控制命令。例如,如图2所示,计算环境12可包括用于确定用户何时执行了预定义姿势的姿势识别器引擎190,如本领域中已知的。图3A示出了可以用于在目标识别、分析与跟踪系统中解释用户的一个或多个位置和运动的计算环境的示例性实施方式。上面参考图1A-2所描述的诸如计算环境12等的计算环境可以是诸如游戏控制台等的多媒体控制台100。如图3A所示,多媒体控制台100具有中央处理单元(CPU)101,其具有1级缓存102、2级缓存104,以及闪存R0M106。一级高速缓存102和二级高速缓存104临时存储数据并因此减少存储器访问周期数,由此改进处理速度和吞吐量。CPUlOl可以设置成具有一个以上的核,以及由此具有附加的一级和二级高速缓存102和104。闪存R0M106可存储在当多媒体控制台100通电时的引导过程的初始阶段期间加载的可执行代码。图形处理单元(GPU)108和视频编码器/视频编解码器(编码器/解码器)114形成用于高速、高分辨率图形处理的视频处理流水线。经由总线从GPU108向视频编码器/视频编解码器114运送数据。视频处理流水线向A/V(音频/视频)端口140输出数据,用于传输至电视机或其他显示器。存储器控制器110连接到GPU108,以促进处理器对各种类型的存储器112、比如但不限于RAM的访问。多媒体控制台100包括优选地在模块118上实现的I/O控制器120、系统管理控制器122、音频处理单元123、网络接口控制器124、第一USB主控制器126、第二USB主控制器128以及前面板I/O子部件130。USB控制器126和1用作外围控制器142(1)-142O)、无线适配器148、和外置存储器设备146(例如闪存、外置⑶/DVDROM驱动器、可移动介质等)的主机。网络接口1和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的访问并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线或无线适配器组件中任何一种。提供系统存储器143来存储在引导进程期间加载的应用数据。提供媒体驱动器144,且其可包括DVD/⑶驱动器、硬盘驱动器、或其他可移动媒体驱动器等。媒体驱动器144可以是对多媒体控制器100内置的或外置的。应用数据可经由媒体驱动器144访问,以由多媒体控制台100执行、回放等。介质驱动器144经由诸如串行ATA总线或其他高速连接(例如IEEE1394)等总线连接到I/O控制器120。系统管理控制器122提供涉及确保多媒体控制台100的可用性的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的对应的音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口140以供外置音频播放器或具有音频能力的设备再现。前板I/O子部件130支持展示在多媒体控制台100的外表面上的电源按钮150和弹出按钮152以及任何LED(发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台100的组件供电。风扇138冷却多媒体控制台100内的电路。CPUlOl、GPU108、存储器控制器110、和多媒体控制台100内的各个其他组件经由一条或多条总线互连,包括串行和并行总线、存储器总线、外围总线、和使用各种总线架构中任一种的处理器或局部总线。作为示例,这些架构可以包括外围部件互连(PCI)总线、PCI-Express总线等。当多媒体控制台100通电时,应用数据可从系统存储器143加载到存储器112和/或高速缓存102、104中并在CPUlOl上执行。应用可呈现在导航到多媒体控制台100上可用的不同媒体类型时提供一致的用户体验的图形用户界面。在操作中,媒体驱动器144中包含的应用和/或其他媒体可从媒体驱动器144启动或播放,以向多媒体控制台100提供附加功能。多媒体控制台100可通过将该系统简单地连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台100允许一个或多个用户与该系统交互、看电影、或听音乐。然而,随着通过网络接口1或无线适配器148可用的宽带连接的集成,多媒体控制台100还可作为较大网络社区中的参与者来操作。当多媒体控制台100通电时,可以保留设定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可包括存储器的保留量(诸如,16MB)、CPU和GPU周期的保留量(诸如,5%)、网络带宽的保留量(诸如,Slcbs),等等。因为这些资源是在系统引导时间保留的,所保留的资源对于应用程序视角而言是不存在的。具体而言,存储器保留优选地大得足以包含启动内核、并发系统应用和驱动程序。CPU保留优选地为恒定的,使得如果所保留的CPU使用量不被系统应用使用,则空闲线程将消耗任何未使用的周期。对于GPU保留,通过使用GPU中断来显示由系统应用生成的轻量消息(例如,弹出窗口),以调度代码来将弹出窗口呈现为覆盖图。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图优选地与屏幕分辨率成比例地缩放。在完整的用户界面被并发系统应用使用的情况下,优选地使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率,也就不会引起TV重新同步。在多媒体控制台100引导且系统资源被保留之后,就执行并发系统应用来提供系统功能。系统功能被封装在一组在上述所保留的系统资源中执行的系统应用中。操作系统内核标识是系统应用线程而非游戏应用线程的线程。系统应用优选地被调度为在预定时间并以预定时间间隔在CPUlOl上运行,以便为应用提供一致的系统资源视图。进行调度是为了把由在控制台上运行的游戏应用所引起的高速缓存分裂最小化。当并发系统应用需要音频时,则由于时间敏感性而异步调度音频处理给游戏应用。多媒体控制台应用管理器(如下所述)在系统应用活动时控制游戏应用的音频水平(例如,静音、衰减)。输入设备(例如,控制器142(1)和142()由游戏应用和系统应用共享。输入设备不是所保留的资源,但却在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器优选地控制输入流的切换,而无需知道游戏应用的知识,并且驱动程序维护关于焦点切换的状态信息。照相机26J8和捕获设备20可以为控制台100定义额外的输入设备。图;3B示出了计算环境220的另一示例性实施方式,它可以是用来解释目标识别、分析与跟踪系统中的一个或多个位置和动作的图1A-2中示出的计算环境12。计算系统环境220只是合适的计算环境的一个示例,并且不旨在对所公开的主题的使用范围或功能提出任何限制。也不应该将计算环境220解释为对示例性操作环境220中示出的任一组件或其组合有任何依赖性或要求。在一些实施方式中,各种所描绘的计算元件可包括被配置成实例化本发明的特定方面的电路。例如,本公开中使用的术语电路可包括被配置成通过固件或开关来执行功能的专用硬件组件。在其他示例实施方式中,术语电路可包括通过体现可操作以执行功能的逻辑的软件指令配置的通用处理单元、存储器等等。在其中电路包括硬件和软件的组合的示例实施方式中,实施者可以编写体现逻辑的源代码,且源代码可以被编译为可以由通用处理单元处理的机器可读代码。因为本领域技术人员可以明白现有技术已经进化到硬件、软件或硬件/软件组合之间几乎没有差别的地步,因而选择硬件或是软件来实现具体功能是留给实现者的设计选择。更具体而言,本领域技术人员可以明白软件进程可被变换成等价的硬件结构,而硬件结构本身可被变换成等价的软件进程。因此,是硬件实现还是软件实现的选择是设计选择之一并留给实现者。在图;3B中,计算环境220包括通常包括各种计算机可读介质的计算机Ml。计算机可读介质可以是能由计算机241访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。系统存储器222包括以诸如R0M223和RAM260之类的易失性和/或非易失性存储器的形式存在的计算机存储介质。基本输入/输出系统224(BIOS)包括如在启动时帮助在计算机Ml内的元件之间传输信息的基本例程,它通常储存在R0M223中。RAM260通常包含处理单元259可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例而非限制,图3B示出了操作系统225、应用程序226、其他程序模块227,以及程序数据228。图:3B还包括具有用于高速和高分辨率的图形处理和存储的相关联的视频存储器230的图形处理器单元(GPU)229。GPU229可通过图形接口231连接到系统总线221。计算机241还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。只作为示例,图3B示出了读写不可移动、非易失性磁性介质的硬盘驱动器238,读写可移动、非易失性磁盘邪4的磁盘驱动器239,以及读写诸如CDROM或其他光学介质之类的可移动的,非易失性光盘253的光盘驱动器M0。可以在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器238通常由不可移动存储器接口,诸如接口234连接至系统总线221,磁盘驱动器239和光盘驱动器240通常由可移动存储器接口,诸如接口235连接至系统总线221。上面所讨论的并且在图IBB中所示出的驱动器以及它们的相关联的计算机存储介质,为计算机Ml提供了计算机可读的指令、数据结构、程序模块及其他数据的存储。例如,在图:3B中,硬盘驱动器238被示为存储了操作系统258、应用程序257,其他程序模块256,以及程序数据255。注意,这些组件可以与操作系统225、应用程序226、其他程序模块227和程序数据2相同,也可以与它们不同。在此给操作系统258、应用程序257、其他程序模块256、以及程序数据255提供了不同的编号,以说明至少它们是不同的副本。用户可以通过诸如键盘251和指示设备252(通常被称为鼠标、轨迹球或触摸板)之类的输入设备向计算机Ml中输入命令和信息。其他输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等等。这些和其他输入设备通常通过耦合至系统总线的用户输入接口236连接至处理单元259,但也可以由其他接口和总线结构,诸如并行端口、游戏端口或通用串行总线(USB)来连接。照相机沈、观和捕获设备20可以为控制台100定义额外的输入设备。监视器242或其他类型的显示设备也通过接口,诸如视频接口232,连接至系统总线221。除监视器之外,计算机还可以包括可以通过输出外围接口233连接的诸如扬声器244和打印机243之类的其他外围输出设备。计算机241可以使用到诸如远程计算机246之类的一个或多个远程计算机的逻辑连接在联网环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他公共网络节点,通常包括上文相对于计算机241所描述的许多或全部元件,但是图:3B中只示出了存储器设备对7。图:3B中所描绘的逻辑连接包括局域网(LAN)245和广域网(WAN049,但是,也可以包括其他网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。当在LAN联网环境中使用时,计算机241通过网络接口或适配器237连接至LAN245.当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN249建立通信的其他装置。调制解调器250可以是内置或外置的,它可以经由用户输入接口236或其他适当的机制连接至系统总线221。在联网环境中,相对于计算机241所描述的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图3B示出了驻留在存储器设备247上的远程应用程序M8。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其他手段。图4A描绘了可从捕捉设备20生成的用户18的示例骨架映射。在该实施方式中,标识出各种关节和骨骼每只手302、每个前臂304、每个肘306、每个大臂308、每个肩310、每个髋312、每条大腿314、每个膝316、每条小腿318、每个足320、头322、躯干324、脊椎的顶部3和底部328以及腰330。在跟踪更多点的情况下,可标识出附加的特征,比如手指或脚趾的骨骼和关节,或脸部的各个特征,如鼻和眼。如上文所指出的,本技术可以将两个或更多捕捉设备20同步在一起,以提供合成的音频和/或图像映射,供游戏或其他应用程序使用。在各实施方式中,可以将捕捉设备20置于待捕捉的场景周围的位置,其中,捕捉设备之间的间隔和朝向是未知的。在本技术的第一方面,通过同步引擎180和捕捉设备校准引擎182,将捕捉设备20相对于彼此以及相对于它们正在捕捉的场景进行校准。现在将参考图5的高级别流程图来说明引擎180和182的操作。在步骤400中,启动系统10。此时,捕捉设备20开始捕捉场景的数据,并将它传输到计算环境12。由捕捉设备20捕捉到的场景可以不是静态的。用户和对象可能进入和离开场景。如此,为了校准不同的捕捉设备20,本技术的各实施方式在步骤402中时间同步从不同的捕捉设备的照像机接收到的图像数据,以将时间作为变量删除。这样,校准引擎182可以对来自不同的设备20的在相同时间捕捉到的图像数据执行其分析。由计算设备12中的同步引擎180执行同步步骤402。现在将参考图6的流程图来描述涉及步骤402的进一步的细节。下面的描述可以适用于从不同的捕捉设备20的深度照像机沈和RGB照像机观接收到的数据的同步。如下面所说明的,当将不同的捕捉设备20彼此校准时,本技术的各实施方式使用深度照像机数据和RGB照像机数据两者。因此,在这样的实施方式中,可以将给定捕捉设备20的深度照像机沈和RGB照像机观彼此进行同步,也将它们与其他捕捉设备20的深度照像机沈和RGB照像机观同步。如此,所有捕捉设备20中的所有照像机沈和观都可以同步在一起。在各实施方式中,虽然困难得多,但是,在校准不同的捕捉设备20时,校准引擎182使用仅仅来自深度照像机的数据或仅仅来自RGB照像机的数据也是可以的。在这样的实施方式中,同步引擎180可以在步骤402中只同步在校准过程中所使用的照像机。在每一个捕捉设备20内,在步骤420中,由深度照像机和RGB照像机捕捉场景信息的帧。在步骤424中,将每一个捕捉设备的深度和RGB帧数据传输到计算环境12。在步骤426中,用计算环境12中的单个主时钟对传入的深度/RGB数据加上时间戳。应该理解,对于给定捕捉设备,在步骤426中,可以在与RGB帧数据不同的时间,生成和发送深度帧数据。如果是,对于数据的给定帧,来自给定捕捉设备的深度和RGB帧数据在计算环境12将不会具有相同时间戳。在步骤430中,同步引擎180在从所有设备接收到的帧数据中查看给定帧编号。通过使用给定帧的这样的数据的时间戳,以及每一个照像机的已知的分辨率,同步引擎确定来自生成数据的每一个设备的深度和RGB数据的所需的时间偏移。从此,同步引擎可以确定同步所有捕捉设备中的每一个深度和RGB设备时所需的调整。同步引擎可以选择来自单个设备的帧数据(例如,生成该帧的第一数据的设备)的时间戳作为参考,并将该时间戳设置为参考时间戳。然后,可以将所有其他设备的帧数据调整到参考时间戳。可另选地,同步引擎可以生成内部时钟参考,并将对于所有帧数据的调整设置为内部时钟参考。一旦在步骤430中确定了对于每一个设备的调整,同步引擎可以在步骤434中向每一个设备发送命令,以调整该设备生成其帧数据的速率。有各种机制可以用于调整帧数据的生成。在一个实施方式中同步引擎可以添加或减去生成帧数据的深度设备和RGB设备的消隐间隔,以便在相同时间生成和发送来自所有捕捉设备的所有帧数据。如果同步引擎180需要让来自一个设备的帧更快地到达,例如,为避免缓冲区下溢,它可以向该设备发送命令以缩短该设备的消隐间隔。如果同步引擎180需要让一个设备的帧数据稍后生成,例如,为避免缓冲区上溢,它可以增大该设备的垂直消隐间隔。在2010年5月3日提出的申请人的共同待审的标题为“HeterogeneousImageSensor"的美国专利申请系列No.12/772,802中公开了涉及步骤402中的同步引擎180的操作的进一步的细节,该申请以引用的方式全部并入本文中。给定此处的公开,本领域的技术人员将理解可以用于同步不同的深度和RGB设备用于校准过程的各种其他操作。当捕捉设备20正在随着用户和/或对象进入和离开场景而捕捉动态场景时,可以使用同步步骤作为初始捕捉设备校准过程的一部分。在更进一步的实施方式中,可能已知没有出入场景的移动。在这样的实施方式中,可以省略初始校准过程的同步步骤。例如,系统10的操作系统可以具有校准例程,该例程引导用户完成校准过程。在这样的实施方式中,当在校准捕捉设备20时,校准例程可以告诉用户静止不动和/或只在某些时间和以定义的方式移动。在这样的实施方式中,可以可任选地省略与校准过程相关联的同步步骤。在在校准过程中省略的情况下,在校准过程之后,仍可以使用同步步骤来处理场景缝合过程中的运动,如下面所说明的。在更进一步的实施方式中,还可从初始校准过程省略同步步骤,甚至在有动态移动进出场景的情况下。这样的实施方式可以利用运动矢量来在捕捉点之外的时间预测已捕捉的深度和/或RGB数据点的位置。尽管从计算上来说是困难的,并且是处理密集的,但是,这样的实施方式也是可以的。现在返回到图5,一旦在步骤402中对于数据的移动场景同步了图像数据帧,就可以在步骤404中将捕捉设备彼此校准,并与场景校准。在下面的描述中,从照相机透镜发出的直线被定义为ζ轴,χ轴和1轴分别是与ζ轴的水平和垂直偏移。这种对χ、y和ζ轴的定义仅用作示例,在更进一步的实施方式中,轴可以是不同的朝向。每一个捕捉设备都可以具有不同于其他捕捉设备的X,1,ζ笛卡儿空间。如下面所说明的,一旦校准了所有捕捉设备,就可以定义包括所有捕捉设备20的单个3-D现实世界笛卡尔坐标系统。在各实施方式中,由校准引擎182使用来自不同的捕捉设备的深度信息和RGB信息来执行校准操作。深度照像机提供有关图像中的点的x,y和ζ位置的信息,但是,可以具有低分辨率。RGB照像机不提供ζ方向的深度信息,但是,通常具有高分辨率和用于辨别不连续性或线索的纹理,用于将一个捕捉设备的视图与另一个相关联。因此,本技术的各实施方式可以使用来自捕捉设备的深度和RGB照像机两者来完成校准过程。然而,如上文所指出的,尽管从计算上来说更加密集,并取决于场景中的对象,但是,可以只使用来自捕捉设备中的两个或更多的深度信息,将捕捉设备彼此校准并与场景校准。类似地,尽管从计算上来说更加密集,并取决于场景中的对象,但是,可以只使用来自两个或更多捕捉设备的RGB信息,将设备彼此校准。在例如2007年5月17日发布的标题为“NavigatingImagesUsingImageBasedGeometricAlignmentandObjectBasedControls"的美国专利出版物No.2007/0110338中描述了用于单独使用RGB信息校准照像机视图的技术,该出版物用于微软公司的Wiotosynth图像识别软件的技术中,该出版物以引用的方式全部并入本文中。现在将参考图7的流程图来说明涉及通过校准引擎182使用深度和RGB数据来校准捕捉设备20的实施方式的进一步的细节。在步骤440中,不同的捕捉设备20从场景捕捉深度和RGB图像数据。在步骤442中,将不同的捕捉设备的每一个深度照像机和RGB照像机的照像机视图从以照像机为中心的视图转换成生成照像机特定的正交3-D世界视图。某些深度照像机使用垂直参考系来测量捕捉到的数据。即,照像机在ζ轴方向定义平面,该平面对于远离照像机的对象增大。χ和y维度表示与ζ轴的水平和垂直变化。其他深度照像机使用径向参考系来测量捕捉到的数据。即,照像机测量具有照像机上的第一点(xl,yl,zl)和对象上的第二点(x2,y2,z2)的矢量。不管照像机如何测量其图像数据点,在理想情况下,测量结果中的任何两个相邻的坐标之间的距离都是相同的。然而,由于照相机透镜失真,可能不是这种情况。因此,在步骤442中,校准引擎182可以对于系统10中的深度照像机和RGB照像机两者校正照像机失真。给定照像机(深度或RGB)的失真可以是由照像机制造商所提供的已知属性。如果不是,用于计算照像机的失真的算法是已知的,包括,例如,在照像机的视场内的不同的位置成像诸如棋盘图案之类的已知维度的对象。该图像中的点的照像机视图坐标中的偏离将是照相机透镜失真的结果。一旦知道了透镜失真的程度,就可以通过已知的逆矩阵变换来校正失真,变换导致给定捕捉设备的点云中的点的均勻照像机视图映射。接下来,在步骤446中,校准引擎182可以将由捕捉设备捕捉到的经过失真校正的图像数据点从照像机视图转换为正交3-D世界视图。此正交3-D世界视图是由捕捉设备20在正交X,y,Z笛卡尔坐标系统中捕捉到的所有数据相对于捕捉设备(例如,该捕捉设备可以位于3-D世界视图中的(0,0,0))的点云图。用于将照像机视图转换为正交3-D世界视图的矩阵变换等式是已知的。参见,例如,DavidH.Eberly所著的“3dGameEngineDesignAPracticalApproachToReal-TimeComputerGraphics"(MorganKaufmanPublishers2000年出版),该出版物以引用的方式全部并入本文中。在步骤446中,来自捕捉设备深度照像机沈的数据可以足以构建正交3-D世界视图。然而,在步骤446中,来自捕捉设备RGB照像机观的数据也可以用于构建3-D世界视图。RGB照像机返回数据点的2-D图,如此,从计算上来说更加难以单独地从RGB数据导出3-D世界地图。然而,取决于场景中的对象,可以从RGB数据构建3-D世界地图。例如,参见前面引用的美国专利出版物No.2007/0110338。在步骤446中,系统10中的每一个捕捉设备20都可以构建正交3-D世界视图。在步骤446结束时,给定捕捉设备的数据点的X,y,ζ世界坐标从该捕捉设备的观点来看是静止的,但是不与系统10中的其他捕捉设备的数据点的x,y,z世界坐标相关联。在更进一步的实施方式中,可以在将照像机视图转换为正交3-D世界视图的步骤446之后执行校正照相机透镜失真的步骤。下一个步骤是将不同的捕捉设备20的各种正交3-D世界视图转换为由系统10中的所有捕捉设备20共享的单个总体3-D世界视图。为此,在步骤448中,校准引擎182的各实施方式接下来查找相应的捕捉设备的世界视图的点云中的关键点不连续性或线索,然后,在步骤450中,标识在不同的捕捉设备的不同的点云之间相同的线索。一旦校准引擎182能够判断两个不同的捕捉设备的两个世界视图包括相同线索,在步骤452中,引擎182就能够确定两个捕捉设备相对于彼此以及线索的位置、朝向和焦距。在各实施方式中,并非系统10中的所有捕捉设备20都共享相同共同的线索。然而,只要第一和第二捕捉设备具有共享的线索,并且第二和第三捕捉设备具有共享的线索,校准引擎就能够确定第一、第二以及第三捕捉设备相对于彼此以及单个总体3-D世界视图的位置、朝向以及焦距。对于附加的捕捉设备,同样如此。此过程中的第一步骤448是标识每一个捕捉设备的3-D现实世界视图点云中的线索。线索可以是与邻近点不连续的数据点,因此,在来自不同的捕捉设备的点云之间被轻松地标识。在理想情况下,在每一点云内标识许多这样的线索,它们可以定义一个对象在点云内的边缘和/或角部。图像点云内的其他对象的各方面也可以是线索。存在用于从图像点云标识线索的各种已知算法。在例如Mikolajczyk,K.^PSchmid,C.所著的"APerformanceEvaluationOfLocalDescriptors"(IEEETransactionsonPatternAnalysis&MachineIntelligence,27,10,1615-1630(2005))中阐述了这样的算法,该论文以引用的方式全部并入本文中。利用图像数据检测线索的再一个方法是尺度不变特征变换(SIFT)算法。在2004年3月23日颁发给DavidG.Lowe的标题为“MethodandApparatusforIdentifyingScaleInvariantFeaturesinanImageandUseofSameforLocatinganObjectinanLnage”的美国专利No.6,711,293中描述了SIFT算法,该专利此处以引用的方式全部并入本文中。另一种线索检测器方法是最大限度地稳定致极函数区域(MSER)算法。例如在由J.Matas,0.Chum、M.Urba和T.Pajdla所著的论文“RobustWideBaselineStereoFromMaximallyStableExtremalRegions,,(BritishMachineVisionConference会议记录,第384-396页000)中描述了MSER算法,该论文此处以引用的方式全部并入本文中。在步骤450中,标识在来自两个或更多捕捉设备的点云之间共享的线索。在概念上,在在第一捕捉设备和第一捕捉设备的笛卡尔坐标系统中的线索集合之间存在第一组矢量,并且在第二捕捉设备和第二捕捉设备的笛卡尔坐标系统中的该相同线索集合之间存在第二组矢量的情况下,可以将两个系统相对于彼此解析为包括两个捕捉设备的单个笛卡尔坐标系统。存在用于发现来自两个或更多捕捉设备的点云之间的共享线索的许多已知技术。例如在MSERArya,S.,Mount,D.Μ.,Netanyahu,N.S.,Silverman,R.,禾口Wu,Α.Y.所著的"AnOptimalAlgorithmForApproximateNearestNeighborSearchingFixedDimensions"(JournaloftheACM45,6,891-923(1998))中示出了这样的技术,该论文此处以引用的方式全部并入本文中。可以使用其他技术代替或补充上文引用的Arya等人的最近邻域解决方案,包括,但不限于,散列或上下文相关的散列。在来自两个不同的捕捉设备的点云共享足够大的数量的匹配的线索的情况下,可以估计将两个点云相关联在一起的矩阵,例如,通过随机抽样一致性(RANSAC)或各种其他估算技术。然后,可以删除对于已恢复的基本矩阵的是异常值的匹配。在发现一对点云之间的假设的,几何学上一致的匹配的集合之后,可以将匹配组织成相应的点云的轨道的集合,其中,轨道是点云之间的相互匹配的线索的集合。该集合中的第一轨道可以包含第一点云中的每一共同的线索的投影。该集合中的第二轨道可以包含第二点云中的每一共同的线索的投影。如果相应的点云中的线索构成图的顶点集,并且在每一对匹配的线索之间的图中有边缘,那么,此图的每个连接的分量都包括轨道。然而,与某些连接的分量相关联的轨道可以是不一致的;具体而言,如果轨道包含对于相同图像的一个以上的线索,则它是不一致的。在各实施方式中,如下面所描述的,对于确定相对捕捉设备位置的步骤452,只保留包含至少两个线索的一致的轨道。通过使用步骤448和450中的信息,可以将来自不同的捕捉设备的点云分解成单个正交3-D现实世界视图中的单个点云。相对于此单个点云和单个正交3-D现实世界视图,校准所有捕捉设备的位置和方向。为了一起解析各种点云,分析两个点云的轨道组中的线索的投影。校准引擎182可以根据这些投影确定第一捕捉设备相对于线索的角度,还可以确定第二捕捉设备相对于线索的观点。据此,校准引擎182可以将点云解析为对单个点云和包含线索的单个正交3-D现实世界视图及来自两个点云的其他数据点的最佳估计。对于任何其他捕捉设备,重复此过程,直到单个正交3-D现实世界视图包括所有捕捉设备20。一旦此过程完成,校准引擎可以确定捕捉设备相对于单个正交3-D现实世界视图和彼此的相对位置和方向。校准引擎还可以确定每一个捕捉设备相对于单个正交3-D现实世界视图的焦距。在上文所描述的各实施方式中,可以将捕捉设备20放置在玩游戏空间或场景周围的任何地方,放置设备的位置不必是已知的。如上所述,系统将校准那些位置。在又一实施方式中,当放置在场景周围时,两个或更多捕捉设备的位置和方向相对于彼此可以是已知的。例如,图IC的固定装置23可以被用来固定两个捕捉设备相对于彼此的位置。可以在捕捉设备上放置陀螺仪和/或加速度计来代替固定装置23。在这样的实施方式中,如下面所说明的,可以跳过或简化相对于固定的捕捉设备的校准步骤。尽管上面的组件帮助固定两个或更多捕捉设备相对于彼此的位置,但是,它们可能没有足够的准确性。不同的捕捉设备中的照像机可以具有不同的特征。固定装置23可以在捕捉设备的位置和/或朝向方面具有容差变化。陀螺仪和加速度计可以因漂移或以其他方式可能无法适当地校准。因此,可能需要执行上文所描述的校准步骤,将固定装置23中的两个捕捉设备20当作位于相对于彼此未知的位置。在各实施方式中,可以执行如上文所描述的完全校准。在又一实施方式中,至少具有捕捉设备20相对于彼此的位置的概况可以使校准过程简化。例如,与用于校准位于未知位置的捕捉设备的线索的数量相比,用于校准固定装置中的捕捉设备20的相应的位置的线索的数量可以缩小。由校准引擎182执行的并且上文参考图5到7所描述的校准步骤可以执行一次,在系统10的初始启动时。场景内的用户和对象可以变化,如此,由相应的捕捉设备所生成的点云也可以变化,但是,对照像机相对于彼此的校准可以保持相同。在各实施方式中,校准引擎可以从各种捕捉设备的点云中继续收集关于线索的数据,在校准引擎从两个或更多捕捉设备标识更好的线索的情况下,它可以重复上面的步骤,以图改进对捕捉设备的校准。如下面所描述的,可以将来自各种捕捉设备的场景的视图缝合在一起,可以预期,来自不同的捕捉设备的重叠视图中的共享数据点一般将彼此共同存在。然而,捕捉设备可能被敲击或以别的方式移动,在这样的情况下,共享数据点的对齐将偏离超过预期的误差界限。在这样的情况下,系统可以重复上文所描述的校准步骤,再次将系统10中的捕捉设备彼此校准并与场景校准。一旦校准了捕捉设备的位置,可以在与系统10的正常的交互中使用不同的捕捉设备来捕捉有关场景的数据。将此数据缝合到单个点云中,表示单个视图,并包括来自所有捕捉设备的数据。这样的系统优于常规的单一捕捉设备系统。例如,在单个捕捉设备的视图中的某些区域可能被遮蔽的情况下,当使用多个捕捉设备时,可以降低这种似然率。类似地,玩游戏空间或场景的大小可以被增大。此外,单个捕捉设备利用单个分辨率拍摄一场景,而多个捕捉设备可包括用于捕捉全景的第一广角捕捉设备,而第二捕捉设备可以提供该场景的小部分的高分辨率图像。下面说明了这些特征。在校准之后的正常使用中,可以在步骤460中捕捉来自不同的捕捉设备20的图像数据。由于在正常使用过程中可能会移进和移出场景,在步骤464中,可以将来自每一个照像机的数据帧彼此同步。这里的同步步骤可以与初始校准过程中上文参考图6所描述的相同。如此,在相同时间捕捉在缝合合成图像时所使用的各种照像机的数据。还必须对来自不同的照像机的数据每一个帧校正透镜失真,如上文所描述的,以使得3-D现实世界视图中的任何两个坐标点之间的距离是相等的。在步骤466中,可以对来自每一个照像机(包括深度照像机和RGB照像机)的图像校正失真,例如,如上文参考图7的步骤442所描述的。在步骤468中,缝合引擎184可以获取从不同的捕捉设备捕捉到的经过失真校正的视图,并将它们转换为单个共同的场景视图。具体而言,一旦校准了捕捉设备20,就知道了所有捕捉设备相对于彼此以及场景的位置,可以通过已知矩阵将来自捕捉设备的视图转换为任何观点的场景视图。因此,在步骤468中,将每一个捕捉设备的视图转换为从单个共同的预定义的观点的视图,即,从共同的位置和共同的朝向(pitch、roll和yaw)。将来自给定捕捉设备的RGB数据记录到深度数据,以使得给定捕捉设备的经过转换的视图具有正确的深度和RGB数据。此视图可以是来自其中一个捕捉设备的视图,或者可以是没有被任何捕捉设备捕捉到的任何其他场景视图。一旦被转换为单个共同的观点,可以在步骤470中由缝合引擎184将来自不同的捕捉设备的视图缝合在一起。如所注意的,这种缝合可以涉及将来自一个重叠的捕捉设备的变焦的图像缝合到包括变焦的图像的广角图像上。可另选地,这种缝合可以涉及将来自两个不同的捕捉设备的沿着边界区域重叠的两个图像缝合在一起。图9提供了关于缝合步骤470的更多细节。理论上,应该将来自不同的捕捉设备20的被转换为同一个视图的数据彼此利用正确的色值校准。在步骤480中,缝合引擎可以判断不同的捕捉设备的视图中的重叠点是否对齐。如果是,则在步骤482中,缝合引擎184可以无缝地将图像缝合在一起。然而,如果由于某种原因视图不匹配,则缝合引擎可以按如下方式选择使用一个视图而不使用另一个。在一个实施方式中,在步骤486中,缝合引擎可以给来自不同的捕捉设备20的场景的视图指定加权值。加权值可以基于多个准则,包括捕捉到的场景的该部分的视图的空间位置,生成该视图的照像机的照像机特征,创建该视图的照像机的分辨率,场景内的亮度,照明条件(例如,是指向阳光照射的窗口的捕捉设备,该窗口会不利地影响场景捕捉),以及特定视图中的一个或多个对象是否被遮蔽。关于遮蔽,缝合引擎184知道对象和用户在视图内的3-D位置,因此,可以判断照像机的对第一对象/用户的视图是否被第二对象/用户遮蔽。在向照像机的视图指定加权值时,可以使用其他准则。可以给上面准则中的每一个指定任意权重,更重要的准则得到比次要的准则更高的权重。在步骤486中,可以对于每一个视图,给这些准则指定权重,以对于给定视图,取得一置信度值。在步骤488中,使用具有最高置信度值的视图。通过使用所选视图,在步骤490中,可以将各视图缝合在一起。在来自第一捕捉设备的视图变换到另一个捕捉设备的视图的情况下,可以使用各种已知的混合和修勻技术来提供平稳并且无缝的变换。参见前面引用的美国出版物No.2007/011033。此外,还可能在场景内存在间隙,不会被任何一个捕捉设备捕捉到。用于使用来自与这些间隙交界的图像的深度和图像数据来填充这些间隙的技术是已知的。在前面引用的美国出版物No.2007/011033中还公开了这样的技术。返回到图8,在将来自所有照像机的场景的协调并且合成的图像的点云缝合在一起之后,可以在步骤472中,由在计算环境12上运行的应用程序呈现图像。代替或补充呈现合成图像,应用程序可以以各种其他方式中的任何一种,来使用点云数据,如由应用程序所确定的。在更进一步的实施方式中,应该理解,可以将来自各种捕捉设备的原始数据馈送到在计算环境12上运行的应用程序,供该应用程序按如上文所描述的方式或以其他方式进行处理。除图像数据之外,对多个捕捉设备的使用和同步会改进来自场景的音频的声音质量、噪声消除和/或声音定位。如上文所指出的,每一个图像捕捉设备20都可包括话筒阵列30。阵列中的话筒在捕捉设备内彼此隔开,但是,在改进基线声音质量、噪声消除和声音定位方面,不如分离的捕捉设备20中的话筒阵列那样有效。现在参考图10,可以在步骤500中从各种捕捉设备20中的话筒阵列中捕捉音频数据。用于区别由话筒拾取的声音以判断是否声音中的一个或多个是人的声音的技术是已知的。话筒阵列30还可包括诸如高通滤波器之类的各种已知的滤波器,以减弱可以由话筒阵列30检测到的低频噪声。阵列30还能够确定感觉到的音频源相对于彼此的朝向,并能够使用声音定位技术来计算每一个音频源相对于话筒阵列的角度。如此,在步骤504中,可以使用声源定位引擎186来确定场景中的音频数据的源的位置。声源定位引擎186可以使用各种已知的声音定位技术。一个实施方式可以使用到达时间差(TDOA)技术,该技术的第一步骤是确定阵列30中的不同的话筒的不同的话筒对之间的TDOA的集合。即,对于话筒对的集合中的每一个,确定话筒对中的每一个话筒中的声源信号的到达之间的相对时间差。例如,可以按如下方式确定测量一个声源的位置s的两个话筒i和j的到达时间差TDOAi,j=(ιs-mi|-1s_mj|)/c其中,mi是第i个话筒的位置,mj是第j个话筒的位置,而c是声速。TDOA技术还包括第二步骤使用已确定的TDOA数据和在初始捕捉设备校准阶段习得的话筒阵列几何形状来估计声源的位置。此第二步骤可以通过各种已知的方法来执行,包括,例如,极大似然法、三角形法、球状交会法,以及球状内插法。在场景周围的不同的位置具有各种分隔的话筒,大大地增强了上文所描述的系统定位声音的源的能力。在步骤508中,成像设备可以指出,在被指出是声源的位置处有单个人。在这样的情况下,假设在附近没有其他人或声音源,声源定位引擎186可以积极地标识该声音来自该位置处的该人。这是标识用户的声音的一种方法,然后,可以将该声音存储起来,以供将来参考。同样,声源定位引擎186可以判断,声音来自其中没有用户、在计算环境上运行的应用程序中所使用的扬声器或其他声源的位置。在声源被判断为与在计算环境12上运行的应用程序不相关的情况下,声源定位引擎186可以将该声音当作噪声,并在步骤510中消除声音。TDOA方法是可以用于定位感觉到的声音的源的许多已知方法中的一种。其他的包括基于转向的波束形成器的技术和高分辨率基于谱估计的技术。关于用于声音定位的话筒系统的进一步的细节可以在例如标题为“MethodandApparatusforPassiveAcousticSourceLocalizationforVideoCameraSteeringApplications,,的美国专利No.6,826,沘4,以及在H.Wang和P.Chu所发表的论文“VoiceSourceLocalizationforAutomaticCameraPointingSystemInVideoconferencing"(Proc.IEEEInt.Conf.Acoustics,Speech,andSignalProcessing(ICASSP),Munich,Germany,Apr.1997,PP.187-190)中找到。上面的专利和论文此处以引用的方式全部并入本文中。除上文所描述的声源定位技术之外(可能通过转向波束形成执行),波束形成技术也可以用于各实施方式中,以在步骤512中改进接收到的信号的信噪比。一旦标识了声信号的源,并计算出了其与捕捉设备中的各种话筒的距离,可以使用波束形成技术来加强信噪比。具体而言,一旦确定了从源到各种话筒的距离,对于特定elevation和系统10操作时所处的温度,到达每一话筒的信号可能会相移相当于声音的速度,结果,信号同相地到达每一个话筒。通过此波束形成过程,并通过另外增强远离声源的话筒的增益,相位可以被移位,以使得在话筒中接收到时所有信号波前是对齐的,而信号相对于该信号中的任何噪声是加强的。如上文所描述的波束形成以改进信噪比要求紧密度容限控制以及知道波束形成过程中所使用的相应的话筒的位置,例如,在几个毫米内。紧密地控制时钟时间选择以为每一个话筒提供正确的相位位移同样重要。由于许多游戏系统没有执行符合这样的准确的标准的波束形成,在本技术的各实施方式中,可以跳过步骤512,如由图10中的虚线所指示的。前面的对本发明的系统的详细描述只是为了说明和描述。它不是详尽的公开或将本发明的系统限于所公开的准确的形式。鉴于上述教导,许多修改和变型都是可能的。所描述的实施方式只是为了最好地说明本发明的系统的原理以及其实际应用,从而使精通本技术的其他人在各种实施方式中最佳地利用本发明的系统,适合于特定用途的各种修改也是可以的。本发明的系统的范围由所附的权利要求进行定义。权利要求1.一种用于合成来自多个源00)的关于场景的信息的方法,包括a)从第一源OO)和第二源OO)接收(步骤440,460)场景信息,所述第一和第二源(20)在空间上彼此并与所述场景是分开的;b)根据所述场景信息以及由所述第一和第二源从所述场景中共同检测到的一个或多个线索来确定(404)所述第一和第二源00)中的每一个的位置;c)基于在所述步骤b)中确定的所述第一和第二源OO)的位置,以及从所述第一和第二源接收到的信息来创建所述场景的表示(步骤470)。2.如权利要求1所述的方法,其特征在于,接收场景信息的所述步骤a)包括从所述第一和第二源接收图像数据。3.如权利要求2所述的方法,其特征在于,从所述第一和第二源接收图像数据的所述步骤a)包括将从所述第一源接收到的所述图像数据与从所述第二源接收到的所述图像数据进行时间同步的步骤。4.如权利要求2所述的方法,其特征在于,还包括在确定所述第一和第二源中的每一个的所述位置的所述步骤b)之前校正来自所述第一和第二源的所述图像数据中的透镜失真的步骤d)。5.如权利要求1所述的方法,其特征在于,所述步骤c)还包括基于将来自所述第一和第二源的所述场景信息转换为包括所述第一和第二源的公共参考系来创建所述场景的表示的步骤。6.如权利要求1所述的方法,其特征在于,所述步骤b)包括根据所述场景信息内所包括的图像深度数据或RGB数据来确定所述第一和第二源中的每一个的所述位置的步骤。7.如权利要求1所述的方法,其特征在于,所述步骤a)包括从所述场景接收音频信号的步骤,所述方法还包括部分地基于确定所述第一和第二源中的每一个的位置的所述步骤b)来确定所述音频信号的位置的步骤e)。8.如权利要求1所述的方法,其特征在于,所述第一和第二源的位置相对于彼此是固定的。9.一种用于合成来自多个源OO)的关于场景的信息的方法,包括a)从第一源OO)和第二源OO)接收场景信息(步骤440,460),所述第一源QO)的相对于所述第二源OO)的初始位置是未知的,所述第一和第二源OO)在空间上彼此并与所述场景是分开的,所述场景信息包括图像深度数据和RGB数据中的至少一个;b)根据所述图像数据和RGB数据中的至少一个,以及来自所述场景的由所述第一和第二源共享的所述场景信息,确定(404)所述第一和第二源OO)中的每一个的位置;c)基于在所述步骤b)中确定的所述第一和第二源OO)的所述位置,以及从所述第一和第二源接收到的信息,创建所述场景的表示(步骤470)。10.如权利要求9所述的方法,其特征在于,所述步骤C)包括将来自所述第一源的场景表示的第一部分与来自所述第二源的场景表示的第二部分缝合在一起的步骤。11.如权利要求9所述的方法,其特征在于,所述步骤a)包括从所述场景接收音频信号的步骤,所述方法还包括部分地基于确定所述第一和第二源中的每一个的位置的所述步骤b)来确定所述音频信号的位置的步骤e)。12.一种用于合成来自多个捕捉设备(20)的游戏应用程序中的玩游戏空间的信息的方法,所述多个捕捉设备00)中的捕捉设备OO)包括深度照像机06)、RGB照像机08)和至少一个话筒(30),所述方法包括a)从第一捕捉设备OO)和第二捕捉设备OO)接收(步骤440,460)图像深度数据和RGB深度数据,来自所述第一和第二捕捉设备OO)的所述图像深度数据和所述RGB深度数据在一起进行时间同步(步骤40,所述第一和第二捕捉设备OO)在空间上彼此并与所述玩游戏空间是分开的;b)根据所同步的图像深度数据和RGB数据的组合,以及由所述第一和第二捕捉设备从所述玩游戏空间共同检测到的多个线索,确定(步骤404)所述第一和第二捕捉设备OO)中的每一个的位置和方向;c)基于在所述步骤b)中确定的所述第一和第二捕捉设备OO)的所述位置,以及从所述第一和第二捕捉设备接收到的所述图像深度数据和RGB深度数据,创建所述玩游戏空间的表示(步骤468)。d)将来自所述第一捕捉设备的所述玩游戏空间表示的第一部分与来自所述第二捕捉设备的所述玩游戏空间表示的第二部分缝合(步骤47)在一起;以及e)在与所述第一和第二捕捉设备相关联的显示器上呈现(步骤47所述玩游戏空间的表示。13.如权利要求12所述的方法,其特征在于,还包括以下步骤通过定位所述第一和第二捕捉设备检测到的声音的源并经由所述图像深度数据和/或所述RGB数据确定所述用户在所述声音的源处的存在,将所述声音与用户相关联。14.如权利要求12所述的方法,其特征在于,还包括以下步骤使用来自所述第一捕捉设备的所述图像深度数据和RGB数据来填充所述玩游戏空间的表示中的所述第二捕捉设备的视图中被遮蔽的区域。15.如权利要求12所述的方法,其特征在于,呈现所述玩游戏空间的表示的所述步骤包括以下步骤从没有被所述第一或第二捕捉设备或多个捕捉设备中的任何一个捕捉到的观点呈现所述玩游戏空间的表示。全文摘要公开了用于合成从聚焦于单个场景的多个音频和可视源接收到的信息的系统和方法。该系统可以基于在捕捉设备的图像数据中标识的共同的线索集合来确定捕捉设备的位置。由于场景常常可以具有移进移出场景的用户和对象,可以使来自多个捕捉设备的数据在时间上同步,以确保来自音频和可视源的数据在相同时间提供同一场景的数据。可以一起协调和吸收来自多个源的音频和/或可视数据,以改进系统的从场景解释音频和/或可视方面的能力。文档编号G06F19/00GK102289564SQ201110161330公开日2011年12月21日申请日期2011年6月2日优先权日2010年6月3日发明者A·A-A·基普曼,D·易,J·A·塔迪夫,K·S·佩雷申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1