CN114450729A - 基于网格的用于面部认证的注册 - Google Patents

基于网格的用于面部认证的注册 Download PDF

Info

Publication number
CN114450729A
CN114450729A CN201980100965.9A CN201980100965A CN114450729A CN 114450729 A CN114450729 A CN 114450729A CN 201980100965 A CN201980100965 A CN 201980100965A CN 114450729 A CN114450729 A CN 114450729A
Authority
CN
China
Prior art keywords
user
face
segments
registration
facing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980100965.9A
Other languages
English (en)
Inventor
凯文·希恩
詹姆斯·布鲁克斯·米勒
泰勒·里德·库格勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN114450729A publication Critical patent/CN114450729A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/143Sensing or illuminating at different wavelengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/166Detection; Localisation; Normalisation using acquisition arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/50Maintenance of biometric data or enrolment thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/60Static or dynamic means for assisting the user to position a body part for biometric acquisition
    • G06V40/67Static or dynamic means for assisting the user to position a body part for biometric acquisition by interactive indications to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/17Image acquisition using hand-held instruments

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Geometry (AREA)
  • Collating Specific Patterns (AREA)
  • Image Processing (AREA)

Abstract

本文档描述使得能实现基于网格的用于面部认证的注册的技术和系统。技术和系统包括将三维(3D)跟踪窗口(122)覆盖在经由显示设备(110)显示的用户的面部的预览图像(120)上。3D跟踪窗口(122)包括多个分段(124),该多个分段持续对应于用户的面部正面向的近似方向。基于跟踪,分段(124)被突出显示以指示用户的面部正面向的近似方向,相机(114)捕获面向该方向的用户的面部的注册图像,以及基于注册图像生成嵌入并且将其存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用。响应于嵌入的生成和存储,提供一个或多个分段完成的指示。

Description

