用于更新在面部识别中所使用的模板的过程的制作方法

文档序号:16856412发布日期:2019-02-12 23:21阅读:238来源:国知局
用于更新在面部识别中所使用的模板的过程的制作方法

本文所述的实施方案涉及用于在设备上在由相机所捕获的图像中进行面部检测和识别的方法与系统。



背景技术:

生物识别认证过程正被越来越频繁地使用,以允许用户更容易地访问其设备而无需密码或口令认证。生物识别认证过程的一个示例为使用指纹传感器的指纹认证。面部识别为可用于认证设备的授权用户的另一种生物识别过程。面部识别过程通常用于识别图像中的个体和/或将图像中的个体与个体数据库进行进行比较,以匹配个体的面部。

为了使用面部识别进行认证,面部识别系统一般努力适应授权用户的面部特征随时间的变化,使得即使用户的面部特征改变并且在用户图像中形成差异,用户也可继续使用面部识别来访问该设备。例如,用户的面部特征可能由于面部毛发改变、理发、增重/减肥、和/或年龄增长而随时间推移改变。然而,面部识别系统需要保持安全。因此,平衡适应改变的需求同时还确保差异被识别为用户的改变而不是用户和另一个人之间的差异以防止对设备进行不希望的访问的挑战通常会妨碍适应性。



技术实现要素:

可从用户的由与设备相关联的相机获取的注册图像生成用于面部识别的模板。可基于具有特定的可接受标准(例如,姿态适当,用户没有过多遮挡,用户在视场中,眼睛未闭合等)从在注册过程期间捕获的图像选择用于注册的图像。可对所选择的注册图像进行编码以生成模板,其中模板包括用于描述用户的面部特征的特征向量。

在用户尝试使用面部识别认证来获取对设备的访问权限时,可对所捕获的用户图像进行编码,以针对“解锁”图像(例如,被捕获以对设备进行解锁的图像)来生成特征向量。可将用于对图像进行解锁的特征向量与模板进行比较,以确定解锁图像是否匹配由模板表示的用户的图像。例如,可通过对从解锁图像生成的特征向量和模板中的特征向量进行比较来评估匹配分数。在用于解锁图像的特征向量和特征空间中的模板中的特征向量之间距离越小,匹配分数可越高(在特征向量更相似时,匹配分数更高)。如果匹配分数高于阈值,则对该设备进行解锁。

在某些实施方案中,在对设备进行解锁时,添加解锁图像的特征向量作为设备的附加(例如,备份)存储空间中的临时性模板。在一些实施方案中,仅在当用于解锁图像的匹配分数高于第二阈值时才添加临时性模板,该第二阈值高于解锁阈值(例如,添加临时性模板需要比对设备进行解锁更接近的匹配)。

一旦临时性模板被存储在该存储空间中,便可将其与在尝试对设备解锁期间获取的附加解锁图像进行比较。如果在特定数量或百分比的解锁尝试中临时性模板继续匹配附加解锁尝试图像,则可将临时性模板添加到基于临时性模板中的置信度而从注册图像创建的模板(例如,模板空间)。

附图说明

当与附图结合时,通过参考根据本公开中描述的实施方案的目前优选的但仅为示例性实施方案的以下详细描述,将更充分地理解在本公开中描述的实施方案的方法与装置的特征和优点,在附图中:

图1描绘了包括相机的设备的实施方案的表示。

图2描绘了相机的实施方案的表示。

图3描绘了设备上的处理器的实施方案的表示。

图4描绘了用于设备的授权用户的图像注册过程的实施方案的流程图。

图5描绘了注册过程之后的具有特征向量的特征空间的实施方案的表示。

图6描绘了存储器的模板空间的实施方案的表示。

图7描绘了面部识别认证过程的实施方案的流程图。

图8描绘了模板更新过程的实施方案的流程图。

图9描绘了被表示作为特征空间的模板空间的实施方案的表示。

图10描绘了模板更新子过程的实施方案的流程图。

图11描绘了模板更新过程的附加实施方案的流程图。

图12描绘了被表示作为特征空间的模板空间的附加实施方案的表示。

图13描绘了示例性计算机系统的一个实施方案的框图。

图14描绘了计算机可访问存储介质的一个实施方案的框图。

尽管本公开所述的实施方案可受各种修改形式和替代形式的影响,但其具体实施方案在附图中以举例的方式示出并将在本文中详细描述。然而,应当理解,附图和对其的详细描述并非旨在将实施方案限制为所公开的具体形式,而相反,本发明旨在涵盖落入所附权利要求书的实质和范围内的所有修改形式、等同形式和替代形式。本文所使用的标题仅用于组织目的,并不旨在用于限制说明书的范围。如在整个本专利申请中所使用的那样,以允许的意义(即,意味着具有可能性)而非强制的意义(即,意味着必须)来使用字词“可能”。类似地,字词“包括”是指包括但不限于。

各种单元、电路或其他部件可被描述为“被配置为”执行一个或多个任务。在此类上下文中,“被配置为”为通常表示“具有”在操作期间执行一个或多个任务的“电路”的结构的宽泛表述。如此,即使在单元/电路/部件当前未接通时,单元/电路/部件也可被配置为执行任务。一般来讲,形成与“被配置为”对应的结构的电路可包括硬件电路和/或存储可执行以实现该操作的程序指令的存储器。该存储器可包括易失性存储器,诸如静态或动态随机存取存储器和/或非易失性存储器,诸如光盘或磁盘存储装置、闪存存储器、可编程只读存储器等。硬件电路可包括组合式逻辑电路、时钟存储设备(诸如触发器、寄存器、锁存器等)、有限状态机、存储器(诸如静态随机存取存储器或嵌入式动态随机存取存储器)、定制设计电路、可编程逻辑阵列等的任意组合。类似地,为了描述方便,可将各种单元/电路/部件描述为执行一个或多个任务。此类描述应当被解释为包括短语“被配置为”。表述被配置为执行一个或多个任务的单元/电路/部件明确地旨在对该单元/电路/部件不调用35u.s.c.§112(f)的解释。

在一个实施方案中,可通过以硬件描述语言(hdl)诸如verilog或vhdl对电路的描述进行编码来实现根据本公开的硬件电路。可针对为给定集成电路制造技术设计的单元库来合成hdl描述,并可出于定时、功率和其他原因而被修改,以获取可被传输到工厂以生成掩模并最终产生集成电路的最终的设计数据库。一些硬件电路或其部分也可在示意图编辑器中被定制设计并与合成电路一起被捕获到集成电路设计中。该集成电路可包括晶体管并还可包括其他电路元件(例如,无源元件,诸如电容器、电阻器、电感器等)、以及晶体管和电路元件之间的互连件。一些实施方案可实现耦接在一起的多个集成电路,以实现硬件电路,和/或可在一些实施方案中使用离散元件。

本公开的范围包括本文(明确或暗示)公开的任意特征或特征组合或其任意推广,而无论其是否减轻本文解决的任何或所有问题。因此,在本专利申请(或要求享有其优先权的专利申请)进行期间可针对特征的任何此类组合作出新的权利要求。具体地,参考所附权利要求书,可将从属权利要求的特征与独立权利要求的特征进行组合,并可通过任何适当的方式而不是仅通过所附权利要求书中所列举的特定组合来组合来自相应独立权利要求的特征。

具体实施方式

本说明书包括参考“一个实施方案”或“实施方案”。短语“在一个实施方案中”或“在实施方案中”的出现不一定是指相同的实施方案,尽管通常设想包括特征的任何组合的实施方案,除非在本文明确地否认。特定特征、结构或特性可以与本公开一致的任何适当的方式被组合。

本公开还设想负责此类个人信息数据的收集、分析、公开、传输、存储或其他用途的实体将遵守已确立的隐私政策和/或隐私实践。具体地,此类实体应当实施并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。例如,在使用面部识别来对设备进行解锁和/或授权的情况下,来自用户的个人信息应被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。另外,此类收集应仅在用户知情同意之后进行。此外,此类实体应采取任何所需的步骤,以保障和保护对此类个人信息数据的访问,并且确保有权访问个人信息数据的其他人遵守他们的隐私政策和程序。另外,此类实体可使其本身经受第三方评估,以证明其遵守广泛接受的隐私政策和实践。

