使用红外成像的颜色标识转让专利

申请号 : CN201580036209.6

文献号 : CN106471523B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : L·梁C·F·休特玛

申请人 : 微软技术许可有限责任公司

摘要 :

公开了涉及颜色标识的实施例。在一个示例中,一种图像处理方法包括接收包括多个红外(IR)像素的IR图像,每一IR像素指定该IR像素的一个或多个IR参数;在IR图像中标识对人类皮肤进行成像的IR皮肤像素;至少部分地基于IR皮肤像素来标识所标识的人类皮肤的肤色,该肤色具有一个或多个预期可见光(VL)参数;接收包括多个VL像素的VL图像,每一VL像素指定该VL像素的一个或多个VL参数;在该VL图像中标识对所标识的人类皮肤进行成像的VL皮肤像素;以及调整VL图像以提高VL皮肤像素的一个或多个VL参数与所标识的肤色的一个或多个预期VL参数之间的对应性。

权利要求 :

1.一种图像处理方法,包括:

从红外相机接收对包括多个红外像素的红外图像进行编码的信号,每一红外像素指定该红外像素的一个或多个红外参数;

在所述红外图像中标识对人类皮肤成像的红外皮肤像素,所述一个或多个红外参数包括红外强度;

通过将每一个红外皮肤像素的红外强度映射到多个红外强度子范围中的一个对应的红外强度子范围来确定多个肤色中的哪一个肤色对应于所述人类皮肤,所述多个红外强度子范围各自被预定为对应于所述多个肤色之一,所述多个肤色中的每一者被预定为具有一个或多个预期可见光参数;

从可见光相机接收对包括多个可见光像素的可见光图像进行编码的信号,每一可见光像素指定该可见光像素的一个或多个可见光参数;

在所述可见光图像中标识对所标识的人类皮肤成像的可见光皮肤像素;以及调整所述可见光图像以提高所述可见光皮肤像素的所述一个或多个可见光参数与所标识的肤色的所述一个或多个预期可见光参数之间的对应性。

2.如权利要求1所述的方法,其特征在于,红外皮肤像素基于该皮肤像素的红外强度在红外强度的预定范围内来被标识为对人类皮肤成像。

3.如权利要求1所述的方法,其特征在于,标识所述红外皮肤像素还包括分析所述红外图像以寻找对应于人类身体形状的几何特征。

4.如权利要求1所述的方法,其特征在于,标识所述可见光皮肤像素包括选择所述多个可见光像素中的与所标识的红外皮肤像素配准的可见光皮肤像素。

5.如权利要求1所述的方法,其特征在于,所述一个或多个预期可见光参数指定中性光照条件下的预期肤色。

6.如权利要求5所述的方法,其特征在于,所述可见光图像被调整以使得每一可见光皮肤像素的色值基本上匹配所述预期肤色。

7.如权利要求1所述的方法,其特征在于,还包括标识经调整可见光图像中的一个或多个非可见光皮肤像素的颜色。

8.如权利要求7所述的方法,特征在于,所述非可见光皮肤像素对人类头发成像。

9.如权利要求1所述的方法,其特征在于,调整所述可见光图像包括经由S曲线调整所述多个可见光像素的亮度。

10.一种图像处理方法,包括:

接收包括多个红外像素的红外图像,每一红外像素指定该红外像素的一个或多个红外参数;

在所述红外图像中标识对人类皮肤成像的红外皮肤像素,所述一个或多个红外参数包括红外强度;

通过将每一个红外皮肤像素的红外强度映射到多个红外强度子范围中的一个对应的红外强度子范围来确定多个肤色中的哪一个肤色对应于所述人类皮肤,所述多个红外强度子范围各自被预定为对应于所述多个肤色之一,所述多个肤色中的每一者被预定为对于一个或多个光通道具有预期可见光亮度;

接收包括多个可见光像素的可见光图像,每一可见光像素指定该可见光像素针对所述一个或多个光通道的亮度;

在所述可见光图像中标识对所标识的人类皮肤成像的可见光皮肤像素;以及调整所述可见光图像以提高针对所述一个或多个光通道的所述可见光皮肤像素的亮度和所标识的肤色的预期可见光亮度之间的对应性。

11.如权利要求10所述的方法,其特征在于,红外皮肤像素基于该皮肤像素的红外强度在红外强度的预定范围内来被标识为对人类皮肤成像。

12.如权利要求10所述的方法,其特征在于,标识所述可见光皮肤像素包括选择所述多个可见光像素中的与所标识的红外皮肤像素配准的可见光皮肤像素。

13.如权利要求10所述的方法,其特征在于,所述肤色对于红光通道、蓝光通道和绿光通道具有相应的预期可见光亮度,其中每一可见光像素指定该可见光像素对于所述红光通道、所述蓝光通道和所述绿光通道的相应亮度,并且所述可见光图像被调整以提高所述可见光皮肤像素的红光通道亮度、蓝光通道亮度和绿光通道亮度与所标识的肤色的预期红光通道亮度、预期蓝光通道亮度和预期绿光通道亮度之间的相应对应性。

14.如权利要求10所述的方法,其特征在于,还包括标识所述经调整可见光图像中的一个或多个非可见光皮肤像素针对所述一个或多个光通道的亮度。

15.一种计算设备,包括:

被配置成从红外相机接收包括多个红外像素的红外图像的红外相机接口,每一红外像素指定该红外像素的一个或多个红外参数,包括该红外像素的红外强度;

被配置成从可见光相机接收包括多个可见光像素的可见光图像的可见光相机接口,每一可见光像素指定该可见光像素的一个或多个可见光参数;

逻辑机;以及

保存指令的存储机,所述指令能由所述逻辑机执行以便:

在所述红外图像中标识对人类皮肤成像的红外皮肤像素;

通过将每一个红外皮肤像素的红外强度映射到多个红外强度子范围中的一个对应的红外强度子范围来确定多个肤色中的哪一个肤色对应于所述人类皮肤,所述多个红外强度子范围各自被预定为对应于所述多个肤色之一,所述多个肤色中的每一者被预定为具有一个或多个预期可见光参数;

在所述可见光图像中标识对所标识的人类皮肤成像的可见光皮肤像素;以及调整所述可见光图像以提高所述可见光皮肤像素的所述一个或多个可见光参数与所标识的肤色的所述一个或多个预期可见光参数之间的对应性。

16.如权利要求15所述的计算设备,其特征在于,红外皮肤像素基于该皮肤像素的红外强度在红外强度的预定范围内来被标识为对人类皮肤成像。

17.如权利要求15所述的计算设备,其特征在于,标识所述可见光皮肤像素包括选择所述多个可见光像素中的与所标识的红外皮肤像素配准的可见光皮肤像素。

18.一种包括用于执行如权利要求1-14中的任一项所述的方法的装置的计算机系统。

19.一种具有指令的计算机可读存储介质,所述指令在被执行时使机器执行如权利要求1-14中的任一项所述的方法。

说明书 :

使用红外成像的颜色标识