基于网格的用于面部认证的注册
背景技术
三维(3D)面部注册通常需要用户的面部的多个视图。当注册应用向用户传递用户应该如何移动其头部以达到特定位置时出现挑战。通常,这可以包括显示指示用户向左、向右、向上或向下看的文本。对于数据收集中的任何间隙,注册应用可以做出更特定请求,诸如“看两点钟方向”,这可能是一些用户难以想象的,从而潜在地导致用户沮丧并且降低用户体验。
发明内容
本文档描述一种基于网格的用于面部认证的注册以及相关系统和技术。这些技术包括将三维(3D)跟踪窗口覆盖在用户的面部的预览图像上。3D跟踪窗口包括多个分段,该多个分段持续对应于用户的面部正面向的近似方向。基于跟踪,分段被突出显示以指示用户的面部正面向的近似方向,相机捕获面向该方向的用户的面部的注册图像,以及基于注册图像生成嵌入并且将其存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用。响应于嵌入的生成和存储,经突出显示的分段被修改以指示一个或多个分段何时完成。以这种方式,用户被引导提供各种面部姿态以使得系统能够捕获注册图像以供在面部认证中使用。因此,提供了用于将输入数据提供给面部认证系统以生成对应验证数据的持续引导式人机交互过程。
根据一个方面,提供了一种用于由用户设备进行基于网格的用于面部认证的注册的方法,该方法包括:响应于用户输入,经由显示设备呈现由相机捕获的预览图像,该呈现将启动用于面部认证的注册;将二维(2D)对象覆盖在预览图像上,该2D对象具有指示用于用户将其面部相对于相机定位的近似定向的区域;响应于用户的面部被定位在近似定向处的确定,移除2D对象并且将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段;跟踪用户的面部相对于相机正面向的近似方向;基于跟踪:突出显示3D跟踪窗口的多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;捕获面向近似方向的用户的面部的一个或多个注册图像;基于所述一个或多个注册图像来生成一个或多个嵌入;在安全存储单元中,将所述一个或多个嵌入存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用;以及响应于所述一个或多个嵌入的生成和存储,提供一个或多个分段完成的指示。
根据另一方面,提供了一种用于由用户设备进行基于网格的用于面部认证的注册的方法,该方法包括:响应于用户输入,经由显示设备呈现由相机捕获的预览图像,该呈现将启动用于面部认证的注册;将二维(2D)对象覆盖在预览图像上,该2D对象包括指示用于用户将其面部相对于相机定位的近似定向的中央区域;响应于用户的面部被定位在中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段,该多个分段持续对应于用户的面部相对于相机系统正面向的近似方向;跟踪用户的面部正面向的近似方向;确定该多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;突出显示所述一个或多个分段以向用户提供视觉反馈;捕获与面向近似方向的用户的面部的姿态相对应的一个或多个注册图像;生成与所述一个或多个注册图像相对应的一个或多个嵌入;以及响应于已生成所述一个或多个嵌入的指示,提供所述一个或多个分段完成的指示。
上述方面中的任何一个的方法可以进一步包括以下特征。提供所述一个或多个分段完成的指示可以包括改变所述一个或多个分段的不透明度以指示进展。该方法可以进一步包括,响应于完成注册:呈现对注册的完成的确认;以及使得存储在安全存储单元中的一个或多个嵌入能够用于经由面部认证来解锁用户设备。3D跟踪窗口可以被成形来引导用户使其头部转动或旋转。3D跟踪窗口可以包括半球。预览图像可以是实况预览。该方法可以进一步包括:响应于呈现3D跟踪窗口,启动定时器;在多个分段中的相应分段完成时重置定时器;以及响应于定时器期满而所述多个分段中的一个或多个新分段未完成,提供指示来引导用户面向与一个或多个新分段中的至少一个相对应的新方向。该方法可以进一步包括:确定所述多个分段中的在3D跟踪窗口的边缘附近的第一分段未完成并且与第一分段相邻的多个分段完成;以及向用户指示第一分段完成而不用捕获面向与第一分段相对应的方向的用户的面部的注册图像。所述多个分段可以各自对应于用户的头部的姿态。姿态单元格的网格中的姿态单元格可以由平转角度和倾斜角度表征。所述一个或多个分段的突出显示可以包括:淡入与用户的面部相对于相机正面向的近似方向相对应的第一分段;以及在用户的面部正面向的近似方向改变并且不再对应于第一分段时淡出第一分段;并且与淡入相对应的第一动画速度大于与淡出相对应的第二动画速度。所述一个或多个分段完成的指示可以包括触觉反馈。所述一个或多个分段完成的指示可以包括听觉反馈。相机可以包括一个或多个彩色相机和一个或多个近红外相机。所述一个或多个彩色相机可以用于捕获预览图像;并且捕获用户的面部的一个或多个注册图像可以包括,使用所述一个或多个近红外相机来捕获可用于生成所述一个或多个嵌入的一个或多个近红外图像。
根据另一个方面,提供了一种用户设备,该用户设备包括:相机系统,该相机系统被配置成捕获用户的面部的图像以进行面部认证;显示设备,该显示设备被配置成显示包括用户的面部的预览图像;以及处理器和存储器,该处理器和存储器用于实现注册模块,该注册模块被配置成:响应于注册过程的启动,使二维(2D)对象被覆盖在预览图像上,该2D对象包括指示用于用户将其面部相对于相机系统定位的近似定向的中央区域;响应于用户的面部被定位在中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段,该多个分段持续对应于用户的面部相对于相机系统正面向的近似方向;跟踪用户的面部正面向的近似方向;确定该多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;突出显示所述一个或多个分段以向用户提供视觉反馈;使相机系统捕获与面向近似方向的用户的面部的姿态相对应的一个或多个注册图像;生成与所述一个或多个注册图像相对应的一个或多个嵌入;以及响应于已生成所述一个或多个嵌入的指示,提供所述一个或多个分段完成的指示。
根据另一方面,提供了一种用户设备,该用户设备包括:相机系统,该相机系统被配置成捕获用户的面部图像以进行面部认证;显示设备,该显示设备被配置成显示包括用户的面部的预览图像;以及处理器和存储器,该处理器和存储器用于实现注册模块,该注册模块被配置成:响应于注册过程的启动,使二维(2D)对象被覆盖在预览图像上,该2D对象具有指示用于用户将其面部相对于相机系统定位的近似定向的区域;响应于用户的面部被定位在近似定向处的确定,移除2D对象并且将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段;跟踪用户的面部相对于相机正面向的近似方向;基于该跟踪:突出显示3D跟踪窗口的所述多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;使相机系统捕获面向近似方向的用户的面部的一个或多个注册图像;基于所述一个或多个注册图像来生成一个或多个嵌入;在安全存储单元中,将所述一个或多个嵌入存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用;以及响应于所述一个或多个嵌入的生成和存储,提供所述一个或多个分段完成的指示。
任何一个方面的用户设备还可以包括以下特征。3D跟踪窗口可以被成形为半球并且可以被覆盖在预览图像上,使得预览图像中的用户的面部被显示在半球内。注册模块可以被进一步配置成:响应于对3D跟踪窗口的呈现,启动定时器;在所述多个分段中的相应分段完成时重置定时器;以及响应于定时器期满而所述多个分段中的一个或多个新分段未完成,提供指示来引导用户面向所述一个或多个新分段中的至少一个的方向。所述多个分段可以各自对应于用户的头部的姿态。所述一个或多个分段完成的指示可以包括所述一个或多个分段的不透明度的变化。
根据另一个方面,提供了一种计算机可读存储介质,该计算机可读存储介质包括指令,当被执行时,这些指令将用户设备的至少一个处理器配置成:在用于面部认证的注册过程期间,经由显示设备显示由用户设备的相机系统捕获的预览图像;使二维(2D)对象被覆盖在预览图像上,该2D对象包括指示用于用户将其面部相对于相机系统定位的近似定向的中央区域;响应于用户的面部被定位在中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段,该多个分段持续对应于用户的面部相对于相机系统正面向的近似方向;跟踪用户的面部正面向的近似方向;标识该多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;突出显示所述一个或多个分段以向用户提供视觉反馈;使相机系统捕获与面向近似方向的用户的面部的姿态相对应的一个或多个注册图像;生成与所述一个或多个注册图像相对应的嵌入;以及响应于已针对姿态生成嵌入的指示,提供所述一个或多个分段完成的指示。
根据另一方面,提供了一种计算机可读存储介质,该计算机可读存储介质包括指令,当被执行时,这些指令将用户设备的至少一个处理器配置成:在用于面部认证的注册过程期间,经由显示设备显示由用户设备的相机系统捕获的预览图像;使二维(2D)对象被覆盖在预览图像上,该2D对象具有指示用于用户将其面部相对于相机系统定位的近似定向的区域;响应于用户的面部被定位在近似定向处的确定,移除2D对象并且将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段;跟踪用户的面部相对于相机正面向的近似方向;基于跟踪:突出显示3D跟踪窗口的所述多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;使相机系统捕获面向近似方向的用户的面部的一个或多个注册图像;基于所述一个或多个注册图像来生成一个或多个嵌入;在安全存储单元中,将所述一个或多个嵌入存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用;以及响应于生成和存储,提供所述一个或多个分段完成的指示。
任何一个方面的计算机可读介质还可以包括以下特征。嵌入可以包括针对面向近似方向的用户的面部的姿态的2D和3D嵌入的对;并且至少一个处理器可以被配置成将嵌入存储在由平转角度和倾斜角度表征的姿态单元格的固定网格中。
应领会,在一个方面的上下文中描述的特征可以与另一方面的特征组合。例如,方法方面的特征可以由系统方面和/或计算机可读存储介质方面来实现。
本发明内容被提供来引入关于在下面在具体实施方式和附图中进一步描述的基于网格的用于面部认证的注册的简化构思。本发明内容不旨在标识所要求保护的主题的必要特征,它也不意在供在确定所要求保护的主题的范围时使用。
附图说明
在本文档中参考以下附图描述基于网格的用于面部认证的注册的一个或多个方面的细节。相同的标号在附图中自始至终用于引用相似的特征和组件:
图1图示能够在其中实现基于网格的用于面部认证的注册的技术的示例环境。
图2更详细地图示图1的用户设备的示例实现方式。
图3图示被二维对象覆盖以引导用户的头部的平移定位的预览图像的示例实现方式。
图4图示基于网格的用于面部认证的注册的示例实现方式。
图5图示具有视觉提示以供协助的基于网格的用于面部认证的注册的示例实现方式。
图6图示用于存储与不同面部姿态相对应的嵌入的固定网格的示例实现方式。
图7图示与基于网格的用于面部认证的注册相对应的示例状态图。
图8和图9描绘基于网格的用于面部认证的注册的示例方法。
图10图示能够作为如参考图1-9描述的任何类型的客户端、服务器和/或电子设备实现的示例计算系统,其中可以实现使得能够实现基于网格的用于面部认证的注册的技术。
具体实施方式
概述
能够进行三维(3D)面部注册的设备通常不会很好地向用户传递有关如何将其面部相对于设备的相机朝向特定角度定向的信息,这能够使用户体验降级并且限制用户使用面部认证来解锁设备的能力。本文档描述使得能实现基于网格的用于面部认证的注册的技术和系统,所述面部认证提供独特的、直观的且非平凡的方式来以3D方式引导用户的头部移动,以显著地增强面部注册期间的用户体验。
在各方面中,公开了一种用于由用户设备进行基于网格的用于面部认证的注册的方法。该方法包括,响应于用户输入,经由显示设备呈现由相机捕获的预览图像,该呈现将启动用于面部认证的注册。该方法还包括将二维(2D)对象覆盖在预览图像之上,该2D对象具有指示用于用户将其面部相对于相机定位的近似定向的区域。另外,该方法包括,响应于用户的面部被定位在近似定向处的确定,移除2D对象并且将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段。另外,该方法包括跟踪用户的面部相对于相机正面向的近似方向。进一步地,该方法包括,基于跟踪:突出显示3D跟踪窗口的多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;捕获面向近似方向的用户的面部的一个或多个注册图像;基于一个或多个注册图像来生成一个或多个嵌入;在安全存储单元中,将一个或多个嵌入存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用;以及响应于一个或多个嵌入的生成和存储,提供一个或多个分段完成的指示。
在各方面中,公开了一种用户设备。该用户设备包括相机系统、显示设备以及处理器和存储器。相机系统可以被配置成捕获用户的面部的图像以进行面部认证。显示设备可以被配置成显示包括用户的面部的预览图像。处理器和存储器能够实现注册模块,该注册模块被配置成响应于注册过程的启动,使二维(2D)对象被覆盖在预览图像上,该2D对象包括指示用于用户将其面部相对于相机系统定位的近似定向的中央区域。该注册模块还可以被配置成响应于用户的面部被定位在中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段,该多个分段持续对应于用户的面部相对于相机系统正面向的近似方向。另外,该注册模块被配置成跟踪用户的面部正面向的近似方向;确定多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;突出显示一个或多个分段以向用户提供视觉反馈;使相机系统捕获与面向近似方向的用户的面部的姿态相对应的一个或多个注册图像;生成与一个或多个注册图像相对应的一个或多个嵌入;以及响应于已生成一个或多个嵌入的指示,提供一个或多个分段完成的指示。
在各方面中公开了一种计算机可读存储介质。该计算机可读存储介质包括指令,当被执行时,这些指令将用户设备的至少一个处理器配置成在用于面部认证的注册过程期间,经由显示设备显示由用户设备的相机系统捕获的预览图像。这些指令还将至少一个处理器配置成使二维(2D)对象被覆盖在预览图像上,该2D对象包括指示用于用户将其面部相对于相机系统定位的近似定向的中央区域。另外,这些指令将至少一个处理器配置成响应于用户的面部被定位在中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在预览图像上,该3D跟踪窗口具有多个分段,该多个分段持续对应于用户的面部相对于相机系统正面向的近似方向。另外,这些指令将至少一个处理器配置成跟踪用户面部正面向的近似方向;标识多个分段中的与用户的面部正面向的近似方向相对应的一个或多个分段;突出显示一个或多个分段以向用户提供视觉反馈;使相机系统捕获与面向近似方向的用户的面部的姿态相对应的一个或多个注册图像;生成与一个或多个注册图像相对应的嵌入;以及响应于已针对姿态生成嵌入的指示,提供一个或多个分段完成的指示。
这些只是所描述的技术和设备如何可以用于使得能实现基于网格的用于面部认证的注册的几个示例。贯穿本文档描述了其他示例和实现方式。文档现在转向示例操作环境,此后描述示例设备、方法和系统。
操作环境
图1图示能够在其中实现使得能实现基于网格的用于面部认证的注册的技术的示例环境100。示例环境100包括用户设备102(例如,电子设备),该用户设备102包括相机系统104、认证系统106、安全存储单元108和显示设备110或者与它们相关联。
如在下面进一步描述的,相机系统104能够包括一个或多个预览相机112和一个或多个注册相机114。预览相机112可以不同于注册相机114或者可以被实现为同一组相机。在一些实现方式中,预览相机112可以是彩色相机(也称为红色、绿色、蓝色(RGB)相机)以捕获用户116的面部的RGB预览图像,该RGB预览图像可以经由显示设备110显示。预览图像作为“自拍”预览并且可以是以任何合适的帧速率来镜像用户的头部移动的实况预览。注册相机114可以是被配置成捕获用户的面部的近红外(NIR)图像数据以进行面部认证的NIR相机。替换地,注册相机114可以是被配置成捕获用户的面部的RGB图像数据以进行面部认证的RGB相机。
认证系统106被配置成实现注册模块118。注册模块118能够将相机系统104配置成使用预览相机112来捕获用户的面部的实况RGB预览图像(例如,预览图像120)以用于经由显示设备110显示,并且使用注册相机114来捕获表示用户的面部的NIR图像数据。替换地,预览图像可以是用户的计算机生成的影像(例如,化身)版本而不是实际的相机捕获。用户的面部的3D化身可以基于用户的面部的3D图。用户设备102可以在面部的3D版本上绘制用户的面部的皮肤图像,诸如数字人体模型或卡通人物。可以使用反映用户116正在看哪里并且映射或跟踪用户的头部移动的任何合适的3D图像。
通常,NIR是指在介于约750纳米与2500纳米之间的波长范围内的对于人眼不可见的光。注册模块118还被配置成使用利用机器学习技术训练的神经网络(例如,卷积神经网络)或其他类型的机器学习模型,以从所捕获的NIR图像数据生成嵌入。每个嵌入是针对一种特定姿态表示用户的面部的n维向量。如在下面进一步描述的,这些嵌入被存储在安全存储单元108中以供在面部认证中稍后使用以解锁用户设备102。通常,生成并存储多个嵌入以使得用户能够用各种不同姿态中的任一种来解锁用户设备102。
当用户116启动用于面部认证的注册过程时,预览图像120被呈现为用户116的二维(2D)图像。另外,注册模块118能够将3D跟踪窗口122作为覆盖图呈现在预览图像120上。3D跟踪窗口122包括多个分段124。如在下面进一步描述的,3D跟踪窗口122以直观地指示用户116使其头部旋转或转动的3D方式提供快速视觉反馈。不是以2D方式引导用户使其头部向左、向右、向上或向下平移(例如,移位),而是3D跟踪窗口122引导用户116通过相对于用户设备102面向或凝视各个方向来使其头部转动或旋转,以使得相机系统104能够捕获用户的面部的不同角度以进行注册过程。3D跟踪窗口122通过使用曲面网格并且突出显示该曲面网格的一个或多个分段来向用户116提供这些方向,该一个或多个分段与用户的面部正面向的近似方向(例如,与用户的面部垂直的近似方向)相对应。随着用户116使其头部四处转动时,新分段被突出显示以跟随用户的凝视(类似于跟随输入机制的光标,诸如计算机鼠标)。此外,对旧分段(用户116过去看向的但是用户116不再看向的分段)的突出显示被移除。
如果注册过程遗漏用户的面部的某些角度,则3D跟踪窗口122能够向用户指示要面向以为相机系统104提供其面部的对应视图的特定方向。在下面描述进一步细节。当生成并存储了足够数目的嵌入时,注册模块118确定注册完成。响应地,用户设备102显示指示126以向用户116通知注册的成功完成。指示126可以包括任何合适的指示,诸如视觉(例如,文本、图像、视频)、音频、触觉或其任何组合。
更详细地,考虑图2,图2图示能够实现基于网格的用于面部认证的注册的用户设备102的示例实现方式200。图2的用户设备102用各种示例设备来图示,这些示例设备包括智能电话102-1、平板计算机102-2、膝上型计算机102-3、台式计算机102-4、计算手表102-5、计算眼镜102-6、游戏系统102-7、家庭自动化和控制系统102-8以及微波炉102-9。用户设备102还能够包括其他设备,诸如电视、娱乐系统、音频系统、汽车、无人机、触控板、绘图板、上网本、电子阅读器、家庭安全系统和其他家用电器。注意,用户设备102可以是可穿戴的、不可穿戴的但移动的、或相对不可移动的(例如,台式计算机和电器)。
用户设备102还包括一个或多个计算机处理器202和一个或多个计算机可读介质204,该一个或多个计算机可读介质204包括存储器介质和存储介质。作为计算机可读指令实现在计算机可读介质204上的应用和/或操作系统(未示出)能够由计算机处理器202执行以提供本文描述的功能性中的一些或全部。例如,计算机可读介质204能够包括注册模块118和面部识别模块206。面部识别模块206被配置成通过在面部认证尝试期间从捕获的用户的面部的图像生成嵌入,并且将所捕获的嵌入与存储在安全存储单元108中的注册的嵌入进行比较来对用户进行认证以解锁用户设备102。
计算机可读介质204包括不可由用户空间中的进程或应用访问的安全存储装置,例如安全存储单元108。安全存储单元108被配置成存储用于隐私控制的安全数据(例如,用户凭证),诸如用于解锁用户设备102的控制(包括面部认证数据、口令/密码信息、指纹数据等)。尽管此安全数据能够用于对用户116进行认证以使用面部认证、口令/密码认证、指纹认证等来解锁用户设备102,但是不能通过安全数据来获得关于用户116的个人可标识的信息。具体地,不能通过安全数据来标识用户116。相反,在从用户先前获得的显式许可情况下,安全数据用于确定从试图解锁电话的用户接收到的数据是否与存储的表示在用户设备102上设置安全的用户的配置文件数据匹配。例如,从捕获的用户的面部的图像(NIR图像或RGB图像)生成的嵌入是用户116的面部特征的数字向量表示,并且在面部认证尝试期间被用于与注册的嵌入进行比较以定位匹配。
用户设备102还可以包括网络接口208。用户设备102能够使用网络接口208用于通过有线、无线或光网络传递数据。作为示例而非限制,网络接口208可以通过局域网(LAN)、无线局域网(WLAN)、个域网(PAN)、广域网(WAN)、内联网、因特网、对等网络、点对点网络或网状网络传递数据。
认证系统106的各种实现方式能够包括片上系统(SoC)、一个或多个集成电路(IC)、具有嵌入式处理器指令或者被配置成访问存储在存储器中的处理器指令的处理器、具有嵌入式固件的硬件、具有各种硬件组件的印刷电路板或其任何组合。如在下面进一步详细地描述的,认证系统106能够在安全模式下通过捕获用户的面部的图像数据、生成与该图像数据相对应的安全数据、并且将该安全数据存储在安全存储装置中来在面部认证中注册用户116。认证系统106还能够将从用户116接收到的认证数据与所存储的安全数据进行比较以便对用户116进行认证以解锁用户设备102。在一些方面中,认证系统106使用从相机系统104获得的图像数据来生成认证数据,并且将该认证数据提供给安全存储装置以使得安全存储装置能够将该认证数据与所存储的安全数据进行比较并且确定是否存在匹配。
相机系统104被实现来捕获RGB图像以提供预览图像(例如,来自图1的预览图像120)。相机系统104还被实现来捕获可用于生成对象(诸如用户的面部)的三维深度图的图像数据(例如,NIR图像数据或RGB图像数据)。该相机系统包括一个或多个照射器210、成像处理器单元212、一个或多个相机传感器214和相机驱动器系统216。
一个或多个照射器210可以包括点投影器(未示出)、泛光照射器(未示出)和诸如发光二极管的RGB灯(未示出)。泛光照射器用NIR光照射被摄体。相机传感器214基于由泛光照射器输出的NIR光来捕获被摄体的图像。点投影器将多个(例如,数百个或数千个)NIR点投影到被摄体上并且相机传感器214捕获所得到的点图案的图像。成像处理器单元212读取NIR图像和点图案并且生成三维面部图。当使用多个(例如,两个)相机传感器214时,成像处理器单元212计算不同捕获的图像上的匹配点之间的差,该差为可用于生成三维面部图的相应像素提供深度。
相机驱动器系统216使得能实现相机系统104与用户设备102的其他组件(诸如计算机处理器202、注册模块118和认证系统106)之间的通信。相机驱动器系统216能够通过任何合适的触发器来启动,诸如经由被致动控件或被按压按钮接收到的用户输入或从一个或多个传感器218接收到的信号。在示例中,接近传感器能够发送指示用户116接近于用户设备102的信号,使得用户可以试图使用面部认证来解锁用户设备102。
用户设备102的一个或多个传感器218能够包括各种传感器中的任一种,诸如音频传感器(例如,麦克风)、触摸输入传感器(例如,触摸屏)、图像捕获设备(例如,相机或摄像机)、接近传感器(例如,电容式传感器)或环境光传感器(例如,光电检测器)。在至少一些实现方式中,用户设备102能够包括雷达系统(未示出)以检测用户116与用户设备102的接近度,并且基于该接近度,启动一个或多个组件和/或功能,诸如启动相机系统104和认证系统106以启动面部认证尝试。
用户设备102还能够包括显示设备,诸如显示设备110。显示设备110能够包括任何合适的显示设备,诸如触摸屏、液晶显示器(LCD)、薄膜晶体管(TFT)LCD、就地切换(IPS)LCD、电容式触摸屏显示器、有机发光二极管(OLED)显示器、有源矩阵有机发光二极管(AMOLED)显示器、超级AMOLED显示器等。
在至少一些方面中,用户设备102还包括面部检测器220。通常为了速度用可编程硬件加以实现但是还可能被实现为硬件和软件的组合的面部检测器220被配置成检测预览图像120中的用户的面部,并且更具体地,检测与预览图像120中的用户的面部相关联的定向信息(例如,相对位置信息)。定向信息能够用于确定用户的面部是否被近似地定位在预览图像120中央。
在下面更详细地阐述这些及其他能力和配置以及图1的实体行动和交互的方式。这些实体可以被进一步划分、组合等。图1的环境100和图2至图10的详细说明图示了能够采用所描述的技术的许多可能的环境和设备中的一些。
示例实现方式
图3图示被2D对象覆盖以引导用户的头部的平移定位的预览图像的示例实现方式300。可以将实现方式300称为注册过程的对齐阶段,其引导用户116将其面部与相机传感器214对齐。尽管出于说明目的示出单个相机传感器214,但是能够使用多个相机传感器214并且将其定位在用户设备102上的各个位置处。当注册过程开始时,相机传感器214(例如,预览相机112)捕获预览图像120以用于经由显示设备110显示。通常,所使用的相机传感器214是前置相机,使得用户116能够经由显示设备110看到自己的镜像图像。替换地,能够使用后置相机。
2D对象302被作为覆盖图呈现在预览图像120上。2D对象302包括指示用于用户将其头部或面部相对于相机传感器214定位的近似定向(例如,相对位置)的中央区域304。2D对象302引导用户116平移地移动(例如,向左、向右、向下、向上、向前和/或向后移位)其头部以近似地使其面部在中央区域304中居中,这表示相机传感器214的正确视场。如果相机传感器214从用户设备102的中间偏移,则这对一些用户而言可以是有帮助的,因为即使用户的面部可以相对于显示设备110居中,用户116也可能未认识到其面部相对于相机传感器214未居中。在一些方面中,2D对象302可以是半透明的、有图案的、有阴影的,或者在中央区域304周围的其他区域306中具有半透明颜色。相比之下,2D对象302的中央区域304可以是清楚的或高度透明的。中央区域304与其他区域306之间的这种对比向用户116提供关于将其面部平移地定位在哪里的直观和推理指示。
当用户设备102确定预览图像120中的用户的面部被大体上定位在中央区域304内时,2D对象302被移除并且3D跟踪窗口122被覆盖在预览图像120之上,如图4所图示的。
图4图示基于网格的用于面部认证的注册的示例实现方式。特别地,图4图示表示3D跟踪窗口122在注册过程期间跟踪用户116的头部移动的若干视图400、410、420、430。可以将此实现方式称为注册过程的注册阶段。如以上提及的,3D跟踪窗口122包括具有多个分段124的曲面网格。分段可以被成形以对应于引导用户116使其头部转动或旋转的半球或其他3D对象。在一些方面中,可以将分段124实现为均匀地分布在网格中央处或在半球或其他图案上的多个点。
最初,分段124可以是半透明的、有图案的、有阴影的或者具有半透明颜色,这使得预览图像120能够在3D跟踪窗口122之下部分地可视。3D跟踪窗口122使用机器学习算法来跟踪用户的面部正面向的近似方向。在视图400中,用户116的镜像图像正面向前方,直接朝向3D跟踪窗口122的中央。作为响应,用户设备102突出显示与用户的面部(和呈现在预览图像120中的用户的面部的镜像图像)正面向的近似方向相对应的一个或多个分段124。这里,分段402用加粗边界突出显示。另外,经突出显示的分段402的不透明度被移除。这种突出显示和/或不透明度修改向用户116提供视觉反馈以指示该特定分段402完成。完成的分段对应于已在对应姿态处为用户的面部生成的嵌入。例如,随着用户面向3D跟踪窗口122(从图3有效地面向相机传感器214)时,注册相机114捕获用户的面部的一个或多个注册图像并且为该姿态生成一个或多个嵌入。如在下面关于图6进一步描述的,底层机器学习模型用嵌入来填充面部姿态的固定网格。面部姿态的该固定网格在完成时包含用户的面部的各种角度的足够信息,这些信息预期在面部认证尝试期间被使用。
用户116可以将其头部定向在不同角度处,诸如通过使其头部转动,以使预览图像120面向3D跟踪窗口122的不同分段,好像预览图像120中的面部正看着半球的内部的不同部分。嵌入随着用户做出这些移动被捕获,并且3D跟踪窗口122提供视觉反馈以指示用户的进展。例如,在视图410中,用户将其头部转向其右侧并且用户的面部的镜像图像转向其左侧。作为响应,与用户116现在正面向的近似方向相对应的分段412被突出显示。然后,在视图420中,用户116向上且向其右侧看,从而使用户的面部的镜像图像面向上且面向其左侧。响应地,与用户116正面向并且用户的面部的镜像正面向的近似方向相对应的新分段422被突出显示。
在一些实现方式中,用户设备102使用高帧速率(例如,每秒大约十帧或更多帧)来突出显示与用户的面部正面向的近似方向相对应的分段。因此,所对应的分段迅速地淡入,从而提供跟踪用户的凝视的快速视觉反馈(类似于跟踪计算机鼠标移动的光标)。然而,随着用户的凝视改变方向,不再在用户的凝视的近似方向上的经突出显示的分段的突出显示慢慢地淡出和/或被移除。因此,淡入的动画速度大于淡出的动画速度。动画速度的这种差异添加连续性以增强用户体验。
在视图430中,用户116向下且向其左侧看并且用户的面部的镜像图像面向下且面向其右侧。随着分段完成,它们保持清楚以向用户116指示它们完成。未完成的分段继续是半透明的以引导用户116在对应方向上看以给用户设备102提供可用于为注册过程生成嵌入的特定姿态。在一些示例中,用户设备102除了提供已完成分段的不透明度变化(例如,增加的透明度)之外还可以提供进展更新。进展更新可以包括当特定分段完成时的触觉反馈。例如,当一个或多个分段完成时,可以启动触觉振动器以使用户设备102振动。这在用户的视力较差(例如,在注册过程期间移除眼镜)并且不能清楚地看到显示设备110上的显示时可以是有用的,因为触觉反馈能够向用户指示他们正在注册过程中取得进展。替换地或另外的,用户设备102可以提供听觉反馈。例如,可以实现文本至语音以提供关于用户在注册过程中的进展的线索。
继续图4中的示例,用户116然后可以在左上方向上看,从而使镜像图像向上看向其右侧,以提供一个或多个最终姿态来完成注册过程。随着用户116通过注册过程进行并且越来越多的分段完成,可以增加未完成分段的不透明度以使未完成分段变得对用户116更加明显。这在预览图像120的背景是与分段大体上相同的颜色从而使得用户116难以标识哪个分段未完成的情形下可以是有用的。用特定颜色使未完成分段变得完全不透明使得用户能够更容易地标识未完成分段并且面向对应方向来完成该分段。
在一个示例中,3D跟踪窗口122的未完成分段最初可以是大体上透明的以确保用户116能够在预览图像120中看到其面部。随着时间的推移和进展,可以增加未完成分段的不透明度以确保用户能够标识剩余的未完成分段。
在一些实现方式中,可以在不用完成每一个分段124的情况下完成注册过程。一些用户可能不能够提供其面部的极端角度,因此不可能使用此类极端角度来尝试面部认证。如果注册模块118确定在3D跟踪窗口122的边缘附近的特定分段未完成并且与该特定分段相邻的多个分段完成,则注册模块118能够向用户指示该特定分段完成而不用实际地获取对应的注册图像或嵌入。注册模块118试图捕获用户116在面部认证尝试期间可能使用的最可能姿态。因此,在完成阈值数目的分段(例如,5x5网格的中央九个分段)并且预定义持续时间已期满之后,用户设备102可以将注册过程认为充分地完成。这不会降低面部认证的安全性,但是可以减少可由用户在面部认证尝试期间使用的姿态的数目。
在一些方面中,注册模块118能够在生成嵌入时分析用户的面部的特定区域(例如,口和嘴唇区域、眉毛区域、瞳孔区域等)。这可以使得用户能够使用特定面部姿态,诸如皱眉、微笑、使其鼻子折皱、扬眉、向左或向右看,或在注册过程期间可能需要用户116在后续面部认证尝试期间再现以解锁用户设备102的任何其他面部表情。
在注册期间,注册模块118可以请求用户睁开他们的眼睛。如果用户的眼睛是闭着的,则注册过程可以暂时停止并且用户设备102可以向用户116显示请求用户116在注册过程期间睁开他们的眼睛的消息。其他消息可以包括在注册过程期间移除太阳镜或帽子以便完成注册的请求。一些消息可以包括错误消息,诸如用户116在相对于用户设备102的特定方向上移动其头部的请求。该消息可以是显示在显示设备110上的视觉消息、音频消息或其组合。
在一些方面中,可以实现注册过程的简化版本,诸如用于可访问性。简化版本在关于图3讨论的对齐阶段期间捕获用户的面部的单个快照并且提供可听线索来指示用户的面部是否在焦点上。该简化版本可以不完成所有分段,但是可以完成足够数目的分段以进行注册。
图5图示具有视觉提示以供协助的基于网格的用于面部认证的注册的示例实现方式500。在此示例中,用户116已部分地完成注册。如果在完成一个分段之后,预定义时间段期满而未完成新的分段,则显示视觉提示以引导用户116将其头部转向朝向一个或多个未完成分段的方向。提示可以包括箭头502或显示在未完成分段附近或未完成分段上的其他指示符。指示符可以被显示在3D跟踪窗口122的边界外部。示例指示符504可以包括图式地强调未完成分段,诸如通过改变颜色、不透明度、亮度或其组合。
指示符可以对应于任何合适的未完成分段。在一个示例中,用户设备102在顺时针或逆时针方向上分析分段并且使指示符与首先遇到的未完成分段相关联。替换地,用户设备102可以分析行或列中的分段。任何合适的图案(包括随机选择)可以用于定位未完成分段以与指示符相关联。注册模块118能够使用用于标识和指示未完成分段的各种不同方法,其中的一些示例包括向上/向下点头、更大/更小圆、按数字绘制、钟面、之字形等。
图6图示用于存储与不同面部姿态相对应的嵌入的固定网格600的示例实现方式。用与一组性质不同的面部姿态相对应的嵌入(2D和3D)注册优于使用单个面部姿态进行面部认证的常规系统,其显著地改进了假接受率和假识别率。用户的面部姿态可以由包括平转角度和倾斜角度的各种属性定义。平转角度是指用户向左或向右转动其头部。倾斜角度是指面向上或向下。
为了在注册期间捕获姿态的平衡扩展,用户设备102在固定网格600中定义姿态单元格的静态列表并且使用户继续注册过程直到足够量的单元格被填充为止。每个单元格映射到针对面部的2D/3D嵌入的对。每个单元格由原点平转和倾斜角度表征。在示例中,如果姿态在单元格的平转和倾斜的半径为10的圆内,则该姿态能够与该单元格相关联。在一些方面中,单个姿态能够与多个单元格相关联。例如,如果新姿态是(0,0),则单元格(0,0)、(0,10)、(10,0)、(0,-10)和(-10,0)在所接受的半径内。注意,所描述的实施例不限于10的半径。相反,可以使用允许捕获足够量的面部姿态以用于面部认证的任何合适的半径。
图6所图示的固定网格600包括硬编码姿态单元格的初始集,其中每个单元格对应于(平转-原点角度、倾斜-原点角度)。每个单元格映射到针对特定面部捕获的2D/3D嵌入的对(其中如果姿态重叠则许多单元格潜在地指向一个对)。例如,表650图示具有对应的2D和3D嵌入的示例姿态。前两个示例姿态(10,0)和(0,0)各自指向2D/3D嵌入的相同对。然而,第三示例姿态(20,-10)指向2D/3D嵌入的不同对。
在一些方面中,在注册之后可能不需要姿态信息。在这种情况下,唯一嵌入的列表可以被存储在来自图1的安全存储单元108中而没有姿态信息。如果安全存储单元108(例如,内部存储装置)不具有足够的空间来存储姿态角度和冗余嵌入,则姿态能够被存储在外部存储空间中(其位于安全存储单元108外部),并且映射到存储在安全存储单元108中的指针。
如提及的,要注册的每个图像具有嵌入和与其相关联的姿态。每个姿态单元格基于与该嵌入相关联的姿态映射到单个嵌入。然而,每个嵌入能够映射到多个单元格。在各方面中,热图能够用于确定最可能的姿态,其能够指导注册过程。这帮助确保当用户注册时,即使用户的面部偏离中央,用户设备102也捕获至少最重要的网格单元格。
单元格更新策略定义新嵌入何时映射到已经被另一嵌入填充的单元格。对于新姿态,注册模块118更新每个单元格,使得如果新姿态在空单元格的范围内,则该空单元格用与新姿态相对应的嵌入填充,而不是用嵌入更新已经被填充的单元格。
示例更新策略包括保持最旧策略,其中通过保持最旧和最近插入的嵌入来用嵌入填充单元格,同时丢弃新嵌入以避免覆写已经注册的嵌入。根据保持最旧策略,已经注册的嵌入未被覆写。另一示例更新策略包括保持最新策略,其中通过保持最新和最近插入的嵌入来用嵌入填充单元格,同时覆写来自单元格的旧嵌入。根据保持最新策略,如果一个或多个已经注册的嵌入与新嵌入重叠,则它们被覆写。另一示例更新策略包括保持最近姿态策略,其中如果新姿态比前一姿态更靠近单元格的中央,则映射到嵌入的单元格被覆写。
在各方面中,用于触发注册过程的结束的停止条件可以包括任何合适的测量。一些示例停止条件包括姿态计数、嵌入计数、启发法、用户输入完成或鸽笼原理。使用姿态计数,当恰好预定数目的单元格(例如,N个姿态单元格)被填充时停止注册。为了说明这个,想象N=18并且17个单元格已经被填充。因为单个面部能够横跨多个单元格,所以下一注册的面部可能映射到最多五个新单元格,并且结果是注册可能在填充22个单元格情况下完成。姿态计数能够避免更新比注册所需更多的单元格。
使用嵌入计数,当恰好预定数目的嵌入(例如,N个嵌入)被注册时停止注册。由于嵌入潜在地映射到多个单元格,这可以允许在注册完成时填充不止N个单元格。然而,定义停止条件的嵌入的数目可以少于姿态单元格的数目。
启发法能够连同姿态计数和/或嵌入计数的某个组合一起使用以确保最佳单元格覆盖范围。例如,如果网格被划分成四个单元格象限,则启发法可以指示是否填充所有四个单元格象限。
在一些方面中,用户设备102继续收集嵌入直到注册过程完成所有阶段为止,忽略来自后续阶段的单元格,然后子采样以强制阈值数目的嵌入(例如,20个嵌入)。如果使用鸽笼原理,则对于5x5固定网格,嵌入的阈值数目可以是25。例如,根据鸽笼原理,如果n个嵌入分布在n个单元格之上使得没有单元格接收多于一个嵌入,则每个单元格接收恰好一个嵌入。
在获取至少一个嵌入之后的注册过程期间的任何时间,用户116能够选择跳过注册过程的剩余部分并且在不用获取更多嵌入的情况下完成注册。基于该用户输入,注册过程能够结束并且用户设备102能够将至少一个嵌入用于后续面部认证尝试。
图7图示与基于网格的用于面部认证的注册相对应的示例状态图700。状态图700表示在注册过程的各个阶段中发送的一组消息。注册模块118能够基于在注册过程期间获得的姿态来启动向用户116显示各种不同状态中的任一种。可显示状态的示例包括无面部状态702、错误姿态状态704、中央被获取状态706、获取旋转状态708、旋转被获取状态710、获取点头状态712、完成状态714等。示例状态被划分成不同区段,例如,定位区段716、旋转区段718和点头区段720。
无面部状态702指示面部不在相机的视场内或者图像的质量低(例如,太亮)。无面部状态702被包括在定位区段716和旋转区段718中。错误姿态状态704指示姿态(例如,头部向上/向下、向左/向右)未居中。能够在定位区段716和点头区段720中实现错误姿态状态704。中央被获取状态706指示居中的头部被获取并且注册过程能够进行到具有头部旋转的步骤。获取旋转状态708指示注册模块118处于获取旋转的过程中。这具有多少单元格保持空的计数器。旋转被获取状态710指示旋转被获取并且预定义阈值数目的单元格被覆盖。获取点头状态712指示注册模块118处于获取点头的过程中。这具有多少单元格保持空的计数器。完成状态714指示注册完成。
示例方法
图8和图9描绘基于网格的用于面部认证的注册的示例方法800。方法800能够由用户设备102执行,该用户设备102使用注册模块118来注册用户116以进行面部认证。
方法800被示出为一组框,该组框指定所执行的操作但是不一定限于被示出用于通过相应框执行操作的次序或组合。此外,可以重复、组合、重新组织或链接这些操作中的任何一个或多个以提供各式各样附加和/或替代方法。在以下讨论的各部分中,可以参考图1的示例操作环境100或如图2-7中详述的实体或过程,图2-7仅作为示例被参考。技术不限于由在设备上操作的一个实体或多个实体执行。
在802处,为面部认证尝试启动注册过程。例如,能够触发用户设备102的相机驱动器系统216来启动相机系统104以进行面部认证。触发器可以包括用于开始注册的用户输入。另外,注册模块118能够从用户116请求用户凭证以确认用户的身份以供在面部认证中进行注册。
在804处,呈现预览图像。例如,预览相机112能够用预览相机112捕获用户116的预览图像120。如上所述,预览图像120可以是用户116的实况预览或计算机生成的影像。计算机生成的影像可以是普通面部或卡通人物的3D绘图,或用户的面部在面部的3D版本上的皮肤图像。
在806处,2D对象被覆盖在预览图像之。例如,可以经由显示设备110将2D对象302覆盖在预览图像120上。2D对象302可以包括在视觉上与2D对象302的其他区域区分开的中央区域以引导用户116将其头部相对于用户设备102向左、向右、向上、向下、向前或向后平移地移动,以便将其头部的图像定位在2D对象302的中央区域内的预览图像120中。
在808处,响应于2D对象被覆盖在预览图像上而启动定时器。定时器可以被设置用于任何合适的时间量,包括10秒、12秒、25秒、45秒等。该定时器提供预定时间量以便用户116完成将其头部定位在2D对象302的中央区域304内的预览图像120中的步骤。
在810处,做出关于用户的面部是否被定位在2D对象的中央区域内的确定。如果在中央区域304内未检测到用户的面部(“否”),则方法800进行到812,其确定定时器是否期满。如果定时器期满(“是”),则在814处,注册过程可以结束。替换地,注册过程可以跳过到单捕获注册流程。
如果定时器未期满(“否”),则方法800循环回到810以继续监视用户的面部的位置。当检测到用户的面部(“是”)被大体上定位(例如,85%或更多)在2D对象302的中央区域304内时,方法800在816处进行到图9。
在图9中的816处,2D对象被移除并且3D跟踪窗口被覆盖在预览图像上。例如,3D跟踪窗口122被覆盖在预览图像120上以优于2D图像提供快速3D视觉反馈。3D跟踪窗口122包括曲面分段以在视觉上提供跟踪窗口的3D特性。3D跟踪窗口122被配置成引导用户116使其头部转动或旋转,以使得相机系统104能够捕获用户的面部在多个不同角度下的图像以用于在面部认证中注册。
在818处,用户设备102跟踪用户面部正面向的近似方向。近似方向是诸如从用户的鼻子的点起与用户的面部垂直的方向,并且能够包括预定义坐标系中的平转角度和倾斜角度。替换地,可以基于用户的面部与相机系统104之间的相对位置来建立坐标系。
在820处,注册模块突出显示3D跟踪窗口的与用户的面部正面向的近似方向相对应的一个或多个分段。在图4中图示了突出显示一个或多个分段124的示例。随着用户116四处移动其头部,基于用户的面部正面向的近似方向(例如,与用户的面部垂直的方向)来突出显示新分段,以提供映射到用户凝视的近似方向的类似光标对象。
在822处,捕获面向近似方向的用户的面部的一个或多个注册图像。例如,注册相机114可以包括一个或多个NIR相机或RGB相机以捕获可用于在面部认证中注册的面部图像。这些面部图像对应于用户的面部相对于注册相机114的特定方向(平转角度和倾斜角度)。
在824处,从一个或多个注册图像生成一个或多个嵌入。在826处,存储一个或多个嵌入。在各方面中,嵌入被存储在姿态单元格的固定网格或阵列(例如,固定网格600)中。如上面关于图6描述的,每个单元格映射到针对面部的特定姿态的2D/3D嵌入的对。
在828处,注册模块118提供一个或多个分段完成的指示。例如,注册模块118能够使经突出显示的分段的参数改变,诸如不透明度、边界厚度、颜色、图案或其任何组合。对经突出显示的分段的这些改变向用户指示该特定分段完成,这对应于已经针对该特定姿态捕获的嵌入。
在830处,注册模块118确定是否停止注册。能够使用各种不同的停止条件来触发和结束注册过程。一些示例在上面关于图6被描述并且包括停止条件,诸如姿态计数、嵌入计数、启发法、用户输入完成或鸽笼原理。如果不满足停止条件(“否”),则方法800返回到820,以随着用户重新定向其头部而继续突出显示与用户的面部正面向的近似方向相对应的分段。如果满足停止条件(“是”),则注册过程结束。作为终止注册过程的一部分,能够向用户116呈现完成的确认以指示注册过程的完成。能够使用任何合适的确认,诸如视觉、听觉、触觉或其任何组合。
通常,本文描述的组件、模块、方法和操作中的任一个能够使用软件、固件、硬件(例如,固定逻辑电路系统)、手动处理或其任何组合来实现。可以在存储在计算机处理系统本地和/或远程的计算机可读存储存储器上的可执行指令的一般上下文中描述示例方法的一些操作,并且实现方式能够包括软件应用、程序、功能等。替换地或另外,本文描述的任何功能性能够至少部分地由一个或多个硬件逻辑组件执行,诸如但不限于现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SoC)、复杂可编程逻辑器件(CPLD)等。
贯穿本公开描述了计算系统(例如,用户设备102、客户端设备、服务器设备、计算机或其他类型的计算系统)可以分析与用户(诸如用户的面部)相关联的信息(例如,雷达、惯性和面部识别传感器数据)的示例。然而,计算系统能够被配置成仅在计算系统从计算系统的用户接收到要使用数据的显式许可之后才使用信息。例如,在用户设备102分析面部特征的传感器数据以对用户116进行认证的情形下,可以给各个用户提供用于提供输入来控制用户设备102的程序或特征是否能够收集和利用数据的机会。各个用户可以持续控制程序能够或不能对传感器数据做什么。另外,所收集的信息可以在它被转移、存储或以其他方式使用之前以一种或多种方式预处理,使得个人可标识的信息被移除。例如,在用户设备102与另一设备共享传感器数据(例如,以训练在另一设备处执行的模型)之前,用户设备102可以预处理传感器数据以确保嵌入在数据中的任何用户标识信息或设备标识信息的信息被移除。因此,用户可以控制是否收集关于用户和用户的设备的信息,并且此类信息在被收集情况下如何可以被计算设备和/或远程计算系统使用。
示例计算系统
图10图示示例计算系统1000的各种组件,该示例计算系统1000能够作为如参考先前图1-9所描述的任何类型的客户端、服务器和/或电子设备被实现以实现基于网格的用于面部认证的注册。
计算系统1000包括通信设备1002,该通信设备1002使得能实现设备数据1004(例如,雷达数据、认证数据、参考数据、接收到的数据、正被接收的数据、为广播调度的数据和数据的数据分组)的有线和/或无线通信。设备数据1004或其他设备内容能够包括设备的配置设置、存储在设备上的媒体内容、和/或与设备的用户相关联的信息(例如,雷达场内的人的身份或定制空中手势数据)。存储在计算系统1000上的媒体内容能够包括任何类型的雷达、生物计量、音频、视频和/或图像数据。计算系统1000包括一个或多个数据输入1006,经由该一个或多个数据输入能够接收任何类型的数据、媒体内容和/或输入,诸如人类话语、与雷达场的交互、触摸输入、用户可选输入或交互(显式的或隐式的)、消息、音乐、电视媒体内容、录制视频内容以及从任何内容和/或数据源接收到的任何其他类型的音频、视频和/或图像数据。
计算系统1000还包括通信接口1008,该通信接口1008能够作为串行接口和/或并行接口、无线接口、任何类型的网络接口、调制解调器中的任何一个或多个并且作为任何其他类型的通信接口被实现。通信接口1008提供计算系统1000与通信网络之间的连接和/或通信链路,其他电子、计算和通信设备通过该连接和/或通信链路与计算系统1000一起传递数据。
计算系统1000包括一个或多个处理器1010(例如,微处理器、控制器或其他控制器中的任一个),这些处理器能够处理各种计算机可执行指令以控制计算系统1000的操作,并且使得能实现能够针对其或在其中实现基于网格的用于面部认证的注册的技术。替换地或附加地,计算系统1000能够用连同处理和控制电路一起实现的硬件、固件或固定逻辑电路系统中的任何一个或组合来实现,这些处理和控制电路通常被标识在1012处。尽管未示出,但是计算系统1000能够包括耦合设备内的各种组件的系统总线或数据转移系统。系统总线能够包括不同总线结构中的任何一种或组合,诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用各种总线架构中的任一种的处理器或本地总线。
计算系统1000还包括计算机可读介质1014,诸如使得能实现持久和/或非暂时性数据存储(即,和单纯信号传输对比)的一个或多个存储器设备,其示例包括随机存取存储器(RAM)、非易失性存储器(例如,只读存储器(ROM)、闪存存储器、EPROM、EEPROM等中的任何一种或多种)以及磁盘存储设备。可以将磁盘存储设备实现为任何类型的磁或光存储设备,诸如硬盘驱动器、可记录和/或可重写紧致盘(CD)、任何类型的数字通用盘(DVD)等。计算系统1000还能够包括大容量存储介质设备(存储介质)1016。
计算机可读介质1014提供数据存储机制来存储设备数据1004,以及各种设备应用1018和与计算系统1000的操作方面相关的任何其他类型的信息和/或数据。例如,操作系统1020能够作为计算机应用与计算机可读介质1014一起被维护并且在处理器1010上执行。设备应用1018可以包括设备管理器,诸如任何形式的控制应用、软件应用、信号处理和控制模块、特定设备本机的代码、抽象模块、空中手势识别模块和其他模块。设备应用1018还可以包括用以实现基于网格的用于面部认证的注册的系统组件、引擎、模块或管理器,诸如注册模块118和相机驱动器系统216。计算系统1000还可以包括或者能够访问一个或多个机器学习系统。
在下面描述一些示例:
示例1.一种用于由用户设备进行基于网格的用于面部认证的注册的方法,所述方法包括:响应于用户输入,经由显示设备呈现由相机捕获的预览图像,所述呈现将启动用于面部认证的注册;将二维(2D)对象覆盖在所述预览图像上,所述2D对象具有指示用于用户将其面部相对于所述相机定位的近似定向的区域;响应于所述用户的面部被定位在所述近似定向处的确定,移除所述2D对象并且将三维(3D)跟踪窗口作为覆盖图呈现在所述预览图像上,所述3D跟踪窗口具有多个分段;跟踪所述用户的面部相对于所述相机正面向的近似方向;基于所述跟踪:突出显示所述3D跟踪窗口的所述多个分段中的与所述用户的面部正面向的所述近似方向相对应的一个或多个分段;捕获面向所述近似方向的所述用户的面部的一个或多个注册图像;基于所述一个或多个注册图像来生成一个或多个嵌入;在安全存储单元中,将所述一个或多个嵌入存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用;以及响应于所述一个或多个嵌入的生成和存储,提供所述一个或多个分段完成的指示。
示例2.根据示例1所述的方法,其中,提供所述一个或多个分段完成的所述指示包括改变所述一个或多个分段的不透明度以指示进展。
示例3.根据示例1或2所述的方法,进一步包括,响应于完成所述注册:呈现对所述注册的完成的确认;以及使得存储在所述安全存储单元中的所述一个或多个嵌入能够用于经由所述面部认证解锁所述用户设备。
示例4.根据任一项前述示例所述的方法,其中,所述3D跟踪窗口被成形来引导所述用户转动或旋转其头部。
示例5.根据任一项前述示例所述的方法,其中,所述3D跟踪窗口包括半球。
示例6.根据任一项前述示例所述的方法,其中,所述预览图像是实况预览。
示例7.根据任一前述示例所述的方法,进一步包括:响应于呈现所述3D跟踪窗口,启动定时器;在所述多个分段中的相应分段完成时重置所述定时器;以及响应于所述定时器期满而所述多个分段中的一个或多个新分段未完成,提供指示来引导所述用户面向与所述一个或多个新分段中的至少一个相对应的新方向。
示例8.根据任一项前述示例所述的方法,进一步包括:确定所述多个分段中的在所述3D跟踪窗口的边缘附近的第一分段未完成并且与所述第一分段相邻的多个分段已完成;以及向所述用户指示所述第一分段已完成而不用捕获面向与所述第一分段相对应的方向的所述用户的面部的注册图像。
示例9.根据任一项前述示例所述的方法,其中,所述多个分段各自对应于所述用户的头部的姿态。
示例10.根据任一项前述示例所述的方法,其中,所述姿态单元格的网格中的所述姿态单元格由平转角度和倾斜角度表征。
示例11.根据任一前述示例所述的方法,其中:所述一个或多个分段的突出显示包括:淡入与所述用户的面部相对于所述相机正面向的所述近似方向相对应的第一分段;以及在所述用户的面部正面向的所述近似方向改变并且不再对应于所述第一分段时淡出所述第一分段;并且与所述淡入相对应的第一动画速度大于与所述淡出相对应的第二动画速度。
示例12.根据任一项前述示例所述的方法,其中,所述一个或多个分段完成的所述指示包括触觉反馈。
示例13.根据任一项前述示例所述的方法,其中,所述一个或多个分段完成的所述指示包括听觉反馈。
示例14.根据任一前述示例所述的方法,其中:所述相机包括一个或多个彩色相机和一个或多个近红外相机;所述一个或多个彩色相机用于捕获所述预览图像;并且捕获所述用户的面部的所述一个或多个注册图像包括,使用所述一个或多个近红外相机来捕获可用于生成所述一个或多个嵌入的一个或多个近红外图像。
示例15.一种用户设备,所述用户设备包括:相机,所述相机用于捕获预览图像;显示装置,所述显示装置用于显示所述预览图像;以及处理器和存储器,所述处理器和存储器用于实现根据任一项前述示例所述的方法。
示例16.一种用户设备,所述用户设备包括:相机系统,所述相机系统被配置成捕获用户的面部的图像以进行面部认证;显示设备,所述显示设备被配置成显示包括所述用户的面部的预览图像;以及处理器和存储器,所述处理器和存储器用于实现注册模块,所述注册模块被配置成:响应于对注册过程的启动,使二维(2D)对象被覆盖在所述预览图像上,所述2D对象包括指示用于所述用户将其面部相对于所述相机系统定位的近似定向的中央区域;响应于所述用户的面部被定位在所述中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在所述预览图像之上,所述3D跟踪窗口具有多个分段,所述多个分段持续对应于所述用户的面部相对于所述相机系统正面向的近似方向;跟踪所述用户的面部正面向的所述近似方向;确定所述多个分段中的与所述用户的面部正面向的所述近似方向相对应的一个或多个分段;突出显示一个或多个分段以向所述用户提供视觉反馈;使所述相机系统捕获与面向所述近似方向的所述用户的面部的姿态相对应的一个或多个注册图像;生成与所述一个或多个注册图像相对应的一个或多个嵌入;以及响应于已生成所述一个或多个嵌入的指示,提供所述一个或多个分段完成的指示。
示例17.根据示例16所述的用户设备,其中,所述3D跟踪窗口被成形为半球并且被覆盖在所述预览图像上,使得所述预览图像中的所述用户的面部被显示在所述半球内。
示例18.根据示例16或17所述的用户设备,其中,所述注册模块被进一步配置成:响应于对所述3D跟踪窗口的呈现,启动定时器;在所述多个分段中的相应分段完成时重置所述定时器;以及响应于所述定时器期满而所述多个分段中的一个或多个新分段未完成,提供指示来引导所述用户面向所述一个或多个新分段中的至少一个的方向。
示例19.根据示例16至18中的任一项所述的用户设备,其中,所述多个分段各自对应于所述用户的头部的姿态。
示例20.根据示例16至19中的任一项所述的用户设备,其中,所述一个或多个分段完成的所述指示包括所述一个或多个分段的不透明度的变化。
示例21.一种计算机可读存储介质,所述计算机可读存储介质包括指令,当被执行时,所述指令将用户设备的至少一个处理器配置成:在用于面部认证的注册流程期间经由显示设备显示由所述用户设备的相机系统捕获的预览图像;使二维(2D)对象被覆盖在所述预览图像上,所述2D对象包括指示用于所述用户将其面部相对于所述相机系统定位的近似定向的中央区域;响应于所述用户的面部被定位在所述中央区域内的确定,将三维(3D)跟踪窗口作为覆盖图呈现在所述预览图像上,所述3D跟踪窗口具有多个分段,所述多个分段持续对应于所述用户的面部相对于所述相机系统正面向的近似方向;跟踪所述用户的面部正面向的所述近似方向;标识所述多个分段中的与所述用户的面部正面向的所述近似方向相对应的一个或多个分段;突出显示所述一个或多个分段以向所述用户提供视觉反馈;使所述相机系统捕获与面向所述近似方向的所述用户的面部的姿态相对应的一个或多个注册图像;生成与所述一个或多个注册图像相对应的嵌入;以及响应于已针对所述姿态生成嵌入的指示,提供所述一个或多个分段完成的指示。
示例22.根据示例21所述的计算机可读存储介质,其中:所述嵌入包括针对面向所述近似方向的所述用户的面部的姿态的2D和3D嵌入的对;并且所述至少一个处理器被配置成将所述嵌入存储在姿态单元格的固定网格中,所述姿态单元格由平转角度和倾斜角度表征。
结论
尽管已经用特定于特征和/或方法的语言描述了用于使得能实现基于网格的用于面部认证的注册的技术和装置的实现方式,但是应当理解,所附权利要求的主题不一定限于所描述的特定特征或方法。相反,特定特征和方法作为基于网格的用于面部认证的注册的示例实现方式被公开。