不管前述情况如何,本公开还设想用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,本发明的技术可被配置为在注册服务期间允许用户选择“加入”或“退出”参与对个人信息数据的收集。

图1描绘了包括相机的设备的实施方案的表示。在某些实施方案中,设备100包括相机102、处理器104、存储器106、和显示器108。设备100可为小型计算设备,在一些情况下,其可足够小以便手持(因此,还被统称为手持式计算机或被简称为手持式设备)。在某些实施方案中,设备100为各种类型的计算机系统设备的任一种类型的计算机系统设备,其为移动的或便携的并且使用wlan通信来执行无线通信(例如,“移动设备”)。移动设备的示例包括移动电话或智能电话、以及平板电脑。如果包括无线或rf通信能力(例如,wi-fi、蜂窝和/或蓝牙),则各种其他类型的设备可落在这个类别中,诸如膝上型计算机、便携式游戏设备、便携式上网设备、和其他手持设式备、以及可穿戴设备诸如智能手表、智能眼镜、耳机、吊坠、耳塞等。通常,可宽泛地定义术语“移动设备”以涵盖容易被用户转移并能够使用例如wlan、wi-fi、蜂窝和/或蓝牙来进行无线通信的任何电子、计算和/或电信设备(或设备的组合)。在某些实施方案中,设备100包括由用户使用的具有处理器104、存储器106和显示器108的任何设备。例如,显示器108可为lcd屏或触摸屏。在一些实施方案中,显示器108包括用于设备100的用户输入界面(例如,显示器允许用户的交互输入)。

相机102可用于捕获设备100的外部环境的图像。在某些实施方案中,相机102被定位成捕获显示器108前方的图像。相机102可被定位成在用户与显示器108进行交互时捕获用户的图像(例如,用户的面部)。图2描绘了相机102的实施方案的表示。在某些实施方案中,相机102包括一个或多个镜头和用于捕获数字图像的一个或多个图像传感器103。由相机102所捕获的数字图像可包括例如静止图像、视频图像、和/或逐帧图像。

在某些实施方案中,相机102包括图像传感器103。图像传感器103可为例如传感器阵列。传感器阵列中的传感器可包括但不限于用于捕获红外图像(ir)或其他不可见电磁辐射的电荷耦合器件(ccd)和/或互补金属氧化物半导体(cmos)传感器元件。在一些实施方案中,相机102包括用于捕获多种类型的图像的多于一种图像传感器。例如,相机102可包括ir传感器和rgb(红、绿和蓝)传感器两者。在某些实施方案中,相机102包括用于利用由图像传感器103检测到的不同类型的光来对表面(或受检物)进行照明的照明器105。例如,相机102可包括用于可见光的照明器(例如,“闪光灯”)和/或用于红外光的照明器(例如,泛光ir光源和光斑图案投影仪)。在一些实施方案中,泛光ir光源和光斑图案投影仪为其他波长的光(例如,非红外)。在某些实施方案中,照明器105包括光源阵列,诸如但不限于vcsel(垂直腔面发射激光器)。在一些实施方案中,图像传感器103和照明器105被包括在单个芯片封装中。在一些实施方案中,图像传感器103和照明器105位于独立芯片封装上。

在某些实施方案中,图像传感器103为用于捕获红外图像以用于进行面部检测和/或深度检测的ir图像传感器。为了进行面部检测,照明器105a可提供泛光ir照明,以利用ir照明(例如,ir闪光灯)来对受检物进行泛光照明,并且图像传感器103可捕获泛光ir照明受检物的图像。泛光ir照明图像例如可为由ir光照明的受检物的二维图像。为了进行深度检测或生成深度图图像,照明器105b可提供具有光斑图案的ir照明。光斑图案可为具有已知且可控配置的光点的图案(例如,点的图案)和投射到受检物上的图案。照明器105b可包括被配置为形成光斑图案的vcsel阵列或被配置为形成光斑图案的光源和图案化幻灯片。例如,可基于受检物处的期望的光斑图案密度(例如,点密度)来选择由照明器105b提供的光斑图案的配置和图案。图像传感器103可捕获由光斑图案照明的受检物的图像。可由成像和处理系统(例如,本文所述的图像信号处理器(isp))来评估(例如,分析和/或处理)所捕获的受检物上的光斑图案的图像,以产生或估计受检物的三维图(例如,受检物的深度图或深度图图像)。在授予freedman等人的美国专利no.8,150,142、授予pesach等人的美国专利no.8,749,796和授予shpunt等人的美国专利no.8,384,997(在此通过引用并入,如同本文完全阐述的一样)以及授予mor等人的美国专利申请公开no.2016/0178915(在此通过引用并入,如同本文完全阐述的一样)中描述了深度图成像的示例。

在某些实施方案中,由相机102所捕获的图像包括具有用户的面部的图像(例如,用户的面部被包括在图像中)。具有用户的面部的图像可包括在图像帧中示出用户的面部的任何数字图像。此类图像可仅包括用户的面部,或者可在图像的更小部分中包括用户的面部。可在图像中以充分高分辨率来捕获用户的面部,以允许对图像中的用户的面部的一个或多个特征进行图像处理。

可由处理器104来处理由相机102所捕获的图像。图3描绘了被包括在设备100中的处理器104的实施方案的表示。处理器104可包括被配置为执行在由处理器实施的指令集架构中定义的指令的电路。处理器104可执行设备100的主要控制软件,诸如操作系统。通常,由处理器104在使用期间执行的软件可控制设备100的其他部件,以实现所期望的设备功能。处理器还可执行其他软件。这些应用程序可提供用户功能并可依赖于操作系统,以用于低层设备控制、调度、存储器管理等。

在某些实施方案中,处理器104包括图像信号处理器(isp)110。isp110可包括适于处理从相机102接收的图像的电路(例如,图像信号处理电路)。isp110可包括能够处理或分析由相机102所捕获的图像的任何硬件和/或软件(例如,程序指令)。

在某些实施方案中,处理器104包括安全飞地处理器(sep)112。在一些实施方案中,sep112涉及面部识别认证过程,该过程涉及由相机102捕获并由isp110处理的图像。sep112可为被配置为认证活动用户(例如,当前正在使用设备100的用户)以授权使用设备100的安全电路。“安全电路”可为保护隔离的内部资源不被外部电路直接访问的电路。内部资源可为存储敏感数据诸如个人信息(例如,生物识别信息、信用卡信息等)、加密密钥、随机数生成器种子等的存储器(例如,存储器106)。内部资源也可为执行与敏感数据相关联的服务/操作的电路。如本文所述,sep112可包括能够使用面部识别认证过程来认证用户的任何硬件和/或软件(例如,程序指令)。面部识别认证过程可通过利用相机102捕获用户的图像并将所捕获的图像与针对设备100的授权用户的先前收集的图像进行比较来认证用户。在一些实施方案中,isp110和sep112的功能可由单个处理器执行(例如,isp110或sep112可执行两种功能,并且另一个处理器可被省略)。

在某些实施方案中,处理器104执行注册过程(例如,图像注册过程200,如图4所示,或注册过程),以针对设备100的授权用户捕获并存储图像(例如,先前收集的图像)。在注册过程期间,相机模块102可从授权用户捕获(例如,收集)图像和/或图像数据,以便允许sep112(或另一安全过程)接下来使用面部识别认证过程来认证用户。在一些实施方案中,将来自注册过程的图像和/或图像数据(例如,来自图像的特征数据)存储在设备100中的模板中。模板可存储在例如设备100的存储器106中的模板空间中。在一些实施方案中,可通过从模板添加和/或减少图像来更新模板空间。模板更新过程(例如,本文所述的第一模板更新过程300和/或第二模板更新过程400)可由处理器104执行,以从模板空间添加和/或减少模板图像。例如,可利用附加图像来更新模板空间,以适应于随时间推移的授权用户的外观的变化和/或硬件性能的变化。在用于存储模板图像的模板空间已满时,可从模板空间去掉图像以补偿对图像的添加。