[0001] 背景
[0002] 各种电子成像系统利用彩色图像传感器来捕捉场景的彩色图像。然而,颜色感知应变于周围的光照条件。在一组光照条件下成像的对象可被认为具有与在一组不同的光照条件下成像的对象不同的颜色。此类色彩成像系统对颜色的标识由此可能是易变的。
[0003] 概述
[0004] 公开了涉及图像中的颜色标识的实施例。在一个示例中,一种图像处理方法包括从红外相机接收对包括多个红外(IR)像素的IR图像进行编码的信号,每一IR像素指定该IR像素的一个或多个IR参数;在IR图像中标识对人类皮肤进行成像的IR皮肤像素;至少部分地基于IR皮肤像素来标识所标识的人类皮肤的肤色,该肤色具有一个或多个预期可见光(VL)参数;从VL相机接收对包括多个VL像素的VL图像进行编码的信号,每一VL像素指定该VL像素的一个或多个VL参数;在该VL图像中标识对所标识的人类皮肤进行成像的VL皮肤像素;以及调整VL图像以提高VL皮肤像素的一个或多个VL参数与所标识的肤色的一个或多个预期VL参数之间的对应性。
[0005] 提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部分中所提及的任何或所有缺点的实现。
[0006] 附图简述
[0007] 图1A-1B示出了机器视觉系统的非限制性示例。
[0008] 图2用图形示出了机器视觉系统的简化的骨架跟踪流水线。
[0009] 图3示出了IR图像与VL图像之间的像素配准的示例。
[0010] 图4解说了对IR图像中的皮肤像素的标识。
[0011] 图5示出了解说基于收集到的可见光和IR光来标识图像中的颜色的方法的流程图。
[0012] 图6示意性地示出了计算系统的非限制性实施例。
[0013] 图7示出了示例机器视觉系统的各方面。
[0014] 图8示出了示例IR相机。
[0015] 详细描述
[0016] 数字彩色图像可能受到在捕捉该图像时存在的光照的极大影响。在一些情形中,不利的光照条件能以不合乎需要的方式转变所得图像颜色。如下文讨论的,可使用红外相机来查找数字图像的包括人类皮肤的各部分以及这些皮肤的预期肤色。有了该知识,图像颜色可被转变以使得皮肤颜色与预期肤色相对应。
[0017] 图1A示出了机器视觉系统10的非限制性示例。具体而言,图1A示出了计算机游戏系统12,该计算机游戏系统12可以用于玩各种各样不同的游戏、播放一个或多个不同的媒体类型、和/或控制或操纵非游戏应用。图1A还示出了可用于向游戏玩家(诸如游戏玩家18)呈现游戏视觉的显示器14。此外,图1A示出了跟踪设备20,其可以用于在视觉上监视诸如游戏玩家18之类的一个或多个游戏玩家。图1A所示的示例机器视觉系统10是非限制性的。各种不同的计算系统可出于各种不同的目的利用机器视觉,而不背离本公开的范围。
[0018] 机器视觉系统可用于识别、分析和/或跟踪一个或多个人类主体,诸如游戏玩家18(也被称为人类主体18)。图1A示出了其中跟踪设备20跟踪游戏玩家18以使得游戏玩家18的移动可被游戏系统12解释的场景。具体而言,游戏玩家18的移动被解释为可用于影响正由游戏系统12执行的游戏的控制。换言之,游戏玩家18可以使用他的移动来控制游戏。游戏玩家18的移动可以被解释成实际上任何类型的游戏控制。
[0019] 图1A中示出的示例场景示出了游戏玩家18正在玩正由游戏系统12执行的拳击游戏。游戏系统使用显示器14来在视觉上向游戏玩家18呈现拳击对手22。此外,游戏系统使用显示器14来在视觉上呈现游戏玩家18用其移动控制的玩家化身24。
[0020] 如图1B中所示,游戏玩家18可以在物理空间中挥出重拳来作为对玩家化身24在游戏的虚拟空间中挥出重拳的指令。游戏系统12和/或跟踪设备20可以用于识别和分析游戏玩家18在物理空间中的重拳,从而使得该重拳可以被解释成使得游戏化身24在虚拟空间中挥出重拳的游戏控制。例如,图1B示出了显示器14响应于游戏玩家18在物理空间中挥出重拳而在视觉上呈现游戏化身24挥出袭击拳击对手22的重拳。然而,将认识到游戏玩家18的其它移动可被解释为其它控制,并且一些移动可被解释为服务于除了控制化身24之外的目的的控制。
[0021] 游戏玩家18的属性可由机器视觉系统10分析以使得玩家化身24可被呈现为模仿游戏玩家18的各方面。例如,机器视觉系统10可用于确定与游戏玩家18的头发、服装和/或皮肤相关联的颜色以使得玩家化身24共享该游戏玩家的这些属性中的一者或多者。为了执行颜色判定,跟踪设备20可利用红外(IR)相机来对游戏玩家18进行成像。被人类主体18的皮肤反射且被IR相机捕捉到的IR光可用于确定将在可见光(VL)相机对人类主体进行成像的情况下预期的人类主体的肤色。该预期肤色可以与VL相机捕捉到的人类主体18的实际肤色相比较并用于调整VL图像以提高预期和实际肤色之间的对应性。用IR相机可以比只用VL相机更准确地确定颜色,因为环境光照条件通常比红外波长更多地影响可见波长。
[0022] 除了人类之外的对象可被建模和/或跟踪。此类对象可以独立于人类主体来被建模和跟踪。游戏玩家持有的对象也可被建模和跟踪以使得玩家和该对象的运动被协同分析以调整和/或控制游戏参数。例如,可以跟踪并利用手持球拍的玩家的运动和/或球拍自身的运动来控制体育游戏中的屏幕上球拍。此类对象的属性可由机器视觉系统10分析以使得相应的虚拟对象可被呈现为模仿所成像的真实世界对象的各方面。作为一个示例,屏幕上球拍可以呈现有与游戏玩家18持有的真实球拍相同的颜色和/或大小。
[0023] 机器视觉系统还可以用于将人类移动解释成游戏领域之外的操作系统和/或应用控制。操作系统、应用或其它计算产品的基本上任何可控方面都可以由人类的移动来控制。所示出的拳击场景是作为示例来提供的,但决不意味着以任何方式进行限制。相反,所示出的场景旨在展示可以在不背离本公开的范围的情况下应用于各种各样不同的应用的一般概念。
[0024] 图2用图形示出了机器视觉系统的简化的骨架跟踪流水线26。为了解释简明起见,骨架跟踪流水线26参考图1A和1B的机器视觉系统10来描述。然而,骨架跟踪流水线26可以在任何合适的机器视觉系统上实现,而不背离本公开的范围。例如,骨架跟踪流水线26可以在图7的机器视觉系统700上实现。此外,可使用不同于骨架跟踪流水线26的骨架跟踪流水线,而不背离本公开的范围。此外,基于IR的颜色校正可独立于任何骨架建模而使用。
[0025] 在28,图2示出了从跟踪设备20的角度的游戏玩家18。诸如跟踪设备20之类的跟踪设备可包括被配置成观察诸如游戏玩家18之类的人类主体的一个或多个传感器。
[0026] 在30,图2示出了诸如跟踪设备20等跟踪设备收集到的观察数据的示意性表示32。收集到的观察数据的类型将取决于跟踪设备中所包括的传感器的数目和类型而变化。在所示示例中,跟踪设备包括可见光(VL)相机(例如,彩色相机)以及包括红外(IR)光源的IR相机。
[0027] IR相机可任选地是诸如飞行时间(TOF)立体相机之类的三维深度相机或者是可用于生成三维深度图像的结构化光深度相机,而在其它实现中红外相机可以是可用于生成二维IR图像的二维IR相机。在一些实现中,二维IR相机可用于从IR反射现象的知识中推断出深度以估计三维深度。无论IR相机是三维深度相机还是二维IR相机,IR相机都可被配置成向合适的IR相机接口输出对IR图像进行编码的信号,该IR相机接口可被配置成从IR相机接收对IR图像进行编码的信号。示例IR相机以下参照图7和8描述。在其它示例中,跟踪设备还可包括其它组件,诸如用于使得能够对来自所观察的人类主体和/或其它源的有向和/或无向声音进行接收和分析的话筒。
[0028] 对于IR相机的每一个像素,IR相机可确定所观察的场景中的表面所反射的IR光的强度。每一像素的IR强度然后可用于确定该像素的深度以使得可以为IR相机的每一像素确定深度值。图2示意性地示出了IR相机的像素的示例IR强度35。在一些示例中,可形成IR图,包括各自具有相关联的IR值的多个IR像素。以此方式,可评估主体对照射的IR光的所谓的“IR响应”。另选地或另外地,IR值可以与深度值相关联以使得深度图可包括各自具有相关联的IR值和深度值的多个像素。
[0029] “深度”被定义为与IR相机的光轴平行的坐标,该坐标随着距IR相机的距离的增加而增加。图2示意性地示出了观察到的跟踪设备20的IR相机的深度像素[v,h](DPixel[v,h])的三维x/y/z坐标34。可以呈现IR相机的每一像素的类似的三维x/y/z坐标。所有像素的三维x/y/z坐标共同构成深度图。如在此使用的,术语“深度图”指与成像场景的对应区域配准的像素阵列,其中每个像素的深度值指示该对应区域的深度。可以按任何合适的方式来确定三维x/y/z坐标,而不背离本公开的范围。
[0030] 对于VL相机的每一像素,VL相机可确定所观察的场景中的表面的针对一个或多个光通道(例如,红、绿、蓝、灰度等)的相对光强度。图2示意性地示出了观察到的跟踪设备20的VL相机的可见光像素[v,h](V-LPixel[v,h])的红/绿/蓝色值。可记录VL相机的每一像素的类似的红/绿/蓝色值。所有像素的红/绿/蓝色值共同构成数字彩色图像。可以按任何合适的方式来确定红/绿/蓝色值,而不背离本公开的范围。VL相机可被配置成向合适的VL相机接口输出对VL图像进行编码的信号,该VL相机接口可被配置成从VL相机接收对VL图像进行编码的信号。参考图7更详细地讨论了示例色彩成像技术。
[0031] IR相机和VL相机可具有相同的分辨率,但这不是必需的。无论相机具有相同还是不同的分辨率,VL相机的像素都可以与IR相机的像素配准。以此方式,可通过考虑来自可见光相机和IR相机的经配准像素(例如,可见光像素[v,h]和深度像素[v,h])来为所观察的场景的每一部分确定颜色和深度信息两者。如在下文中更详细地描述的,所观察的场景中的颜色可基于VL相机观察到的色值和IR相机观察到的红外值两者来标识。
[0032] 现在转向图3,示出了IR图像302与VL图像304之间的像素配准的示例。IR图像302包括多个IR像素(例如,IR像素306)。每一IR像素指定该IR像素的一个或多个IR参数。在图3所示的示例中,IR像素306指定该像素的IR强度308,IR强度304可表示该像素所成像的表面对照射IR光的IR响应。IR像素306可以指定附加IR参数,包括但不限于x坐标310和y坐标312(它们协作来标识IR像素在IR图像302中的空间位置)、和/或标识IR像素的时间位置的时间标识符314。
[0033] VL图像304类似地包括多个VL像素(例如,VL像素316)。每一VL像素指定该VL像素的一个或多个VL参数。如图3所示,VL像素316指定R、G和B通道的相应亮度。VL像素316还指定x坐标318、y坐标320和时间标识符322,与其各自的由IR像素306指定的对应物类似。
[0034] IR像素306指定的IR参数与VL像素316指定的VL参数的比较可允许IR像素306与VL像素316的时间和/或空间配准。例如,IR像素306与VL像素316的时间配准可包括将时间标识符314匹配到时间标识符322,该时间标识符在一些示例中可以是时间戳。在另一示例中,时间标识符314和322可分别指定IR图像302(及由此的IR像素306)和VL图像304(及由此的VL像素316)在各自的IR和VL图像序列中的相对次序或位置。对于其中捕捉到IR和VL图像序列的实现,每一相应的IR和VL图像对及其组成像素可以彼此时间配准。
[0035] IR像素306与VL像素316的空间配准可以类似地包括将IR像素的x坐标310和y坐标312分别匹配到VL像素的x坐标318和y坐标320。在一些示例中,用于分别捕捉IR图像302和VL图像304的IR相机和VL相机可以在物理上彼此隔开和/或可具有不同的有利视点,这可能甚至在彼此时间配准时导致IR和VL图像之间的视差或空间未对准。在该情形中,IR像素306与VL像素316的初始空间配准可基于IR和VL相机的有利视点和由这些相机成像的表面的假定距离来推断。另选地或另外地,IR像素306与VL像素316的空间配准可包括对IR图像302应用空间变换以使得该IR图像与VL图像304更紧密地对准。在处理图像序列时,可以基于已知的有利视点和假定的成像距离来对每一IR图像和/或VL图像应用一致的空间变换。另选地,空间变换可基于一个或多个距离估计输入(例如,基于一个或多个先前图像的距离评估)来被动态地调整。在任一情形中,IR图像序列中的每一IR图像可以与VL图像序列中的相应VL图像空间地配准。
[0036] 通过以此方式将IR图像302的像素与VL图像304的像素配准,可获取关于在这些图像中捕捉到的至少一个共同表面的红外和可见光信息。如下文中更详细地描述的,对红外和可见光信息的协同使用可使得能够比单独的可见光信息所提供的测量更准确的对颜色的测量。
[0037] 返回到图2,在一些实现中,可以为深度图和/或彩色图像中的每一像素确定表面法向向量以使得相应的表面法向与深度图和/或彩色图像中的每一个像素相关联。此外,可以为深度图和/或彩色图像中的每一像素确定“光照方向”(即,来自跟踪设备的光(例如,IR光)照射主体的方向)。
[0038] 收集到的数据可采取几乎任何合适的数据结构的形式,包括但不限于包括以下的一个或多个度量:由IR相机和VL相机成像的每一像素的三维x/y/z坐标、由VL相机成像的每一像素的红/绿/蓝色值和/或由IR相机成像的每一个像素的红外值。虽然图2描绘了单个帧,但将理解人类主体可以按合适的速率(例如,每秒30帧)持续地被观察和被建模。因此,可以针对每一个这样的所观察的帧收集数据。可使用重复成像来汇集一系列时析图像-即,IR视频、彩色视频和/或深度视频。收集到的数据可经由一个或多个应用编程接口(API)来变得可用和/或被进一步分析,如下所述。
[0039] 跟踪设备和/或协同计算系统可任选地分析深度图以将要跟踪的人类主体和/或其它目标与所观察的深度图中的非目标元素区分开来。深度图中的每一像素可被分配将该像素标识为对特定目标或非目标元素进行成像的玩家索引38。作为示例,与第一玩家相对应的像素可分配有等于1的玩家索引,与第二玩家相对应的像素可分配有等于2的玩家索引,而未与目标玩家相对应的像素可分配有等于0的玩家索引。可以按任何合适的方式来确定、分配和保存这样的玩家索引,而不背离本公开的范围。在一特定实施例中,属于人类主体的像素可通过分割出在合适的时间标度内展示出高于阈值的运动的深度数据部分并尝试将该部分拟合到人类的通用几何模型来标识。如果可实现合适的拟合,则该部分中的像素被识别为人类主体的像素。
[0040] 跟踪设备和/或协同计算系统可任选地进一步分析人类主体的深度图的像素以确定每一个这样的像素很有可能对该主体的身体的什么部位成像。可使用各种不同的身体部位指派技术来评估特定像素很有可能对人类主体的身体的哪一部位成像。深度图中的具有适当的玩家索引的每一个像素可被分配身体部位索引40。身体部位索引可包括指示该像素很有可能对其成像的一个或多个身体部位的离散标识符、置信度值和/或身体部位概率分布。可以按任何合适的方式来确定、分配和保存身体部位索引,而不背离本公开的范围。
[0041] 作为一个非限制性示例,机器学习可用于向每一像素分配身体部位索引和/或身体部位概率分布。机器学习方法使用从在先训练的已知姿态集合中学习到的信息来分析人类主体。换言之,在受监督训练阶段期间,观察到各种不同的人处于各种不同姿态,并且人类训练器在观察到的数据中提供标记不同的机器学习分类器的地面实况注释。观察到的数据和注释用于生成将输入(例如,来自跟踪设备的观察数据)映射到所需输出(例如,相关像素的身体部位索引)的一个或多个机器学习算法。
[0042] 此外,机器学习可用于标识对应于人类主体的皮肤的像素。此类像素可被分类为“皮肤像素”并且与可对应于例如服装或背景场景的各部分的非皮肤像素区分开来。类似地,机器学习可用于标识对应于诸如头发之类的人类主体的其它区域的像素。
[0043] 图4示意性地解说了对IR图像中的皮肤像素的标识。如该附图中示出的,IR图像402对人类主体的手成像,并且由此包括至少一个IR皮肤像素-即,对人类皮肤成像的IR像素。IR皮肤像素404是对人类皮肤进行成像的IR像素的一个示例,并且可被如此标识——且基于IR皮肤像素指定的一个或多个IR参数而与非皮肤IR像素区分开。具体而言,IR皮肤像素404指定落入已知对应于人类皮肤的IR强度的预定范围内的IR强度406。对应于人类皮肤的IR强度的预定范围可经由经训练的机器学习算法来确定。对机器学习算法的训练可包括捕捉人类主体的IR图像并且记录对处于已知距离的人类主体的皮肤进行成像的IR皮肤像素的IR强度。IR皮肤像素可被标识,并且例如经由手动注释和/或利用本文描述的身体部位识别过程的自动处理与非皮肤IR像素进行区分。与人类皮肤相对应的IR强度的范围随后可被组装并被用来评估其它IR强度以标识IR皮肤像素。另选地或另外地,IR强度的预定范围可以在捕捉IR图像期间确定,其中脸部识别被用来标识对应于人类主体的脸部的像素。被标识为对应于脸部的像素的IR强度然后可用于汇集对应于人类皮肤的IR强度的范围。
[0044] 与人类皮肤相对应的IR强度的预定范围可被用来标识非皮肤像素——即,没有对人类皮肤进行成像的IR像素。在图4中描绘的示例中,非皮肤IR像素408通过将非皮肤IR像素的IR强度410与IR强度的预定范围相比较来标识。在该示例中,IR强度410落在IR强度的预定范围之外,使得像素408要被标识为非皮肤IR像素。非皮肤IR像素408可以与例如由IR图像402成像的人类主体的服装相对应。
[0045] 作为对标识IR皮肤像素的替换或补充,IR图像中记录的IR强度可用于其它目的。例如,阈值IR强度可基于IR图像中记录的一个或多个IR强度来确定,其中该阈值IR强度用于将背景IR像素与前景IR像素区分开。对前景IR像素的分析可以优先于对背景IR像素的分析,因为前景像素被认为更有可能对感兴趣的表面(例如,人类主体的那些表面)成像。
[0046] 作为对上述用于标识IR图像中的IR皮肤像素的那些技术的替换或补充,可采用其他技术。例如,IR图像可被分析来寻找与人体形状相对应的几何特征。继续图4,可以分析IR图像402以寻找对应于该图像中成像的人类主体的手的几何特征。几何分析可包括边缘检测,其中标识将各显著不同的IR强度的区域分开的边界。在IR图像402中,边缘检测标识将对应于人类皮肤(例如,手)的IR强度区域与不对应于人类皮肤的IR强度区域(例如,背景像素、对应于服装的像素)分开的边界412。边缘检测因而可允许至少对人体形状的粗略检测。作为替换或补充,几何分析包括形状识别,其中标识类似IR强度的连续或接近连续的区域。
各合适的IR强度范围可被认为是类似的;在一些示例中,范围可被选择,使得由于不同的深度而不同但又属于同一形状的各IR强度被认为是类似的。将领会,作为对IR图像的替换或补充,可以对VL图像(例如,图3的VL图像304)执行几何分析。对VL图像的几何分析可包括标识例如具有相似颜色的区域和/或具有显著不同的颜色的区域。将领会,作为对标识IR皮肤像素的替换或补充,可标识VL图像中的VL皮肤像素(即,对人类皮肤成像的VL像素)。对于其中捕捉到经配准IR和VL图像的实施例,VL皮肤像素可通过选择VL图像中的多个VL像素中的与所标识的IR皮肤像素配准的VL皮肤像素来标识。
[0047] 人类皮肤的IR响应也可用于确定人类主体的肤色。人类皮肤的IR响应根据肤色来变化-例如,不同的肤色在经受共同的IR光源时可展示出显著不同的IR强度。对被配置成对人类主体的肤色进行分类的肤色分类器的训练可通过测量各种人类主体的皮肤的IR响应来利用该现象。人类主体的多样性可被选择以适当地表示人类肤色的全部范围。测得的IR响应随后可被存储到多个子范围,每一子范围对应于不同的肤色。该多个子范围可以是例如与人类皮肤相对应的IR强度的预定范围的子范围。
[0048] 图4解说了基于IR响应的肤色标识。具体而言,IR图像402中所标识的人类皮肤的肤色可至少部分地基于IR图像中所标识的IR皮肤像素(例如,IR皮肤像素404(可能还有所标识的其它IR皮肤像素))来标识。如上所描述的,IR皮肤像素404指定包括IR强度406的一个或多个IR参数,IR强度406在该示例中在对应于人类皮肤的IR强度的预定范围内的多个子范围中的相应的一个子范围内。以此方式,肤色可基于一个或多个IR皮肤像素的IR强度在多个子范围中的相应的一个子范围内来标识。
[0049] 所标识的肤色可具有一个或多个预期VL参数-即,如果具有所标识的肤色的皮肤的VL图像被捕捉到,则该VL图像中的对皮肤成像的VL皮肤像素将被预期为指定对应于该一个或多个预期VL参数的一个或多个VL参数。该对应性可以在所指定的光照条件下被预期到。作为一个示例,该一个或多个预期VL参数可包括预期由在中性光照条件(例如,具有6500K的色温的室外阳光)下对具有所标识的肤色的皮肤成像的一个或多个VL像素展示出的颜色。标识所标识的肤色的一个或多个预期VL参数与对具有所标识的肤色的皮肤成像的VL像素指定的一个或多个VL参数之间的差别可使得能够评估影响对VL图像的捕捉的光照条件并可任选地调整VL图像以提高该一个或多个预期VL参数与该一个或多个指定VL参数之间的对应性。以此方式,对人类皮肤的IR响应的测量可提高VL图像生成以及其中的颜色标识的准确性。
[0050] 返回到图2,在42,图2示出了用作游戏玩家18的机器可读表示的虚拟骨架44的示意性表示。虚拟骨架44包括二十个虚拟关节-{头部、肩部中心、脊柱、髋部中心、右肩、右肘、右腕、右手、左肩、左肘、左腕、左手、右髋、右膝、右脚踝、右脚、左髋、左膝和左脚}。虚拟骨架的这二十个关节是作为非限制性示例提供的。根据本公开的虚拟骨架可具有几乎任何数目的关节。
[0051] 各种骨架关节可以与人类主体的实际关节、人类主体的身体部位的质心、人类主体的手足的末端、和/或没有到人类主体的直接解剖链接的点相对应。每一关节具有至少三个自由度(例如,世界空间x、y、z)。由此,虚拟骨架的每一关节被定义具有三维位置。例如,左肩虚拟关节46被定义具有x坐标位置47、y坐标位置48和z坐标位置49。关节的位置可相对于任何合适的原点来定义。作为一个示例,跟踪设备可用作原点,并且所有关节位置相对于该跟踪设备来定义。关节可以按任何合适的方式来定义具有三维位置,而不背离本公开的范围。
[0052] 可使用各种技术来确定每一关节的三维位置。骨架拟合技术可使用深度信息、红外信息、颜色信息、身体部位信息和/或在先训练的解剖和动力信息来推导出对人类主体接近地建模的一个或多个骨架。作为一个非限制性示例,上述身体部位索引可用于查找每一骨架关节的三维位置。
[0053] 关节定向可被用来进一步限定虚拟关节中的一者或多者。尽管关节位置可以描述关节以及横跨在关节之间的虚拟骨头的位置,关节定向可以描述这些关节以及在它们相应位置处的虚拟骨头的定向。作为示例,腕关节的定向可被用来描述位于给定位置处的手是面朝上还是朝下。
[0054] 关节定向可以例如在一个或多个正规化三维定向向量中编码。定向向量可提供关节相对于跟踪设备或另一基准(例如,另一关节)的定向。此外,定向向量可以按照世界空间坐标系或另一合适的坐标系(例如,另一关节的坐标系)来定义。关节定向还可经由其它手段来编码;作为非限制性示例,可使用四元数和/或欧拉角来对关节定向进行编码。
[0055] 图2示出了其中左肩关节46被定义具有正交定向向量50、51和52的非限制性示例。在其它实施例中,单个定向向量可用于定义关节定向。定向向量可以按任何合适的方式来计算,而不背离本公开的范围。作为非限制性示例,两个定向向量(例如,i和j)可基于经由深度信息分类的身体部位和/或关节来确定,并且第三定向向量(例如,k)经由前两个定向向量的叉积来确定。第三定向向量可用作例如表面法向向量。
[0056] 关节位置、定向和/或其他信息可被编码在任何合适的数据结构中。此外,可经由一个或多个API使得与任何特定关节相关联的位置、定向和/或其他参数可用。
[0057] 通过任何合适的最小化方式,虚拟骨架中的骨骼部分的长度和关节的位置和旋转角度可被调整以符合深度图的各个轮廓。该过程可以限定所成像的人类主体的位置和姿态。一些骨架拟合算法可以使用深度数据结合其他信息,如彩色图像数据、红外数据、和/或指示一个像素轨迹如何相对于另一个来移动的运动数据。
[0058] 如图2中看到的,虚拟骨架44可任选地包括多个虚拟骨头(例如,左前臂骨54)。各种骨架骨头可从一个骨架关节延伸到另一个骨架关节,并且可以与人类主体的实际骨头、肢体、或骨头和/或肢体的各部分相对应。本文讨论的关节定向可被应用于这些骨头。例如,肘定向可被用来限定前臂定向。
[0059] 在56,图2示出了显示器14可视地呈现化身24。虚拟骨架44可用于呈现化身24。因为虚拟骨架44在人类主体18改变姿态时改变姿态,所以化身24准确地模拟人类主体18的移动。由此,在一些实施例中,虚拟骨架可被拟合到深度视频(例如,连续深度图)的帧序列中的每一帧中。通过分析各个骨架关节和/或分段的位置变化,所成像的人类主体的对应移动——例如,手势、动作、或行为模式——可被确定,这可例如便于解释自然用户输入(NUI)。然而,应当理解,虚拟骨架可被用于附加和/或替换目的,而不背离本公开的范围。
[0060] 在一些示例中,生成化身(例如,化身24)可包括尝试重现所成像的人类主体的与颜色有关的各方面。例如,生成化身可包括标识人类主体的肤色、发色和/或服装颜色。然而,可出于其它目的需要标识场景中的颜色-例如作为对人类主体的生物测定标识的一部分。尽管所成像的场景中的颜色可以至少部分地基于由VL相机以上述方式获取的色值来定义,但对颜色一般感知可能受到周围光照条件的影响。例如,在相对中性的光照条件下(例如,在具有6500K的色温的室外阳光下)看上去是白色的颜色在室内光照条件下可能看上去是变色的(例如,趋向蓝色)。其它因素可改变对颜色的感知。例如,对人类主体的肤色和发色的标识可随着从背后照射人类主体的光源的改变而变化。由此,只经由VL相机的对场景中的颜色的标识可能是易变的,从而导致降级的输出(例如,不准确的化身生成、生物测定标识)。
[0061] 为了降低场景中的颜色标识的易变性,除了VL数据之外还可使用与人类主体的皮肤相对应的像素的IR响应来标识场景中的颜色。相比于人类皮肤的VL响应随着VL条件的变化而发生的变化,人类皮肤的IR响应随着VL条件变化而较少地变化。由此,对人类主体的皮肤的IR响应的测量可提供对周围光照条件的指示。如上所述,该IR响应可以与关联于相应的已知肤色的IR响应相比较以确定人类主体的肤色。在确定人类主体的肤色的情况下,对应于该人类主体的皮肤的色值可以与所确定的肤色相比较以提供对周围光照条件如何影响颜色标识的指示。在VL图像中感知到的人类主体的肤色与其所确定的肤色之间的差别可用于调整VL图像的各方面,包括与和/或不与该人类主体的皮肤相对应的色值。颜色标识然后可基于经调整的色值来执行。
[0062] 转向图5,示出了解说基于收集到的可见光(VL)和红外(IR)光来标识图像中的颜色的方法500的流程图。方法500可由图像处理计算机利用由例如跟踪设备20收集到的颜色数据和IR数据来执行。颜色和/或IR数据可以被编码在经由图像处理计算机的硬件接口递送至图像处理计算机的信号中。可以为颜色和IR数据两者提供共同硬件接口,而在其它示例中可以为颜色和IR数据分别提供单独的硬件接口。在一些实现中,颜色数据(例如,VL图像)和红外数据(例如,IR图像)可以分别从VL相机和IR相机获取。IR相机可以是诸如图7的相机704之类的三维深度相机或者可以是诸如例如图8的相机800之类的二维IR相机。
[0063] 在方法500的502,接收包括多个IR像素的IR图像,每一IR像素指定该IR像素的一个或多个IR参数。该一个或多个IR参数可包括例如IR强度。IR图像可以经由被配置成从IR相机接收IR图像的IR相机接口从IR相机接收。IR相机可输出对例如IR图像进行编码的信号。
[0064] 在方法500的504,在IR图像中标识IR皮肤像素。标识IR皮肤像素可包括在506基于由该IR像素指定的强度在已知对应于人类皮肤的IR强度的预定范围内来标识每一IR皮肤像素。由此,以此方式标识IR皮肤像素可包括将IR图像的一个或多个IR像素馈送至经训练的IR像素分类器,该分类器将IR强度的预定范围映射到IR皮肤像素并将该范围之外的IR强度映射到非皮肤IR像素。另选地或另外地,标识IR皮肤像素可包括在508分析IR图像以寻找对应于人类身体形状的几何特征。几何分析可包括例如边缘检测和/或形状识别。
[0065] 在方法500的510,至少部分地基于所标识的IR皮肤像素来标识所标识的人类皮肤的肤色(例如,经由标识IR皮肤像素来标识)。肤色标识可包括在512基于一个或多个IR皮肤像素的IR强度在IR强度的预定范围内的多个子范围中的相应的一个子范围内来标识肤色。肤色标识由此可包括将一个或多个IR皮肤像素的IR强度馈送到将每一IR强度子范围映射到相应的肤色的经训练的肤色分类器。
[0066] 在方法500的514,接收包括多个VL像素的VL图像,每一VL像素指定该VL像素的一个或多个VL参数。该一个或多个VL参数可包括例如一个或多个通道(例如,R、G、B、灰度)的强度(例如,亮度)。VL图像可以经由被配置成从VL相机接收VL图像的VL相机接口从VL相机接收。VL相机可输出对例如VL图像进行编码的信号。
[0067] 在方法500的516,在VL图像中标识VL皮肤像素。标识VL皮肤像素可包括在518选择VL图像的多个VL皮肤像素中的与所标识的IR皮肤像素配准的VL皮肤像素。在该示例中,IR图像的一个或多个IR像素可以在标识VL皮肤像素之前与VL图像的相应的VL像素配准(例如,空间上和/或时间上)。
[0068] 在方法500的520,调整VL图像以提高由所标识的VL皮肤像素指定的一个或多个VL参数与所标识的肤色的一个或多个预期VL参数之间的对应性。如上所述,所标识的肤色可指定一个或多个预期VL参数,诸如预期由在所指定的光照条件(例如,具有6500K的色温的室外阳光)下对具有所标识的肤色的皮肤成像的VL皮肤像素所指定的(例如,可见的)颜色。调整VL图像可包括在522调整VL图像以使得VL图像的每一个VL皮肤像素的色值基本上匹配预期肤色。将领会,这一对VL图像的调整可包括调整每一个VL皮肤像素的亮度(例如,每信道亮度)。在一些示例中,所标识的肤色对于红色通道、蓝色通道和绿色通道中的每一者可具有相应的预期VL亮度。在该情形中,VL图像可被调整以提高VL皮肤像素的R、G和B通道亮度与所标识的肤色的预期R、G和B通道亮度之间的各自对应性-例如,以提高VL皮肤像素红色通道亮度与预期红色通道亮度之间的对应性、VL皮肤像素绿色通道亮度与预期绿色通道亮度之间的对应性以及VL皮肤像素蓝色通道亮度与预期蓝色通道亮度之间的对应性。以此方式调整VL图像可使得能够补偿对可见光捕捉的不利影响,诸如欠曝光和/或过曝光。这些通道可作为一组被共同调整或被单独调整。例如,可调整这些通道以进行白平衡或其它色彩校正。另选地或另外地,调整VL图像可包括在524经由S曲线调整VL图像的多个VL像素的亮度。
[0069] 在方法500的526,可任选地标识经调整VL图像中的一个或多个非VL皮肤像素的颜色。在一些示例中,可针对至少一个通道(例如,R、G和B通道中的至少一者)标识经调整VL图像中的一个或多个非VL皮肤像素的亮度。该一个或多个非VL皮肤像素可以对例如人类头发或人类主体的其它区域(例如,服装)进行成像。以此方式,颜色标识可以在具有提高的准确性和稳定性且具有针对环境光照条件的较少易变性的情况下执行。
[0070] 之后是解说方法500的实现的示例。然而,将领会,该示例不旨在限制方法500的范围,并且其它方法是可能的,而不背离本公开的范围。在该示例实现中,人类主体肤色可使用朗伯模型基于IR皮肤响应来分类。具体而言,IR图像中的每一IR皮肤像素的IR响应可根据以下关系式基于朗伯模型来归一化: 其中 是测得的IR响应,di是从皮肤点到视点的距离(例如,人类主体在该像素处的深度),Ni是该皮肤点处的表面法向向量,而Li是该皮肤点处的光照方向向量,且(Ni·Li)是这两个向量的点积。Ni和Li可基于深度图以及相机和IR源相对于感兴趣的像素的位置来确定。
[0071] 接着,可以根据以下关系式来为VL图像中的每一个VL皮肤像素计算置信度值:皮肤置信度=(距离>30.0)?0:(30.0–距离)/(2.0f*30.0)。距离可根据以下关系式来计算:距离=max(95.0f-R,max(40.0f-G,max(20.0f-B,max(15.0f-(max(R,max(G,B))-min(R,min(G,B))),max(15.0f-(R-G),B-R))))),其中R、G和B是VL皮肤像素的相应的R、G和B色值。
[0072] 接着,可确定由皮肤置信度值加权的IR值的均值和模。IR模可通过例如核密度拟合来查找。
[0073] 接着,可将该均值和IR模中的最大值用作用以查找最接近的肤色子范围的特征。每一肤色子范围的IR中心值可以通过例如合适的蛮力搜索算法从上述训练数据中学习到。
[0074] 接着,可基于所分类的肤色来调整VL图像的亮度水平。该调整可通过由以下两个参数来参数化的S曲线执行:阴影量φs和高光量φh。具体而言,可使用以下形式的函数:f(x)=x+φs*fΔ(x)-φh*fΔ(1-x),其中x和f(x)是输入和输出像素强度。fΔ(x)是增量函数并且凭经验被定义为fΔ(x)=k1*x*exp(k2*x^(k3))。作为非限制性示例,k1、k2和k3可分别采用值5、14和1.6。
[0075] 人类主体的脸部经常由于逆光而在欠曝光条件下捕捉到。为了解决这些条件,高光量φh可被设为零,且阴影量φs基于所分类的肤色来计算。对于指定RGB色值的VL图像,该VL图像可被转换成YIQ空间。脸部皮肤区域的平均强度Y然后可被计算出。假设所分类的肤色的强度水平是Y*且皮肤像素的数目是N,阴影量φs是:φs=(Y*-Y)×N×∑fΔ(x)。原始图像的强度Y通道可使用所估计的阴影量通过S曲线来调整。I和Q通道可通过调整Y通道来缩放。
[0076] 人类主体的发色可以从经调整VL图像中计算出。在基于所标识的肤色来调整VL图像的亮度之后,可将混合高斯模型拟合到头发像素的颜色以计算发色模式。最终发色可被设为取决于模式权重的最大色彩模式或者前两个色彩模式的均值。
[0077] 如上文介绍的,这一肤色和头发分析可用于更准确地呈现化身。然而,上述颜色分析不限于该应用。可出于任何目的使用方法500来更准确地评估对几乎任何位点(例如,头发、服装、对象、环境等)的中性颜色感知。
[0078] 虽然方法500是参考图像像素描述的,但将领会,该方法可以针对诸如体素等其它图像元素执行,而不背离本公开的范围。此外,两个或更多个肤色和/或发色可被标识和/或调整。
[0079] 在一些实施例中,本文中描述的方法和过程可以与一个或多个计算设备的计算系统绑定。尤其地,这样的方法和过程可被实现为计算机应用程序或服务、应用编程接口(API)、库和/或其他计算机程序产品。
[0080] 图6示意性地示出了可执行上述方法和过程中的一个或多个的计算系统600的非限制性实施例。以简化形式示出了计算系统600。计算系统600可采取以下形式:一个或多个个人计算机、服务器计算机、平板计算机、家庭娱乐计算机、网络计算设备、游戏设备、移动计算设备、移动通信设备(例如,智能电话)和/或其他计算设备。图1的机器视觉系统10是计算系统600的一个实现的非限制性示例。
[0081] 计算系统600包括逻辑机602和存储机604。计算系统600可任选地包括显示子系统608、输入子系统606、通信子系统610、和/或在图6中未示出的其它组件。
[0082] 逻辑机602包括被配置成执行指令的一个或多个物理设备。例如,逻辑机可被配置成执行作为以下各项的一部分的指令:一个或多个应用、服务、程序、例程、库、对象、组件、数据结构、或其它逻辑构造。这种指令可被实现以执行任务、实现数据类型、转换一个或多个部件的状态、实现技术效果、或以其它方式得到期望结果。
[0083] 逻辑机可包括被配置成执行软件指令的一个或多个处理器。作为补充或替换,逻辑机可包括被配置成执行硬件或固件指令的一个或多个硬件或固件逻辑机。逻辑机的处理器可以是单核或多核,且在其上执行的指令可被配置为串行、并行和/或分布式处理。逻辑机的各个组件可任选地分布在两个或更多单独设备上,这些设备可以位于远程和/或被配置成进行协同处理。逻辑机的各方面可由以云计算配置进行配置的可远程访问的联网计算设备来虚拟化和执行。
[0084] 存储机604包括被配置成保存可由逻辑机执行以实现此处所述的方法和过程的指令的一个或多个物理设备。在实现这些方法和过程时,可以变换存储机604的状态(例如,保存不同的数据)。
[0085] 存储机604可以包括可移动和/或内置设备。存储机604可包括光学存储器(例如,CD、DVD、HD-DVD、蓝光盘等)、半导体存储器(例如,RAM、EPROM、EEPROM等)和/或磁存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)等等。存储机604可包括易失性、非易失性、动态、静态、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址和/或内容可寻址设备。
[0086] 可以理解,存储机604包括一个或多个物理设备。然而,本文描述的指令的各方面可另选地通过不由物理设备在有限时长内持有的通信介质(例如,电磁信号、光信号等)来传播。
[0087] 逻辑机602和存储机604的各方面可被一起集成到一个或多个硬件逻辑组件中。这些硬件逻辑组件可包括例如现场可编程门阵列(FPGA)、程序和应用专用的集成电路(PASIC/ASIC)、程序和应用专用的标准产品(PSSP/ASSP)、片上系统(SOC)以及复杂可编程逻辑器件(CPLD)。
[0088] 在被包括时,显示子系统608可用于呈现由存储机604保存的数据的视觉表示。该视觉表示可采用图形用户界面(GUI)的形式。由于本文所描述的方法和过程改变了由存储机保持的数据,并由此变换了存储机的状态,因此同样可以转变显示子系统608的状态以视觉地表示底层数据的改变。显示子系统608可以包括使用实质上任何类型的技术的一个或多个显示设备。可将此类显示设备与逻辑机602和/或存储机604组合在共享封装中,或者此类显示设备可以是外围显示设备。
[0089] 在包括输入子系统606时,输入子系统610包括诸如键盘、鼠标、触摸屏或游戏控制器之类的一个或多个用户输入设备或者与其对接。在一些实施例中,输入子系统可以包括所选择的自然用户输入(NUI)部件或与其对接。这种元件部分可以是集成的或外围的,并且输入动作的转导和/或处理可以在板上或板外被处理。NUI部件的示例可包括用于语言和/或语音识别的话筒;用于机器视觉和/或姿势识别的红外、色彩、立体显示和/或深度相机;用于运动检测和/或意图识别的头部跟踪器、眼睛跟踪器、加速计和/或陀螺仪;以及用于评估脑部活动的电场感测部件。
[0090] 在一些示例中,输入子系统606可包括用于接收编码了来自一个或多个跟踪设备的图像的信号的一个或多个硬件接口。例如,输入子系统606可包括配置成从IR相机接收包括多个IR像素的IR图像的IR相机接口612。IR相机接口612可被配置成从IR相机接收编码了IR图像的信号。输入子系统606可另选地或另外地包括被配置成从VL相机接收包括多个VL像素的VL图像的VL相机接口614。VL相机接口614可被配置成从VL相机接收对VL图像进行编码的信号。IR和VL相机接口可结合各种合适的接口技术,包括但不限于有线或无线接口技术,如通用串行总线(USB)、IEEE 1394、蓝牙、Wi-Fi等等。
[0091] 图7示出了被配置成对主体702成像的示例机器视觉系统700的各方面。在所示实施例中,机器视觉系统包括可以在例如图1的跟踪设备20中采用的飞行时间深度相机704。在一些配置中,深度相机可能被置于距离主体0.1至5米,但也构想了其他深度范围。本文公开的机器视觉系统能够对从简单的静态拓扑到诸如人类等复杂的移动主体的广泛范围的主体进行成像。在一些场景中,所成像的主体可包括前景和背景部分两者并构成整个场景。
[0092] 如图7所示,深度相机704包括调制光源706、成像像素阵列708和物镜系统710。深度相机还可包括各种其它组件,诸如可置于成像像素阵列或物镜系统的前方的波长滤波器(未在该附图中示出)。
[0093] 调制光源706被配置成将红外(IR)或近红外(NIR)波段的调制探测光投射到主体702上。因此,物镜系统在调制光源在其中发射的IR或NIR波段中可以是透明的。探测光可根据包括但不限于脉冲或正弦波形的任何合适的调制波形来在时间上调制。调制光源的性质在本公开的各个实施例中可以是不同的。在一些实施例中,调制光源可包括调制激光器,诸如IR或NIR激光器。更具体的示例包括边缘发射激光器或垂直腔面发射激光器(VCSEL)在其他实施例中,该调制光源可包括一个或多个高功率发光二极管(LED)。
[0094] 物镜系统710被配置成接收从主体702反射的光并将这一光折射到成像像素阵列708。在一些实施例中,物镜系统可提供相对较高的FOV。在所示实施例中,透镜系统和成像像素阵列共享共同的光轴A,该光轴垂直于成像像素阵列并经过透镜系统的中心。在一些实施例中,物镜系统可以是复合透镜系统。在更具体的配置中,物镜系统可包括五个或六个折射元件。
[0095] 成像像素阵列708包括深度感测像素的阵列,每一深度感测像素被配置成接收从主体702的相应位点712反射回的至少一些调制探测光。该阵列中的每一像素输出可用于确定从深度相机704到被成像到该像素上的主体位点的距离的信息。每一像素可另外地或另选地用于评估该像素所成像的位点的IR反射率。另选地,并非也用作深度相机的组件的单独的IR相机(例如,图8的IR相机800)可用于评估所成像的位点的IR反射率。
[0096] 机器视觉系统700的控制器714可操作地耦合到调制光源706和成像像素阵列708,并被配置成计算到位点712的距离。控制器包括向光源706和成像像素阵列708提供经同步的调制驱动信号以同步这些组件的操作的逻辑715。具体而言,控制器逻辑调制来自光源的发射,同时同步地偏置成像像素阵列的电极。该控制器还被配置成读取来自成像像素阵列的每个像素的输出以使得能够计算主体702的深度图。逻辑715可以与存储器717通信地耦合,该存储器被配置成保存可由该逻辑执行以实现本文描述的方法和过程的指令。如图7所示,控制器714可以与计算系统718通信地耦合以启用本文描述的方法。计算系统718可以是例如图6的计算系统600并且可包括被配置成接收对图像进行编码的信号的一个或多个硬件接口-例如,诸如被配置成从IR相机接收对IR图像进行编码的信号的IR相机接口612之类的IR相机接口和/或诸如被配置成从VL相机接收对VL图像进行编码的信号的VL相机接口614之类的VL相机接口。
[0097] 在所示实施例中,机器视觉系统700还包括平面图像相机716。如同深度相机704,平面图像相机也包括成像像素阵列和高FOV物镜系统。在一些实施例中,平面图像相机的透镜系统可具有固定的焦距。平面图像相机可以在将所成像的颜色通道映射到其成像像素阵列的多个通道(例如,红、绿、蓝等)中对来自主体702的可见光进行成像。另选地,平面图像相机可以是用灰度对主体进行成像的单色相机。平面图像相机中曝光的所有像素的颜色或亮度值共同构成2D数字图像。在一些实施例中,机器视觉系统700中的深度和平面图像相机可具有相同的分辨率。即使当分辨率不同时,平面图像相机的像素可被配准到深度相机的那些像素。以此方式,可针对主体702的每一位点712同时评估亮度和深度信息两者。
[0098] 在所示实施例中,平面图像相机716沿着与深度相机704的光轴A平行的光轴B对齐。在另一实施例中,分光镜(未在该附图中示出)可以在光学上被布置在深度相机和平面图像相机的上游,并被配置成使得深度相机和平面图像相机沿着同一光轴接收来自主体702的光。在这些和其它实施例中,这些相机之一的FOV中的任何位置(X’、Y’)可以基于机器视觉系统的几何构型来经由合适的坐标变换与其它相机的FOV中的位置(X”、Y”)相关。因此,来自深度相机704和来自平面图像相机716的相应图像可被彼此共同配准。
[0099] 在一些实施例中,深度相机704的每一个成像像素阵列708包括第一像素元件、相邻的第二像素元件,并且还可包括附加像素元件。每一个像素元件可包括一个或多个梳状栅、传输门和/或半导体基底上外延形成的集电节点。每一个像素的像素元件可被编址以便提供与来自调制光源的发射同步的两个或多个整合周期。整合周期可在相位和/或总整合时间上不同。基于在不同整合周期期间在这些像素元件上积聚的差分(而在一些实施例中是共模)电荷的相对量,可评估距主体的相应位点的距离。在一些实施例中,调制光源706和第一个像素元件被同时通电,同时第二个像素元件相对于第一像素元件180°异相通电。基于第一像素元件和第二像素元件中积聚的相对电荷量,在成像像素阵列中接收到的反射脉冲光相对于探测调制的相位角被计算出。根据该相位角,可评估距相应位点的距离。
[0100] 虽然以上描述着重于一种类型的飞行时间深度成像,但深度相机的性质在本公开的各个实施例中可以是不同的。在一些实施例中,来自深度相机中的两个实立体镜地定向的成像像素阵列的亮度和颜色数据可被共同配准并用于构造深度图。在一些实施例中,深度相机可被配置成将包括多个离散特征(例如,线或点)的结构化红外照明图案投影到主体上。该深度相机中的成像像素阵列可被配置成对从主体反射回的结构化照明进行成像。基于所成像的主体的各个区域中毗邻特征之间的间隔,可构造该主体的深度图。在一些实施例中,因此调制光源可以是空间(而不是时间)调制光源。因此,成像像素阵列通过揭示主体的相邻照明区域之间的间隔来指示距每一位点的距离。
[0101] 返回到图6,当包括通信子系统610时,通信子系统610可被配置成将计算系统600与一个或多个其他计算设备通信地耦合。通信子系统610可以包括与一个或多个不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,通信子系统可被配置成用于经由无线电话网络或者有线或无线局域网或广域网来进行通信。在一些实施例中,通信子系统可允许计算系统600经由诸如因特网这样的网络将消息发送至其他设备以及/或者从其它设备接收消息。
[0102] 图8示出可操作来捕捉场景的IR图像的示例红外(IR)相机800。相机800可被用来例如获得人类主体的IR图像,并且可启用本文描述的用于基于IR皮肤响应来标识VL图像中的颜色和/或调整VL图像的各种方法中的至少一部分。
[0103] 在图8所示的示例中,相机800包括IR带通滤波器802,IR带通滤波器804被配置成将反射IR光的至少一部分传送到在光学上位于该滤波器下游的图像传感器804。图像传感器804对IR波长的至少一个范围是光电敏感的,从而允许转换在其上接收到的IR光。图像传感器804可合并各种合适的图像感测技术,包括例如电荷耦合器件(CCD)和/或互补金属氧化物半导体(CMOS)传感器。相机800还包括被配置成将IR光投影到(例如,散射到)场景中以使得能够接收来自该场景的反射IR光的IR光源。在这一示例中,IR光源包括以环形安排绕滤波器802同心放置的八个IR LED(例如,IR LED 806)。然而,将明白,这一安排是非限制性的且各种合适的配置可被用于将IR光投影到场景中,包括其中IR光源在与相机800的外壳分开的外壳中提供的安排。在一些示例中,IR光源可以脉动以减少环境光对图像感测的不利影响。
[0104] 在一些示例中,相机800可被构造成IR相机。在其它示例中,相机800可被制造成VL相机并被转换成IR相机。在这一示例中,转换过程可包括移除IR切滤波器(如果包括的话)、添加IR带通滤波器802、以及添加IR光源。在一些场景中,转换过程可包括替换图像传感器(如果它的敏感性不适于感测IR光的话)。
[0105] 在一些实现中,相机800是配置成生成具有多个IR像素的IR图像的二维、单眼IR相机,每一IR像素指定诸如IR强度等一个或多个IR参数。相机800可被用来例如生成图3的IR图像302。在这种情况下,相机800所生成的IR图像可被馈送到配置成利用IR反射现象的知识基于每一IR像素所指定的IR强度来确定该像素的深度的合适的计算设备(未在图8中示出)。该计算设备可具有例如用于接收编码了IR图像的信号的合适的IR相机接口(例如,图6的接口612)。具体而言,计算设备可以利用光的逆平方衰退来基于IR强度计算深度;例如,将IR强度的逆平方映射到深度的函数可被使用。因而,相对较低的IR强度可被映射到相对较大的深度,而相对较大的IR强度可被映射到相对较小的深度。以此方式使用二维IR相机可便于以低成本和功耗来进行深度确定,尤其是相对于使用三维深度相机而言。
[0106] 将会理解,此处描述的配置和/或方法本质是示例性的,这些具体实施例或示例不应被视为限制性的,因为许多变体是可能的。此处描述的具体例程或方法可以表示任何数量的处理策略中的一个或多个。如此,所示和/或所述的各种动作可以以所示和/或所述顺序、以其它顺序、并行地执行,或者被省略。同样,上述过程的次序可以改变。
[0107] 本公开的主题包括各种过程、系统和配置以及此处公开的其它特征、功能、动作和/或属性、以及它们的任一和全部等价物的所有新颖且非显而易见的组合和子组合。
[0108] 一示例提供了一种图像处理方法,包括从红外相机接收对包括多个IR像素的红外(IR)图像进行编码的信号,每一IR像素指定该IR像素的一个或多个IR参数;在IR图像中标识对人类皮肤进行成像的IR皮肤像素;至少部分地基于IR皮肤像素来标识所标识的人类皮肤的肤色,该肤色具有一个或多个预期可见光(VL)参数;从VL相机接收对包括多个VL像素的VL图像进行编码的信号,每一VL像素指定该VL像素的一个或多个VL参数;在该VL图像中标识对所标识的人类皮肤进行成像的VL皮肤像素;以及调整VL图像以提高VL皮肤像素的一个或多个VL参数与所标识的肤色的一个或多个预期VL参数之间的对应性。在这一示例中,该一个或多个IR参数可另选地或另外地包括IR强度。在这一示例中,另选地或另外地基于该皮肤像素的IR强度在IR强度的预定范围内来将IR皮肤像素标识为对人类皮肤成像。在这一示例中,可另选地或另外地基于一个或多个IR皮肤像素的IR强度在IR强度的预定范围内的多个子范围中的相应的一个子范围内来标识肤色。在这一示例中,标识IR皮肤像素可另选地或另外地包括分析IR图像以寻找对应于人类身体形状的几何特征。在这一示例中,标识VL皮肤像素可另选地或另外地包括选择多个VL像素中的与所标识的IR皮肤像素配准的VL皮肤像素。在这一示例中,该一个或多个预期VL参数可另选地或另外地指定中性光照条件下的预期肤色。在这一示例中,VL图像被另选地或另外地调整以使得每一VL皮肤像素的色值基本上匹配预期肤色。在这一示例中,该方法可另选地或另外地包括标识经调整VL图像中的一个或多个非VL皮肤像素的颜色。在这一示例中,非VL皮肤像素可另选地或另外地对人类头发成像。在这一示例中,调整VL图像可另选地或另外地包括经由S曲线来调整多个VL像素的亮度。
[0109] 另一示例提供了一种图像处理方法,包括接收包括多个IR像素的红外(IR)图像,每一IR像素指定该IR像素的一个或多个IR参数;在IR图像中标识对人类皮肤进行成像的IR皮肤像素;至少部分地基于IR皮肤像素来标识所标识的人类皮肤的肤色,该肤色对于一个或多个光通道具有预期可见光(VL)亮度;接收包括多个VL像素的VL图像,每一VL像素指定该VL像素针对该一个或多个光通道的亮度;在该VL图像中标识对所标识的人类皮肤进行成像的VL皮肤像素;以及调整VL图像以提高针对该一个或多个光通道的VL皮肤像素的亮度和所标识的肤色的预期VL亮度之间的对应性。在这一示例中,该一个或多个IR参数另选地或另外地包括IR强度。在这一示例中,可另选地或另外地基于该皮肤像素的IR强度在IR强度的预定范围内来将IR皮肤像素标识为对人类皮肤成像。在这一示例中,可另选地或另外地基于一个或多个IR皮肤像素的IR强度在IR强度的预定范围内的多个子范围中的相应的一个子范围内来标识肤色。在这一示例中,标识VL皮肤像素可另选地或另外地包括选择多个VL像素中的与所标识的IR皮肤像素配准的VL皮肤像素。在这一示例中,肤色对于红色通道、蓝色通道和绿色通道可另选地或另外地具有相应的预期VL亮度。在这一示例中,每一VL像素可另选地或另外地指定该VL像素对于红色通道、蓝色通道和绿色通道的相应亮度。在这一示例中,VL图像可另选地或另外地被调整以提高VL皮肤像素的红色通道亮度、蓝色通道亮度和绿色通道亮度与所标识的肤色的预期红色通道亮度、预期蓝色通道亮度和绿色通道亮度之间的相应对应性。在这一示例中,该方法可另选地或另外地包括标识经调整VL图像中的一个或多个非VL皮肤像素针对该一个或多个光通道的亮度。
[0110] 另一示例提供了一种计算设备,包括被配置成从红外(IR)相机接收包括多个IR像素的IR图像的IR相机接口,每一IR像素指定该IR像素的一个或多个IR参数;被配置成从可见光(VL)相机接收包括多个VL像素的VL图像的VL相机接口,每一VL像素指定该VL像素的一个或多个VL参数;逻辑机;以及保存指令的存储机,这些指令可由逻辑机执行以在IR图像中标识对人类皮肤成像的IR皮肤像素;至少部分地基于IR皮肤像素来标识所标识的人类皮肤的肤色,该肤色具有一个或多个预期可见光(VL)参数;在VL图像中标识对所标识的人类皮肤成像的VL皮肤像素;以及调整VL图像以提高VL皮肤像素的一个或多个VL参数与所标识的肤色的一个或多个预期VL参数之间的对应性。在这一示例中,该一个或多个IR参数可另选地或另外地包括IR强度。在这一示例中,可另选地或另外地基于该皮肤像素的IR强度在IR强度的预定范围内来将IR皮肤像素标识为对人类皮肤成像。在这一示例中,可另选地或另外地基于一个或多个IR皮肤像素的IR强度在IR强度的预定范围内的多个子范围中的相应的一个子范围内来标识肤色。在这一示例中,标识VL皮肤像素可另选地或另外地包括选择多个VL像素中的与所标识的IR皮肤像素配准的VL皮肤像素。