Claims (15)

1.一种用于由用户设备进行基于网格的用于面部认证的注册的方法,所述方法包括:
响应于用户输入,经由显示设备呈现由相机捕获的预览图像,所述呈现用于启动用于面部认证的注册;
将二维(2D)对象覆盖在所述预览图像上,所述2D对象具有指示用于用户将其面部相对于所述相机定位的近似定向的区域;
响应于所述用户的面部被定位在所述近似定向处的确定,移除所述2D对象并且将三维(3D)跟踪窗口作为覆盖图呈现在所述预览图像上,所述3D跟踪窗口具有多个分段;
跟踪所述用户的面部相对于所述相机正面向的近似方向;
基于所述跟踪:
突出显示所述3D跟踪窗口的所述多个分段中的与所述用户的面部正面向的所述近似方向相对应的一个或多个分段;
捕获面向所述近似方向的所述用户的面部的一个或多个注册图像;
基于所述一个或多个注册图像来生成一个或多个嵌入;
在安全存储单元中,将所述一个或多个嵌入存储在与各种面部姿态相对应的姿态单元格的固定网格中以供在面部认证中使用;以及
响应于所述一个或多个嵌入的生成和存储,提供所述一个或多个分段完成的指示。
2.根据权利要求1所述的方法,其中,提供所述一个或多个分段完成的所述指示包括改变所述一个或多个分段的不透明度以指示进展。
3.根据权利要求1或2所述的方法,进一步包括,响应于完成所述注册:
呈现对所述注册的完成的确认;以及
使得存储在所述安全存储单元中的所述一个或多个嵌入能够用于经由所述面部认证解锁所述用户设备。
4.根据任一项前述权利要求所述的方法,其中,所述3D跟踪窗口被成形来引导所述用户转动或旋转其头部。
5.根据任一项前述权利要求所述的方法,其中,所述3D跟踪窗口包括半球。
6.根据任一项前述权利要求所述的方法,其中,所述预览图像是实况预览。
7.根据任一项前述权利要求所述的方法,进一步包括:
响应于呈现所述3D跟踪窗口,启动定时器;
在所述多个分段中的相应分段完成时重置所述定时器;以及
响应于所述定时器期满而所述多个分段中的一个或多个新分段未完成,提供指示来引导所述用户面向与所述一个或多个新分段中的至少一个相对应的新方向。
8.根据任项一前述权利要求所述的方法,进一步包括:
确定所述多个分段中的在所述3D跟踪窗口的边缘附近的第一分段未完成并且与所述第一分段相邻的多个分段已完成;以及
向所述用户指示所述第一分段已完成而不用捕获面向与所述第一分段相对应的方向的所述用户的面部的注册图像。
9.根据任一项前述权利要求所述的方法,其中,所述多个分段各自对应于用户头部的姿态。
10.根据任一项前述权利要求所述的方法,其中,所述姿态单元格的网格中的各姿态单元格由平转角度和倾斜角度表征。
11.根据任一项前述权利要求所述的方法,其中:
所述一个或多个分段的突出显示包括:
淡入与所述用户的面部相对于所述相机正面向的所述近似方向相对应的第一分段;以及
在所述用户的面部正面向的所述近似方向改变并且不再对应于所述第一分段时淡出所述第一分段;以及
与所述淡入相对应的第一动画速度大于与所述淡出相对应的第二动画速度。
12.根据任一项前述权利要求所述的方法,其中,所述一个或多个分段完成的所述指示包括触觉反馈。
13.根据任一项前述权利要求所述的方法,其中,所述一个或多个分段完成的所述指示包括听觉反馈。
14.根据任一项前述权利要求所述的方法,其中:
所述相机包括一个或多个彩色相机和一个或多个近红外相机;
所述一个或多个彩色相机用于捕获所述预览图像;以及
捕获所述用户的面部的所述一个或多个注册图像包括使用所述一个或多个近红外相机来捕获能用于生成所述一个或多个嵌入的一个或多个近红外图像。
15.一种用户设备,所述用户设备包括:
相机,所述相机用于捕获预览图像;
显示装置,所述显示装置用于显示所述预览图像;以及
处理器和存储器,所述处理器和存储器用于实现根据任一项前述权利要求所述的方法。
CN201980100965.9A 2019-10-10 2019-12-05 基于网格的用于面部认证的注册 Pending CN114450729A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962913650P 2019-10-10 2019-10-10
US62/913,650 2019-10-10
PCT/US2019/064662 WO2021071532A1 (en) 2019-10-10 2019-12-05 Grid-based enrollment for face authentication