在一些实施方案中,相机模块102捕获多对图像,以用于面部识别会话。每对可包括使用二维捕获模式所捕获的图像(例如,泛光ir图像)和使用三维捕获模式所捕获的图像(例如,深度图图像)。在某些实施方案中,isp110和/或sep112在针对用户作出最终认证决定之前彼此独立地处理泛光ir图像和深度图图像。例如,isp110可独立地处理图像,以独立确定每个图像的特性。sep112然后可对独立图像特性与针对每种图像所存储的模板图像进行比较,以针对每个独立图像来生成认证分数(例如,所捕获的图像和所存储的模板图像中的用户之间的匹配分数或其他匹配计分)。可组合针对独立图像的认证分数(例如,泛光ir和深度图图像),以对用户的身份作出决定,并且如果得到认证,则允许用户使用该设备100(例如,对该设备进行解锁)。

在一些实施方案中,isp110和/或sep112组合每对中的图像,以提供用于面部识别的复合图像。在一些实施方案中,isp110处理该复合图像以确定该图像的特性,sep112可将其与所存储的模板图像进行比较,以确定用户的身份,并且如果得到认证,则允许用户使用设备100。

在一些实施方案中,组合泛光ir图像数据和深度图图像数据可允许sep112在三维空间中比较面部。在一些实施方案中,相机模块102经由安全信道来向sep112传送图像数据。该安全信道可为例如用于传送数据的专用路径(即,仅由期望参与者共享的路径)或用于使用仅由期望参与者知道的加密密钥而传送加密数据的专用路径。在一些实施方案中,相机模块102和/或isp110可在向sep112提供图像数据之前对图像数据执行各种处理操作,以促进sep执行该比较。

在某些实施方案中,处理器104操作一个或多个机器学习模型。可使用位于处理器104中和/或设备100上的硬件和/或软件(例如,程序指令)的任意组合来操作机器学习模型。在一些实施方案中,使用一个或多个神经网络模块114来操作设备100上的机器学习模型。神经网络模块114可位于isp110和/或sep112中。

神经网络模块114可包括位于处理器104中和/或设备100上的硬件和/或软件(例如,程序指令)的任意组合。在一些实施方案中,神经网络模块114为多尺度神经网络或另一种神经网络,其中在网络中使用的内核的尺度可变化。在一些实施方案中,神经网络模块114为循环神经网络(rnn),诸如但不限于门控循环单元(gru)循环神经网络或长短期记忆(lstm)循环神经网络。

神经网络模块114可包括安装或配置有已被神经网络模块或类似神经网络模块(例如,在不同处理器或设备上操作的神经网络模块)学习的操作参数的神经网络电路。例如,可使用培训图像(例如,参考图像)和/或其他培训数据来培训神经网络模块,以生成用于神经网络电路的操作参数。从培训生成的操作参数然后可被提供至被安装在设备100上的神经网络模块114。向设备100上的神经网络模块114提供从培训生成的操作参数允许神经网络模块使用编程到神经网络模块中的培训信息来进行操作(例如,培训生成的操作参数可由神经网络模块用于操作并评估由设备所捕获的图像)。

图4描绘了用于设备100的授权用户的图像注册过程200的实施方案的流程图。过程200可用于针对设备100的授权用户来创建图像的一个或多个模板(例如,注册配置文件),其被存储在设备中(例如,在耦接到sep112的存储器中),并且然后用于面部识别过程中以允许用户使用该设备(例如,对设备进行解锁)。通过图像注册过程200创建的注册配置文件(例如,图像模板)可与该特定图像注册过程(以及用于在过程期间注册的图像)相关联。例如,授权用户可创建与用户相关联的包括用户戴眼镜的面部的第一注册配置文件。授权用户还可创建与用户相关联的包括用户不戴眼镜的面部的第二注册配置文件。然后可在面部识别过程中使用第一注册配置文件和第二注册配置文件中的每一者,以允许用户使用该设备(例如,对设备进行解锁)。

在某些实施方案中,在授权用户第一次使用设备100时和/或在用户选择在面部识别过程中注册时,使用过程200。例如,在授权用户首次获取设备100(例如,被授权用户购买)并由授权用户首次打开设备时,发起过程200。在一些实施方案中,可在用户希望在面部识别过程中注册,更新设备100的安全设置,和/或重新注册时,发起过程200。

在某些实施方案中,过程200开始于在202中对用户进行认证。在202中,可使用非面部认证过程在设备100上对用户进行认证。例如,可通过输入密码,输入口令,或使用除面部识别之外的另一种用户认证协议来将用户认证为授权用户。在202中认证用户之后,在204中捕获用户的一个或多个注册(例如,参考或注册)图像。注册图像可包括被泛光照明器105a照明的用户的图像(例如,泛光ir图像)和/或被光斑照明器105b照明的用户的图像(例如,深度图图像)。如本文所述,可在设备100上的面部识别过程中独立和/或组合使用泛光ir图像和深度图图像(例如,可独立地使用图像,以提供认证决定,并可组合该决定以确定对用户认证的最终决定)。

可在用户与设备100进行交互时使用相机102来捕获注册图像。例如,可在用户遵循设备100的显示器108上的提示时捕获注册图像。该提示可包括在捕获注册图像时用户作出不同运动和/或姿态的指令。在204期间,相机102可针对由用户执行的每种运动和/或姿态来捕获多个图像。在图像仍然具有对用户的较清晰描绘的情况下针对用户的不同动作和/或不同姿态捕获图像可能在提供更多样的注册图像时为有用的,这使得能够认证用户,而无需相对于设备100上的相机102而处于受限或约束位置中。

在204中捕获多个注册图像之后,可在206中选择注册图像,以用于进一步的图像处理。对注册图像206的选择以及第图像的进一步处理可由isp110和/或sep112来执行。对用于进一步处理的注册图像的选择可包括选择适合用作模板图像的图像。例如,在206中选择适合用作模板图像的图像可包括评估针对图像的一个或多个所选择的标准并选择满足所选择的标准的图像。可将所选择的图像用作用户的模板图像。所选择的标准可包括但不限于位于相机视场中的用户的面部、适当的用户姿态(例如,用户的面部未在任何方向上从相机转动过远(即,面部的俯仰、偏转、和/或翻滚不高于特定水平)),到用户的面部的距离在特定距离内,用户的面部具有低于最小值的遮挡(例如,用户的面部未被另一物体遮挡(遮盖)超过最小量)、用户注意到相机(例如,用户的眼睛看着相机)、用户的眼睛未闭合、以及图像中的适当的光照(照明)。在一些实施方案中,如果在注册图像中检测到超过一个面部,则拒绝该注册图像并且不用于(例如,不选择)进一步的处理。可基于满足特定数量的所选择的标准或所有所选择的标准的图像管理来对用于进一步处理的图像进行选择。在一些实施方案中,在识别图像中的用户特征(例如,诸如眼睛、鼻子和嘴的面部特征)并评估图像中的所选择的标准时使用遮挡图和/或地标特征图。在一些实施方案中,如果所选择的标准为阻止用户被注册(例如,未选择注册图像),则可禁用一个或多个所选择的标准以允许用户在设备上被注册。例如,如果用户难以被注册,则可关闭/禁用遮挡标准和/或关注标准。

在206中选择图像之后,可在208中对所选择的(模板)图像中的用户特征进行编码。对所选择的图像进行编码可包括对用户的特征(例如,面部特征)进行编码,以将图像中的特征定义为特征空间中的一个或多个特征向量。特征向量210可为208中的编码的输出。特征空间可为n维特征空间。特征向量可为数值的n维向量,其在特征空间中定义来自图像的特征(例如,特征向量可为定义图像中的用户的面部特征的数值向量)。

