面部识别的制作方法

文档序号:6504796阅读:115来源:国知局
面部识别的制作方法
【专利摘要】一种示例方法包括:接收用户的面部的第一和第二图像,其中,已经通过面部识别对于一个或两个图像承认了匹配。该方法包括:识别在第一图像中的至少一个面部界标和在第二图像中的至少一个对应的面部界标,并且从第一图像提取第一子图像,其中该第一子图像包括至少一个面部界标的表示。该方法包括:从第二图像提取第二子图像,其中第二子图像包括至少一个对应的面部界标的表示;通过确定在第二子图像和第一子图像之间是否存在用于指示面部姿态的足够的差别来检测面部姿态,并且基于检测面部姿态来确定是否相对于访问由计算装置控制的功能拒绝对于用户的认证。
【专利说明】面部识别
【技术领域】
[0001]本公开涉及面部识别技术。
【背景技术】
[0002]用户可以通过对计算装置“解锁”来激活或否则访问由该装置控制的功能。在一些情况下,计算装置可以被配置来基于由用户提供的认证信息来允许解锁。认证信息可以采取各种形式,包括字母数字密码和生物识别信息。生物识别信息的示例包括指纹、视网膜扫描和面部图像。计算装置可以使用面部识别技术来认证面部图像。

【发明内容】

[0003]在一个示例中,一种方法包括:从耦合到计算装置的图像捕获装置接收用户的面部的第一图像和所述用户的所述面部的第二图像。所述方法进一步包括:基于所述第二图像相对于所述第一图像的偏转角(yaw angle)和所述第二图像相对于所述第一图像的俯仰角(pitch angle)中的至少一个来检测活跃姿态,其中,所述偏转角对应于沿着水平轴的转变,并且其中,所述俯仰角对应于沿着垂直轴的转变。所述方法进一步包括:基于与所述偏转角相关联的偏转角量值和与所述俯仰角相关联的俯仰角量值中的至少一个来产生活跃分值;将所述活跃分值与阈值作比较;以及至少部分地基于所述比较来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
[0004]在另一个示例中,一种计算机可读存储装置被编码有指令,所述指令当被执行时使得计算机装置的一个或多个处理器执行操作。所述操作包括从耦合到所述计算装置的图像捕获装置接收用户的面部的第一图像和所述用户的所述面部的第二图像。所述操作进一步包括:基于所述第二图像相对于所述第一图像的偏转角和所述第二图像相对于所述第一图像的俯仰角中的至少一个来检测活跃姿态,其中,所述偏转角对应于围绕垂直轴为中心的转变,并且其中,所述俯仰角对应于围绕水平轴为中心的转变。所述操作进一步包括:基于与所述偏转角相关联的偏转角量值和与所述俯仰角相关联的俯仰角量值中的至少一个来产生活跃分值;将所述活跃分值与阈值作比较;以及至少部分地基于所述比较来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
[0005]在另一个示例中,一种计算装置包括存储器、至少一个处理器、图像捕获装置、面部识别模块和反欺骗模块。所述图像捕获装置能够被所述至少一个处理器操作来捕获用户的面部的第一图像和所述用户的所述面部的第二图像,并且,所述面部识别模块能够被所述至少一个处理器操作来通过面部识别对所述第一图像和所述第二图像中的至少一个核准匹配。所述反欺骗模块能够被所述至少一个处理器操作来基于所述第二图像相对于所述第一图像的偏转角和所述第二图像相对于所述第一图像的俯仰角中的至少一个来检测活跃姿态,其中,所述偏转角对应于围绕垂直轴为中心的转变,并且其中,所述俯仰角对应于围绕水平轴为中心的转变。所述反欺骗模块进一步能够被所述至少一个处理器操作来基于与所述偏转角相关联的偏转角量值和与所述俯仰角相关联的俯仰角量值中的至少一个来产生活跃分值,将所述活跃分值与阈值作比,并且,至少部分地基于所述比较来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
[0006]在另一个示例中,一种方法包括:从耦合到计算装置的图像捕获装置接收用户的面部的第一图像和所述用户的所述面部的第二图像。所述方法进一步包括:识别在所述第一图像中的至少一个面部界标(facial landmark)和在所述第二图像中的至少一个对应的面部界标;并且,通过所述计算装置来从所述第一图像提取第一子图像,其中,所述第一子图像表示所述第一图像的一部分,并且其中,所述第一子图像包括所述至少一个面部界标的表示。所述方法进一步包括:通过所述计算装置来从所述第二图像提取第二子图像,其中,所述第二子图像表示所述第二图像的一部分,并且其中,所述第二子图像包括所述至少一个对应的面部界标的表示;并且,通过所述计算装置确定在所述第二子图像和所述第一子图像之间是否存在指示面部姿态的足够差别来检测所述面部姿态。所述方法进一步包括:至少部分地基于检测所述面部姿态来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
[0007]在另一个示例中,一种计算机可读存储装置被编码有指令,所述指令当被执行时使得计算机装置的一个或多个处理器执行操作。所述操作包括:从耦合到计算装置的图像捕获装置接收用户的面部的第一图像和所述用户的所述面部的第二图像。所述操作进一步包括:识别在所述第一图像中的至少一个面部界标和在所述第二图像中的至少一个对应的面部界标;并且,通过所述计算装置来从所述第一图像提取第一子图像,其中,所述第一子图像表示所述第一图像的一部分,并且其中,所述第一子图像包括所述至少一个面部界标的表示。所述操作进一步包括:通过所述计算装置来从所述第二图像提取第二子图像,其中,所述第二子图像表示所述第二图像的一部分,并且其中,所述第二子图像包括所述至少一个对应的面部界标的表示;并且,通过所述计算装置确定在所述第二子图像和所述第一子图像之间是否存在指示面部姿态的足够差别来检测所述面部姿态。所述操作进一步包括:至少部分地基于检测所述面部姿态来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
[0008]在另一个示例中,一种计算装置包括:存储器;至少一个处理器;能够被所述至少一个处理器操作来捕获用户的面部的第一图像和所述用户的所述面部的第二图像的至少一个图像捕获装置;以及能够被所述至少一个处理器操作来通过面部识别对所述第一图像和所述第二图像中的至少一个核准匹配的面部识别模块。所述计算装置还包括:能够操作来识别在所述第一图像中的至少一个面部界标和在所述第二图像中的至少一个对应的面部界标的界标检测模块;以及能够操作来从所述第一图像提取所述第一子图像的子图像提取模块,其中,所述第一子图像表示所述第一图像的一部分,并且其中,所述第一子图像包括所述至少一个面部界标的表示。所述计算装置还包括反欺骗模块,所述反欺骗模块能够操作来通过确定在所述第二子图像和所述第一子图像之间是否存在指示面部姿态的足够差别来检测所述面部姿态,并且至少部分地基于检测所述面部姿态来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
【专利附图】

