用于移除图像的背景的系统和方法

文档序号:7913875阅读:201来源:国知局
专利名称:用于移除图像的背景的系统和方法
用于移除图像的背景的系统和方法
背景技术
诸如计算机游戏、多媒体应用等的许多计算应用使用控制来允许用户操纵游戏角色或应用的其他方面。通常使用例如控制器、遥控器、键盘、鼠标等等来输入这样的控制。 不幸的是,这些控制可能是难以学习的,由此造成了用户和这些游戏及应用之间的障碍。此外,这些控制可能与这些控制所用于的实际游戏动作或其他应用动作不同。例如,使得游戏角色挥动棒球球棒的游戏控制可能不与挥动棒球球棒的实际运动相对应。

发明内容
此处所公开的是用于跟踪场景中的用户的系统和方法。例如,可以接收或观察诸如场景的深度图像等图像。可基于深度图像生成体素(voxel)的网格(grid)以便降采样该深度图像。例如,深度图像可包括多个像素,这些像素可被划分成部分或块。然后可为每个部分或块生成体素,使得所接收的深度图像被降采样到体素的网格中。可以确定并移除或丢弃体素的网格的背景,使得与前景物体(诸如人类目标)相关联的一个或多个体素可以被隔离。根据一个实施例,目标识别、分析和跟踪系统可以确定背景。为了确定背景,目标识别、分析和跟踪系统可以确定体素的网格中可能正在移动和未移动的物体。目标识别、分析和跟踪系统可以丢弃可能未在移动的作为背景的物体。目标识别、分析和跟踪系统随后可以处理与可被丢弃的人类目标相关联的体素。 例如,目标识别、分析和跟踪系统可以为被隔离的人类目标确定一个或多个肢端,可以确定这些肢端的尺寸,可以为被隔离的人类目标生成模型等。提供本发明内容以便以简化形式介绍将在以下具体实施方式
中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键或必要特征,也不旨在用于限定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部分中提及的任何或所有缺点的实现。