图5描绘了具有特征向量210的特征空间212的实施方案的表示。每个特征向量210(黑点)可定义来自单个图像、来自复合图像(例如,由几幅图像构成的图像)或来自多个图像的用户的面部特征。特征向量210从单一用户的面部特征生成,该特征向量可彼此类似,因为该特征向量与同一个人相关联并可具有某些“聚类”,如图5中的圆211所示的。如下所述,特征向量256a和256b(开放菱形)为从面部识别过程250获取的特征向量。

如图4所示,过程200可包括在214中将特征向量210存储在设备100的存储器(例如,由sep112保护的存储器)中。在某些实施方案中,在存储器的模板空间中将特征向量210存储作为静态模板216(例如,注册模板或参考模板)。在一些实施方案中,静态模板216(和本文描述的其他模板)包括针对来自注册泛光ir图像的特征向量和针对来自注册深度图图像的特征向量的独立模板。应当理解,可在本文描述的附加过程期间独立和/或组合地使用针对泛光ir图像和深度图图像的独立模板。在本公开中为了简单起见,静态模板216被一般性地描述,并且应当理解,静态模板216(和模板的使用)可指针对泛光ir图像的模板或针对深度图图像的模板。在一些实施方案中,可使用泛光ir图像和深度图图像的组合。例如,可将泛光ir图像和深度图图像对存储在静态模板216中,以在设备100上的一个或多个面部识别过程中使用。

图6描绘了存储器的模板空间220的实施方案的表示。在一些实施方案中,模板空间220包括静态部分222和动态部分224。静态模板216可为例如添加到模板空间220的静态部分222的静态模板(例如,模板被永久添加到存储器,除非设备被重置或进行另一注册过程,否则不被删除或改变)。在一些实施方案中,静态部分222包括特定数量的静态模板216。例如,对于图6中所描绘的模板空间220的实施方案,可在静态部分222中允许六个模板。在注册过程和向静态部分222添加静态模板216之后,向模板空间220的动态部分224添加附加动态模板226(例如,需要不重置设备而向其添加和从其删除模板的一部分)。

静态模板216因此可为通过注册过程200生成的注册模板(或参考模板)。在完成注册过程200之后,将所选择的数量的静态模板216存储在模板空间220的静态部分222中。在注册过程200之后被存储在静态部分222中的静态模板216的数量可根据例如注册过程期间获取的不同特征向量的数量而改变,该不同特征向量的数量可基于被选择为适合用作模板图像的图像的数量或针对该设备的模板的期望数量。在注册过程200之后,静态模板216包括可用于授权用户的面部识别的特征向量210(例如,注册或参考特征向量)。然后可在面部识别认证过程中使用模板空间220。

图7描绘了面部识别认证过程250的实施方案的流程图。过程250可用于使用用户的面部识别来将用户认证为设备100的授权用户。认证授权用户可允许用户访问并使用设备100(例如,对设备进行解锁)和/或具有对设备的所选择的功能的访问权限(例如,对运行于设备上的应用程序的功能进行解锁,支付系统(即,进行支付),访问个人数据,通知的扩展视图等)。在某些实施方案中,过程250被用作针对设备100的基本生物识别认证过程(在注册授权用户之后)。在一些实施方案中,过程250被用作除另一认证过程(例如,指纹认证、另一生物识别认证、密码输入、口令输入、和/或图案输入)之外的认证过程。在一些实施方案中,如果用户不能使用过程250而被认证,则可使用另一种认证过程(例如,密码输入、图案输入、其他生物识别认证)来访问设备100。

在252中,相机102捕获试图被认证以用于访问设备100的用户的面部图像(例如,相机捕获用户的“解锁尝试”图像)。应当理解,解锁尝试图像可为用户的面部的单个图像(例如,单个泛光ir图像或单个深度图图像)或者解锁尝试图像可为在短时间内(例如,一秒或更少)拍摄的用户的面部的一系列若干个图像。在一些实施方案中,用户的面部的一系列若干个图像包括泛光ir图像和深度图图像对(例如,相继的泛光ir和深度图图像对)。在一些具体实施中,解锁尝试图像可为由泛光照明器和光斑图案照明器照明的用户的几个图像的复合。

相机102可响应于用户的提示来捕获该解锁尝试图像。例如,可在用户试图通过按下设备100上的按钮(例如,主页按钮或虚拟按钮),通过将设备移动到相对于用户的面部的所选择的位置(例如,用户移动设备,使得相机直接指向用户的面部),和/或相对于设备作出特定姿势或移动而访问设备100时捕获该解锁尝试图像。应当理解,如本文所述,该解锁尝试图像可包括泛光ir图像、或深度图图像、或它们的组合。此外,可根据需要,独立地或组合地与其对应模板(例如,泛光ir图像与用于泛光ir注册图像的模板)相关联地处理解锁尝试图像。

在254中,对解锁尝试图像进行编码,以将用户的面部特征定义为特征空间中的一个或多个特征向量。在一些实施方案中,针对解锁尝试图像来定义一个特征向量。在一些实施方案中,针对解锁尝试图像来定义超过一个特征向量。解锁特征向量256可为对254中的解锁尝试图像的编码的输出。

在某些实施方案中,在258中,将解锁特征向量256与模板空间220的模板中的特征向量进行比较,以得到针对解锁尝试图像的匹配分数260。匹配分数260可为特征向量256和模板空间220中的特征向量(例如,如本文所述,静态模板216中的特征向量和/或添加到模板空间的其他动态模板226)之间的差异分数。特征向量256和模板空间220中的特征向量越接近(例如,距离越小或差异越小),匹配分数越高。例如,如图5所示,特征向量256a(开放菱形)距特征向量210比特征向量256b(开放菱形)更近(例如,特征向量256b比特征向量256a更靠外)。因此,特征向量256a比特征向量256a具有更高的匹配分数。由于特征向量256b距特征向量210比特征向量256a更远,因此针对特征向量256b的更低匹配分数表示与特征向量256b相关联的解锁尝试图像中的面部为来自注册过程200的授权用户的面部的更小置信度。

在一些实施方案中,对特征向量256和来自模板空间220的模板进行比较,以获取匹配分数260,包括使用一个或多个分类器或支持分类的网络以对特征向量256和来自模板空间220的模板之间的差异进行分类和评估。可被使用的不同分类器的示例包括但不限于线性、分段线性、非线性分类器、支持向量机、和神经网络分类器。在一些实施方案中,使用特征向量256和来自模板空间220的模板之间的距离分数来评估匹配分数260。

在262中,将匹配分数260与针对设备100的解锁阈值264进行比较。解锁阈值264可表示设备100要求的授权用户的面部和解锁尝试图像中的用户的面部之间的特征(由特征向量定义的)的最小差异(例如,特征空间中的距离),以便对设备进行解锁(或对设备上的特征进行解锁)。例如,解锁阈值264可为确定解锁特征向量(例如,特征向量256)是否与和授权用户的面部相关联的模板(例如,模板空间220中的静态模板216)足够类似(例如,足够接近)的阈值。作为另外的示例,解锁阈值264可由图5中所描绘的特征空间212中的圆265来表示。如图5中所示,特征向量256a在圆265内部,并且因此特征向量256a将具有高于解锁阈值264的匹配分数260。然而,特征向量256b在圆265外部,并且因此特征向量256b将具有低于解锁阈值264的匹配分数260。在某些实施方案中,在制造期间和/或由设备100的固件来设置解锁阈值264。在一些实施方案中,如本文所述,在设备操作期间,由设备100更新(例如,调节)该解锁阈值264。

如图7所示,在262中,如果匹配分数260高于解锁阈值264(即,解锁尝试图像中的用户的面部基本上匹配授权用户的面部),则将解锁尝试图像中的用户认证为设备100的授权用户并在266中对设备进行解锁。在某些实施方案中,在266中对设备100进行解锁之后,将解锁特征向量256和匹配分数260提供至第一模板更新过程300,如图8所示,这可在模板空间220中添加或替换模板。在262中,如果匹配分数260低于解锁阈值264(例如,不等于或高于解锁阈值),则在268中不对设备100进行解锁。应当指出,如果匹配分数260等于解锁阈值264,根据解锁阈值的期望设置(例如,更紧或更松的限制),则可对设备100进行锁定或解锁。此外,对于本文描述的其他实施方案,也可根据需要应用针对相等匹配分数进行比较的任一选项。