【附图说明】
[0009]图1A-1B是图示根据本公开的一个或多个方面的、用于检测在捕获的面部图像中的可能欺骗的示例计算装置的概念图。
[0010]图2是图示根据本公开的一个或多个方面的、用于检测在捕获的面部图像中的可能欺骗的示例计算装置的细节的框图。
[0011]图3是图示根据本公开的一个或多个方面的、包括由计算装置识别以检测在面部图像中的可能欺骗的角膜闪光的示例面部图像的概念图。
[0012]图4是图示根据本公开的一个或多个方面的、包括由计算装置识别以检测在面部图像中的可能欺骗的角膜闪光的眼睛的示例图像的概念图。
[0013]图5是图示根据本公开的一个或多个方面的、可以被计算装置执行来检测在捕获的面部图像中的可能欺骗的示例过程的流程图。
[0014]图6是图示根据本公开的一个或多个方面的、可以被计算装置执行来检测在捕获的面部图像中的可能欺骗的示例过程的流程图。
[0015]图7是叠加有水平X轴和垂直I轴的面部图像,面部图像可以分别围绕该水平X轴和垂直I轴来显示偏转和俯仰。
[0016]图8A-8C是显示各种量值和方向的俯仰的面部图像。
[0017]图9A-9E是显示各种量值和方向的偏转的面部图像。
[0018]图10A-10C是根据本公开的一个或多个方面的一系列面部图像,可以使用旋转角和/或一个或多个面部界标来从该一系列面部图像识别变化的偏转量值。
[0019]图11是图示示例过程的流程图,通过该示例过程,计算装置可以执行本公开的一个或多个反欺骗技术。
[0020]图12是具有示例面部界标的面部图像,该示例面部界标包括在提取的子图像中表示的右眼和嘴部区域。
[0021]图13是图示闭合的眼睛的示例图像的概念图。
[0022]图14是图示张开笑的嘴部的概念图。
[0023]图15是图示示例过程的流程图,通过该示例过程,计算装置可以执行本公开的各种反欺骗技术。
【具体实施方式】
[0024]计算装置可以在各种情况下使用面部识别程序。例如,计算装置可以使用面部识别程序来认证试图访问计算装置的一个或多个功能或否则由计算装置控制的功能的用户。在一些常见情况下,计算装置可以存储一个或多个授权用户的面部的图像(“注册图像”)。当用户试图访问计算装置的功能(或对计算装置“解锁”)时,该计算装置可以捕获用户面部的图像以用于认证目的。计算装置可以然后使用面部识别程序来将捕获的面部图像与关联于授权用户的注册图像作比较。如果面部识别程序确定在捕获的面部图像和至少一个注册图像之间的可接受水平的匹配,则该计算装置可以认证用户,并且许可解锁请求。
[0025]未经授权的用户可以利用面部识别程序的弱点来引起错误的认证。例如,未经授权的用户可能试图使用“欺骗”技术来解锁计算装置。为了通过欺骗来引起错误的认证,未经授权的用户可以呈现授权用户的面部图像以被计算装置捕获。例如,未经授权的用户可以向该装置提供授权用户的面部的打印画面或在第二计算装置上获得授权用户的视频或数字图像(例如,通过从社交网络网站拉出授权用户的简档画面)。因此,未经授权的用户可能试图使用欺骗方法来访问计算装置的功能,以克服否则由计算装置实现的认证限制。
[0026]通常,本公开涉及用于防止由欺骗引起的错误认证的技术。计算装置可以实现检测对于欺骗的可疑尝试并且防止因为欺骗导致的错误认证的一个或多个反欺骗程序。在一些示例中,可以通过程序来执行反欺骗技术,该程序使得计算装置的一个或多个硬件部件来在捕获的面部图像的物体的方向上发光。反欺骗程序可以然后识别在捕获的面部图像内的一个或多个界标,并且对界标分析可能的欺骗的迹象。例如,反欺骗程序可以将面部图像的一只或两只眼睛识别为界标。反欺骗程序可以然后分析图像以检测诸如角膜闪烁的、来自眼睛的发射光的任何反射的存在。基于该分析,反欺骗程序可以在检测到预期的闪烁时将计算装置从锁定状态转变为解锁状态,或者在未检测到预期的闪烁时防止访问计算装置。
[0027]在此所述的反欺骗程序可以提供一个或多个优点,诸如减少了未经授权的用户通过欺骗引起错误认证的机会。例如,反欺骗程序可以使得面部识别程序在分析的界标的图像根本不包括发射的光的反射时或者当在图像中的反射光的强度小于阈值强度时使得面部识别程序拒绝对于用户的认证。在另一个示例中,反欺骗程序可以使得计算装置在发射不同强度的光的同时捕获两个或更多的面部图像,并且如果界标从一个面部图像到另一个面部图像不反射足够的不同强度的光,则使得面部识别程序拒绝认证。在另一个示例中,反欺骗程序可以如果图像分析指示从界标反射的光未充分地匹配发射光的预期频率含量,则使得面部识别程序拒绝对于用户的认证。例如,计算装置可以发射具有不同颜色或频率的光束,预期该光束在用户的眼睛中引发具有对应的频率含量的光的反射。以这种方式,本公开的技术可以减少由欺骗引起的错误认证的出现。另外,反欺骗程序可以减少面部识别程序的使用,因此节约了计算资源,并且降低功耗(例如,延长在移动计算装置中的电池使用期限)。
[0028]本公开也描述了用于防止由欺骗引起的错误认证的另外的技术。计算装置可以实现检测对于欺骗的可疑尝试并且防止因为欺骗导致的错误认证的一个或多个反欺骗程序。在一些示例中,反欺骗技术可以包括:捕获用户的多个面部图像,并且对该面部图像分析活跃的指示。可以通过特定姿态来指示活跃度,该特定姿态例如是头部围绕垂直轴(例如,摇动人的头部)和/或水平轴(例如,点人的头部)的移动。计算装置可以呈现提示,该提示指示用户作出(perform) —个或多个活跃姿态。反欺骗程序可以在各种实现方式中基于用户的面部的特定方向来检测活跃姿态。例如,反欺骗程序可以检测与用户头部围绕垂直轴的移动对应的“偏转”角。类似地,反欺骗程序可以检测与用户头部围绕水平轴的移动对应的“俯仰”角。反欺骗程序可以另外确定偏转角和/或俯仰角的量值以获得面部图像的活跃分值。继而,如果活跃分值超过预定阈值,则反欺骗程序可以确定活跃分值足以证明合法的活跃用户试图访问由计算装置控制的功能。基于足够的活跃姿态的分析和检测,反欺骗程序可以将计算装置从锁定状态转换为解锁状态。另一方面,反欺骗程序可以在未检测到足够的活跃姿态时防止访问由计算装置控制的功能。
[0029]本公开也描述了用于防止由欺骗引起的错误认证的另外的技术。计算装置可以实现检测对于欺骗的可疑尝试并且防止因为欺骗导致的错误认证的一个或多个反欺骗程序。在一些示例中,反欺骗技术可以包括:捕获用户的多个面部图像,并且对该面部图像分析活跃度的指示。可以通过面部姿态来指示活跃度,该面部姿态例如是眼睛、嘴部和面部的其他部分的移动。反欺骗程序可以在各种实现方式中基于人脸的特定区域来检测面部姿态。例如,反欺骗程序可以将面部图像的一只或两只眼睛识别为界标。反欺骗程序可以然后检测和分析在图像之间的与一只或两只眼睛相关的转变。使用任何检测的转变,反欺骗程序可以检测诸如双眼眨眼(blink)、单眼眨眼(wink)和其他的面部姿态。计算装置可以呈现提示,该提示指示用户作出一个或多个面部姿态。基于满意的面部姿态的分析和检测,反欺骗程序可以将计算装置从锁定状态转变为解锁状态。另一方面,反欺骗程序可以在未检测到满意的面部姿态时防止访问由计算装置控制的功能。
[0030]反欺骗程序可以提供一个或多个优点,诸如减少了未经授权的用户通过欺骗引起错误认证的机会。例如,反欺骗程序可以使得面部识别程序在分析的面部图像不指示面部姿态或预期的系列的面部姿态、指示除了由反欺骗程序寻找的面部姿态之外的面部姿态、指示不足的质量/清晰度的面部姿态等时拒绝对于用户的认证。在一些实现方式中,反欺骗程序可以检测面部姿态的组合以建立活跃度。例如,反欺骗程序可以识别在单眼眨眼(仅一只眼睛的打开-关闭-打开)之前的双眼眨眼(两眼的打开-关闭-打开)。在这些和其他实现方式中,反欺骗程序可以使用界标的组合来检测面部姿态。例如,反欺骗程序可以使用眼睛作为用于双眼眨眼姿态的界标,并且使用嘴部作为用于笑姿态的界标。以这种方式,本公开的技术可以减少通过欺骗引起的错误认证的出现。
[0031]反欺骗程序可以提供一个或多个优点,诸如减少了未经授权的用户通过欺骗引起错误认证的机会。例如,反欺骗程序可以使得面部识别程序在分析的面部图像不指示足够的活跃姿态、不指示正确的集、系列或序列的活跃姿态、指示除了由反欺骗程序寻求的活跃姿态之外的活跃姿态等时拒绝对于用户的认证。在一些实现方式中,反欺骗程序可以检测活跃姿态的组合以确定合法的活跃用户试图解锁计算装置。例如,反欺骗程序可以识别用户头部在向上看(从在图像之间的俯仰角识别)之前的左摇(通过在图像之间的偏转角识别)。在这些和其他实现方式中,反欺骗程序可以使用偏转角和俯仰角的组合来检测面部姿态。例如,反欺骗程序可以检测用户头部的对角移动,这涵盖在图像之间的偏转角和俯仰角的同时转变。以这种方式,本公开的技术可以减少通过欺骗引起的错误认证的出现。
[0032]图1A-1B是图示根据本公开的一个或多个方面的、用于在捕获的面部图像中检测可能的欺骗的示例计算装置的概念图。图1A图示计算装置102,计算装置102可以捕获与用户(例如,授权用户126)相关联的面部图像,对捕获的面部图像分析可能的欺骗,并且基于该分析来确定是否允许或拒绝认证。计算装置102可以包括各种类型的装置中的一个或多个、作为各种类型的装置中的一个或多个的一部分,该各种类型的装置除了别的之外例如是移动电话(包括智能电话)、平板计算机、上网本、膝上型计算机、台式计算机、个人数字助理(“PDA”)、机顶盒、电视机、生物识别门锁、手表、汽车点火器和存在验证装置。
[0033]计算装置102可以包括相机镜头104和闪光灯122。在图1A的示例中,相机镜头104和闪光灯122两者可以是计算装置102的面向前的相机的一部分或耦合到它。在其他示例中,相机镜头104和闪光灯122中的一个或两者可以是计算装置102的面向后的相机的一部分或耦合到它。面向前和面向后的相机中的一个或两者可以能够捕获静止图像、视频或两者。在其他示例中,相机镜头104和闪光灯122可以被集成以形成计算装置102的单个部件。
[0034]在图1A的示例中,计算装置102可以包括显示装置,该显示装置显示图形用户界面(⑶1)106。⑶1106可以通过各种显示装置显示,该各种显示装置包括诸如触摸屏或存在敏感显示器的能够输入/输出的装置。如在图1A的示例中所示,⑶1106可以包括一个或多个GUI元件,诸如锁指示器120、解锁提示108和捕获图标112。
[0035]计算装置102可以被配置来在由锁指示器120所示的“锁定”模式中运行。在一些示例中,用户可以主动地配置计算装置102以在锁定模式中运行。例如,用户可以将按钮(诸如按钮110)按下预定的时间长度,以将计算装置102配置为在锁定模式中运行。在这些和其他示例中,用户可以使用计算装置102的能够输入/输出的显示器来轻击、刷过⑶1106的一个或多个元件或以其他方式与其交互。计算装置102也可以被配置为通过被动手段在锁定模式中运行。例如,预定的“不活动”时间段可以将计算装置102配置为在锁定模式中运行。不活动可能因为用户交互(例如,通过按钮按压、与能够输入/输出的显示装置的接触等)的不存在而出现。配置计算装置102以在锁定模式中运行的预定时间段可以是由计算装置102的制造商指定的默认时间段,或者可以被诸如授权用户126的授权用户编程。
[0036]在一些示例中,计算装置102可以利用面部识别技术来停止在锁定模式中的运行。换句话说,授权用户126可以通过认证方法来“解锁”计算装置102,该认证方法使用面部识别技术来确定授权用户126是否是装置102的授权用户。更具体地,授权用户126可以通过存储表示授权用户126的面部的注册图像来建立计算装置102的面部识别应用或嵌入过程。授权用户126可以使得计算装置102的相机使用相机镜头104捕获认证。计算装置102可以向计算装置102的一个或多个存储装置和/或向远程位置存储注册图像,该向远处位置的存储通常被称为“云存储”。
[0037]为了使用面部识别技术来解锁计算装置102,用户(诸如授权用户126)可以提供表示他的/她的面部的至少一部分的认证图像。在一些示例中,用户可以主动地使得计算装置102的相机捕获认证图像。例如,用户可以面向相机镜头104并且按下按钮110,以使得相机捕获认证图像。在另一个示例中,用户可以轻击、刷过与在⑶1106中包括的捕获图标112相关联的区域或以其他方式与该区域交互。在其他示例中,计算装置102可以响应于用户面向相机镜头104而自动地捕获认证图像。如在图1A的示例中所示,计算装置102可以显示⑶1106以包括解锁提示108。在这个示例中,解锁提示108指示用户可以简单地面向相机,该相机可以包括或否则耦合到相机镜头104,以使得计算装置102捕获认证图像。例如,当用户面向相机镜头104时,计算装置102可以使用面部识别程序来确定当前通过相机镜头104捕获的图像包括人脸的表示。
[0038]计算装置102可以然后将捕获的认证图像与注册图像作比较,并且确定图像是否彼此类似得足以用于面部识别目的。例如,计算装置102可以利用一个或多个面部识别程序来将与认证图像相关联的度量与关联于注册图像相关联的度量。度量的一些示例可以包括在面部元素之间的距离(瞳孔至通孔、嘴部宽度等)、各种面部特征的轮廓、与皮肤色调或纹理对应的实体动画、头发和/或眼睛颜色和许多其他。在计算装置102上运行的面部识别程序可以使用一个或多个识别算法来执行比较,仅列出几个,该识别算法例如是几何和/或光度方法、三维(3D)建模和识别技术、使用本征脸的主要分量分析、线性识别分析、弹性束图匹配、图案匹配和动态链路匹配。在基于比较的值的基础上,诸如预编程的可接受的错误容限,在计算装置102上运行的面部识别程序可以确定认证图像和注册图像是否彼此类似得足以用于面部识别。在面部识别程序核准匹配的情况下,用户可以成功地解锁计算装置102。相反,如果面部识别程序拒绝匹配,则用户可能不能解锁计算装置102,并且计算装置102可以继续在锁定模式中运行。
[0039]然而,未经授权的用户可以利用通常使用的面部识别技术的弱点来访问以解锁计算装置102。例如,如果未经授权的用户在将计算装置102配置在锁定模式中的同时拥有计算装置102,则未经授权的用户可以试图解锁计算装置102,如解锁提示108所请求那样。为了成功地认证,未经授权的用户可能通过呈现图像124来欺骗在计算装置102上运行的一个或多个面部识别程序,该图像124包括授权用户126的可视表示。图像124可以采取各种形式,诸如以打印形式的静止照片、以数字形式的静止照片或视频的一个或多个帧。在其中图像124是数字静止照片的一个示例中,未经授权的用户可以使用第二计算装置(为了容易说明而未示出)调用图像124。例如,未经授权的用户可以使用因特网来访问授权用户126贴到社交网站的简档画面。使用图像124,未经授权的用户可能试图欺骗在计算装置102上运行的面部识别程序,并且非法地解锁计算装置102。
[0040]计算装置102可以实现用于检测使用图像124来欺骗面部识别程序的企图的本公开的技术。在许多情况下,合法面部图像(即,从实际人脸捕获,而不是再现图像)包括在一只或两只眼睛中的闪烁。更具体地,合法面部图像可以在一只或两只眼睛的角膜(面向前的部分)中显示闪烁。在一些情况下,计算装置102可以使用闪光灯来在合法面部图像中引发角膜闪烁。在未经授权的用户试图(例如,使用图像124)欺骗在计算装置102上运行的面部识别程序的情况下,捕获的面部图像可以包括减弱的角膜闪烁或没有角膜闪烁,或者,在图像124是用户的视频表示的情况下,角膜闪烁的出现定时可以对应于基于闪光灯的定时的预期定时。计算装置102可以实现用于确定捕获的面部图像是否包括用于构成合法面部图像的适当角膜闪烁的本公开的技术。如果计算装置102确定捕获的面部图像不包括适当的角膜闪烁,则计算装置102可以检测欺骗企图,并且在甚至执行面部识别技术之前拒绝用户的认证。以这种方式,计算装置102可以实现用于防止通过欺骗的错误认证的本公开的技术。
[0041]图1B是图示在计算装置102检测到通过欺骗来引起错误认证的企图后计算装置102的行为的概念图。如所讨论的,未经授权的用户可能试图使用表示授权用户126的图像124来欺骗在计算装置102上运行的面部识别程序。计算装置102可以实现本发明的一个或多个技术,以检测欺骗的企图,并且基于该检测通过面部识别来拒绝认证。如图1B中所示,计算装置102可以在修改的GUI116内显示失败通知118。在这个示例中,失败通知118仅指示通过面部识别的认证的企图失败,并且计算装置102已经拒绝对于试图使用图像124来解锁计算装置102的用户的访问。在其他示例中,计算装置102可以显示更详细的通知,例如,将欺骗识别为在认证失败之后的可疑原因的通知。
[0042]如所讨论的,合法面部图像可以包括角膜闪烁的指示。计算装置102可以使用闪光灯122或暂时变亮的显示器来引发角膜闪烁,来自用户周围的自然和/或人造光、或者其任何组合可以引起角膜闪烁。在其他实现方式中,计算装置102可以使用除了闪光灯122之外的光源来引发角膜闪烁。计算装置102可以使用这些其他光源来取代或补充闪光灯122。其他光源的示例包括红外线发射器(诸如在红外线接近传感器中使用的那些)、发光二极管(诸如在基于LED接近传感器中使用的那些)和计算装置102的显示装置。如所讨论的,计算装置102可以暂时加亮显示装置,诸如智能电话的触摸屏,以便引发角膜闪烁。另外,计算装置102可以发射足以引发角膜闪烁的亮度的光,而不是使得过度曝光或“冲删”认证图像的光。
[0043]在一些示例中,计算装置102可以基于在认证图像的主题周围的环境光来改变发射的光的亮度,这是被称为自适应亮度调整的技术。为了实现自适应亮度调整,计算装置可以配备有专用环境光传感器。使用专用环境光传感器,计算装置102可以识别认证图像的主题周围的亮度。基于所识别的亮度,计算装置102可以改变由闪光灯122和/或如上所述的其他光源发射的光束的亮度。
[0044]在一些实现方式中,计算装置102可以使用被称为“时间调制”的技术来增强在此所述的反欺骗技术的鲁棒性。为了实现时间调制,计算装置102可以启动使用闪光灯122和/或其他光源的多个光束的发射。计算装置102可以使得闪光灯122以预定和/或随机产生的时间间隔发射多个光束。计算装置102可以然后捕获与多个发射的光束的一些或全部相关联的认证图像,并且检查在每一个捕获的认证图像中的角膜闪烁。如果计算装置102未在特定数量的捕获图像(例如,所有捕获的图像或在图像的总数内的阈值数量)中检测到足够的闪烁,则计算装置102就可以基于检测的欺骗来拒绝用户的认证。以这种方式,本公开的技术可以合并时间调制,以增强或向在此所述的反欺骗措施增加鲁棒性。
[0045]为了确定捕获的面部图像是否是合法或基于欺骗的,计算装置102可以检测在捕获的面部图像中的角膜闪烁和/或分析角膜闪烁。在一个示例中,计算装置102可以使用闪光灯122来启动光束的发射,通常被称为“闪光”。在诸如暗淡照明的条件下,闪光可能引发在合法面部图像中存在的角膜闪烁,其中,角膜闪烁可能否则不存在或减弱。计算装置102可以然后确定捕获的面部图像是否包括用于构成合法面部图像的足够的角膜闪烁。在各种情况下,角膜闪烁可以包括或完全是闪光的反射。
[0046]计算装置102可以以各种方式检测和分析角膜闪烁。在一个示例中,计算装置102可以测量或估计引起角膜闪烁的反射的强度。可以从诸如下述的光学测量得出强度,和/或强度可以与诸如下述的光学测量直接成比例:亮度、光度、发光强度、照度、发光度、辐射强度、幅照度和辐射亮度等。计算装置102可以然后将该强度与关联于一个或多个已知合法面部图像的阈值强度作比较。如果捕获的角膜闪烁的强度小于阈值强度,则计算装置102可以将捕获的面部图像识别为基于欺骗,并且拒绝评估捕获的面部图像来用于基于面部识别的认证。
[0047]在各种实现方式中,计算装置102可以通过从用户检测活跃度的指示来检测欺骗企图。在一些这样的实现方式中,计算装置102可以在试图检测活跃姿态之前在捕获的认证图像上运行面部识别程序。通过在对主题分析活跃度指示之前执行面部识别分析,计算装置102在查看可能的欺骗企图之前可以确定用户(例如,授权用户126)具有访问由计算装置102控制的功能的足够的认证核准。在其他这样的实现方式中,计算装置102可以首先从认证图像的主题检测活跃度的指示,并且随后对认证图像执行面部识别。通过在执行面部识别之前测试活跃度,计算装置102可以在运行面部识别程序之前消除可能的基于欺骗的图像。在其他示例实现方式中,计算装置102可以与对主题分析活跃度指示同时地,SP,并行地同时,执行面部识别分析。在各种情况下,可以取代“活跃度(liveness)”使用术语“活泼度(liveliness)”。为了本公开的目的,可以将术语“活泼度”和“活跃度”考虑为同义的,并且可以交换地使用。更具体地,术语“活跃度”和“活泼度”可以每一个在此用于表示在无生命物体(例如,用于欺骗的图像或其他类似品)和活人之间的区别。
[0048]计算装置102可以在选择其中执行面部识别和活跃度检测的特定序列中考虑各种标准。在一些示例中,面部识别程序和反欺骗程序可以花费不同的时间量来执行,可以耗费不同水平的计算资源,需要不同的网络和/或蜂窝带宽量等。作为一个示例,在其中反欺骗程序执行闪烁检测以及活跃度检测的实现方式中,反欺骗程序的执行可能比面部识别程序的执行更耗时和/或资源昂贵。在这个示例中,计算装置102可以在检测活跃度的指示之前执行面部识别。
[0049]作为相反示例,反欺骗程序可以运行本公开的活跃度检测技术,并且可以不执行闪烁检测。在这样的实现方式中,反欺骗程序的执行可以比面部识别程序的执行更少耗时和/或资源昂贵。在该情况下,计算装置102可以在对捕获的认证图像执行面部识别分析前运行反欺骗程序(即,执行活跃度检测)。以这种方式,计算装置102可以通过改变其中计算装置102执行活跃度检测和面部识别的序列来节省时间和计算资源。在前面的段落中描述的活跃度检测可以基于检测活跃姿态和面部姿态中的一个或两者,如下所述。
[0050]在一些示例中,计算装置102可以基于用户的一个或多个姿态的执行来检测活跃度的指示。计算装置102从其检测活跃度的姿态在此可以被称为“活跃姿态”。活跃姿态的一些说明性示例可以包括用户头部在一个或多个方向上的移动。例如,用户可以“摇动”或“转动”他的/她的头部,由此围绕垂直(或y)轴来旋转头部。通过摇动/转动姿态产生的旋转角可以被称为“偏转角”或“航向改变角”。
[0051]类似地,在活跃姿态的其他示例中,用户可以通过围绕水平(或X)轴旋转头部来“点”他的/她的头部。通过点头姿态产生的旋转角可以被称为“俯仰角”或“仰角”。偏转角和俯仰角经常被分类为Tait-Bryan角,该Tait-Bryan角继而是Euler角的子集。通常,可以使用Euler角来区别或描述硬体的方向。例如,在面部图像的上下文中,偏转角可以描述主题的头部向右或左转动什么程度。类似地,俯仰角可以描述主题的头部向上或向下面向什么程度。第三和最后的Tait-Bryan角经常被称为“摆动”或“内斜”,并且可以描述用户头部围绕深度(或Z-)轴的旋转,并且反映用户头部的“翘起”运动。
[0052]面部图像可以显示所述的Tait-Bryan角中的任何一个或多个的某个水平。例如,如果主题面向上并且向左转动他的/她的头部,则该主题的对应的面部图像可以显示偏转角以及俯仰角。在计算装置102上运行的反欺骗程序可以实现用于下述的本公开的技术:确定如在面部图像中表示的主题头部的偏转角、俯仰角和摆动角,并且使用所确定的角度来检测各种类型的活跃姿态的存在。如果检测的活跃姿态满足特定参数(诸如满足阈值量值、匹配预定姿态特性等),则反欺骗程序可以确定捕获的认证图像是合法的。相反,如果反欺骗程序未检测到活跃姿态或检测到不满足参数的活跃姿态,则反欺骗程序可以将认证尝试识别为欺骗尝试,并且使得计算装置102拒绝对于用户的访问,而与面部识别程序的执行和/或由面部识别程序产生的结果无关。
[0053]在计算装置102上运行的反欺骗程序可以以各种方式来检测活跃姿态。例如,反欺骗程序可以使得计算装置102捕获试图访问由计算装置102控制的功能的用户的多个面部图像。反欺骗程序可以然后基于所捕获的多个面部图像中的一个相对于所捕获的多个面部图像中的另一个的偏转角和俯仰角中的一个或两者来检测活跃姿态。例如,如果捕获的多个面部图像中的第二图像显示相对于捕获的多个面部图像中的第一图像的偏转角,则反欺骗程序可以检测用户已经将他的/她的头部向右或左旋转,根据情况而定。作为另一个示例,如果第二图像显示相对于第一图像的俯仰角,则反欺骗程序可以检测到用户已经在向上或向下方向上点他的/她的头部,根据情况而定。根据在此所述的技术的一个或多个,转头和点头中的一个或两者可以形成活跃姿态。
[0054]基于由第二图像相对于第一图像显示的偏转角和/或俯仰角,在计算装置102上运行的反欺骗程序可以识别偏转角量值和/或俯仰角量值。例如,用户头部向用户右侧的半转动可以使得第二图像显示具有相对于第一图像的45度的量值的偏转角。类似地,用户头部在向上方向上的半点头可以使得第二图像显示具有相对于第一图像的45度的量值的俯仰角。
[0055]在这个示例中,在计算装置102上运行的反欺骗程序可以基于偏转角量值和俯仰角量值中的一个或两者而产生活跃分值。例如,反欺骗程序可以产生与所确定的偏转角量值和/或俯仰角量值成比例的活跃分值。换句话说,更大的偏转角量值和/或俯仰角量值可以导致更大的活跃分值。在其中反欺骗程序检测由第二图像相对于第一图像显示的偏转角以及俯仰角的示例中,活跃姿态可以源自偏转角量值和俯仰角量值两者的函数。在各种情况下,反欺骗程序可以向偏转角量值附加与向俯仰角量值不同的权重。在一个这样的示例中,如果偏转角量值与比俯仰角量值高的权重相关联,则甚至略微的偏转角量值可能引起比更大的偏转角量值大的在活跃分值上的增大。
[0056]另外,在计算装置102上运行的反欺骗程序可以将所产生的活跃分值与阈值作比较。例如,该阈值可以对应于与预选量值(偏转角、俯仰角或两者)的阈值活跃姿态相关联的活跃分值。反欺骗程序可以确定阈值活跃姿态具有不能容易地欺骗的特性和/或量值。例如,反欺骗程序可以忽略可以从摆动角识别的任何活跃度指示,因为二维基于欺骗的图像(诸如图像124)可以在围绕其中心旋转时展示摆动。作为另一个示例,反欺骗程序可以忽略基于小于特定值的偏转角和/或俯仰角量值的活跃度指示。通过忽略在特定值下的偏转角和/或俯仰角量值,反欺骗程序可以检测在下述情况下的欺骗:恶意用户可能呈现授权用户126的多个基于欺骗的图像,该图像显示彼此最小但是仍然可识别的变化。
[0057]基于所产生的活跃分值与阈值的比较,在计算装置102上运行的反欺骗程序可以确定相对于访问由计算装置控制的功能是否拒绝对于用户的认证。更具体地,如果从多个面部图像产生的活跃分值不满足阈值,则反欺骗程序可以使得计算装置102拒绝对于用户的认证。认证的拒绝可以独立于在多个面部图像的任何一个或多个上的面部识别分析的执行和/或结果。例如,在其中计算装置102在执行反欺骗程序之前执行面部识别程序的情况下,计算装置102可以拒绝认证,即使多个面部图像的一个或多个被面部识别程序核准匹配。作为另一个示例,在其中计算装置102在执行反欺骗程序后执行面部识别程序的情况下,计算装置102可以拒绝认证并且拒绝对于多个面部图像的任何一个执行面部识别程序。通过在该实现方式中拒绝执行面部识别程序,计算装置102可以节省时间、计算资源、网络资源等。
[0058]在一些示例中,反欺骗程序可以使得计算装置102提示用户作出一个或多个活跃姿态。在一种实现方式中,反欺骗程序可以使得解锁提示108包括用于作出一个或多个活跃姿态的指令。在另一种实现方式中,反欺骗程序可以使得计算装置102在GUI106内显示独立的提示,使得该独立的提示包括使得用户作出活跃姿态的指令。在这些和其他实现方式中,反欺骗程序可以例如通过使用计算装置102的扬声器使得计算装置102输出音频提示。类似于作为GUI106的一部分提供的可视提示,音频提示可以指令用户作出一个或多个活跃姿态。
[0059]另外,反欺骗程序可以预先确定用户要作出的活跃姿态,和/或从库或池随机选择一个或多个活跃姿态。作为一个示例,反欺骗程序可以提示用户作出包括用户头部在左方向上的半转的活跃姿态。更具体地,半转可以包括将用户头部从面向前(或者“正面”)方向向用户的左侧转动,由此产生在35和55度之间的偏转角。用户头部在半转后的方向在此可以被称为“中侧面”方向。
[0060]作为另一个示例,反欺骗程序可以提示用户作出用户头部在右方向上的全转。全转可以包括将用户头部从正面方向向用户右侧转动,导致在80和100度之间的偏转角。用户头部在全转后的方向在此可以被称为“侧面”方向。在从用户检测到活跃姿态时,反欺骗程序可以确定所作出的活跃姿态是否充分地匹配在提示中指定的预定活跃姿态。例如,如果反欺骗程序提示用户作半转,但是反欺骗程序替代地检测到用户已经作了全转,则反欺骗程序可以确定检测到的活跃姿态不匹配预定活跃姿态。
[0061]在其中所检测的活跃姿态不匹配预定活跃姿态的情况下,反欺骗程序可以使得计算装置102拒绝对于用户的认证,而独立于面部识别程序相对于用户的面部图像的执行和/或由面部识别程序相对于用户的面部图像产生的结果。相反,如果反欺骗程序确定所检测的活跃姿态匹配预定的活跃姿态,则反欺骗程序可以将任何认证确定遵从面部识别程序(例如,如果面部识别程序确定对于用户的认证图像的匹配等,则核准认证)。
[0062]反欺骗程序可以通过使得计算装置102捕获用户的两个面部图像来区别偏转角(由此检测在提示中指示的活跃姿态)。在一种实现方式中,反欺骗程序可以使得计算装置102在活跃姿态的每一个阶段提示用户。在左半转的示例中,反欺骗程序可以提示用户提交用户头部在正面方向上的面部图像。在捕获在正面方向上的用户面部的第一图像之后,反欺骗程序可以提示用户将他的/她的头部向左转动范围从35至55度的角度。反欺骗程序可以然后使得计算装置102捕获用户面部的第二图像,并且将第二图像与第一图像作比较以检测左半转。
[0063]在一些示例中,反欺骗程序可以使得计算装置102在捕获第一图像后的预定时间流逝后捕获第二图像。在其他示例中,反欺骗程序可以例如通过按压/致动在⑶1106中设置的按钮来提示用户使得计算装置102捕获一个或两个图像。在其他示例中,反欺骗程序可以使得计算装置102的有视频能力的相机捕获用户的视频流,并且提取捕获的视频的帧以形成第一和第二图像。以这种方式,本公开的技术可以提供各种方式,通过该各种方式来获得从其检测活跃姿态的面部图像。
[0064]反欺骗程序可以以各种方式将第一和第二图像作比较以检测活跃姿态。示例检测实现方式可以包括基于姿势的检测技术和基于界标的检测技术等。下面参考图7-10更详细地描述基于姿势的和基于界标的检测技术。另外,形成基于姿势的检测技术的基础的特定方面包括姿势识别技术。在下文中描述了用于姿势识别的示例技术(或者替代地,头部方向的识别):美国专利 N0.6,829,384,“OBJECT FINDER FOR PHOTOGRAPHICIMAGES” ;Νο.7,194,114,“OBJECT FINDER FOR TWO-DIMENSIONAL IMAGES, AND SYSTEMFOR DETERMINING A SET OF SUB-CLASSIFIERS COMPOSING AN OBJECT FINDER” ;以及N0.8,064,688,“OBJECT RECOGNIZER AND DETECTOR FOR TWO-DIMENSIONAL IMAGES USINGBAYESIAN NETWORK BASED CLASSIFIER”,它们每一个以它们各自的整体被包含在此。
[0065]在一些实现方式中,计算装置102可以包括或否则访问使得能够实现本公开的技术的硬件元件。例如,计算装置102可以包括或耦合到三维(3-D)测距仪。3-D测距仪可以是诸如激光器的合并技术,用于确定到远处物体的距离、远处物体的深度等。在其中计算装置102使用3-D测距仪来实现活跃姿态检测的一些示例中,计算装置102可以检测相对于第一和第二图像的与各种面部轮廓相关联的距离和深度。例如,与第一面部图像的捕获相结合地,计算装置102可以使用3D测距仪来识别到用户鼻尖的距离、到用户眼睛的距离等的一个或多个。另外,与第二面部图像的捕获相结合地,计算装置102可以使用3-D测距仪来识别到同一面部特征的距离。
[0066]基于所作出的活跃姿态的特性,反欺骗程序可以预期在到面部特征的距离上的特定改变。例如,在右全转的情况下,到用户鼻尖的距离可能基于在用户头部的正面和侧面方向之间的差而增大。另外,3-D测距仪当用户头部摆姿势在侧面方向上时比当用户头部摆姿势在正面方向上时可以检测到更少的轮廓。更具体地,在正面方向上的姿势可以暴露与两眼的深度和曲率、鼻子的突出、嘴部/嘴唇、下颚和其他相关联的轮廓。作为比较,在侧面方向上的姿势可能缺少与一眼(其可能不是可见的)相关联的轮廓,减少与剩余的可见眼睛相关联的轮廓等。以这种方式,可以通过使用3-D测距仪来实现和增强本公开的技术。
[0067]在一些示例中,反欺骗程序可以使得计算装置102从图像的较大的子集选择两个或更多的图像,并且然后使用所选择的图像来检测活跃姿态。在一个说明性示例中,反欺骗程序可以使得计算装置102捕获用户的三个面部图像。反欺骗程序可以然后排列来自该三个捕获的面部图像的每一个可能的对,并且比较在每对中的图像。如果反欺骗程序基于该比较中的一个(例如,在单对的捕获的面部图像中)来检测满意的活跃姿态,则反欺骗程序可以相对于用户的认证遵从面部识别程序。
[0068]在其中计算装置102配备有或耦合到具有视频捕获能力的图像配置装置的情况下,反欺骗程序可以从捕获的视频流的几个帧选择第一和第二图像。在一个说明性示例中,反欺骗程序可以排列所捕获的视频流的帧的子集(例如,对、三元组等)。反欺骗程序可以然后比较在每一个子集内的帧。基于该比较,反欺骗程序可以检测在一个或多个子集中的活跃姿态。例如,一对捕获的帧可以展示用于指示向上的点头的足够俯仰。作为另一个示例,捕获的帧的三元组可以展示用于指示然后转变为左全转的左半转所需的偏转。在另一个示例中,捕获的帧的四元组可以显示足以指示右半转、其后向上点头、其后右全转的偏转和俯仰。在这个示例中,四元组的第四帧可以当与四元组的第一帧作比较时显示在80和100度之间的俯仰角以及偏转角。
[0069]在一些示例中,反欺骗程序可以计算与帧的各个子集相关联的活跃分值,并且基于该活跃分值来选择特定子集。例如,如果用于一对帧的活跃分值对应于对于反欺骗程序满意的活跃姿态,则反欺骗程序可以选择该一对帧。以这种方式,本公开的技术可以使得能够通过选择性地编组帧/图像的较大的子集来检测活跃姿态。
[0070]在一些示例中,反欺骗程序可以实现用于与面部识别程序协作地作为以提供更鲁棒的认证机制的本公开的技术。例如,反欺骗程序可以使得面部识别程序确定第一和第二图像是否显示用于指示一致的用户身份的足够类似度。更具体地,与使用第一和第二图像来检测活跃姿态的反欺骗程序相结合地,面部识别程序可以分析第一和第二图像以确定图像是否匹配以用于身份验证。在一些示例中,该匹配可以基于图像的类似度分值是否满足阈值类似度(“或类似度分值阈值”)。在这些和其他示例中,计算装置102可以通过下述来确定面部图像是否符合一致的用户身份:将第一图像的一个或多个特征与第二图像的一个或多个对应的特征作比较。这样的特征的示例可以包括虹膜颜色、诸如眼睛、鼻子、嘴部等的面部特征的尺寸、头发颜色和头部尺寸,这里仅列出几个。以这种方式,本公开的技术可以检测欺骗企图,同时也防范可能企图通过使用不同人的基于欺骗的图像来复制活跃姿态的恶意用户。
[0071]在特定实现方式中,计算装置102可以使用面部姿态检测和/或识别来执行本公开的反欺骗技术。如所讨论的,在此所述的反欺骗技术可以使用面部姿态(或者替代地,“脸部姿态”),诸如双眼眨眼、单眼眨眼和可以在人脸的边界内作出的其他姿态。计算装置102可以检测与各种面部特征相关联的面部姿态。示例包括一只或两只眼睛(例如,用于双眼眨目艮、单眼眨眼等)、嘴部区域(例如,用于包括微笑、皱眉、显示用户的牙齿、伸展用户的舌头等的姿态)、鼻子(例如,用于皱鼻子姿态等)、前额(例如,用于皱前额姿态等)、一只或两只眉毛(用于眉毛抬起和压缩姿态等)和各种其他。
[0072]在一些实现方式中,计算装置102可以基于特定的面部界标来检测面部姿态。在特定示例中,计算装置102可以识别在多个捕获的面部图像中的面部界标。具体地说,计算装置102可以识别在第一面部图像中的一个或多个界标,并且在第二面部图像中识别一个或多个对应的界标。另外,计算装置102可以从第一和第二面部图像的每一个提取子图像,使得子图像包括识别的界标的表示。计算装置102可以然后比较来自第一和第二面部图像的对应的组的子图像(例如,通过确定在子图像之间的距离测量)。如果该距离测量满足或超过阈值,则计算装置102可以确定用户已经满意地作出了面部姿态,并且取决于核准匹配的面部识别程序,基于面部识别认证来允许用户访问由计算装置102控制的功能。
[0073]在一个示例中,计算装置102可能试图检测双眼眨眼姿态。在这个示例中,计算装置102可以将第一面部图像的双眼识别为独立的界标。替代地,计算装置102可以将包括两眼的用户面部的区域(例如,“眼睛带”)识别为单个界标。计算装置102可以从第一面部图像提取包括识别的面部界标的第一子图像。另外,计算装置102可以从第二面部图像提取包括对应的面部界标的第二子图像。在一些实现方式中,计算装置102可以提取子图像使得第二图像大于第一子图像(例如,大第一图像的大小的20%的因子)。计算装置102可以提取第二子图像来作为较大图像,以试图保证第一子图像的所有细节被包括在第二子图像中。另外,通过提取作为比第一子图像大的图像的第二子图像,计算装置102可以保证在两个子图像之间的对应的界标的更准确和精确的对齐。通过以这种方式保证对应的界标的更好的对齐,计算装置102可以减小由不良对齐和与作出活跃姿态或面部姿态无关的其他因素引起的任何距离。
[0074]为了检测用户是否已经作出了足以用于反欺骗目的的面部姿态,计算装置102可以计算在第一和第二子图像之间的距离测量。在示例中,计算距离测量可以包括各种步骤。例如,计算装置102可以缩放、旋转、校正或否则调整所提取的子图像中的一个或两者,以便规范化提取的子图像。以这种方式调整(和/或规范化)提取的子图像可以使得计算装置102能够获得子图像的标准的规范化的相关性。通过规范化子图像,计算装置102可以减小在诸如在形成测量参数的区域之间的位置和空间的子图像的共享属性上的差异。在示例中,计算装置102可以旋转子图像中的一个,以补偿由第二面部图像相对于第一面部图像显示的偏转角、俯仰角和摆动角的一个或多个。在旋转示例中,计算装置102可以规范化子图像的方向。类似地,计算装置102可以缩放一个或两个子图像,以规范化子图像的大小。计算装置102可以基于检测的在第一和第二面部图像的大小上的差异来规范化子图像的大小。以这种方式,计算装置102可以在试图从子图像检测面部姿态之前减小在子图像之间的与用户作出面部姿态无关的差别。
[0075]为了确定用户是否已经作出了面部姿态(在这个示例中为双眼眨眼),计算装置102可以测量在子图像之间的距离。在其中计算装置102对子图像执行多个规范化操作的情况下,计算装置102可以测量从第一子图像至第二子图像的每一个规范化版本的距离。计算装置102可以然后为了双眼眨眼检测目的而选择多个距离测量的最小距离。通过选择该最小距离,计算装置102可以利用来自最精确地规范化的子图像对的距离。计算装置102可以然后确定所测量的距离(例如,所选择的最小距离)是否指示在子图像之间的足以有资格作为足够的双眼眨眼(或其他活跃姿态,根据情况而定)的差别。在示例中,计算装置102可以将测量的距离与阈值作比较,以便确定是否存在足够的差别。如果测量的距离满足或超过阈值,则计算装置102可以检测双眼眨眼姿态,而如果测量的距离小于阈值,则计算装置102可以检测双眼眨眼姿态的不存在(或失败)。
[0076]计算装置102可以基于在子图像的对应的像素位置之间的差来测量在子图像之间的距离。在如上所述的双眼眨眼姿态的示例中,第一和第二子图像的对应的像素位置可以分别表示角膜和眼睑的部分。另外,眼睑可以包括比角膜少的像素转变。更具体地,角膜可以显示相对于巩膜、虹膜和瞳孔的两个或更多个的像素转变(例如,对比颜色)。相反,眼睑可以仅在其上边界(相对于眉毛)和下边界(相对于睫毛)处显示像素转变。
[0077]在一些示例实现方式中,计算装置102可以使用三个面部图像(和三个子图像,从三个面部图像的每一个提取一个)来检测双眼眨眼姿态。在这些实现方式中,计算装置102可以测量在三个子图像的任何两个之间的距离以检测双眼眨眼姿态。例如,如果测量的距离满足一组参数,则计算装置102可以检测双眼眨眼姿态。作为一个示例参数,在第一和第二子图像之间的测量距离必须满足或超过阈值(以与眼睑的闭合对应)。作为另一个示例参数,在第一和第三子图像之间的测量的距离必须小于相同或不同的阈值(以与表示张开的眼睛的两个子图像对应)。作为另一个示例参数,测量的在第二和第三子图像之间的距离必须满足或超过相同或不同的阈值(以与眼睑的张开对应)。计算装置102可以在使用三个面部图像来检测双眼眨眼姿态中应用所有三个参数或这些参数的任何组合。以这种方式,本公开的技术可以提供利用变化的可用信息量来检测面部姿态的多种方式。
[0078]如所讨论的,计算装置102可以实现用于检测各种面部姿态的本公开的技术。除了如上所述的双眼眨眼姿态之外,计算装置102可以实现技术以检测使用一只或两只眼睛作为界标的其他面部姿态,诸如单眼眨眼、在眼睛张开的同时的角膜的移动(以下称为“眼睛移动”)、眉毛移动等。另外,计算装置102可以基于其他面部界标来检测面部姿态,该其他面部界标包括嘴部(或一般的嘴部区域)、鼻子、前额和其他。与这些界标相关联的面部姿态可以例如包括微笑、皱眉、伸舌、张嘴姿态、皱鼻子、皱前额和各种其他。
[0079]在单眼眨眼姿态的示例中,计算装置102可以将相对于一只眼睛(例如,左眼)测量的距离与第一阈值作比较,以确定是否存在指示左眼睑的张开-关闭-张开移动的足够差别。与检测相对于左眼的足够差别相结合地,计算装置102可以检测右眼的静态情况(例如,右眼睑的持续张开状态)。更具体地,计算装置102可以测量在各种面部图像中的右眼的表示之间的距离,并且将该距离与第二阈值作比较。在右眼的情况下,计算装置102可以确定该距离是否小于第二阈值。换句话说,在右眼的情况下,计算装置102可以检测在各个面部图像上是否存在足够的类似度。该足够的类似度可以指示右眼保持在静态中(即,打开或闭合,但是没有在两者之间的过渡)。
[0080]当使用嘴部作为界标时,计算装置102可以如所讨论地检测包括微笑、皱眉、舌头伸出和张开的嘴部姿态的面部姿态。作为一个具体示例,计算装置102可以检测张开的嘴部微笑。在张开的嘴部微笑的示例中,面部图像可以显示从起点(例如,嘴部在闭合状态中,并且在相对直或无表达的位置中)至终点(例如,嘴部在张开状态中,在向上弯曲的位置中)的转变。在这个示例中,在面部图像之一(例如,第二面部图像)中的用户嘴部的打开状态可以提供相对于表示闭合的嘴部的面部图像的另外的差别(由此增大测量的距离)。例如,第二面部图像的张开的嘴部可以包括由在嘴唇和牙齿之间的对比度引起的像素转变。相反,因为用户嘴部的闭合状态,所以第一面部图像可以包括更少的或不包括与嘴唇至牙齿对比度相关联的像素转变。作为与嘴部界标相关联的像素转变的不同数量和/或质量的结果,可以在面部图像之间存在足够的差别(即距离),以指示张嘴的微笑面部姿态。可以引起相对于嘴部界标的足够差别的面部姿态的其他示例可以包括其他类型的微笑(例如,闭合的嘴部)、皱眉(例如,因为嘴部区域的不同曲线)、舌头伸出(例如,源自由深度差别等引起的像素转变)、嘴部的张开(例如,源自由在嘴唇和张开的嘴部的表示之间的对比度引起的像素转变)和其他。
[0081]在一些实现方式中,计算装置102可以实现用于提示用户作出特定的预定面部姿态的本公开的技术。在示例中,计算装置102可以提示用户输出与⑶1106的通知108类似的通知。在这些实现方式中,计算装置102可以仅如果所检测的面部姿态匹配预定的面部姿态则检测有效的面部姿态以用于反欺骗目的。如所讨论的,张开嘴部的微笑可以是用于指示在几个情况下的活跃度的有效面部姿态。然而,如果在提示中指示的预定面部姿态不是张开嘴部的微笑,则计算装置102可以拒绝对于作出张开嘴部的微笑的用户的认证。相反,假定面部识别程序已经对所捕获的面部图像的至少一个核准了匹配,如果所检测的面部姿态匹配预定面部姿态(例如,舌头伸出),则计算装置102可以核准对于用户的认证。
[0082]另外,在一些实现方式中,计算装置102可以配备有面部检测能力。在具体示例中,计算装置102可以运行或执行一个或多个面部检测程序。如所讨论的,计算装置102可以包括或否则耦合到具有视频捕获能力的图像捕获装置。继而,计算装置102可以接收作为由图像捕获装置捕获的视频流的独立帧的多个图像(包括所述的面部图像)。在这样的实现方式中,面部检测程序可以分析所捕获的视频流的多个帧(并且有时全部帧)。更具体地,面部检测程序可以分析图像和/或视频帧以确定图像/帧是否包括人脸的表示。在其中计算装置102配备有这样的面部检测程序的实现方式中,计算装置102可以对于所捕获的视频流的多个帧执行面部检测,以确定所检测的面部或活跃度的合法性。
[0083]例如,计算装置102可以对于所捕获的视频流的每一个帧执行面部检测。如果面部检测相对于视频流的任何部分失败(即,如果视频流的至少一个帧不包括人脸的表示),则计算装置102可以拒绝对于用户的认证。在其他示例中,面部检测程序可以限定其中可能没有人脸的帧的可接受阈值。在这些示例中,计算装置102可以在下述情况下核准对于用户的认证:视频流的帧未能通过面部检测分析,但是失败的帧的数量不超过限定的阈值。以这种方式,本公开的技术可以挫败恶意用户通过检索示出不同的面部表达、头部方向等的授权用户的多个图像来欺骗面部或活跃姿态的企图。
[0084]下面使用示例算法表示的变量和相应的值的列表来呈现示例算法,通过该示例算法,可以执行本公开的一个或多个技术。
[0085]算法1:反欺骗
[0086]1.当图像帧从视频相机输出时对于图像帧运行面部检测和识别。当面部F匹配注册面部时,将其加到识别的面部的集E={F1,F2,F3,...,FN}的结尾。注意,检测步骤得出面部界标位置和面部的摆动角的估计。
[0087]2.如果N (在集E中的面部的数量)小于2,则前进到步骤1,否则继续到3。
[0088]3.根据算法2来计算活跃度L (E)。
[0089]4.如果L(E)==真,则将装置解锁。
[0090]5.如果设备时间期满,则清空集S,并且停止;否则,前进到步骤I。
[0091]算法2:活跃度测量L(E)
[0092]1.N=在面部集E中的元素的数量。对于从I至N-1的每一个i,将面部i与新的面部N作比较,以如下检查可以混淆特征比较的因素
[0093]a.使用从面部检测步骤的头部滚转估计来检查额外的相对旋转。对于从I至N-1的每一个i,将面部i与新的面部N作比较:
[0094]如果Abs (RN-Ri) >Rmax,其中,Ri是面部i的摆动角,返回假,否则继续。
[0095]b.使用来自面部检测步骤的界标位置pij来检查移动模糊:
[0096]1.计算新的面部FN的界标的质心cN:cN=l/3J=1 Σ 3pNj
[0097]i1.如果I |CN-Ci| I >Vmax,即在两个面部之间的距离超过阈值,则返回假,否则继续。
[0098]c.使用来自面部检测步骤的界标位置pij来检查额外的相对缩放:
[0099]1.计算新的面部FN的缩放SN:SN=l/3j=1 Σ31 cN-pj | | ,即,界标距界标的质心的平均距离
[0100]i1.如果 Max(SN/Si,Si/SN)>Smax,则返回假,否则继续。
[0101]2.将面部图像旋转到标称位置(即,使得在眼点之间的线是水平的)
[0102]3.将面部图像缩放为标称大小
[0103]4.对于每一个特征j,限定大小为M*Wjx, M*Wjy (通过因子M填充)的、围绕界标位置Pj为中心的面部图像的子图像
[0104]5.对于从I至N-1的每一个i,将面部i的特征与面部N作比较。
[0105]a.对于每一个特征j (两眼或嘴部)
[0106]1.将面部Fj的较小(大小为Wjx、Wjy)的子图像Iij与来自面部FN的对应的子图像相关。对于在较大者内的较小图像的每一个可能位置,计算差异测量(例如,规范化的欧几里德距离,1-相关系数)以限定相关平面。
[0107]i1.找出在该相关平面上的差异测量的最小值。[0108]b.从特征的差异测量确定活跃度。例如,如果所有特征的差异大于距离阈值DL,则活跃度=真,否则活跃度=假。
[0109]c.如果活跃度对于面部Fj为真,则返回真,否则使用j = j+1继续步骤5。
[0110]6.返回假
[0111]函数和变暈
【权利要求】
1.一种方法,包括: 从耦合到计算装置的图像捕获装置接收用户的面部的第一图像和所述用户的所述面部的第二图像; 识别所述第一图像中的至少一个面部界标以及所述第二图像中的至少一个对应的面部界标; 通过所述计算装置从所述第一图像提取第一子图像,其中所述第一子图像表示所述第一图像的一部分,并且其中所述第一子图像包括所述至少一个面部界标的表示; 通过所述计算装置从所述第二图像提取第二子图像,其中所述第二子图像表示所述第二图像的一部分,并且其中所述第二子图像包括所述至少一个对应的面部界标的表示;通过由所述计算装置确定在所述第二子图像和所述第一子图像之间是否存在指示面部姿态的足够差别,来检测所述面部姿态; 通过所述计算装置,至少部分地基于确定所述用户的所述面部的所述第一图像以及所述用户的所述面部的所述第二图像之间是否存在足够类似度,确定所述用户的所述面部的所述第一图像以及所述用户的所述面部的所述第二图像是否与一致的用户身份相关联;以及 至少部分地基于检测所述面部姿态以及确定所述用户的所述面部的所述第一图像以及所述用户的所述面部的所述第二图像是否与所述一致的用户身份相关联,来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
2.根据权利要求1所述的方法,进一步包括: 提示所述用户作出预定的面部姿态;` 确定所检测到的面部姿态是否匹配所述预定的面部姿态; 如果所检测到的面部姿态不匹配所述预定的面部姿态,则相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证;以及 如果所检测到的面部姿态匹配所述预定的面部姿态,则相对于访问由所述计算装置控制的一个或多个功能核准对于所述用户的认证。
3.根据权利要求1所述的方法,其中所述至少一个面部界标包括眼睛、眉毛、嘴部区域、前额区域以及鼻子中的至少一个,并且其中所指示的面部姿态包括以下中的至少一个:双眼眨眼姿态、单眼眨眼姿态、眼睛移动、微笑姿态、皱眉姿态、伸舌姿态、张嘴姿态、眉毛移动姿态、皱前额姿态以及皱鼻子姿态。
4.根据权利要求1所述的方法, 其中,所述图像捕获装置具有视频捕获能力,并且 其中,所述第一图像和所述第二图像中的至少一个形成从所述图像捕获装置接收的视频数据的一部分。
5.根据权利要求1所述的方法,进一步包括: 对所述第一图像和所述第二图像中的每个执行面部识别分析; 如果所述第一图像和所述第二图像中的至少一个未通过所述面部识别分析,则相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证, 如果所述第一图像和所述第二图像两者通过所述面部识别分析并且检测到了所述面部姿态,则相对于访问由所述计算装置控制的一个或多个功能核准对于所述用户的认证。
6.根据权利要求1所述的方法,进一步包括: 调整所述第一子图像和所述第二子图像中的一个或两个以获得所述第一子图像和所述第二子图像的标准的规范化的相关性。
7.根据权利要求6所述的方法,其中调整所述第一子图像和所述第二子图像两者或其中一个包括以下至少一个:1)旋转所述第一子图像和所述第二子图像中的一个或两个,以及2)缩放所述第一子图像和所述第二子图像中的一个或两个。
8.根据权利要求7所述的方法,其中缩放所述第一子图像和所述第二子图像中的一个或两个与校正所述第一子图像和所述第二子图像之间的图像大小差异相关联。
9.根据权利要求1所述的方法,其中,接收所述第一图像和所述第二图像进一步包括:从至少包括所述第一图像、所述第二图像和第三图像的多个图像中选择所述第一图像和所述第二图像。
10.根据权利要求9所述的方法,其中,从所述多个图像中选择所述第一图像和所述第二图像包括:至少部分地基于所检测到的面部姿态来进行选择。
11.根据权利要求1所述的方法,进一步包括: 作为视频流的帧来接收所述第一图像和所述第二图像; 确定所述视频流是否具有指示连续帧捕获的足够高的帧率; 确定所述视频流中的每个帧是否包括人脸的表示; 如果所述视频流中的至少一个`帧不包括所述人脸的所述表示,则相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证;以及 如果所述第一图像和所述第二图像中的每一个都包括所述人脸的所述表示,则相对于访问由所述计算装置控制的一个或多个功能核准对于所述用户的认证。
12.根据权利要求1所述的方法,其中确定所述第一图像和所述第二图像之间是否存在足够类似度以指示一致的用户身份进一步包括以下至少一个:I)对所述第一图像和所述第二图像两者执行面部识别分析,以及2)将所述第一图像的一个或多个特征与所述第二图像的一个或多个对应的特征作比较,以及3)基于所述比较确定类似度分值,其中当所述类似度分值超过类似度分值阈值时确定存在所述足够类似度。
13.根据权利要求1所述的方法,其中所指示的面部姿态是第一面部姿态,所述方法进一步包括: 从所述图像捕获装置接收所述用户的所述面部的第三图像以及所述用户的所述面部的第四图像; 从所述第三图像提取第三子图像,从所述第四图像提取第四子图像,其中所述第三子图像包括补充面部界标的表示,并且所述第四子图像包括对应的补充面部界标的表示;以及 如果在所述第二子图像和所述第一子图像之间存在指示所述第一面部姿态的所述足够差别: 至少部分地基于确定在所述第三子图像和所述第四子图像之间存在指示第二面部姿态的足够差别,来检测所述第二面部姿态, 其中,确定是否拒绝对于所述用户的认证包括:至少部分地基于所检测到的第一面部姿态以及所检测到的第二面部姿态,确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
14.根据权利要求12所述的方法,进一步包括: 提示所述用户作出一系列面部姿态包括所述第一面部姿态和所述第二面部姿态。
15.根据权利要求13所述的方法,其中所述至少一个界标与所述补充界标共享共同的区域。
16.根据权利要求13所述的方法,其中所述至少一个界标与所述补充界标不共享共同的区域。
17.根据权利要求1所述的方法,其中所述第二子图像大于从所述第一图像提取的所述第一子图像。
18.根据权利要求1所述的方法,进一步包括: 基于所述第二图像相对于所述第一图像的偏转角和所述第二图像相对于所述第一图像的俯仰角中的至少一个来检测活跃姿态,其中所述偏转角对应于围绕垂直轴为中心的转变,并且其中所述俯仰角对应于围绕水平轴为中心的转变; 基于与所述偏转角相关联的偏转角量值和与所述俯仰角相关联的俯仰角量值中的至少一个来产生活跃分值;以及 将所述活跃分值与阈值作比较, 其中确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证进一步基于所述比较。
19.根据权利要求1所述的方法,进一步包括: 从所述图像捕获装置接收所述用户的所述面部的第三图像以及所述用户的所述面部的第四图像; 基于所述第四图像相对于所述第三图像的偏转角和所述第四图像相对于所述第三图像的俯仰角中的至少一个来检测活跃姿态,其中所述偏转角对应于围绕垂直轴为中心的转变,并且其中所述俯仰角对应于围绕水平轴为中心的转变; 基于与所述偏转角相关联的偏转角量值和与所述俯仰角相关联的俯仰角量值中的至少一个来产生活跃分值;以及 将所述活跃分值与阈值作比较, 其中确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证进一步基于所述比较。
20.根据权利要求18所述的方法,其中确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证进一步基于与所述活跃姿态和所述面部姿态相关联的顺序。
21.根据权利要求1所述的方法,进一步包括: 确定在所述用户的所述面部的所述第一图像或所述用户的所述面部的所述第二图像的任一个中是否存在移动模糊;以及 如果在所述用户的所述面部的所述第一图像或所述用户的所述面部的所述第二图像的任一个中存在移动模糊,则为了检测所述面部姿态的目的忽略所述用户的所述面部的所述第一图像和所述用户的所述面部的所述第二图像两者。
22.—种计算装置,包括:存储器; 至少一个处理器; 图像捕获装置,所述图像捕获装置能够被所述至少一个处理器操作来捕获用户的面部的第一图像和所述用户的所述面部的第二图像; 面部识别模块,所述面部识别模块能够被所述至少一个处理器操作来通过面部识别对于所述第一图像和所述第二图像中的至少一个核准匹配; 界标检测模块,所述界标检测模块能够被所述至少一个处理器操作来在所述第一图像中识别至少一个面部界标以及在所述第二图像中识别至少一个对应的面部界标; 子图像提取模块,所述子图像提取模块能够被所述至少一个处理器操作来: 从所述第一图像中提取第一子图像,其中所述第一子图像表示所述第一图像的一部分,并且其中所述第一子图像包括所述至少一个面部界标的表示,以及 从所述第二图像中提取第二子图像,其中所述第二子图像表示所述第二图像的一部分,并且其中所述第二子图像包括所述至少一个对应的面部界标的表示;以及反欺骗模块,所述反欺骗模块能够被所述至少一个处理器操作来: 基于确定在所述第二子图像和所述第三子图像之间是否存在指示面部姿态的足够差另Ij,来检测所述面部姿态, 至少部分地基于确定所述用户的所述面部的所述第一图像和所述用户的所述面部的所述第二图像之间是否存在足够类似度,来确定所述面部的所述第一图像和所述面部的所述第二图像是否与一致的用户身份相关联,以及 至少部分地基于检测所述面部姿态和确定所述面部的所述第一图像和所述面部的所述第二图像是否与所述一致的用户身份相关联,来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
23.—种编码有指令的计算机可读的存储装置,当所述指令被执行时使得计算装置的一个或多个处理器执行操作,所述操作包括: 从耦合到计算装置的图像捕获装置接收用户的面部的第一图像和所述用户的所述面部的第二图像; 识别所述第一图像中的至少一个面部界标以及所述第二图像中的至少一个对应的面部界标; 通过所述计算装置从所述第一图像提取第一子图像,其中所述第一子图像表示所述第一图像的一部分,并且其中所述第一子图像包括所述至少一个面部界标的表示; 通过所述计算装置从所述第二图像提取第二子图像,其中所述第二子图像表示所述第二图像的一部分,并且其中所述第二子图像包括所述至少一个对应的面部界标的表示;通过由所述计算装置确定在所述第二子图像和所述第一子图像之间是否存在指示面部姿态的足够差别,来检测所述面部姿态; 至少部分地基于确定所述面部的所述第一图像以及所述面部的所述第二图像之间是否存在足够类似度,确定所述用户的所述面部的所述第一图像以及所述用户的所述面部的所述第二图像是否与一致的用户身份相关联;以及 至少部分地基于检测所述面部姿态以及确定所述面部的所述第一图像以及所述面部的所述第二图像是否与所述一致的用户身份相关联,来确定是否相对于访问由所述计算装置控制的一个或多个功能拒绝对于所述用户的认证。
24.根据权利要求1所述的方法,其中确定所述面部的所述第一图像以及所述面部的所述第二图像中的每一个是否与共同的用户身份相关联包括:至少部分地基于将所述第一图像的一个或多个特征和所述第二图像的一个或多个对应的特征进行比较来确定。
25.根据权利要求24所述的方法,其中将所述第一图像的一个或多个特征和所述第二图像的一个或多个对应的特征进行比较包括对以下中的一个或多个进行比较:虹膜颜色、眼睛尺寸、鼻子尺寸、嘴部尺寸、头发颜色以及头部尺寸。
【文档编号】G06K9/00GK103514440SQ201310260362
【公开日】2014年1月15日 申请日期:2013年6月26日 优先权日:2012年6月26日
【发明者】迈克尔·安德鲁·赛普, 亨利·威尔·施奈德曼, 迈克尔·克里斯蒂安·内希巴 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1