图IA和IB示出了目标识别、分析和跟踪系统的示例实施例,其中用户正在玩游戏。图2示出了可在目标识别、分析和跟踪系统中使用的捕捉设备的示例实施例。图3示出可用于解释目标识别、分析和跟踪系统中的一个或多个姿势和/或动画化目标识别、分析和跟踪系统所显示的化身或屏幕上角色的计算环境的示例实施例。图4示出可用于解释目标识别、分析和跟踪系统中的一个或多个姿势和/或动画化目标识别、分析和跟踪系统所显示的化身或屏幕上角色的计算环境的另一示例实施例。图5描绘了用于处理场景的深度信息的示例方法的流程图。图6示出可被捕捉或观察的深度图像的示例实施例。图7A-7B示出被降采样的深度图像的一部分的示例实施例。说明件实施例的具体实施方式
图IA和IB示出目标识别、分析和跟踪系统10的配置的示例实施例,其中用户18 正在玩拳击游戏。在一示例实施例中,目标识别、分析和跟踪系统10可用于识别、分析和/ 或跟踪诸如用户18等的人类目标。如图IA所示,目标识别、分析和跟踪系统10可以包括计算环境12。计算环境12 可以是计算机、游戏系统或控制台等等。根据一示例实施例,计算环境12可包括硬件组件和/或软件组件,使得计算环境12可用于执行诸如游戏应用、非游戏应用等应用。在一个实施例中,计算环境12可以包括处理器,诸如标准化处理器、专用处理器、微处理器等可以执行指令的处理器,所述指令包括例如用于接收深度图像的指令、基于深度图像生成体素的网格的指令、确定网格中的一个或多个体素是否与背景相关联的指令、丢弃与背景相关联的一个或多个体素以隔离与深度图像中的前景物体相关联的体素的指令、用被隔离的前景物体来处理网格的指令,这将在下面进行更加详细的描述。如图IA所示,目标识别、分析和跟踪系统10还可包括捕捉设备20。捕捉设备20可以是例如照相机,所述照相机可用于在视觉上监视诸如用户18等的一个或多个用户从而可以捕捉、分析并跟踪一个或多个用户所执行的姿势和/或移动,来执行应用程序中的一个或多个控制命令或动作和/或动画化化身或屏幕上人物,如将在下面更详细地描述的。根据一个实施例,目标识别、分析和跟踪系统10可连接到可向诸如用户18等用户提供游戏或应用视觉和/或音频的视听设备16,如电视机、监视器、高清电视机(HDTV)等。 例如,计算环境12可包括诸如图形卡等视频适配器和/或诸如声卡等音频适配器,这些适配器可提供与游戏应用、非游戏应用等相关联的视听信号。视听设备16可从计算环境12接收视听信号,然后可向用户18输出与该视听信号相关联的游戏或应用视觉和/或音频。根据一个实施例,视听设备16可经由例如,S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA 电缆等连接到计算环境12。如图IA和IB所示,目标识别、分析和跟踪系统10可用于识别、分析和/或跟踪诸如用户18等的人类目标。例如,可使用捕捉设备20来跟踪用户18,从而可以捕捉用户18 的姿势和/或移动来动画化化身或屏幕上人物,和/或可将用户18的姿势和/或移动解释为可用于影响计算环境12所执行的应用的控制命令。因此,根据一个实施例,用户18可移动他或她的身体来控制应用和/或动画化化身或屏幕上人物。如图IA和IB所示,在一示例性实施例中,在计算环境12上执行的应用可以是用户18可能正在玩的拳击游戏。例如,计算环境12可使用视听设备16来向用户18提供拳击对手38的视觉表示。计算环境12还可使用视听设备16来提供用户18可通过他的或她的移动来控制的玩家化身40的视觉表示。例如,如图IB所示,用户18可以在物理空间中挥拳以致使玩家化身40在游戏空间中挥拳。因此,根据一示例实施例,目标识别、分析和跟踪系统10的计算环境12和捕捉设备20可用于识别和分析物理空间中用户18的重拳从而使得该重拳可被解释为对游戏空间中的玩家化身40的游戏控制和/或该重拳的运动可用于动画化游戏空间中的玩家化身40。用户18的其他移动也可被解释为其他控制命令或动作,和/或用于动画化玩家化身,如上下快速摆动、闪避、滑步、封堵、用拳猛击或挥动各种不同的有力重拳的控制命令。 此外,某些移动可被解释为可对应于除控制玩家化身40之外的动作的控制。例如,在一个实施例中,玩家可使用移动来结束、暂停或保存游戏、选择级别、查看高分、与朋友交流等。根据另一实施例,玩家可使用移动来从主用户界面选择游戏或其他应用程序。因此,在示例实施例中,用户18的全范围运动可以用任何合适的方式来获得、使用并分析以与应用程序进行交互。在各示例实施例中,诸如用户18等人类目标可持有一物体。在这些实施例中,电子游戏的用户可手持物体,使得可使用玩家和物体的运动来调整和/或控制游戏的参数。 例如,可以跟踪并利用玩家手持球拍的运动来控制电子运动游戏中的屏幕上球拍。在另一示例实施例中,可以跟踪并利用玩家手持物体的运动来控制电子格斗游戏中的屏幕上武
ο根据其他示例实施例,目标识别、分析和跟踪系统10还可用于将目标移动解释为游戏领域之外的操作系统和/或应用控制。例如,事实上操作系统和/或应用程序的任何可控方面都可由诸如用户18等目标的移动来控制。图2示出可在目标识别、分析和跟踪系统10中使用的捕捉设备20的示例实施例。 根据一示例实施例,捕捉设备20可被配置成经由任何合适的技术,包括例如飞行时间、结构化光、立体图像等来捕捉包括深度图像的带有深度信息的视频,该深度信息可包括深度值。根据一实施例,捕捉设备20可将深度信息组织为“Z层”或者可与从深度相机沿其视线延伸的Z轴垂直的层。如图2所示,捕捉设备20可包括图像相机组件22。根据一个示例性实施例,图像相机组件22可以是可捕捉场景的深度图像的深度相机。深度图像可以包括所捕捉场景的二维O-D)像素区域,其中2-D像素区域中的每个像素都可表示深度值,比如例如所捕捉场景中的对象距相机的以厘米、毫米等为单位的长度或距离。如图2所示,根据一示例性实施例,图像相机组件22可以包括可用于捕捉场景的深度图像的顶光组件24、三维(3-D)相机沈、和RGB相机观。例如,在飞行时间分析中,捕捉设备20的顶光组件M可将红外光发射到场景上,并且随后可使用传感器(未示出)、用例如3-D相机沈和/或RGB相机28来检测从场景中的一个或多个目标和物体的表面反向散射的光。在一些实施例中,可以使用脉冲红外光,使得可以测量出射光脉冲与相应入射光脉冲之间的时间,并且将其用于确定从捕捉设备20到场景中的目标或物体上的特定位置的物理距离。附加地,在其他示例性实施例中,可以将出射光波的相位与入射光波的相位相比较来确定相移。然后可以使用该相移来确定从捕捉设备到目标或物体上的特定位置的物理距离。根据另一示例性实施例,可以使用飞行时间分析来通过经由包括例如快门式光脉冲成像在内的各种技术分析反射光束随时间的强度来间接地确定从捕捉设备20到目标或物体上的特定位置的物理距离。在另一示例性实施例中,捕捉设备20可以使用结构化光来捕捉深度信息。在这样的分析中,图案化光(即被显示为诸如网格图案或条纹图案之类的已知图案的光)可以经由例如顶光组件M被投影到场景上。在落到场景中的一个或多个目标或物体的表面上以后,作为响应,图案可以变为变形的。图案的这种变形可由例如3-D相机沈和/或RGB相机观来捕捉,然后可被分析来确定从捕捉设备到目标或物体上的特定位置的物理距离。根据另一实施例,捕捉设备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 可以经由通信链路36向捕捉设备20提供时钟,该时钟可用于确定何时捕捉例如场景。另外,捕捉设备20可经由通信链路36向计算环境12提供深度信息和由例如3-D 相机沈和/或RGB相机观捕捉的图像,和/或可由捕捉设备20生成的骨架模型。计算环境12然后可使用该模型、深度信息、以及所捕捉的图像来例如控制诸如游戏或字处理程序等的应用和/或动画化化身或屏幕上人物。例如,如图2所示,计算环境12可包括姿势库 190。姿势库190可包括姿势过滤器集合,每一姿势过滤器包括关于骨架模型可执行(在用户移动时)的姿势的信息。可将由相机26J8和捕捉设备20捕捉的骨架模型形式的数据以及与其相关联的移动与姿势库190中的姿势过滤器进行比较来标识用户(如骨架模型所表示的)何时执行了一个或多个姿势。那些姿势可与应用的各种控制相关联。因此,计算环境12可使用姿势库190来解释骨架模型的移动并基于该移动来控制应用。图3示出可用于解释目标识别、分析和跟踪系统中的一个或多个姿势和/或动画化目标识别、分析和跟踪系统所显示的化身或屏幕上的人物的计算环境的示例实施例。上面参考图1A-2所描述的诸如计算环境12等计算环境可以是诸如游戏控制台等多媒体控制台100。如图3所示,多媒体控制台100具有含有一级高速缓存102、二级高速缓存104和闪存R0M(只读存储器)106的中央处理单元(CPU) 101。一级高速缓存102和二级高速缓存104临时存储数据,并且因此减少存储器访问周期的数量,由此改进处理速度和吞吐量。 CPU 101可被提供为具有一个以上的核,并且由此具有附加的一级高速缓存102和二级高速缓存104。闪存ROM 106可存储在多媒体控制台100通电时引导过程的初始阶段期间加载的可执行代码。图形处理单元(GPU) 108和视频编码器/视频编解码器(编码器/解码器)114形
7成用于高速和高分辨率图形处理的视频处理流水线。数据经由总线从图形处理单元108输送到视频编码器/视频编解码器114。视频处理流水线向A/V(音频/视频)端口 140输出数据,以便传输到电视机或其他显示器。存储器控制器110连接到GPU 108以方便处理器访问各种类型的存储器112,诸如但不局限于RAM(随机存取存储器)。多媒体控制台100包括较佳地在模块118上实现的I/O控制器120、系统管理控制器122、音频处理单元123、网络接口控制器124、第一 USB主控制器126、第二 USB控制器1 和前面板I/O子部件130。USB控制器126和1 用作外围控制器142(1)-142(2), 无线适配器148、以及外置存储器设备146(例如,闪存、外置⑶/DVD ROM驱动器、可移动介质等)的主机。网络接口 1 和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的访问,并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线或无线适配器组件中的任何一种。提供系统存储器143来存储在引导过程期间加载的应用数据。提供媒体驱动器 144,并且其可包括DVD/CD驱动器、硬盘驱动器,或其他可移动媒体驱动器等。媒体驱动器 144可内置或外置于多媒体控制台100。应用数据可经由媒体驱动器144访问,以供多媒体控制台100执行、回放等。媒体驱动器144经由诸如串行ATA总线或其他高速连接(例如 IEEE 1394)等总线连接到I/O控制器120。系统管理控制器122提供与确保多媒体控制台100的可用性相关的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的相应音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口 140,以供外置音频播放器或具有音频能力的设备再现。前面板I/O子部件130支持暴露在多媒体控制台100的外表面上的电源按钮150 和弹出按钮152、以及任何LED (发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台100的组件供电。风扇138冷却多媒体控制台100内的电路。CPU 101、GPU 108、存储器控制器110、以及多媒体控制台100内的各种其他组件经由一条或多条总线互连,该总线包括串行和并行总线、存储器总线、外围总线、以及使用各种总线体系结构中的任一种的处理器或局部总线。作为示例,这些架构可以包括外围部件互连(PCI)总线、PCI-Express总线等。当多媒体控制台100通电时,应用数据可从系统存储器143加载到存储器112和/ 或高速缓存102、104中,并且可在CPU 101上执行。应用可在导航到多媒体控制台100上可用的不同媒体类型时呈现提供一致的用户体验的图形用户界面。在操作中,媒体驱动器 144中所包含的应用和/或其他媒体可从媒体驱动器144启动或播放,以将附加功能提供给多媒体控制台100。多媒体控制台100可通过简单地将该系统连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台100允许一个或多个用户与该系统交互、看电影、或听音乐。然而,在通过网络接口 1 或无线适配器148可用的宽带连接集成的情况下,多媒体控制台100还可作为更大网络社区中的参与者来操作。当多媒体控制台100通电时,可以保留设定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可包括存储器的保留量(诸如,16MB)、CPU和GPU周期的保留量(诸如,5% )、网络带宽的保留量(诸如,81AS),等等。因为这些资源是在系统引导时间保留的,所保留的资源从应用的视角而言是不存在的。具体而言,存储器保留量优选地足够大,以包含启动内核、并发系统应用程序和驱动程序。CPU保留量优选地为恒定,使得若所保留的CPU用量不被系统应用使用,则空闲线程将消耗任何未使用的周期。对于GPU保留量,通过使用GPU中断来调度代码以将弹出窗口呈现为覆盖图,从而显示由系统应用程序生成的轻量消息(例如,弹出窗口)。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图优选地与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下,优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率和引起TV重新同步。在多媒体控制台100引导且系统资源被保留之后,执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源内执行的一组系统应用中。操作系统内核标识出作为系统应用线程而非游戏应用线程的线程。系统应用优选地被调度为在预定时间并以预定时间间隔在CPU 101上运行,以便提供对应用而言一致的系统资源视图。调度是为了使在控制台上运行的游戏应用的高速缓存分裂最小化。当并发系统应用需要音频时,由于时间敏感性而将音频处理异步地调度给游戏应用。多媒体控制台应用管理器(如下所描述的)在系统应用活动时控制游戏应用的音频级别(例如,静音、衰减)。输入设备(例如,控制器142(1)和142( )由游戏应用和系统应用共享。输入设备不是保留资源,而是在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器较佳地控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维护有关焦点切换的状态信息。相机26J8和捕捉设备20可为控制台100定义附加输入设备。图4示出计算环境220的另一示例实施例,该计算环境可以是用于解释目标识别、 分析和跟踪系统中的一个或多个姿势和/或动画化目标识别、分析和跟踪系统所显示的化身或屏幕上人物的图1A-2中示出的计算环境12。计算系统环境220只是合适的计算环境的一个示例,并且不旨在对当前公开的主题的使用范围或功能提出任何限制。也不应该将计算环境220解释为对示例性操作环境220中示出的任一组件或其组合有任何依赖性或要求。在某些实施例中,所描绘的各种计算元素可包括被配置成实例化本发明的各具体方面的电路。例如,本公开中使用的术语“电路”可包括被配置成通过固件或开关来执行功能的专用硬件组件。其他示例中,术语电路可包括由实施可用于执行功能的逻辑的软件指令配置的通用处理单元、存储器等。在电路包括硬件和软件的组合的示例实施例中,实施者可以编写体现逻辑的源代码,且源代码可以被编译为可以由通用处理单元处理的机器可读代码。因为本领域技术人员可以明白现有技术已经进化到硬件、软件或硬件/软件组合之间几乎没有差别的地步,因而选择硬件或是软件来实现具体功能是留给实现者的设计选择。 更具体地,本领域技术人员可以明白软件进程可被变换成等价的硬件结构,而硬件结构本身可被变换成等价的软件进程。由此,对于硬件实现还是软件实现的选择是设计选择之一并留给实现者。在图4中,计算环境220包括计算机Ml,计算机241通常包括各种计算机可读介质。计算机可读介质可以是能被计算机241访问的任何可用介质,而且包含易失性和非
9易失性介质、可移动和不可移动介质。系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM) 223和随机存取存储器(RAM06O。包含诸如在启动期间帮助在计算机Ml内的元件之间传输信息的基本例程的基本输入/输出系统 224(BIOS)通常储存储在ROM 223中。RAM 260通常包含处理单元259可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图4示出了操作系统225、应用程序226、其他程序模块227和程序数据228。计算机241也可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图4示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器 238,从可移动、非易失性磁盘2M中读取或向其写入的磁盘驱动器239,以及从诸如⑶ROM 或其他光学介质等可移动、非易失性光盘253中读取或向其写入的光盘驱动器M0。可在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器 238通常由例如接口 234等不可移动存储器接口连接至系统总线221,而磁盘驱动器239和光盘驱动器240通常由例如接口 235等可移动存储器接口连接至系统总线221。以上讨论并在图4中示出的驱动器及其相关联的计算机存储介质为计算机241提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。在图4中,例如,硬盘驱动器238被示为存储操作系统258、应用程序257、其他程序模块256和程序数据255。注意, 这些组件可与操作系统225、应用程序226、其他程序模块227和程序数据2 相同,也可与它们不同。在此操作系统258、应用程序257、其他程序模块256以及程序数据255被给予了不同的编号,以说明至少它们是不同的副本。用户可以通过输入设备,例如键盘251和定点设备252——通常是指鼠标、跟踪球或触摸垫——向计算机241输入命令和信息。其他输入设备(未示出)可包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其他输入设备通常通过耦合到系统总线的用户输入接口 236连接到处理单元259,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其他接口和总线结构来连接。相机沈、观和捕捉设备20可为控制台100定义附加输入设备。监视器242或其他类型的显示设备也通过诸如视频接口 232之类的接口连接至系统总线221。除监视器之外,计算机还可以包括可以通过输出外围接口 233连接的诸如扬声器244和打印机243之类的其他外围输出设备。计算机241可使用到一个或多个远程计算机(诸如,远程计算机M6)的逻辑连接而在联网环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点,并且通常包括许多或所有以上关于计算机241所描述的元件,但在图4中仅示出了存储器存储设备M7。图2中所描绘的逻辑连接包括局域网(LAN) 245和广域网(WAN) M9,但还可包括其他网络。此类联网环境在办公室、企业范围的计算机网络、 内联网和因特网中是常见的。当在LAN联网环境中使用时,计算机241通过网络接口或适配器237连接到LAN 2450当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN 249建立通信的其他手段。调制解调器250可以是内置的或外置的,可经由用户输入接口 236或其他适当的机制连接到系统总线221。在联网环境中,相对于计算机Ml 所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图4示出了远程应用程序248驻留在存储器设备247上。应当理解,所示的网络连接是示例性的, 并且可使用在计算机之间建立通信链路的其他手段。图5描绘了用于处理场景的深度信息的示例方法300的流程图。示例方法300可使用例如,参考图1A-4所描述的目标识别、分析和跟踪系统10的捕捉设备20和/或计算环境12来实现。在一示例实施例中,示例方法300可采取可由例如参考图1A-4所描述的目标识别、分析和跟踪系统10的捕捉设备20和/或计算环境12执行的程序代码(即指令) 的形式。根据一个实施例,在305,可接收深度图像。例如,目标识别、分析和跟踪系统可包括诸如参考图1A-2描述的捕捉设备20等捕捉设备。捕捉设备可捕捉或观察可包括一个或多个目标的场景。在一示例实施例中,捕捉设备可以是深度相机,该深度相机被配置成使用诸如飞行时间分析、结构化光分析、立体视觉分析等任何合适的技术来获得场景的深度图像。深度图像可以是多个观测到的像素,其中每个观测到的像素具有观测到的深度值。例如,深度图像可包括所捕捉的场景的二维OD)像素区域,其中2D像素区域中的每一像素可表示深度值,诸如例如以厘米、毫米等计的、所捕捉的场景中的对象距捕捉设备的长度或距离。图6示出了可在305处被接收的深度图像400的示例实施例。根据一示例实施例, 深度图像400可以是由例如以上参考图2所描述的捕捉设备20的3D相机沈和/或RGB 相机观所捕捉的场景的图像或帧。如图6所示,深度图像400可包括与例如诸如参考图IA 和IB所描述的用户18等的用户对应的人类目标40 以及诸如所捕捉的场景中的墙、桌子、监视器等的一个或多个非人类目标404。如上所述,深度图像400可包括多个观测到的像素,其中每一观测到的像素具有与其相关联的观测到的深度值。例如,深度图像400可包括所捕捉的场景的二维OD)像素区域,其中该2D像素区域中的特定X值和Y值处的每一像素可具有诸如以例如厘米、毫米等为单位的所捕捉的场景中的目标或对象离捕捉设备的长度或距离之类的深度值。在一个实施例中,深度图像400可被着色(colorized)从而使得深度图像的像素的不同颜色对应于和/或从视觉上描绘了人类目标40 和非人类目标404离捕捉设备的不同距离。例如,与深度图像中最接近捕捉设备的目标相关联的像素可用红色和/或橙色阴影来着色,而与深度图像中较远的目标相关联的像素可用绿色和/或蓝色阴影来着色。回头参考图5,在一个实施例中,一接收到该图像,在305,可从深度图像中移除和 /或平滑掉一个或多个高变度和/或含噪声的深度值;可填入和/或重构缺少的和/或被移除的深度信息的各部分;和/或可对接收到的深度图像执行任何其他合适的处理,以使与该深度图像相关联的深度信息可用于生成诸如骨架模型之类的模型,这将在下文更详细地描述。根据一示例实施例,在310,可基于所接收到的深度图像生成一个或多个体素的网格。例如,目标识别、分析和跟踪系统可通过使用所接收到的深度图像中所包括的信息来生成一个或多个体素来对所接收的深度图像进行降采样,以便可以生成经降采样的深度图像。在一个实施例中,该一个或多个体素可以是可在经子采样(sub-sampled)的网格上表示所接收的深度图像中所包括的信息的数据或值的体元素。
例如,如上所述,深度图像可包括所捕捉的场景的2D像素区域,其中每一像素具有与其相关联的X值、Y值和深度值(或Z值)。在一实施例中,深度图像可通过将2D像素区域中的像素减少为一个或多个体素的网格来降采样。例如,深度图像可被分成各个像素部分或像素块,诸如4x4的像素块、5x5的像素块、8x8的像素块、10x10的像素块等等。每个部分或块可被处理以生成深度图像的体素,该体素可表示与该2D深度图像的像素相关联的部分或块在真实世界空间中的方位。根据一示例实施例,每个体素的方位可以基于例如该体素可能表示的块或部分中的像素的有效或非零深度值的平均深度值、或者该体素可能表示的块或部分中的像素的最小和/或最大深度值、该体素可能表示的部分或块中的具有有效深度值的像素的X值和Y值的平均、或该深度图像所提供的任何适当的信息。因此,根据一示例实施例,每个体素可表示该深度图像中具有诸如以下值的子体(sub-volume)部分或块该体素可能表示的块或部分中的像素的有效或非零深度值的平均深度值、该体素可能表示的部分或块中的像素的最小和/或最大深度值、该体素可能表示的部分或块中的具有有效深度值的像素的X值和Y值的平均、或基于在305所接收的深度图像的像素的相应部分或块的X值、Y值和深度值由该深度图像所提供的任何其他适当信息。在一个实施例中,经降采样的深度图像中的一个或多个体素的网格可被分层。例如,目标识别、分析和跟踪系统可生成如上所述的体素。然后该目标识别、分析和跟踪系统可将所生成的体素堆叠在该网格中所生成的一个或多个其他体素上。根据一示例实施例,该目标识别、分析和跟踪系统可以将体素堆叠在该网格中,例如该深度图像中所捕捉的场景中的物体的边缘周围。例如,在305接收的深度图像可包括人类目标和非人类目标(诸如墙)。例如在人类目标的边缘处,人类目标可以与非人类目标(诸如墙)重叠。在一个实施例中,重叠边缘可包括诸如与该深度图像中可捕捉的该人类目标和非人类目标相关联的深度值、X值、Y值等。该目标识别、分析和跟踪系统可以生成该重叠边缘处的与该人类目标相关联的体素以及与该人类目标相关联的体素,以便该体素可被堆叠而该重叠边缘的信息(诸如深度值、X值、Y值等)可被保持在该网格中。根据另一实施例,在310,通过例如将深度图像中像素的信息(诸如深度值、X值、 Y值等)投影到三维(3D)空间中,可以生成一个或多个体素的网格。例如,目标识别、分析和跟踪系统可以使用诸如相机、图像或透视变换等变换将深度图像中的像素的信息(诸如 X值、Y值等)映射到3D空间中的3D点,使得该信息在3D空间中可被变换为梯形或锥形。 在一个实施例中,具有梯形或锥形的3D空间可被划分成诸如立方体的块,所述块可创建体素的网格,使得这些块或立方体中的每一个可表示该网格中的体素。例如,该目标识别、分析和跟踪系统可以将3-D网格叠加在与该深度图像中的物体相对应的3-D点上。随后该目标识别、分析和跟踪系统可以将该网格划分或切割为表示体素的块以将该深度图像降采样为更低的分辨率。根据一示例实施例,网格中的每个体素可包括该体素可表示的与网格中的3D空间相关联的像素的有效或非零深度值的平均深度值、该体素可表示的与网格中的 3D空间相关联的像素的最小和/或最大深度值、该体素可表示的与网格中的3D空间相关联的具有有效深度值的像素的X值和Y值的平均、或该深度图像所提供的任何其他适合的信肩、ο图7A-7B示出被降采样的深度图像的一部分的示例实施例。例如,如图7A所示, 以上参考图6所述的深度图像400的一部分410可包括多个像素420,其中每一像素420可具有与其相关联的X值、Y值和深度值(或Z值)。.根据一个实施例,如上所述,深度图像 (诸如深度图像400)可通过将2D像素区域中的像素减少为一个或多个体素的网格来降采样。例如,如图7A所示,深度图像400的部分410可以被划分为像素420的部分或块430, 诸如像素420的8x8块。目标识别、分析和跟踪系统可以处理该部分或块430以生成体素 440,体素440可表示与像素420相关联的部分或块430在真实世界中的方位,如图7A-7B 所示。回头参考图5,在315,可以确定经降采样的深度图像中所包括的体素的网格的背景。例如,可以确定经降采样的深度图像中的背景(诸如非人类目标或物体),使得可以移除或丢弃背景,以便隔离前景物体(诸如与用户相关联的人类目标),这将在下面进行更加详细的描述。在一个实施例中,如上所述,目标识别、分析和跟踪系统可以通过为所捕捉或观察到的深度图像生成一个或多个体素的网格来对所捕捉或观察到的深度图像进行降采样。目标识别、分析和跟踪系统可以分析经降采样的深度图像中的每个体素以确定体素是否可与背景对象(诸如该深度图像的一个或多个非人类目标)相关联。如果体素可与背景物体相关联,则可将该体素从经降采样的深度图像中移除或丢弃,使得前景物体(诸如人类目标)和该网格中与该前景物体相关联的一个或多个体素可以被隔离,这将在下面进行更加详细的描述。根据一个实施例,目标识别、分析和跟踪系统可以分析每个体素以确定与其相关联的物体。例如,如上所述,可在305处作为深度图像(诸如上面参考图6所描述的深度图像400)来观察或捕捉的场景可包括多个物体。物体可包括一个或多个人类目标和/或一个或多个非人类目标,诸如墙、桌子、沙发椅、灯等。在一个实施例中,目标识别、分析和跟踪系统可以分析网格中的每个体素以确定该体素可能与场景中的哪个物体相关联,使得在315 处,目标识别、分析和跟踪系统可以标识与场景中的每个物体相关联的体素。因此,根据一示例实施例,如果人类目标或一个人站在场景中的墙的前面,则目标识别、分析和跟踪系统可以分析每个体素以确定该体素可能是与人类目标还是与墙相关联。为了确定体素可能与场景中的哪个物体相关联,目标识别、分析和跟踪系统可以比较以下值,诸如该体素可表示的块或部分中的像素的有效或非零深度值的平均深度值、 该体素可表示的块或部分中的像素的最小和/或最大深度值、该体素可表示的具有有效深度值的像素的X值和Y值的平均、或者邻近或附近体素的任何其他适合的信息。例如,在一个实施例中,可以将与网格中正被分析的特定体素相关联的最小深度值与同网格中正被分析的特定体素相邻的每个体素的最小深度值进行比较。如果正被分析的特定体素的最小深度值与相邻体素的最小深度值的差可以小于阈值,则特定体素与相邻体素可被标识为属于相同的物体。如果正被分析的特定体素的最小深度值与相邻体素的最小深度值的差可以大于阈值,则特定体素与相邻体素可被标识为属于不同的物体。根据一个示例实施例,该阈值可以是例如由目标识别、分析和跟踪系统所生成的预定值,该预定值可以基于该体素可能是相同的物体的一部分的可能性或概率。因此,根据一示例实施例,如果人类目标或一个人站在由深度图像所捕捉或观察的场景中的墙的前面,则目标识别、分析和跟踪系统可以分析为该深度图像生成的每个体素以确定该体素可能是与人类目标还是与墙相关联。在标识了接收到的深度图像的场景中的物体以及与之相关联的体素之后,目标识别、分析和跟踪系统随后可以计算与每个所标识的物体相关联的信息。例如,目标识别、分
13析和跟踪系统可以为每个所标识的物体计算最大世界空间、最小世界空间方位和平均世界空间方位等。在一个实施例中,在315处,目标识别、分析和跟踪系统还可确定场景中所标识的一个或多个物体是否应与场景中的其他物体合并。例如,可将在305处接收到的深度图像中的物体的一部分与该物体的另一部分相分离。根据一个实施例,可通过由例如场景中的一个物体或另一个物体等所投射的红外阴影来将该物体的一部分与该物体的另一部分相分离。在另一个示例实施例中,可通过例如与一个物体相关联的颜色、纹理、图案等来将该物体的一部分与该物体的另一部分相分离。例如,可通过例如面部毛发、多件服装等沿Y方向中的Y平面将人类目标的头与该人类目标的躯干相分离。为了确定场景中所标识的一个物体是否可能实际上是场景中所标识的另一个物体的一部分,目标识别、分析和跟踪系统可以对同该物体相关联的体素的X值、Y值、和/或深度值与同附近物体相关联的体素的X值、Y值、和/或深度值进行比较。例如,目标识别、 分析和跟踪系统可以对同例如场景中所标识的第一物体相关联的一个或多个体素的X值、 Y值、和/或深度值与同该第一物体附近或邻近的第二物体相关联的一个或多个体素的X 值、Y值、和/或深度值进行比较。因此,根据示例实施例,目标识别、分析和跟踪系统可以分析场景中的体素以确定第一和第二物体是否沿着X方向中定义的X平面、沿着Y方向中定义的Y平面、和/或Z方向中定义的Z平面重叠,使得可以合并第一和第二物体并将其标识为同一物体的各部分。根据一个实施例,如果同第一物体相关联的一个或多个体素的X值、Y值、和/或深度值可能与同第二物体相关联的一个或多个体素的X值、Y值、和/或深度值相重叠,则目标识别、分析和跟踪系统可以合并第一和第二物体,使得目标识别、分析和跟踪系统可将第一和第二物体标识为共同物体的各部分。例如,如果同第一物体相关联的第一体素可具有沿X方向的X值5以及位于第一物体右侧外缘的深度值10mm,并且同第二物体相关联的第二体素可具有沿X方向的X值3以及位于第二物体左侧外缘的深度值10mm,则目标识别、 分析和跟踪系统可以确定第一和第二物体可能重叠。目标识别、分析和跟踪系统随后可合并第一和第二物体,使得目标识别、分析和跟踪系统可将第一和第二物体标识为同一物体的各部分。另外,为了确定场景中所标识的一个物体是否可能实际上是场景中所标识的另一个物体的一部分,目标识别、分析和跟踪系统可以确定在场景中为一个物体所定义的边界框是否与另一个物体的边界框相重叠。例如,目标识别、分析和跟踪系统可为每个所标识的物体定义边界框。目标识别、分析和跟踪系统随后可以基于例如如上所述的包括在其中的一个或多个体素的X值、Y值和/或深度值来确定一个或多个物体的边界框是否重叠。根据另一个示例实施例,目标识别、分析和跟踪系统可以通过例如对物体中所包括的体素的X值、Y值和深度值取平均来确定每个物体的中心或质心。目标识别、分析和跟踪系统随后可以确定场景中各物体的质心或中心之间的距离,以便确定场景中所标识的一个物体是否可能实际上是场景中所标识的另一个物体的一部分。基于各物体之间的距离, 目标识别、分析和跟踪系统可以合并一个或多个物体。例如,目标识别、分析和跟踪系统可以确定第一物体的质心或中心与第二物体的中心或质心之间的距离。如果第一物体与第二物体的质心或中心之间的距离可能位于指示应当合并第一和第二物体的预定范围以内,则目标识别、分析和跟踪系统可以合并这两个物体,使得目标识别、分析和跟踪系统可将第一和第二物体标识为同一物体的各部分。在一个实施例中,在315处,目标识别、分析和跟踪系统还可确定场景中所标识的一个或多个物体是否应被分离。例如,在315处场景中所标识的物体可能实际上是两个分离的物体。为了确定场景中的一个物体是否应被分离,目标识别、分析和跟踪系统可以标识为之前接收到的帧所确定的每个物体的中心的位置。根据一个实施例,目标识别、分析和跟踪系统随后可以同时从由之前接收到的帧的物体所确定的中心的位置开始,泛色填充场景中为在305处接收到的帧的深度图像所生成的体素。目标识别、分析和跟踪系统随后可以使用物体的之前位置来确定经泛色填充的体素可能更接近于之前接收到的帧中的哪个物体。如果经泛色填充的体素可能更接近于之前接收到的帧中所标识的另一个物体,则目标识别、分析和跟踪系统可在315处拆分一个物体。在315处,目标识别、分析和跟踪系统还可以确定所标识的物体是否可能是诸如非人类目标的背景物体、还是诸如人类目标的前景物体。根据一示例实施例,目标识别、分析和跟踪系统可以基于所标识的物体是否可能在运动中或正在移动来确定所标识的物体可能是背景物体还是前景物体。例如,目标识别、分析和跟踪系统可包括诸如场景的基准图像等基准平面,该基准平面可包括例如每个体素的非运动深度信息。根据一个实施例,基准平面可包括与场景中的每个体素相关联的移动平均。移动平均可包括例如通过一系列之前接收到的帧所确定的体素的平均深度值。在其他示例实施例中,基准平面还可包括体素的最小世界空间方位(诸如通过一系列之前接收到的帧确定的网格中体素的最小X值、Y值和深度值),体素的最大世界空间方位(诸如通过一系列之前接收到的帧确定的网格中体素的最大X值、Y值和深度值),体素的平均世界方位(通过一系列之前接收到的帧确定的网格中体素的平均X值、Y值和深度值),或者任何其他适合的基准平面。根据一个实施例,目标识别、分析和跟踪系统可将例如在305处接收的深度图像的场景中所标识的物体相关联的每个体素的诸如最大深度值、平均深度值、最小深度值等的深度信息与基准平面中所包括的每个对应体素的非运动深度信息进行比较。基于基准平面中对应体素的深度信息和非运动深度信息的比较,目标识别、分析和跟踪系统可以标识一个体素在移动。例如,在一个实施例中,如果诸如体素的最小深度值、最大深度值、和/ 或平均深度值的深度值可小于基准平面中对应体素的移动平均从而使得体素可在移动平均前方,则该体素可被标识为移动。根据另一个示例实施例,目标识别、分析和跟踪系统可以计算与体素和基准平面中对应体素相关联的值之间的差。如果例如诸如体素的平均深度值、最大深度值、和/或最小深度值的深度值与基准平面中对应体素的非运动信息所包括的深度值之间的差可大于运动阈值,则该体素可由目标识别、分析和跟踪系统标识为移动。根据另一个示例实施例,目标识别、分析和跟踪系统可将诸如体素和与其邻近的体素的最大深度值、平均深度值、最小深度值等的深度信息与基准平面中所包括的每个对应体素的非运动深度信息进行比较。例如,为了处理边缘噪声,目标识别、分析和跟踪系统可将特定体素和可与其邻近的体素的最小深度值相对于基准平面中对应体素的最小深度值进行比较,以确定体素和/或与其相关联的物体是否可能正在移动。如果例如特定体素和可与其邻近的体素的最小深度值与基准平面中对应体素的非运动信息所包括的最小深度值之间的差可能大于运动阈值,则该特定体素可由目标识别、分析和跟踪系统标识为移动。目标识别、分析和跟踪系统随后基于移动体素的百分比为每个所标识的物体计算前景分数。在一个实施例中,目标识别、分析和跟踪系统可以用可被标识为移动的岛中的体素的数量除以岛中所包括的体素总数来计算前景分数。在320,可以移除或丢弃背景。例如,如上所述,目标识别、分析和跟踪系统可以移除或丢弃背景,以隔离前景物体(诸如与用户相关联的人类目标)。根据一个实施例,目标识别、分析和跟踪系统可以隔离具有超过分数阈值的前景分数的物体。分数阈值可以是由目标识别、分析和跟踪系统所定义的可指示一个物体可能处于运动中的值或百分比。例如, 目标识别、分析和跟踪系统可基于前景分数将可能未在移动的背景物体从经降采样的深度图像中移除或丢弃,使得可将经降采样的深度图像中的前景物体(诸如具有可能超过分数阈值的前景分数的人类目标)隔离。另外,在320,目标识别、分析和跟踪系统可以基于深度历史来移除或丢弃背景物体和与其相关联的体素。例如,目标识别、分析和跟踪系统可包括基准平面,该基准平面可包括背景物体的深度历史,该深度历史包括,例如,通过一系列帧捕捉到的背景物体中所包括的每个体素的最小深度值和/或最大深度值。目标识别、分析和跟踪系统可将与体素相关联的值(诸如X值、Y值和深度值)与可包括同背景物体相关联的体素的最小深度值和 /或最大深度值的基准平面进行比较。基于该比较,目标识别、分析和跟踪系统可以确定一个体素是否是背景。例如,如果体素的X值、Y值、或深度值可能大于,例如,基准平面中对应体素的最大深度值,则目标识别、分析和跟踪系统可将该体素标识为背景的一部分。目标识别、分析和跟踪系统随后可以移除或丢弃该体素。因此,根据一个示例,目标识别、分析和跟踪系统可以确定体素是否具有与基准平面中对应体素的深度值接近或位于其后的深度值,该基准平面可包括为背景物体观察到的最小或最大值的深度历史。如果该体素可具有与基准平面中对应体素的深度值接近或位于其后的深度值,则目标识别、分析和跟踪系统可将该体素标识为背景的一部分。目标识别、 分析和跟踪系统随后可以移除或丢弃该体素。根据示例实施例,为了移除或丢弃可能未在移动和/或可具有与(可包括深度历史的)基准平面中对应体素的深度值接近或位于其后的深度值的物体,目标识别、分析和跟踪系统可以用0值、或另一个适合的指示符、或可指示该体素可能是无效的标记来代替X 值、Y值、和/或深度值。在一个实施例中,在隔离诸如人类目标的前景物体之后,如上所述,目标识别、分析和跟踪系统可对前景物体进行上采样,使得可以用高分辨率来呈现前景物体。例如,目标识别、分析和跟踪系统可以使用可与前景物体的体素相关联的像素的X值、Y值、和深度值来生成更高分辨率的前景物体。可在325处理与诸如人类目标的前景物体相关联的被隔离的体素。在一个实施例中,目标识别、分析和跟踪系统可以处理与被隔离的前景物体(诸如人类目标)相关联的体素,以确定一个或多个肢端(诸如头、质心或中心、肩、髋、臂、肘、手、腿、膝、脚等)的位置或方位。目标识别、分析和跟踪系统还可处理体素以确定一个或多个肢端的尺寸,诸如包括宽度、长度等的测量。
在325,目标识别、分析和跟踪系统还可以处理与被隔离的前景物体相关联的体素,使得可以生成诸如人类目标的前景物体的模型。根据一示例实施例,可以基于所确定的肢端及其尺寸来跟踪该模型,可以响应于对正被跟踪的模型的改变来呈现和/或改变与该模型相关联的化身,和/或可以控制在计算机环境上执行的一个或多个应用。应该理解,此处所述的配置和/或方法在本质上是示例性的,且这些具体实施例或示例不被认为是限制性的。此处所述的具体例程或方法可表示任何数量的处理策略中的一个或多个。由此,所示出的各个动作可以按所示顺序执行、按其他顺序执行、并行地执行等等。同样,可以改变上述过程的次序。本公开的主题包括各种过程、系统和配置的所有新颖和非显而易见的组合和子组合、和此处所公开的其他特征、功能、动作、和/或特性、以及其任何和全部等效物。
权利要求
1.一种用于处理场景的深度信息的方法,所述方法包括 接收深度图像;基于所述深度图像生成体素的网格;确定所述网格中的一个或多个体素是否与背景相关联;丢弃与所述背景相关联的一个或多个体素以隔离与所述深度图像中的前景物体相关联的体素;以及用被隔离的前景物体来处理所述网格。
2.如权利要求1所述的方法,其特征在于,还包括分析所述体素的网格中的每个体素以确定所述深度图像中的一个或多个物体。
3.如权利要求2所述的方法,其特征在于,分析所述体素的网格中的每个体素以确定所述深度图像中的一个或多个物体包括将与所述网格中的特定体素相关联的值与所述网格中的所述特定体素邻近的体素的对应值进行比较;以及如果基于所述比较,所述值与所述对应值之间的差小于阈值,则将所述特定体素和一个或多个邻近的体素标识为物体的一部分。
4.如权利要求2所述的方法,其特征在于,还包括确定是否将一个或多个物体中的一个物体与所述一个或多个物体中的附近物体合并。
5.如权利要求4所述的方法,其特征在于,确定是否将一个或多个物体中的一个物体与所述一个或多个物体中的附近物体合并包括将同所述物体中的体素相关联的X值、Y值或深度值与同所述附近物体的体素相关联的X值、Y值或深度值进行比较;以及如果基于所述比较,同所述物体中的体素相关联的X值、Y值或深度值与同所述附近物体的体素相关联的X值、Y值或深度值相重叠,则将所述物体与所述附近物体合并。
6.如权利要求2所述的方法,其特征在于,确定所述网格中的一个或多个体素是否与所述背景相关联包括确定所述网格中一个或多个物体的一个物体是否在移动。
7.一种其上存储有用于处理场景的深度信息的可执行指令的计算机可读存储介质,所述计算机可执行指令包括用于以下操作的指令接收所述场景的深度图像,其中所述深度图像包括一个或多个物体; 确定所述深度图像中的所述一个或多个物体是否在移动;以及隔离正在移动的一个或多个物体;以及处理一个或多个被隔离的物体。
8.如权利要求7所述的计算机可读存储介质,其特征在于,还包括确定是否将一个或多个物体中的一个物体与所述一个或多个物体中的附近物体合并。
9.如权利要求8所述的计算机可读存储介质,其特征在于,其中确定是否将一个或多个物体中的一个物体与所述一个或多个物体中的附近物体合并包括将同所述物体中的体素相关联的X值、Y值或深度值与同所述附近物体的体素相关联的X值、Y值或深度值进行比较;以及如果基于所述比较,同所述物体中的体素相关联的X值、Y值或深度值与同所述附近物体的体素相关联的X值、Y值或深度值相重叠,则将所述物体与所述附近物体合并。
10.如权利要求7所述的计算机可读存储介质,其特征在于,确定所述网格中的物体是否在移动包括将同物体中每个体素相关联的值与基准平面中所包括的基准体素的对应值进行比较;以及当所述值与所述对应值之间的差超过运动阈值时,将物体中的每个体素标识为移动。
11.一种用于处理场景的深度信息的系统,所述系统包括捕捉设备,其中所述捕捉设备包括接收场景的深度图像的相机组件;以及与所述捕捉设备可操作地通信的计算设备,其中所述计算设备包括处理器,所述处理器基于从所述捕捉设备接收的所述深度图像中的一个或多个像素来生成经降采样的深度图像;确定所述经降采样的深度图像中的物体是否在移动;丢弃未移动的物体,并且用被隔离的移动物体来处理所述经降采样的深度图像。
12.如权利要求11所述的系统,其特征在于,所述处理器还确定是否要合并一个或多个物体。
13.如权利要求12所述的系统,其特征在于,所述处理器通过以下动作来确定是否要合并一个或多个物体将同物体之一的体素相关联的X值或深度值与同附近物体的体素相关联的X值或深度值进行比较;以及如果基于所述比较,同所述物体中的体素相关联的X值或深度值与同所述附近物体的体素相关联的X值或深度值相重叠,则将所述物体与所述附近物体合并。
14.如权利要求11所述的系统,其特征在于,所述处理器通过以下动作来确定所述物体是否在移动将同物体中每个体素相关联的值与基准平面中所包括的基准体素的对应值进行比较;以及当所述值与所述对应值之间的差超过运动阈值时,将物体中的每个体素标识为移动。
15.如权利要求14所述的系统,其特征在于,所述处理器还通过以下动作来确定所述物体是否在移动基于与所述物体相关联的移动体素的百分比来计算前景分数;以及当所述前景分数超过运动阈值时,将所述物体标识为移动。
全文摘要
可由设备接收、观察或捕捉诸如场景的深度图像等图像。可基于深度图像生成体素的网格,使得可对该深度图像进行降采样。随后可以丢弃体素的网格中所包括的背景以隔离与诸如人类目标的前景物体相关联的一个或多个体素,并且可以处理与前景物体相关联的被隔离的体素。
文档编号H04N13/00GK102576463SQ201080044914
公开日2012年7月11日 申请日期2010年10月6日 优先权日2009年10月7日
发明者C·佩普尔, J·李, S·斯塔奇亚克, T·莱瓦德 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1