在一些实施方案中,在270中,对解锁尝试的数量(例如,利用在252中所捕获的不同解锁尝试图像而尝试对设备100进行解锁的数量)进行计数。如果270中的解锁尝的试数量低于所选择的值(例如,阈值),则可利用另一解锁尝试图像(例如,捕获用户的新图像(例如,泛光ir图像或深度图图像))来再次运行过程250。在一些具体实施中,设备100在不提示用户的情况下自动捕获用户的面部的新图像。在一些实施方案中,尝试对设备100进行解锁的用户可具有由相机102捕获的其面部的附加图像。

如果解锁尝试的数量高于所选择的值,则在272中对设备100进行锁定,而不允许进一步尝试使用面部认证。在一些实施方案中,在272中锁定设备时,可(例如,在显示器108上)显示用于指示面部识别认证过程250已失败和/或设备100的期望操作被限制或阻止执行的错误消息。在指定时间段内可锁定设备100,而不允许在272中进一步尝试使用面部认证,和/或直到使用另一种认证协议对设备进行解锁。例如,可使用密码解锁274来对设备100进行解锁。密码解锁274可包括使用密码、口令、图案输入、不同形式的生物识别认证、或另一种认证协议来对设备100进行解锁。在一些实施方案中,密码解锁274包括提供“用户密码/口令/图案”示能表示,在其被选择时,使得显示密码/口令/图案输入用户界面、或密码/口令/图案输入用户界面、或“用户指纹”提示,在其被显示时,提示用户在设备的指纹传感器上放置手指。在一些实施方案中,在274中使用密码来对设备100进行解锁之后,将解锁特征向量256和匹配分数260提供至第二模板更新过程400,如图11所示。

图8描绘了第一模板更新过程300的实施方案的流程图。过程300可用于基于来自过程250的特征向量256利用一个或多个附加动态模板226来更新模板空间220(图6所示)。过程300可用于针对授权用户外观的逐渐变化来更新模板空间220。例如,过程300可针对头发的逐渐改变(例如,头发颜色、头发长度和/或头发样式)、体重增加、体重减少、所佩戴眼镜的改变或小的缺陷变化(例如,黑眼圈、疤痕等)来更新模板空间220。针对逐渐变化来更新模板空间220允许授权用户使用面部识别认证过程250来继续访问设备100。

如果匹配分数260高于阈值304,则过程300可开始于评估302。阈值304可为用于确定特征向量256是否足够类似(例如,接近)于特征向量210(来自静态模板216)的阈值分数,该足够类似使得特征向量256可潜在地被用作另一模板(例如,阈值分数可确定特征向量256是否在特征向量210的特定距离内)。在某些实施方案中,阈值304大于解锁阈值264(例如,阈值304需要比解锁阈值264更高的匹配分数)。因此,针对变成模板的特征向量256的阈值可能比用于对设备进行解锁的阈值更严格。可在制造期间和/或由设备100的固件来设置阈值304。如本文所述,在设备操作期间,可由设备100来更新(例如,调节)阈值304。

在一些实施方案中,如果匹配分数260低于阈值304,则停止过程300并从设备100检测特征向量256。在一些实施方案中,如果匹配分数260低于阈值304,则如图10中所示利用模板更新子过程300a来继续过程300。如果匹配分数260高于阈值304,则继续过程300。在一些实施方案中,在评估302之后,在306中评估解锁尝试图像中的一个或多个质量。例如,可在306中评估解锁尝试图像中的姿态(例如面部的俯仰、偏转和翻滚)、遮挡、注意力、视场、和/或距离。可使用本文所述的地标和/或遮挡图来评估解锁尝试图像中的姿态和/或遮挡。在308中,如果不满足适当的资格,则可停止过程300。在某些实施方案中,满足适当的资格包括满足图像中的针对上述评估质量的一个或多个评估质量的所选择的标准。例如,所选择的标准可包括但不限于位于相机视场中的用户的面部、适当的用户姿态(例如,用户的面部未在任何方向上从相机转动过远(即,面部的俯仰、偏转和/或翻滚不高于特定水平)),到用户的面部的距离在特定距离内,用户的面部具有低于最小值的遮挡(例如,用户的面部未被另一物体遮挡(遮盖)超过最小量)、用户注意到相机(例如,用户的眼睛看着相机)、用户的眼睛未闭合、以及图像中的适当的光照(照明)。在一些实施方案中,在306和308中评估质量可在过程300内的不同位置中发生。例如,如下所述,在306和308中评估质量可在336中的将匹配分数324与阈值326进行比较之后或将置信度分数332与置信度分数334进行比较之后发生。

如果在308中满足适当的资格,则在310中继续过程300,其中将一个或多个特征向量256存储在设备100的存储器中的备份空间中。存储器中的备份空间可为例如存储器中包括可读/可写存储器和/或短期存储器的第二空间或临时性空间。可在存储器中将特征向量256存储作为临时性模板312。

在某些实施方案中,在将临时性模板312存储在存储器中的备份空间中之后,通过为设备100针对授权用户捕获的附加解锁尝试图像将临时性模板与特征向量进行比较来继续过程300。在314中,在用户在设备100的附加(将来)解锁尝试期间捕获用户(或者,如果尝试未授权的访问,则为多个用户)的附加解锁尝试图像。在316中对附加解锁尝试图像中的用户的面部的特征进行编码,以生成特征向量318。在320中,将特征向量318与临时性模板312进行比较,以得到匹配分数322。

然后可在324中将匹配分数322与阈值326进行比较。在一些实施方案中,阈值326为解锁阈值264。在一些实施方案中,阈值326为阈值304。如果在324中匹配分数322高于阈值326,则在328中对成功+尝试进行计数。如果在324中匹配分数322低于阈值326,则在330中对不成功尝试进行计数。可继续统计328和330,直到进行期望数量的解锁尝试(例如,匹配分数322和阈值326的期望数量的比较)。一旦进行了期望数量的尝试,便可使用解锁尝试的总数(例如,统计328和330之和)中的328中的成功尝试的数量来评估临时性模板312的置信度分数332。例如,可能在总共50次解锁尝试中有45次成功尝试,因此置信度分数332为45/50或90%。如图6所示,置信度分数332可用于评估是否向模板空间220添加作为动态模板226的模板312。

如上所述,在注册之后初始地向模板空间220的静态部分222添加注册模板(例如,静态模板216,图6所示)。在注册过程和向静态部分222添加静态模板216之后,可使用图8所示的过程300来向模板空间220添加附加模板。可向动态部分224(例如,不需要重置设备便可添加和删除模板的一部分)添加作为动态模板226的附加模板。可结合模板空间220中的静态模板216来将动态模板226用于面部识别认证过程250,如图7所示。

在某些实施方案中,在针对临时性模板312的置信度分数332高于静态部分222中的静态模板216的最低置信度分数时,如图6所示,可将图8中所示的由过程300生成的临时性模板312添加到动态部分224作为动态模板226。置信度分数334可等于在用于针对临时性模板312评估置信度分数332的相同解锁尝试期间评估的静态部分222中的静态模板216的最低置信度分数(例如,在使用临时性模板312的相同解锁尝试期间具有成功解锁尝试的最低数量的模板的置信度分数)。可使用用于置信度分数332的同一阈值(例如,阈值326)来评估置信度分数334。

在某些实施方案中,如果在336中置信度分数332大于置信度分数334,则在338中添加作为动态部分224中的动态模板226的临时性模板312。例如,如果临时性模板312在总共50次解锁尝试中具有45次成功解锁尝试,而一个静态模板216在相同50次总解锁尝试中仅具有40次成功解锁尝试,则可向动态部分224添加为动态模板226中的一个动态模板的临时性模板312作。如果在336中置信度分数332少低于信度分数334,则在340中忽略或删除临时性模板312。可添加临时性模板312,直到将最大数量的被允许的动态模板226存储在动态部分224中。