Publications (1)

Publication Number Publication Date
CN114450729A true CN114450729A (zh) 2022-05-06

Family

ID=69024676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980100965.9A Pending CN114450729A (zh) 2019-10-10 2019-12-05 基于网格的用于面部认证的注册

Country Status (5)

Country Link
US (1) US20240078846A1 (zh)
EP (1) EP4026043A1 (zh)
CN (1) CN114450729A (zh)
DE (1) DE112019007807T5 (zh)
WO (1) WO2021071532A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023230088A1 (en) * 2022-05-24 2023-11-30 Apple Inc. Devices, methods, and graphical user interfaces for generating and displaying a representation of a user

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018226265A1 (en) * 2017-09-09 2018-12-13 Apple Inc. Implementation of biometric authentication

Also Published As

Publication number Publication date
WO2021071532A1 (en) 2021-04-15
US20240078846A1 (en) 2024-03-07
EP4026043A1 (en) 2022-07-13
DE112019007807T5 (de) 2022-08-11

Similar Documents

Publication Publication Date Title
US11068050B2 (en) Method for controlling display of virtual image based on eye area size, storage medium and electronic device therefor
US10890968B2 (en) Electronic device with foveated display and gaze prediction
US20210382563A1 (en) Interacting with a machine using gestures in first and second user-specific virtual planes
US20200026920A1 (en) Information processing apparatus, information processing method, eyewear terminal, and authentication system
CN105247447B (zh) 眼睛跟踪校准系统及方法
US9378581B2 (en) Approaches for highlighting active interface elements
WO2017053972A1 (en) Eye-tracking enabled wearable devices
US20130154913A1 (en) Systems and methods for a gaze and gesture interface
TWI617948B (zh) 用於眼部追蹤的校正模組及其方法及電腦可讀取紀錄媒體
CN108664173A (zh) 投影型影像显示装置
US20220269333A1 (en) User interfaces and device settings based on user identification
CA2955072C (en) Reflection-based control activation
US20180190019A1 (en) Augmented reality user interface visibility
US20230336865A1 (en) Device, methods, and graphical user interfaces for capturing and displaying media
US20190369807A1 (en) Information processing device, information processing method, and program
US20240020371A1 (en) Devices, methods, and graphical user interfaces for user authentication and device management
CN114450729A (zh) 基于网格的用于面部认证的注册
US20240103684A1 (en) Methods for displaying objects relative to virtual surfaces
US20240103712A1 (en) Devices, Methods, and Graphical User Interfaces For Interacting with Three-Dimensional Environments
CN117032465A (zh) 基于用户标识的用户界面和设备设置
JP2024507811A (ja) ユーザ識別に基づくユーザインタフェース及びデバイス設定
CN116868152A (zh) 用于在三维环境中呈现化身的界面

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination