专利名称:深度图像压缩的制作方法
深度图像压缩背景技术
来自深度摄像机的深度图像被越来越多地用于在许多应用中检测场景中的人或 物体,例如,寻找人或动物的身体部位中心的位置,寻找场景中物体的位置,并且被用于其 他目的,如医学图像分析。深度图像的处理在计算上通常昂贵又费时。
在诸如增强现实、沉浸式游戏、人机互动等许多应用领域中,在诸如深度图像、彩 色视频图像和其他类型图像等图像数据中寻找人或动物身体部位中心的位置可能是有用 的。在这些应用领域中的很多应用领域,要实时预测身体部位中心位置,并且可利用的图像 数据通常是有噪声的或者是不完整的。在一些情况下,可利用的计算资源可能包括多个图 形处理单元,这些图形处理单元可并行操作以提供最快的处理时间。然而,不总是这种情 况。需要在不会明显影响所得到的身体部位中心位置的准确性和可用性的情况下减少计算 量。
现有的身体部位位置检测系统可能包括若干个计算阶段。典型地,使用标注了的 图像数据来预先训练检测系统。
下面描述的实施例不局限于解决已知的深度图像压缩系统的任何或全部缺点的 实施方式。发明内容
下面给出本公开文件的概要,以令读者有一个基本的理解。该概要不是本公开文 件的详尽总结,并且它也不表明关键/重要的单元,也不限定本公开文件的范围。其唯一目 的是以简化的形式提供本公开文件的一组概念,作为稍后给出的更详细的描述的序言。
所描述的深度图像压缩例如能够从深度图像中实时地检测游戏玩家的身体部位 的中心,或者用于其他应用,如增强现实和人机互动。在一实施例中,使用与图像单元的深 度和该图像单元的身体部位的概率有关的概率质量,来对具有相关身体部位概率的深度图 像进行压缩。在各种例子中,压缩深度图像和概率质量图像能够加快身体部位中心检测。在 一些例子中,根据前景区域的深度来选择压缩比例,而在一些情况下,对不同的图像区域使 用不同的比例。在一些例子中,使用聚类的图像单元的概率质量来计算身体部位中心的置 信度。
通过参考以下结合附图给出的详细描述,将会更容易地认识到并更好地理解随后 的许多特征。
通过参照附图阅读以下详细说明将会更好地理解本说明,其中
图1是身体部位中心位置检测系统的示意图2是深度摄像机的附近区域和远离深度摄像机的另一区域的示意图3是用于快速身体部位中心检测的图像压缩方法的流程图4是用于快速身体部位中心检测的使用下采样的身体部位矢量的方法的流程
图5是均值漂移处理的示意图6是均值漂移处理的流程图7是用于控制计算机游戏的基于摄像机的控制系统的示意图8是图像捕获设备的不意图9示出可以实现身体部位位置检测器的实施例的示例性的基于计算的设备。
在附图中相同的附图标记用于表不相同的部分。
具体实施方式
下面结合附图提供的详细描述意图作为对所给出的例子的描述,而不意图代表可 以构成或使用所给出的例子的仅有的形式。本描述给出了该例子的功能以及用于构成和操 作该例子的步骤序列。然而,可以通过不同的例子实现相同的或等同的功能和序列。
尽管所给出的例子被描述并示出为在计算机游戏系统中实现,但是所描述的系统 是作为例子而不是作为限制给出的。如本领域的技术人员将会意识到的,所给出的例子适 合于在各种不同类型的计算和图像处理系统中应用。这些例子描述了使用身体部位概率信 息。然而,该概率信息可以是关于其他类别如物体类别的概率信息。
图1是在计算设备102实现的身体部位中心位置检测系统的示意图。计算设备102 接收场景的深度图像,该深度图像描绘至少一个游戏玩家,或者任何人或动物身体,或者人 或动物身体的一部分。该深度图像可以是来自深度摄像机或者其他图像捕获设备的深度图 像流的一部分。该深度图像与通过其他处理从该深度图像计算出的身体部位概率相关联。 因此,计算设备102接收深度和身体部位概率100。该计算设备使用该信息计算身体部位中 心104的3D位置以及这些3D位置的置信度的度量值。该身体部位中心信息可用于玩家的 骨架跟踪、用于姿态检测或者用于其他目的。
该深度图像的每个图像单元可以具有相关联的概率分布,该相关联的概率分布代 表该图像单元描绘多个指定类别中的各个类别的概率。在一些例子中,所述类别是身体部 位,但是也可以使用其他类别,如物体类别(例如,建筑物、天空、人、咖啡杯)或者其他类别。 例如,该概率分布代表该图像单元是每个类别的成员的可能性。在一个例子中,有31个或 更多个不同身体部位,但是也可以指定任何数目的身体部位。身体部位的例子包括但不限 于头、颈、肩、臂、肘、腕、手、躯干、腿、膝、踝、脚。如图1中的区域106所示,该深度图像 可以被表示为图像单元的二维阵列108 (在图1中示出了一部分),其中图像单元可以是像 素、像素块或者其他像素组,或者可以是体素、体素组或者高于2维的其他图像单元。在图1中所示的例子中,每个图像单元具有深度值(由符号Z表示)和相关联的概率分布(由符号 p(bi)表示)。如图1所示,(在一例子中)该概率分布可被认为是关于身体部位的概率的直 方图110。该直方图存储每个身体部位的概率值,其代表特定图像单元描绘指定身体部位的 概率。
该身体部位概率,如直方图110或者概率分布的其他表示,是使用用于实现它的 任何适当的已知处理根据深度图像获得的。例如,该处理取得输入的深度图像并且将其分 割为密集的概率性的身体部位标记。身体部位的分割被作为逐像素分类的任务来处理。典 型地使用以数十万计的训练图像来训练深度随机化决策森林分类器。该分类器使用有区分力的深度比较图像特征来产生3D转换不变性,同时保持高计算效率。为了进一步加速,该分类器可以在图形处理单元上关于每个像素并行运行。一旦训练好了,该分类器就被用于执行逐像素分类,并且产生每个像素的概率分布,其代表该像素描绘多个身体部位中每个部位的概率。
计算设备102取得深度和身体部位概率100,并且产生身体部位中心的3D位置 104以及置信度信息。在较高的层次上,计算设备102可以被认为是对深度和概率进行聚类,以产生身体部位中心。对深度和身体部位概率100执行聚类在计算上是昂贵的,并且因此难以实时地实现,尤其是在计算资源有限的情况下(如嵌入式系统或者在没有图形处理单元可用时)。本文中描述的例子使用图像压缩处理以压缩深度和身体部位概率100,然后关于压缩后的图像执行聚类以产生身体部位中心。该图像压缩处理被设计为减轻身体部位中心检测的准确度的损失。为此,该图像压缩处理考虑了在本文中称为概率质量的特征。
现在参考图2更详细地解释概率质量,图2是在深度摄像机附近的区域200和远离深度摄像机的另一区域202的示意图。在深度摄像机处的图像单元204描绘远离深度摄像机的场景中的区域206。所描绘的区域206的表面积通过深度(或者所描绘的区域与摄像机的距离)的平方与图像单元204的表面积相关联。给定身体部位与图像单元的概率质量被定义为概率输入值(即,该图像单元描绘该身体部位的概率)乘以在该图像单元处的深度值的平方。这确保远离摄像机的图像单元与靠近摄像机的图像单元被赋予相当的概率质量。更一般来说,概率质量与图像单元的深度以及在给定图像单元的情况下身体部位的概率相关联。
图3是对深度图像进行压缩的方法的流程图,该深度图像在每个图像单元处具有相关联的身体部位概率信息。首先选择300下采样比例。在一些例子中,该比例被自动选择,并且可被动态调节。在 其他例子中,该比例被预先配置,而在其他例子中,由用户基于经验数据手动设置该比例。
在每个图像单元处针对每个身体部位计算302概率质量W。例如,如果有31个身体部位,那么在每个图像单元处计算31个概率质量。如上文所述,可以使用深度和概率信息来计算概率质量。
选择304身体部位并且启动对输入数据进行下采样的处理306。根据下采样比例从深度图像中选择308 —组图像单元。例如,在深度图像被表示为图像单元的二维阵列的情况下,该组图像单元可以是形成正方形的四个相邻图像单元所构成的块。然而,不一定非要使用四个图像单元构成的块,也可以使用其他尺寸的块或者其他形状或区域。在一些例子中,该组图像单元可以是三维的或更高维的。
例如通过执行用概率质量加权的求和来聚合所选的组中图像单元的概率值,并且存储聚合值。还计算并存储该组的图像单元的聚合概率质量。
选择另一组图像单元(例如,2D阵列中的下一个由四个图像单元构成的块),并且重复聚合处理,直到处理完312该深度图像的所有图像单元。
存储314针对身体部位下采样到的输入数据。选择接下来的身体部位,并且重复该处理,直到处理完316所有身体部位。这样,在下采样到的数据的尺寸小于输入数据的情况下对输入图像进行压缩。例如,概率和深度的每个dXd被缩减到一个输出单元,如矢量 (χ, y, z, w),其中χ, y, ζ是输入概率的质心,w是总的概率质量。在使用身体部位概率信息的例子中,输出单元可被称为下采样的身体部位矢量。不一定非要将矢量格式用于输出单 元;也可以使用其他格式。输出单元包括概率分布特征,如X,y,Z和概率质量W。
可以使用多线程或以任何其他适当方式至少部分并行地执行图3的方法。例如, 可以针对每个身体部位并行地执行下采样处理306。此外,下采样处理本身可以使用并行处理。
通过在输出单元中保留聚合概率质量信息,并且通过在概率值的聚合期间考虑概 率质量信息,输出单元保留了能够使用聚类确定身体部位中心的信息。然而,与原始输入数 据相比,输出单元在尺寸上被压缩,所以聚类处理在计算上较廉价。
该下采样处理可被认为是准确度与计算时间的折中。产生可使用的结果的准确度 水平随着对象(人或动物身体)离深度摄像机的远近而变化。在图3的步骤300,可以通过适 当地选择下采样比例来考虑这一点。例如,可以根据深度图像的前景区域的深度来选择下 采样比例。典型地,前景区域描绘场景中一个或多个玩家或其他人或动物身体。可以从深 度图像本身获得前景区域的深度。例如,如果玩家离深度摄像机较远,那么与玩家靠近深度 摄像机的情况相比,需要增加准确度水平。在使用本文中描述的方法捕获并处理深度图像 的连续流的情况下,可以在游戏或其他系统的操作期间动态调节所述比例。此外,针对深度 图像的不同区域可以选择不同的比例。例如,在多个玩家离深度摄像机深度不同的情况下, 在一例子中,图3的处理被修改为选择多个比例并且根据所述多个比例中的第一比例计算 第一组输出单元,根据所述多个比例中的第二比例计算第二组输出单元。
参考图4,根据概率质量接收400并过滤402身体部位A的下采样输入数据。例 如,在被压缩的身体部位概率质量太低的情况下,该过滤去除下采样的身体部位矢量。对下 采样输入数据的剩余下采样身体部位矢量执行聚类404,并且被找到的聚类(或多个聚类) 提供身体部位A的中心的3D位置的假设位置。该概率质量可用于指示身体部位A的中心 的3D位置的置信度。可以使用任何类型的聚类处理,非穷举的例子包括k均值聚类、凝聚 聚类、均值漂移聚类。
在一例子中,使用如现在参照图5和图6描述的均值漂移聚类。在图5中示意性 地示出了均值漂移处理。在500处示出包括身体部位A的深度和概率的下采样身体部位矢 量。在3D世界空间中,下采样身体部位矢量504被选择并移位到新的位置506。为了方便 绘图,在图5中将3D世界空间描绘为2D输出区域502。移位矢量508表示下采样身体部 位矢量504如何转换到新的位置506。当下采样身体部位矢量504的相邻矢量根据聚类核 (如高斯核)聚合时,基于所述相邻矢量计算移位矢量。针对输入500的所有下采样身体部 位矢量重复使下采样身体部位矢量移位的处理,直到移位矢量最小为止。在该处理结束时, 下采样身体部位矢量聚类为一个或多个聚类。每个聚类代表身体部位A的中心的一个可能 位置。
现在参照图6更详细地描述均值漂移处理。从身体部位A的下采样数据选择600 下采样身体部位矢量。例如,从图3的处理获得该下采样数据。如前文所述,该下采样身体 部位矢量可被认为是如前所述的矢量X,Y, ZjW0通过对用核(如高斯核)加权的相邻下采样 身体部位矢量的矢量取平均值602来找到移位矢量。高斯核是在与所选择的下采样身体部 位矢量及其相邻矢量形成的块有相同尺寸的窗口或区域内的二维高斯函数。可以使用任意 核来用于将矢量聚类。
将下采样身体部位矢量按其移位矢量进行移位604,并且选择600下一个下采样 身体部位矢量。这针对所有下采样身体部位矢量进行重复606,直到移位矢量低于阈值。结 果是下采样身体部位矢量的一个或多个聚类。该处理输出608聚类的3D位置,作为该身体 部位的中心的可能3D位置。输出每个3D位置的置信度信息。通过在该均值漂移处理期间 聚合移动到该聚类中的每个下采样身体部位矢量的概率质量w,通过对移动到该聚类中的 下采样身体部位矢量的数目进行计数,或者通过其他处理,获得聚类的置信度信息。可以针 对每个身体部位重复610该处理(即,步骤600至608)。可以并行执行针对每个身体部位的 该处理,但这不是必须的。
可以学习本文中描述的方法的各种参数。例如,在聚类处理中使用的任意核的窗 口尺寸、在该聚类处理中使用高斯核的情况下高斯核的标准偏差、过滤步骤的阈值以及其 他参数。例如,最初可将所述参数设置为默认值,并且针对训练数据验证所述参数。验证处 理的结果可被用于调节参数值。
图7示出用于控制计算机游戏的示例性的基于摄像机的控制系统700。可以在该 基于摄像机的控制系统中实现在上文中参照图2至图6描述的方法。在该示例性例子中, 图7示出用户702正在玩拳击游戏。在一些例子中,基于摄像机的控制系统700还可用于 但不限于确定身体姿势,绑定,识别,分析,跟踪,与目标人相关联,提供反馈,解释姿态和/ 或与目标人如用户702的各个方面相匹配,等等。
基于摄像机的控制系统700包括计算设备704。图1的计算设备102可以与计算 设备704 —体化。计算设备704可以是通用计算机、游戏系统或控制台或者专用的图像处 理设备。计算设备704可以包括硬件部件和/或软件部件,使得计算设备704可用于执行 应用程序,如游戏应用程序和/或非游戏应用程序。稍后参照图8和图9讨论计算设备704 的结构。
基于摄像机的控制系统700还包括捕获设备706。捕获设备706可以例如是图像 传感器或者检测器,其可被用于在视觉上监视一个或多个用户(如用户702),使得由所述一 个或多个用户做出的姿态可以被捕获、分析、处理和跟踪,以在游戏或应用程序内进行一个 或多个控制或动作,下面对此进行更详细的描述。
基于摄像机的控制系统700还可以包括连接到计算设备704的显示设备708。该 显示设备可以是电视机、监视器、高清电视机(HDTV)等等,其可以向用户702提供游戏或应 用画面(以及可选地提供音频)。
在操作中,可以使用捕获设备706跟踪用户702,从而计算设备704 (和/或捕获 设备706)可以将用户702的关节位置、运动和大小解释为可被用于影响由计算设备704执 行的应用程序的控制。结果,用户702可以移动他或她的身体,以控制所执行的游戏或应用程序。
在图7的示例性例子中,在计算设备704上执行的应用程序是用户702正在玩的 拳击游戏。在该例子中,计算设备704控制显示设备708以将拳击对手的视觉形象提供给 用户702。计算设备704还控制显示装置708以提供用户化身的视觉形象,用户702可以 用他或她的移动来控制该视觉形象。例如,用户702可以在真实空间中抡出一拳,以使该用 户化身在游戏空间中抡出一拳。因此,根据该例子,基于摄像机的控制系统700的计算设备 704和捕获设备706可用于识别和分析用户702在真实空间中的挥拳动作,使得该挥拳动作可被解释为对游戏空间中的用户化身的游戏控制。
此外,一些移动可被解释为与控制该化身的动作以外的动作相对应的控制。例如, 该用户可以使用移动来进入,退出,打开或关闭系统,暂停,保存游戏,选择级别、外形或菜 单,观看高分,与朋友通信等。另外,可以用任何适当的方式来使用或分析用户702的移动, 以与游戏以外的应用程序交互,例如,进入文本,选择光标或菜单项目,控制媒体回放,浏览 网站或对操作系统或应用程序的任何其他可控制的方面进行操作。
现在参考图8,图8示出可以在图7的基于摄像机的控制系统700中使用的捕获设 备706的示意图。在图8的例子中,捕获设备706被配置为捕获具有深度信息的视频图像。 这种捕获设备可被称为深度摄像机。该深度信息可以为深度图像的形式,该深度图像包括 深度值,即,与该深度图像的每个图像单元相关联的值,该值与深度摄像机和位于该图像单 元处的项目或物体之间的距离有关。
可以使用任何适当的技术获得该深度信息,例如,包括传播时间、结构化的光、立 体图像等。在一些例子中,捕获设备706可以将深度信息组织为“Z层”或者与Z轴垂直的 层,其中Z轴从深度摄像机起沿着深度摄像机的视线延伸。
如图8中所示,捕获设备706包括至少一个成像传感器800。在图8中所示的例子 中,成像传感器800包括被配置为捕获场景的深度图像的深度摄像机802。所捕获的深度图 像可以包括所捕获的场景的二维(2-D)区域,其中该2-D区域中的每个图像单元代表深度 值,如所捕获的场景中的物体到深度摄像机802的长度或距离。
该捕获设备还可以包括发射器804,发射器804被配置为照射所述场景,使得深度 摄像机802可以探知深度信息。例如,在深度摄像机802是红外(IR)传播时间摄像机的 情况下,发射器804将IR光发射到该场景上,并且深度摄像机802被配置为检测从该场景 中的一个或多个目标和物体的表面背向散射的光。在一些例子中,可以从发射器804发射 脉冲红外光,使得输出光脉冲和对应的输入光脉冲之间的时间可被该深度摄像机检测到, 并且被测量和用于确定从捕获设备706到该场景中目标或物体上的位置的物理距离。另 外,在一些例子中,可以比较来自发射器804的输出光波的相位与深度摄像机802处的输入 光波的相位,以确定相移。然后该相移可用于确定从捕获设备706到目标或物体上的位置 的物理距离。在进一步的例子中,传播时间分析可用于通过利用例如包括快门光脉冲成像 (shuttered light pulse imaging)的各种技术分析反射光束随时间变化的强度,以间接确 定从捕获设备706到目标或物体上的位置的物理距离。
在另一个例子中,捕获设备706可以使用结构化的光,以捕获深度信息。在这种技 术中,可以使用发射器804将图案化的光(例如,显示为已知图案的光,如网状图案或条状 图案)投射在场景上。当入射到该场景中的一个或多个目标或物体的表面时,该图案变形。 这种图案变形可被深度摄像机802捕获到,然后被分析以确定从捕获设备706到该场景中 的目标或物体上的位置的物理距离。
在另一个例子中,深度摄像机802可以为两个或更多个的物理上分开的从不同角 度观看场景的摄像机的形式,从而可以获得立体视觉数据,该数据可被解析以产生深度信 息。在此情况下,可以使用发射器804来照射该场景,或者可以省略发射器804。
在一些例子中,除了深度摄像机802以外,捕获设备706可以包括被称为RGB摄像 机806的常规视频摄像机。RGB摄像机806被配置为在可见光频率捕获场景的图像序列,并且因此可以提供可用于增强深度图像的图像。在可选的例子中,可以使用RGB摄像机806 代替深度摄像机802。
图8中所示的捕获设备706还包括至少一个处理器808,处理器808与成像传感器800 (B卩,图8的例子中的深度摄像机802和RGB摄像机806)和发射器804通信。处理器808可以是通用的微处理器,或者专用的信号/图像处理器。处理器808被配置为执行指令以控制成像传感器800和发射器804以捕获深度图像和/或RGB图像。处理器808还可以被可选地配置为对这些图像进行处理,稍后对此进行更详细的描述。
在一些例子中,使用该成像传感器提供轮廓图像,该轮廓图像是二维的二值图像, 用于识别由成像传感器捕获的深度图像和/或RGB图像的前景和背景区域。可以在成像传感器处和/或处理器808处根据所捕获的深度图像和RGB图像形成该轮廓图像。可以使用本文中描述的方法处理该轮廓图像以预测二维关节位置。在此情况下,该轮廓图像可被认为是平面化到固定深度的深度图像。所捕获的深度图像可被用于预测三维关节位置,下面对此进行更详细的描述。
图8中所示的捕获设备706还包括存储器810,存储器810被配置为存储由处理器 808执行的指令、由深度摄像机802或RGB摄像机806捕获的图像或图像帧,或者任何其他适当的信息、图像等。在一些例子中,存储器810可以包括随机访问存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘或者任何其他适当的存储部件。存储器810可以是与处理器 208通信的分开的部件,或者存储器810可以被整合到处理器808中。
捕获设备706还包括与处理器808通信的输出接口 812,并且被配置为通过通信链路向计算设备704提供数据。该通信链路可以例如是有线连接(如USB (商标)、Firewire (火线,商标)、Ethernet (以太网,商标)等)以及/或者无线连接(如WiFi (商标)、Bluetooth (蓝牙,商标)等)。在其他例子中,输出接口 812可以与一个或多个通信网络(如因特网)接口,并且通过这些网络向计算设备704提供数据。
图9示出可以作为任何形式的计算设备和/或电子设备实现的并且可以在其中实现身体部位中心位置 预测系统的实施例的示例性的基于计算的设备704的各种部件。
基于计算的设备704包括一个或多个处理器900,处理器900可以是微处理器、控制器、图形处理单元、并行处理单元或者用于处理计算机可执行指令以控制该设备的操作从而预测图像中的身体部位中心位置的任何其他适当类型的处理器。在一些例子中,例如在使用片上系统架构的情况下,处理器900可以包括一个或多个固定功能块(也称为加速器),该固定功能块以硬件(而不是软件或固件)实现身体部位中心位置预测方法的一部分。
基于计算的设备704包括一个或多个输入接口 902,输入接口 902被配置为接收并处理来自一个或多个设备的输入,如用户输入设备(例如,捕获设备706、游戏控制器904、 键盘906和/或鼠标908)。该用户输入可用于控制在计算设备704上执行的软件应用程序或游戏。
基于计算的设备704还包括输出接口 910,输出接口 910被配置为将显示信息输出到显示设备708,显示设备708可以与计算设备704分开或者与计算设备704 —体化。该显示信息可以提供图形用户界面。在一个例子中,如果显示设备708是触敏显示设备,那么它还可以充当用户输入设备。该输出接口可以将数据输出到该显示设备以外的设备,例如,本地连接的打印设备。
可以使用可被基于计算的设备704访问的任何计算机可读介质来提供该计算机 可执行指令。计算机可读介质可以包括例如计算机存储介质912,如存储器和通信介质。计 算机可读介质912,如存储器,包括易失性和非易失性的、可拆卸和不可拆卸的介质,它可以 由用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技 术来实现。计算机存储介质包括但不限于RAM、R0M、EPR0M、EEPR0M、闪存或者其他记忆体技 术,CD-ROM、数字多功能盘(DVD)或者其他光学存储设备,磁带盒、磁带盘、磁盘存储器或者 其他磁存储设备,或者可被用于存储由计算设备访问的信息的任何其他非传输介质。相反, 通信介质可以在经调制的数据信号如载波或其他传输机制中包含计算机可读指令、数据结 构、程序模块或其他数据。如本文中定义的,计算机存储介质不包括通信介质。因此,计算 机存储介质不应当被理解为传播的信号本身。尽管计算机存储介质912 (存储器)被示出 在基于计算的设备704内,但是应该意识到,存储设备可以是分布式的,或者是远程设置的 并且通过网络或者其他通信链路(例如,使用通信接口 913)来访问。
可以在计算设备704中提供平台软件,该平台软件包括操作系统914或者任何其 他适当的平台软件,以使得能够在该设备上执行应用软件916。可以在计算设备704上执行 的其他软件包括身体中心逻辑918 (例如参见图3至图6以及上文的描述);身体部位逻辑 920 (其被配置为使身体部位上的概率分布与深度图像的每个图像单元相关联)。提供数据 存储922以用于存储数据,如先前接收到的深度图像、中间计算结果、参数、概率分布、身体 部位标记和其他数据。
术语“计算机”在本文中被用于指代具有处理能力从而可以执行指令的任何设备。 本领域的技术人员将会意识到,这种处理能力可以结合在许多个不同设备中,因此术语“计 算机”包括PC、服务器、移动电话、个人数字助理以及许多其他设备。
本文描述的方法可以通过有形存储介质上的机器可读形式的软件来进行,例如以 包括计算机程序代码部的计算机程序的形式,当该程序在计算机上运行时并且在该计算机 程序可以包含在计算机可读介质上的情况下,该计算机程序适于进行本文中描述的任何方 法的所有步骤。有形的(或者非暂时的)存储介质的例子包括包括计算机可读介质在内的 计算机存储介质,如磁盘、U盘(thumb drive)、内存等,并且不包括传播的信号。该软件可 适合于在并行处理器或串行处理器上执行,使得可以以任何适当的顺序或者同时执行所述 方法的步骤。
这表明软件可以是有价值的可单独买卖的商品。意图包含在“哑(非智能)”硬件 或标准硬件上运行或者控制该“哑(非智能)”硬件或标准硬件以执行所需功能的软件。还 意图包含“描述”或定义硬件的配置的软件,如HDL (硬件描述语言)软件,其被用于设计硅 芯片或者用于配置通用可编程芯片以执行所需功能。
本领域的技术人员将会意识到,用于存储程序指令的存储设备可以分布在网络 上。例如,远程计算机可以存储被描述为软件的处理的例子。本地或终端计算机可以访问该 远程计算机并且下载该软件的一部分或全部以运行该程序。或者,本地计算机可以根据需 要下载该软件的多个部分,或者在本地计算机上执行一些软件指令并且在远程计算机(或 者计算机网络)上执行一些软件指令。本领域的技术人员还将认识到,通过利用本领域的技 术人员已知的传统技术,所述软件指令的全部或一部分可以由专用电路来执行,如DSP、可 编程逻辑阵列等。
在不丧失所寻求的效果的情况下可以扩展或改变本文中给出的任何范围或设备 值,这对技术人员来说是明显的。
尽管以结构特征和/或方法动作特有的语言描述了本主题,但是应当理解,所附 权利要求中限定的主题不一定局限于上文描述的特定特征或动作。相反,上文描述的特定 特征和动作是作为实现所述权利要求的示例形式公开的。
应当理解,上文描述的益处和优势可能涉及一个实施例,也可能涉及几个实施例。 所述实施例不局限于解决任何或全部所述问题的实施例,也不局限于具有任何或全部所述 益处或和优势的实施例。还应该理解,提到“一”项时,是指一个或多个这些项。
本文描述的方法的步骤可以根据需要以任何适当的顺序或同时执行。另外,在不 偏离本文中描述的主题的精神和范围的情况下,可以从任何所述方法中删除个别的块。在 不丧失所寻求的效果的情况下,上文描述的任何例子的各方面都可以与所描述的任何其他 例子的各方面结合以形成进一步的例子。
术语“包括”在本文中被用于表示包括所指出的方法的块或单元,但是这些块或单 元不构成排他的列表,并且方法和设备可以包含更多的块或单元。
应当理解,以上描述仅是以举例的方式给出的,并且本领域的技术人员可以进行 各种修改。以上说明、例子和数据提供了示例性实施例的结构和使用的完整描述。尽管上文 以一定程度的具体性或者参考一个或多个个别实施例描述了各个实施例,但是在不偏离本 说明书的精神或范围的情况下,本领域的技术人员可以对所公开的实施例进行许多修改。
权利要求
1.一种用于对包括概率信息的深度图像进行压缩的计算机实现的方法,所述方法包括 接收图像(108),所述图像(108)包括多个图像单元,每个图像单元具有深度值和在多个类别上的概率分布(110),所述概率分布(110)代表所述图像单元是每个类别的成员的可能性; 针对每个图像单元,计算(302)每个类别的概率质量,所述概率质量与所述图像单元的深度和所述图像单元的类别概率相关;以及 针对每个类别,至少通过基于所述概率质量聚合所述图像单元,以比接收到的图像更低的分辨率计算(306)多个输出单元。
2.根据权利要求1所述的方法,每个输出单元包括下列项中的任意项聚合概率质量和概率分布的多个特征;具有概率分布在三维中每一维上的质心和聚合概率质量的矢量;以及具有身体部位概率分布在至少三维中每一维上的质心和聚合概率质量的下采样身体部位矢量。
3.根据权利要求1或2所述的方法,所述类别是下列项中的任意项身体部位、物体类另U、前景区域和背景区域。
4.根据上述任一项权利要求所述的方法,所述聚合包括计算(310)多个图像单元之和,每个图像单元用其概率质量加权;以及通过聚合所述多个图像单元的所述概率质量来计算聚合概率质量。
5.根据上述任一项权利要求所述的方法,其中,针对每个类别并行地执行所述输出单元的计算。
6.根据上述任一项权利要求所述的方法,包括根据所述深度图像的前景区域的深度来选择(300)比例,并且根据所述比例计算所述输出单元。
7.根据权利要求1至5中任一项所述的方法,包括选择多个比例,并且根据所述多个比例中的第一比例计算第一组输出单元,而根据所述多个比例中的第二比例计算第二组输出单元。
8.根据上述任一项权利要求所述的方法,包括在所述类别是身体部位的情况下,至少部分基于概率质量将所选择的输出单元聚类(404)以获得身体部位中心位置;其中,所述聚类包括使用均值漂移处理,在均值漂移处理中,根据相邻输出单元的加权聚合来将每个输出单元反复地移位。
9.根据权利要求8所述的方法,包括通过使用在所述均值漂移处理中移位到每个身体部位的聚类的输出单元的概率质量,或者通过对聚类中的输出单元计数,来计算该身体部位中心位置的置信度。
10.一种压缩深度图像的设备,包括 输入端,其被配置为接收图像(108),所述图像(108)包括多个图像单元,每个图像单元具有深度值和在多个类别上的概率分布(110),所述概率分布(110)代表所述图像单元是每个类别的成员的可能性; 处理器(102),其被配置为针对每个图像单元,计算每个类别的概率质量,所述概率质量与所述图像单元的深度和所述图像单元的类别概率相关;以及 所述处理器被配置为针对每个类别,通过基于所述概率质量聚合所述图像单元,以比接收到的图像更低的分辨率计算多个输出单元 。
全文摘要
本发明公开了深度图像压缩,该深度图像压缩例如能够从深度图像实时检测游戏玩家的身体部位中心,或者用于其他应用,如增强现实和人机互动。在一实施例中,使用概率质量压缩具有相关身体部位概率的深度图像,该概率质量与图像单元的深度和该图像单元的身体部位的概率相关联。在各种例子中,使用概率质量压缩深度图像能够通过对输出的单元聚类来加快身体部位中心检测。在一些例子中,根据前景区域的深度选择压缩比例,而在一些情况下,针对不同的图像区域使用不同的比例。在一些例子中,使用聚类的图象单元的概率质量来计算身体部位中心的置信度。
文档编号G06T1/00GK103020885SQ20121043197
公开日2013年4月3日 申请日期2012年11月1日 优先权日2011年11月1日
发明者杰米·肖顿, 托比·夏普 申请人:微软公司