一旦动态部分224达到其动态部分224中的动态模板226的最大数量,临时性模板312便可在338中替换动态模板226中的一个动态模板。例如,如果临时性模板比动态模板226中的一个动态模板更不是异常值,则临时性模板312可替换动态模板226中的一个动态模板。在某些实施方案中,使用对表示动态模板226和临时性模板312的特征向量的静态分析来评估临时性模板312是否比动态模板226中的一个动态模板更不是异常值。静态分析可包括例如在针对模板的特征向量上操作的分类算法。

图9描绘了被表示作为特征空间的模板空间220的实施方案的表示。在该特征空间中,由特征向量来表示对模板空间220、静态模板216、动态模板226、和临时性模板312的描绘。例如,静态模板216由圆表示,动态模板226由菱形表示,并且临时性模板312由星形表示。在某些实施方案中,如上所述,不允许静态模板216被临时性模板312替换。因此,如果动态部分224已达到其动态模板226的最大数量,如果临时性模板312比动态模板226中的一个动态模板更不是异常值,则临时性模板312可替换动态模板226中的一个动态模板。

对特征空间中的与模板空间220相关的特征向量进行统计分析可生成最密切地定义最大数量特征向量的圆(例如,圆342)。如图9中所示,圆342将针对动态模板226’的特征向量定义为圆的异常值。针对动态模板226’的特征向量比针对临时性模板312的特征向量更是异常值。因此,临时性模板312可替换模板空间220中的动态模板226’。如果临时性模板312比动态模板226的每个动态模板更是异常值,则临时性模板可不替换动态模板226的任一个动态模板。

在某些实施方案中,在临时性模板312替换模板空间220中的动态模板226’时,可重新计算设备100的一个或多个阈值。由于临时性模板312比动态模板226’更不是异常值,因此重新计算阈值可进一步限制阈值(例如,提升用于匹配分数的阈值,以要求更接近的匹配)。在一些实施方案中,在临时性模板312替换模板空间220中的动态模板226’时,使得解锁阈值(例如,解锁阈值264,图7所示)更严格。在一些实施方案中,在临时性模板312替换模板空间220中的动态模板226’时,使得模板更新阈值(例如,阈值304,图8所示)更严格。

图10描绘了模板更新子过程300a的实施方案的流程图。如上所述,如果匹配分数260低于阈值304但高于解锁阈值264,则子过程300a可继续。具有在此类范围中(高于解锁阈值264但低于阈值304)的匹配分数260的图像可能比高于阈值304的图像在匹配中具有更大不确定性(然而仍然能够对设备100解锁)。因此,可使用子过程300a来继续这些更不确定的图像。

在子过程300a中,在350中评估解锁尝试图像中的一个或多个质量。在350中评估解锁尝试图像的质量可基本类似于在306和308中评估质量,如图8所示。如图10所示,如果解锁尝试图像在350中通过质量的评估(例如,满足资格要求),则可在352中确定用于临时性模板312的备份空间中是否有空间(例如,空白)存储另一临时性模板(例如,确定备份空间中是否存储最大数量的临时性模板312)。

如果备份空间中没有空间(“n”),则可对解锁尝试图像(及其对应的特征向量)应用删除策略354,如图10所示。在删除策略354中,可在备份空间中替换被选择为现有特征的冗余(例如,最冗余的)的备份空间(例如,用于临时性模板312的空间)中的特征向量。

如果备份空间中有空间(“y”),则在356中向备份空间添加用于解锁尝试图像的作为临时性模板(例如,临时性模板312)的特征向量。一旦在356中向备份空间添加来自子过程300a的临时性模板,便可基本像临时性模板312那样来处理该临时性模板(例如,与图8中所示的附加解锁尝试图像相比)。在某些实施方案中,来自子过程300a的临时性模板在所选择的时间量中被用作模板(例如,临时性模板312和/或动态模板226)。例如,因为初始以比其他模板更高的不确定度添加来自子过程300a的临时性模板,所以允许用于来自子过程300a的临时性模板的时间量可能受到限制(例如,临时性模板具有有限的寿命)。在一些实施方案中,所选择的时间量为使用来自子过程300a的临时性模板的成功解锁尝试的最大量。

如上所述,第一模板更新过程300可用于在使用面部认证识别过程250对设备100进行解锁或访问时更新用户的注册配置文件(例如,模板空间中的模板)。例如,第一模板更新过程300可用于响应于用户外观的逐渐变化(例如,体重增加/减小)而更新用户的注册配置文件。

然而,在一些实施方案中,授权用户的面部特征(例如,用户的面部外观)可能会显著变化,或者至少变化足够大的程度,使得用户在使用图7所描绘的面部认证识别过程250对设备100上的特征(或操作)进行解锁或访问时可能遇到困难。用户的面部外观的巨大或很大程度的改变可包括例如刮胡子或胡须,脸上有大的伤疤或其他缺陷,化妆做出很大改变,发型做出很大改变。在一些情况下,如果在注册过程期间有错误和/或在解锁尝试期间与注册时用户环境之间有大的差异,则用户在使用面部认证识别过程250对设备100进行解锁/访问时也可能遇到困难。对于用户而言,在使用面部认证识别过程250对设备100进行解锁时遇到困难可能为一种挫折性体验。在由于上述变化/问题而在使用面部认证识别过程250对设备100进行解锁时遇到困难时,在使用第二认证协议验证用户的身份之后,可使用第二模板更新过程(例如,如下所述的第二模板更新过程400),以至少暂时允许用户即使有问题/变化也能使用面部认证识别过程来对设备进行解锁/访问。

如图7所示,用户可使用面部认证识别过程250不成功尝试若干次解锁尝试,直到不成功解锁尝试的数量达到所选择的值,并锁定设备100以防止进一步尝试使用面部认证识别过程。在这样的时间,可呈现给用户一个或多个选项,以用于进行不同类型的认证,以对设备100上的特征进行解锁或访问(例如,呈现给用户进行第二认证协议的选项)。呈现选项可包括例如在设备100的显示器108上显示一个或多个选项,并通过听觉和/或视觉通信提示用户选择所显示的选项中的一个选项,以继续进行设备对设备上的特征的解锁或访问。用户然后可使用所选择的选项并根据需要遵循附加听觉和/或视觉提示来继续进行对备100的解锁/访问。在使用所选择的选项成功认证之后,可允许对设备100进行解锁/访问的用户的初始请求。此外,在使用所选择的选项成功认证用户之后,设备100可至少暂时更新用户的注册配置文件(例如,使用下文所述的第二模板更新过程400),以允许用户能够使用面部认证识别过程250在将来的解锁尝试中对该设备进行解锁/访问,尽管用户的面部外观的改变此前阻止用户使用面部认证识别过程来对该设备进行解锁/访问。因此,通过使用所选择的选项成功完成认证,用户可自动地能够使用面部认证识别过程250在将来的解锁尝试中在至少短时间内访问设备100。

图11描绘了第二模板更新过程400的实施方案的流程图。可在面部识别认证过程250不能够对设备100进行解锁但能够使用密码或其他认证协议对设备进行解锁时,使用过程400,如图7所示。在一些实施方案中,在解锁尝试失败之后立即使用密码来对设备100进行解锁,或在解锁尝试失败之后的指定时间段内(例如,在时间上接近解锁尝试),可使用过程400。在某些实施方案中,在授权用户的面部特征改变程度达到阻止从解锁尝试图像生成的特征向量(例如,特征向量256)与静态模板216和/或动态模板226足够接近(例如,在解锁阈值距离内)从而允许使用图7所示的面部识别认证过程250来对设备100进行解锁时,使用过程400来更新模板空间220。例如,可针对特征向量256b使用过程400,该特征向量被描绘为在图5中的圆265(解锁阈值圆)的外部。用户能够使用面部识别认证过程250来对设备100进行解锁的可能原因包括但不限于如果授权用户刮胡子,脸上有大伤疤或其他缺陷,化妆做出大的改变,大的发型改变,或在面部特征中具有另一种重大改变,则这些改变可为授权用户的面部特征的立即改变或“阶跃变化”,而不允许第一模板更新过程300随时间来逐渐更新模板空间220。

如果匹配分数260高于阈值404,则第二模板更新过程400可开始于评估402。阈值404可为用于确定特征向量256是否足够类似(例如,接近)特征向量210(来自静态模板216)的阈值分数,该足够类似使得特征向量256可潜在地被用作另一模板。在某些实施方案中,用于过程400的阈值404低于解锁阈值264。阈值404可低于解锁阈值264(例如,特征向量和模板之间允许更大的距离),因为已在开始过程400之前输入密码(或其他认证)。因此,在过程400中变成模板的特征向量256的阈值可不如用于对设备进行解锁的阈值和用于过程300的阈值严格,如图8所示。然而,可将阈值404设置在设置用于解锁尝试图像的特征向量256和用于模板空间220的特征向量之间的最大允许距离的值处。设置最大允许距离可用于防止未被授权但具有设备100的密码的用户能够在设备上进行面部识别认证。可在制造期间和/或由设备100的固件设置阈值404。如本文所述,在设备操作期间(例如,在模板空间220中添加或替换模板之后),可由设备100来更新(例如,调节)阈值404。

如果匹配分数260低于阈值404,则可停止过程404并从设备100删除特征向量256。如果匹配分数260高于阈值404,则继续过程400。在一些实施方案中,在评估404之后,在406中评估解锁尝试图像中的一个或多个质量。例如,可在406中评估解锁尝试图像中的姿态(例如面部的俯仰、偏转和翻滚)、遮挡、注意力、视场、和/或距离。在一些实施方案中,使用本文所述的地标和/或遮挡图来评估解锁尝试图像中的姿态和/或遮挡。在408中,如果(如上所述)不满足适当的资格,则可停止过程400。

如果在408中满足适当的资格,则在410中继续过程400,其中将一个或多个特征向量256存储在设备100的存储器中的备份空间中。用于过程400的存储器中的备份空间可为与用于过程300的备份空间不同的备份空间。例如,用于过程400的存储器中的备份空间可为存储器中的包括从用于过程300的备份空间分割出来的可读/可写存储器的临时性空间。可在存储器中将特征向量256存储作为临时性模板412。

在某些实施方案中,在将临时性模板412存储在备份空间中之后,可将临时性模板412与来自设备100的失败面部识别认证解锁尝试的附加图像的特征向量进行比较。例如,在过程400中,可在414中捕获附加解锁失败尝试图像。如果在416中输入正确的密码,则可对在418中对414中捕获的图像的特征向量进行编码,以生成特征向量420。

在某些实施方案中,在422中,将特征向量420与用于临时性模板412的特征向量进行比较。特征向量420和用于临时性模板412的特征向量的比较可提供匹配分数424。可在426中将匹配分数424与阈值428进行比较。阈值428可为例如相似阈值、或至少定义针对临时性模板412的特征向量和从来自在输入设备100的密码之后的失败面部识别认证尝试的附加图像获取的特征向量420之间的最低水平的匹配的阈值。因此,阈值428可被设置在确保至少最小概率量导致失败解锁尝试以及所生成的临时性模板412的用户特征的改变仍然存在于来自使用面部识别认证的附加失败解锁尝试的图像中的值处。

如果在426中匹配分数424高于阈值428,则在430中对成功匹配进行计数。如果在426中匹配分数424低于阈值428,则在432中对不成功匹配进行计数。可继续计数430和432,直到使用面部识别认证进行期望数量的失败解锁尝试(例如,匹配分数424和阈值428的期望数量的比较)。一旦进行期望数量的尝试,便可使用失败解锁尝试总数(例如,统计430和432之和)中的430中的成功匹配的数量来评估临时性模板412的置信度分数434。例如,在总共20次失败解锁尝试中可能有匹配分数424和阈值428的18次成功匹配(例如,进行比较)。如图6所示,置信度分数434可用于评估是否向模板空间220添加作为动态模板226的模板412。

在一些实施方案中,可假设如果在授权用户的面部特征中出现阶跃变化,则可在使用面部识别认证的若干次相继解锁尝试内保持阶跃变化。例如,如果用户刮胡子,则阶跃变化应当保持至少一定长度的时间(例如,至少一星期)。在此类实施方案中,如果在达到所选择数量的相继解锁尝试(例如,10或15次解锁尝试)之前使用面部识别认证实现成功解锁尝试(或期望数量的成功解锁尝试),则可从存储器中的备份空间删除临时性模板412。在一些实施方案中,阶跃变化可保持若干次相继解锁尝试的假设可能不适用(例如,如果用户的阶跃变化是由于临时性化妆造成的)。

在某些实施方案中,在436中,再次将置信度分数434与阈值438进行比较,以评估置信度分数是否大于阈值。阈值438可为被选择以确保在允许向模板空间220添加模板412之前达到匹配分数424和阈值428之间的最小数量的成功比较的阈值。在436中,如果置信度分数434大于阈值438,则在440中,可向模板空间220添加临时性模板412,或者临时性模板412可替换模板空间220中的模板(例如,替换动态模板226中的一个动态模板)。如果置信度分数434少于阈值438,则可在442中忽略或删除临时性模板412。

如上所述,如图6所示,可将过程400生成的临时性模板412添加到模板空间220的动态部分224作为动态模板226中的一个动态模板。对于过程400,如图11所示,已使用密码(或其他认证)验证临时性模板412为用于授权用户的。因此,在某些实施方案中,在440中向模板空间220添加临时性模板412,而无需与动态部分224中的已有的动态模板226进行比较。如果未达到动态部分224中的被允许动态模板226的最大数量,则向动态部分添加作为动态模板226中的一个动态模板的临时性模板412。

如果已达到动态部分224中的被允许动态模板226的最大数量,则临时性模板412可替换动态部分中的动态模板226中的一个动态模板。由于已使用密码(或其他认证)验证临时性模板412为用于授权用户的,即使临时性模板比动态模板226的每个动态模板更是异常值,临时性模板也可替换动态部分224中的动态模板226中的一个动态模板。在某些实施方案中,不论临时性模板相对位于(例如,异常)哪里,临时性模板412均替换动态模板226的最大异常值。在一些实施方案中,即使临时性模板比动态模板的每个动态模板更是异常值,临时性模板412也可替换对于现有动态模板而言冗余(例如,最冗余)的动态模板。

图12描绘了被表示作为具有用于临时性模板412的特征向量的特征空间的模板空间220的实施方案的表示。在图12中模板空间220的特征空间描绘中,由特征向量表示了静态模板216、动态模板226和临时性模板412。静态模板216由圆表示,动态模板226由菱形表示,并且临时性模板412由星形表示。如上所述,静态模板216可不被临时性模板412替换。因此,如果动态部分224已达到其动态模板226的最大数量,则临时性模板412便可替换动态模板226中的一个动态模板。

对特征空间中的与模板空间220相关的特征向量进行统计分析可生成最密切地定义最大数量特征向量的圆(例如,圆444)。如图12所示,用于动态模板226’的特征向量为用于动态模板226的特征向量中的每个特征向量的最大异常值。因此,不论用于临时性模板的特征向量位置在哪里,临时性模板412均可替换模板空间220中的动态模板226’。在图12中所描绘的示例中,添加用于临时性模板412的特征向量使圆444朝向用于临时性模板412的特征向量偏移,并可使得用于动态模板226’的特征向量变成圆的最大异常值。在一些实施方案中,在临时性模板412替换模板空间220中的动态模板226’时,可重新计算设备100的一个或多个阈值。

在一些实施方案中,可使用临时性模板(例如,临时性模板312或临时性模板412)在所选择的时间段内对设备100进行解锁,同时临时性模板位于存储器的备份空间中(例如,在向模板空间220添加临时性模板之前)。在结合临时性模板使用密码(或其他用户认证协议)之后,可使用临时性模板来对设备100进行解锁。例如,对于临时性模板412,在临时性模板412被生成并被存储在设备存储器的备份空间中之前,已输入口令,以对设备100进行解锁。然后可使用临时性模板412以允许在所选择的时间段内(例如,几天或一星期)使用面部识别认证来对设备100进行解锁。在所选择的时间段到期之后,如果尚未向模板空间220添加临时性模板412,如果用户的面部识别认证失败,则可提示用户输入密码。

在一些实施方案中,在设备100上生成多个注册配置文件。例如,可生成多个注册配置文件以在设备100上注册多个用户和/或为单个用户注册多个面孔。用于单个用户的多个面孔可包括显著不同且不能使用单个注册配置文件识别的面孔(例如,用户化浓妆或在一天/一星期的不同时间具有其他巨大变化)。例如,单个用户可在戴眼镜的同时第一次执行注册过程以创建第一注册配置文件,并在不戴眼镜的同时第二次执行注册过程以创建第二注册配置文件。

在具有多个注册配置文件的实施方案中,可使用图像注册过程200来将每个注册配置文件生成作为设备100上的独立注册配置文件。例如,可使用过程200针对每个注册配置文件来创建注册图像的独立模板。可将独立模板存储在设备100的存储器的不同部分中(例如,用于存储模板的存储器空间的分割部分)。

在将多个注册配置文件存储在设备100中的情况下,面部识别认证过程250可将解锁尝试图像中的特征与不同配置文件(例如,存储在存储器中的所有模板)的每个配置文件进行比较。在某些实施方案中,如果针对注册配置文件的任一个注册配置文件确定匹配(例如,匹配分数高于解锁阈值),则对设备100进行解锁。在一些实施方案中,如果在设备100上存储多个注册配置文件,则增大解锁阈值(例如,使针对匹配的要求更严格)。在一些实施方案中,在生成新的注册配置文件时,解锁阈值增大的量基于特征空间中的与针对新注册配置文件的模板相关联的特征向量和与现有注册配置文件中的模板相关联的特征向量之间的距离(例如,针对新注册配置文件的模板中的特征向量和现有注册配置文件中的特征向量之间的距离越大,解锁阈值增大得越大)。在一些实施方案中,还可基于现有注册配置文件的匹配历史来调节新的解锁阈值(例如,现有配置文件的历史中匹配越多,阈值便可越严格)。

在将多个注册配置文件存储在设备100中时,每个注册配置文件可与其自身的模板更新过程相关联(例如,每个注册配置文件利用其自身的第一模板更新过程300和第二模板更新过程400来进行操作)。在各实施方案中,在以使用面部识别认证过程250确定的匹配来对设备100进行解锁时,可使用其对应的第一模板更新过程300来处理(例如,更新)与过程250中的解锁尝试图像匹配的注册配置文件。如果确定多个注册配置文件与使用面部识别认证过程250的解锁尝试图像匹配,则可使用其相应的第一模板更新过程300来处理(例如,更新)匹配注册配置文件的每个匹配注册配置文件。在各个实施方案中,在使用密码(或另一种辅助认证方法)来对设备100进行解锁时,因为面部识别认证过程250不能确定匹配,所以可使用其对应的第二模板更新过程400来处理(例如,更新)具有距解锁尝试图像的特征向量最接近(例如,最小距离)的特征向量的注册配置文件。

在某些实施方案中,可由执行存储在非暂态计算机可读介质上的指令的一个或多个处理器(例如,计算机处理器)来执行本文描述的一个或多个过程步骤。例如,图4、图7、图8和图11中所示的过程200、过程250、过程300和过程400可具有由执行在计算机可读存储介质(例如,非暂态计算机可读存储介质)中被存储作为程序指令的指令的一个或多个处理器执行的一个或多个步骤。

图13描绘了示例性计算机系统510的一个实施方案的框图。示例性计算机系统510可用于实施本文描述的一个或多个实施方案。在一些实施方案中,计算机系统510可由用户操作以实施本文描述的一个或多个实施方案,诸如图4、图7、图8和图11中所示的过程200、过程250、过程300和过程400。在图13的实施方案中,计算机系统510包括处理器512、存储器514、和各种外围设备516。处理器512耦接到存储器514和外围设备516。处理器512被配置为执行指令,该指令包括用于过程200、过程250、过程300和/或过程400的可处于软件中的指令。在各种实施方案中,处理器512可实施任何所需的指令集(例如,intelarchitecture-32(ia-32,也称为x86)、具有64位扩展的ia-32、x86-64、powerpc、sparc、mips、arm、ia-64等)。在一些实施方案中,计算机系统510可包多于过一个处理器。此外,处理器512可包括一个或多个处理器或一个或多个处理器内核。

处理器512可通过任何期望方式而被耦接到存储器514和外围设备516。例如,在一些实施方案中,处理器512可经由各种互连件而被耦接到存储器514和/或外围设备516。另选地或除此之外,一个或多个桥芯片可用于耦接的处理器512、存储器514和外围设备516。

存储器514可包括任何类型的存储器系统。例如,存储器514可包括dram,并且更具体地包括双倍数据率(ddr)sdram、rdram等。可包括存储器控制器以接口连接到存储器514,和/或处理器512可包括存储器控制器。存储器514可存储要在使用期间由处理器512执行的指令,要在使用期间由处理器操作的数据等。

外围设备516可表示可被包括在计算机系统510中或耦接到其上的任何种类的硬件设备(例如,存储设备,任选地包括图14中所示的计算机可访问存储介质600,其他输入/输出(i/o)设备,诸如视频硬件、音频硬件、用户界面设备、联网硬件等)。

现在转向图14,即计算机可访问存储介质600的一个实施方案的框图,其包括被包括在集成电路设计中的设备100(图1描述的)的一个或多个数据结构表示、以及过程200、过程250、过程300和/或过程400(图4、图7、图8和图11所示)的一个或多个代码序列表示。每个代码序列可包括在由计算机中的处理器执行时实施针对对应代码序列所述的操作的一个或多个指令。一般来讲,计算机可访问存储介质可包括计算机在使用期间可被计算机访问以向计算机提供指令和/或数据的任何存储介质。例如,计算机可访问存储介质可包括非暂态存储介质诸如磁性或光学介质,例如磁盘(固定或可移除)、磁带、cd-rom、dvd-rom、cd-r、cd-rw、dvd-r、dvd-rw、或blu-ray。存储介质还可包括易失性或非易失性存储器介质,诸如ram(例如,同步动态ram(sdram)、rambusdram(rdram)、静态ram(sram)等)、rom、或闪存存储器。存储介质可被物理地包括在存储介质将指令/数据提供至其的计算机中。另选地,存储介质可连接到计算机。例如,存储介质可经由网络或无线链路诸如网络附接存储装置而被连接到计算机。存储介质可通过周边接口诸如通用串行总线(usb)而被连接。一般来讲,计算机可访问存储介质600可以非暂态方式存储数据,其中非暂态在该上下文中可指不通过信号来传输指令/数据。例如,非暂态存储装置可为哦易失性的(并可能响应于断电而丢失所存储的指令/数据)或非易失性的。

根据本说明书,本公开中所述实施方案的各个方面的其他修改和替代实施方案对于本领域的技术人员而言将为显而易见的。因此,本说明书被理解为仅为示例性的并且目的为用于教导本领域的技术人员执行各个实施方案的一般方式。应当理解,本文所示和所述的各个实施方案的形式将被当作目前优选的实施方案。各个元件与材料可被替代用于本文所示和所述的那些元件与材料,可反转各个部分和过程,并且可独立地利用各个实施方案的某些特征,在受益于本说明书之后,所有这些内容对于本领域的技术人员而言将为显而易见的。可在不脱离以下权利要求书的实质和范围的情况下对本文所述的元素进行改变。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1