用于面部验证的方法和系统与流程

文档序号:11142324阅读:498来源:国知局
用于面部验证的方法和系统与制造工艺

本申请涉及用于面部验证的方法及其系统。



背景技术:

早期的子空间面部识别方法(诸如LDA和贝叶斯面部)减小了由于姿势、照明条件、表情、年龄和遮挡情况而引起的在同一人中的变化,同时扩大了人与人之间的变化。例如,LDA通过使用两个线性子空间对人与人之间的面部变化和同一人的面部变化作近似,以及得到最大化这两者之间的比例的投影方向。

更近期的研究也已明确地或隐含地瞄准了相同目标。例如,提出了距离学习(metric learning)以将面部图像映射到一些特征表示上,以使得同一身份的面部图像彼此靠近而不同身份的面部图像保持分开。但是,这些模型非常受限于它们的线性本质或浅层结构,而人与人之间的变化和同一人内的变化是复杂的、高度非线性的以及是在高维度图像空间中被观察的。

近年来,大量的努力被用来通过深度模型使用识别监督信号或验证监督信号学习用于面部识别的有效特征。使用识别信号学习的特征已经在LFW上获得了大约97.45%的准确度。

连同地解决分类任务和验证任务的思想被应用到一般物体识别中,其集中于改善对于固定的物体种类而非隐藏特征表示的分类准确度。



技术实现要素:

在本申请的一方面中公开了用于面部验证的设备。该设备可包括特征提取单元和验证单元。在一个实施方式中,特征提取单元包括通过使用不同的面部训练集而训练出的多个卷积特征提取系统,其中,系统中的每个包括:多个级联的卷积特征提取单元、池化特征提取单元、局部连接特征提取单元和全连接特征提取单元,这些特征提取单元配置为从面部图像的面部区域中提取用于面部验证的面部特征;其中,在本申请的一个实施方式中可以是全连接单元的单元层级中的输出单元连接至先前的卷积单元、池化单元、局部连接单元或全连接单元中的至少一个并且配置为从所连接的单元中的面部特征中提取用于面部验证的面部特征(称作深度识别-验证特征或DeepID2)。

验证单元可配置为比较从待比较的两个面部图像提取的所获得的DeepID2,从而确定这两个面部图像是否来自同一身份。

在本申请的另一方面中公开了用于面部验证的方法。该方法可包括:通过使用不同训练的卷积特征提取系统从面部图像的不同区域提取DeepID2的步骤,以及比较分别从待比较的两个面部图像提取的DeepID2以确定这两个面部图像是否来自同一身份的步骤,其中,所述卷积特征提取系统的输出层的神经元激活值被认为是DeepID2。

根据本申请,上述设备还可包括训练单元,该训练单元配置为通过输入成对的对准面部区域以及同时将识别监督信号和验证监督信号添加至卷积特征提取系统来训练用于同时身份分类和身份验证的多个卷积特征提取系统。

根据本申请,还具有用于训练卷积特征提取系统的方法,该方法包括:

1)从预定训练集采样两个面部区域-标签对;

2)分别从所采样的两个面部区域-标签对中的两个面部区域提取DeepID2;

3)将从每个面部区域提取的DeepID2分类到面部身份的全部种类中的一种中;

4)将经过分类的身份与给定参考身份进行比较从而生成识别误差;

5)将分别从待比较的两个面部区域提取的两个DeepID2矢量之间的相异性进行比较来生成验证误差;

6)将所生成的验证误差和所生成的识别误差的组合反向传播通过卷积特征提取系统,从而调节卷积特征提取系统的神经元之间的连接权重;以及

7)重复步骤1)-6)直至训练过程收敛,从而确定卷积特征提取系统的神经元之间的连接权重。

根据本申请,还具有用于训练卷积特征系统的系统,该系统包括:

从预定训练集采样两个面部区域-标签对的装置;

分别从所采样的两个面部区域-标签对中的两个面部区域提取DeepID2的装置;

将从每个面部区域提取的DeepID2分类到面部身份的全部种类中的一种中的装置;

将经过分类的身份与给定参考身份进行比较从而生成识别误差的装置;

将分别从待比较的两个面部区域提取的两个DeepID2矢量之间的相异性进行比较来生成验证误差的装置;

将所生成的验证误差和所生成的识别误差的组合反向传播通过卷积特征提取系统从而调节卷积特征提取系统的神经元之间的连接权重的装置;以及

重复以上步骤直至训练过程收敛从而确定卷积特征提取系统的神经元之间的连接权重的装置。

根据本申请,还提供了计算机可读介质,该计算机可读介质用于存储可由一个或多个处理器运行从而执行以下操作的指令:

1)从预定训练集采样两个面部区域-标签对;

2)分别从所采样的两个面部区域-标签对中的两个面部区域提取DeepID2;

3)将从每个面部区域提取的DeepID2分类到面部身份的全部种类中的一种中;

4)将经过分类的身份与给定参考身份进行比较从而生成识别误差;

5)将分别从待比较的两个面部区域提取的两个DeepID2矢量之间的相异性进行比较来生成验证误差;

6)将所生成的验证误差和所生成的识别误差的组合反向传播通过卷积特征提取系统,从而调节卷积特征提取系统的神经元之间的连接权重;以及

7)重复步骤1)-6)直至训练过程收敛,从而确定卷积特征提取系统的神经元之间的连接权重。

与现有方法对比,本申请使用深度卷积特征提取系统处理人与人之间的面部变化和同一人的面部变化,该深度卷积特征提取系统由于其深度架构和强大的学习能力,可通过分层非线性映射来学习有效的用于面部识别的DeepID2。

本申请通过同时使用两个监督信号(即,面部识别信号和面部验证信号)来学习DeepID2。面部识别信号通过将从不同身份提取的DeepID2分开而增加人与人之间的变化,而面部验证信号通过将从同一身份提取的DeepID2聚拢而减小同一人内的变化,这两种信号对于面部识别都至关重要。

本申请通过从多种面部区域和分辨率提取互补的DeepID2而从不同的方面表征面部,这些表征随后被组合从而在PCA降维处理后形成最终面部表示。学习的DeepID2在以下方面优于通过现有方法学习的特征:学习的DeepID2在不同身份之间分化而在同一身份之内保持一致,从而使得以下面部识别变得更容易。

附图说明

下文中参照附图对本发明的示例性非限制实施方式进行描述。附图是说明性的并且通常不表示精确尺寸。不同附图上的相同或相似的元件使用相同的附图标记表示。

图1是示出了根据一些公开的实施方式的用于面部验证的设备的示意图。

图2是示出了根据一些公开的实施方式的用于面部验证的设备在用软件实施时的示意图。

图3是示出了根据第一公开实施方式的一组选择的面部区域的示意图,其中,DeepID2从这组选择的面部区域中被提取。

图4是示出了根据第二公开实施方式的卷积特征提取系统的具体结构的示意图。

图5是示出了被添加至卷积特征提取系统的输出层中的DeepID2的识别监督信号和验证监督信号的示意图。

图6是示出了根据一些公开的实施方式的面部验证的示意性流程图。

图7是示出了根据一些公开的实施方式的用于提取DeepID2的深度卷积特征提取系统的训练过程的示意性流程图。

图8是示出了根据一些公开的实施方式的如图1所示的训练单元的示意图。

具体实施方式

现在将详细参照示例性实施方式,其中在附图中示出了这些示例性实施方式的示例。在恰当的情况下,在全部附图中使用相同的附图标记表示相同或相似的部件。图1是示出了根据一些公开的实施方式的用于面部验证的示例性设备1000的示意图。

应理解的是,设备1000可使用特定硬件、软件或者硬件与软件的组合实现。此外,本发明的实施方式可改造为实现于包含计算机程序代码的一个或多个计算机可读储存介质(包括但不限于磁盘储存器、CD-ROM、光存储器等)上的计算机程序产品。

在使用软件实现设备1000的情况下,设备1000可包括通用计算机、计算机群、主流计算机、专用于提供在线内容的计算机装置、或包括以集中方式或分布方式运行的一组计算机的计算机网络。如图2中所示,设备1000可包括一个或多个处理器(处理器102、104、106等)、存储器112、储存装置116、通信接口114以及便于在设备1000的各种部件之间交换信息的总线。处理器102-106可包括中央处理单元(“CPU”)、图形处理单元(“GPU”)或其它合适的信息处理装置。根据所使用的硬件的类型,处理器102-106可包括一个或多个印刷电路板、和/或一个或多个微处理器芯片。处理器102-106可运行计算机程序指令序列以执行将在下文更为详细地解释的各种方法。

存储器112还可包括随机存取存储器(“RAM”)和只读存储器(“ROM”)。计算机程序指令可存储在存储器112中、从存储器112中被访问和读取,从而供处理器102-106中的一个或多个处理器来运行。例如,存储器112可存储一个或多个软件应用。此外,存储器112可存储全部软件应用或仅存储软件应用中可由处理器102-106中的一个或多个处理器执行的部分。应注意到的是,虽然图1中仅示出了一个框来表示存储器,但是存储器112可包括安装在中央计算装置上或安装在不同计算装置上的多个实体装置。

再次参照图1,当设备1000通过硬件实现时,其可包括特征提取单元10和验证单元20。特征提取单元10配置为通过使用经过不同地训练的卷积特征提取系统从面部图像的不同区域提取DeepID2(深度识别-验证特征),以及将所述卷积特征提取系统的输出层的神经元激活值作为DeepID2。验证单元20配置为比较分别从待比较的两个面部图像提取的DeepID2,从而确定这两个面部图像是否来自同一身份。

特征提取单元(提取器)10

特征提取单元10包括多个卷积特征提取系统并操作为将特定面部区域输入至卷积特征提取系统中的每个以提取DeepID2。图3示出了在面部对准之后选择的用于提取DeepID2的输入面部区域的示例,其中,面部区域包括在位置、尺寸、颜色通道和水平翻转方面的大的变化。图4示出了卷积特征提取系统的示例,其包括输入层(本文中也称作输入单元)32、多个卷积层(本文中也称作卷积单元)34、多个池化层(本文中也称作池化单元)36、多个局部连接层(本文中也称作局部连接单元)38以及多个全连接层(本文中也称作全连接单元)40,其中,卷积特征提取系统的输出层(在本申请的一个实施方式中可以是全连接层40)连接至一个或多个先前的卷积层、池化层、局部连接层或全连接层。卷积层、池化层、局部连接层和全连接层中的每个包含具有局部接收域或全局接收域的多个神经元,并且在神经元之间共享或不共享连接权重。卷积特征提取系统的输出层(可以是全连接层40)神经元激活值是提取的DeepID2,其将在下文中进一步讨论。

在如图4所示的本申请的实施方式中,卷积特征提取系统中的每个包括n个(例如,n=3)卷积层34,其中这n个卷积层34中的每个之后都跟随有最大池化层36。第三最大池化层之后跟随有局部连接层38和全连接层40。全连接层40是DeepID2层,其全连接至局部连接层38和第三最大池化层36。不需要在较高卷积层中的全部特征图上进行权重共享。具体地,在所示出的深度卷积特征提取系统的第三卷积层中,在(例如)每个2×2局部区域局部地共享神经元权重。卷积特征提取系统在特征提取层级的最后一层(DeepID2层40)提取多维度(例如,160维度)DeepID2矢量。在卷积层34、局部连接层38和全连接DeepID2层40中对神经元使用ReLU(Rectified linear unit,修正线性单元)。在如图4所示的实施方式中,使用了尺寸为(例如)55×47的RGB输入。当输入区域的尺寸改变时,后续层中的特征图尺寸将相应改变。

下文中将进一步讨论如在上文中所提及的卷积特征提取系统中的卷积操作、池化操作、局部连接操作和全连接操作。

卷积层34配置为从输入特征图(先前层的输出特征图)提取局部面部特征以形成当前层的输出特征图。每个特征图均是以2D形式组织的某种特征。使用同一组神经元连接权重从输入特征图中提取出同一输出特征图中的特征或者同一特征图的局部区域中的特征。在如图4所示的卷积特征提取系统的每个卷积层34中的卷积操作可表示为:

其中xi和yj分别是第i个输入特征图和第j个输出特征图。kij是第i个输入特征图与第j个输出特征图之间的卷积核。*表示卷积。bj是第j个输出特征图的偏置值。本文中,ReLU非线性函数y=max(0,x)用于神经元,相较于sigmoid函数,该非线性函数展示出了对于大量的训练数据具有更好的拟合能力。在ConvNet的较高卷积层中的权重被局部共享以学习不同区域中的不同的中级特征或高级特征。r表示权重被共享的局部区域。

池化层36配置为提取更全局且不变的面部特征。在图4的池化层36中使用最大池化,其由以下公式表示:

其中第i个输出特征图yi中的每个神经元在第i个输入特征图xi中的s×s的非重叠局部区域上池化。

局部连接层38配置为从输入特征图(先前层的输出特征图)提取局部面部特征以形成当前层的输出特征图。使用不同组的神经元连接权重从输入特征图提取输出特征图中的特征。在本申请的实施方式中,局部连接层38在第三池化层36之后。局部连接层38的操作可表示为:

其中,第j个输出特征图中的每个神经元局部连接至在全部先前特征图中的同一s×s局部区域中的神经元,其后跟随ReLU激活函数。

全连接层40(在本申请的实施方式中用作输出层或DeepID2层)可全连接至先前的卷积层34、池化层36、局部连接层38或全连接层40中的至少一个。在如图4所示的实施方式中,DeepID2的全连接层40全连接至第三池化层36和局部连接层38,使得DeepID2的全连接层40感知多尺寸特征(局部连接层38中的特征比第三池化层36中的特征更全局)。这对于特征学习是至关重要的,因为在沿着层级连续下采样之后,局部连接层38包含太少的神经元,并且成为信息传播的瓶颈。在第三池化层36(称作跳层)与DeepID2层40之间添加旁路连接减少了在局部连接层38中的可能的信息损失。输出DeepID2层40可通过以下方式获得DeepID2矢量y:

其中,x1、x2分别表示第三池化层36和局部连接层38中的神经元输出(特征);w1和w2表示对应的连接权重。DeepID2层40中的神经元线性地组合先前的两层(第三池化层36和局部连接层38)中的特征,其后进行ReLU非线性操作。yj是多维度真值矢量y的第j个元素,即,DeepID2矢量的第j个元素。

在本申请的实施方式中,首先用EGM算法检测多个面部特征点(facial landmarks)。本文中,采取21个面部特征点作为示例对本申请进行讨论。面部图像中的每个根据检测到的特征点通过相似变换来全局对准。随后,根据全局对准的面部图像和面部特征点的位置裁取多个(例如,400个)面部区域,这些面部区域在位置、尺寸、颜色通道和水平翻转方面变化。作为示例,如果存在400个裁取的面部区域,则将通过总计200个深度卷积特征提取系统提取400个DeepID2矢量,这200个深度卷积特征提取系统中的每个被训练用于分别在每个面部图像的一个特定面部区域以及其水平翻转对应面部区域上提取两个160维度的DeepID2矢量。为了减少大量DeepID2之间的冗余,使用正向-反向贪婪算法(forward-backward greedy algorithm)选择少量有效且互补的DeepID2矢量(在如图3所示的实施方式中为25个),从这些有效且互补的DeepID2矢量中提取25个160维度的DeepID2矢量并且将这25个160维度的DeepID2矢量组合成4000维度的DeepID2矢量。该4000维度的矢量通过PCA进一步压缩以用于进一步的面部验证。

验证单元(验证器)20

根据本申请的一个实施方式,提取的DeepID2中的每个可形成特征矢量。形成的矢量可例如具有如图4所示的160维度。验证单元20可选择每个面部图像中的多个面部区域来提取DeepID2。例如,在如图3所示的实施方式中,选择了25个面部区域,但是其它数量的面部区域也适用。更长的DeepID2矢量通过组合从每个面部图像的选择的面部区域提取的DeepID2而形成。例如,在如图3和图4所示的选择了25个面部区域的实施方式中,组合的矢量可以是160×25=4000维度的。通过面部验证算法来比较分别从待比较的两个面部图像的选择的面部区域提取出的两个组合的DeepID2矢量,从而得到面部验证分数。可使用SVM、LDA、联合贝叶斯或其它面部验证模型来实现面部验证算法。在通过面部验证算法进行比较之前,组合的DeepID2矢量可经过降维算法(例如PCA)。通过对从不同组的选择的面部区域提取的不同的DeepID2矢量运行面部验证算法可获得多个面部验证分数。通过融合算法将多个面部验证分数融合以得到最终的面部验证判定。

在本申请的实施方式中,可通过例如联合贝叶斯模型进行面部验证,其比较分别从待比较的两个面部图像提取出的两个(组合的)DeepID2矢量并输出面部验证分数。联合贝叶斯模型将面部图像的特征表示假设为人与人之间的变化和同一人内的变化的总和,这两种变化都用高斯分布建模并且可从训练数据估测。面部验证是测试两个面部图像属于人与人之间的变化以及属于同一人内的变化的联合概率之间的对数似然比值。

在本申请的实施方式中,为了进一步利用从大量面部区域提取的DeepID2的丰富的池,特征选择算法被重复多次(例如七次),每次从在先前特征选择步骤中未被选择的面部区域中选择DeepID2。随后分别在一组或多组(例如,七组)选择的DeepID2中的每个上学习联合贝叶斯模型。融合(例如,通过SVM)每对比较的面部图像的联合贝叶斯分数以获得最终面部验证判定。

训练单元(训练器)30

设备1000还包括训练单元30,训练单元30配置为通过输入成对的对准面部区域以及同时将识别监督信号和验证监督信号添加至卷积特征提取系统的输出层40(如图5所示的DeepID2层)来训练用于同时身份分类和身份验证的多个卷积特征提取系统。在如图8所示的本申请的一个实施方式中,训练单元30可包括面部区域选择器301、矢量提取器302、识别器303、验证器304和确定器305。对于卷积特征提取系统中的每个,图7示出了根据一些公开的实施方式的训练过程的示意性流程图,下文中参照图7进一步讨论训练单元30的部件301-305。

如所示出的,在步骤S701中,样品选择器301从预定训练集中选择两个面部区域-标签对,这两个面部区域-标签对是成对的对准的面部区域及其对应的面部身份标签。在一个实施方式中,可用属于同一身份或不同身份的相等的概率随机地选择这两个面部区域-标签对。在步骤S702中,矢量提取器302使用具有初始化的神经元之间的连接权重或先前学习的神经元之间的连接权重的卷积特征提取系统来从由选择器301在两个采样面部区域-标签对中选择的两个面部区域中分别提取两个DeepID2矢量,在如图4所示的实施方式中,这两个DeepID2矢量中的每个均是多维度的(例如,160维度)。

以及随后在步骤S703中,识别器303操作为通过跟随DeepID2层的softmax层(未示出)将两个面部区域-标签对中的两个面部区域中的每个分类到n个身份中的一个中。随后识别器303通过比较分类的身份与给定参考身份之间的差异而生成识别误差(识别监督信号)。生成的识别误差反向传播通过卷积特征提取系统从而调节卷积特征提取系统的神经元之间的连接权重。

在本申请的一个实施方式中,使用softmax层通过输出在n类面部身份上的概率分布将每个面部区域分类到n个(例如,n=8192)不同面部身份中的一个中。Softmax层由下式限定:

其中,是作为第i个身份的预测概率,线性地组合160维度的DeepID2,xi作为神经元j的输入,而yj是其输出。卷积特征提取系统训练成最小化softmax层中的互熵损失,该互熵损失称作识别损失。该损失由下式表示:

其中,f是DeepID2矢量,t是目标种类,以及θid表示n路softmax层的神经元之间的连接权重。pi是目标概率分布,其中,对于目标种类t,pt=1,而对于其它的所有i,pi=0。是由n路softmax层预测的概率分布。

验证器304操作为通过比较分别从待比较的两个面部区域提取的两个DeepID2矢量fi与fj之间的相异性来生成验证误差(验证监督信号),如公式5所示。在一个实施方式中,可通过最小化从同一身份的面部区域提取的DeepID2之间的相异性而同时最大化从不同身份的面部区域提取的DeepID2之间的相异性(或者保持从不同身份的面部区域提取的DeepID2之间的相异性大于阈值)来生成验证误差。DeepID2之间的相异性可以是但不限于L1范数的负数、L2范数以及DeepID2之间的余弦相似性。面部验证信号可用于促使从同一身份的面部图像提取出的DeepID2变得相似。通常使用的用于验证信号的约束包括L1/L2范数和余弦相似性。L2范数约束可由以下公式表示:

其中,fi和fj是从待比较的两个面部区域提取的DeepID2。yij=1表示fi和fj来自同一身份。在这种情况下,其最小化这两个DeepID2矢量之间的L2距离。yij=-1表示不同的身份,L2范数约束要求距离大于边缘m。基于L1范数的损失函数可具有相似的公式。

余弦相似性约束可由以下公式表示:

其中,是DeepID2之间的余弦相似性,w和b是可学习的尺寸参数和偏移参数,σ是sigmoid函数,以及yij是两个比较的面部区域是否属于同一身份的二值化目标。

生成的验证误差可反向传播通过卷积特征提取系统从而调节卷积特征提取系统的神经元之间的连接权重。可替代地,在本申请的一个实施方式中,识别误差和验证误差的组合可反向传播通过卷积特征提取系统从而调节卷积特征提取系统的神经元之间的连接权重。

在步骤S704中,识别误差和验证误差反向传播通过卷积特征提取系统的全部层从而调节卷积特征提取系统的神经元之间的连接权重。在步骤S705中,确定器305确定训练过程是否收敛,如果收敛,则训练过程终止;否则,将重复步骤S701-S704直至训练过程收敛,从而确定卷积特征提取系统的神经元之间的连接权重。

图6示出了根据一些公开的实施方式的用于面部验证的方法的流程图。在图6中,过程200包括可由处理器102-106中的一个或多个或设备1000中的每个模块/单元执行的一系列步骤以实现数据处理操作。出于描述的目的,以下讨论参照设备1000中的每个模块/单元由硬件或者硬件与软件的组合而构成的情况来进行。本领域技术人员应理解,其它合适的装置或系统应适合于执行以下过程,而设备1000仅用作对执行该过程的说明。

在步骤S101中,设备1000操作为通过使用不同训练的卷积特征提取系统从面部图像的不同区域提取DeepID2,其中,所述卷积特征提取系统的输出层神经元激活值被认为是DeepID2。在一个实施方式中,设备1000的单元10可例如使用现有技术提出的面部点检测方法来检测21个面部特征点(其它数目的特征点也可行),诸如两个眼睛中心、鼻尖以及两个嘴角。在本申请的实施方式中,首先用EGM算法检测21个面部特征点(其它数目的特征点也可行)。根据检测到的特征点通过相似变换来全局对准面部图像中的每个。随后,根据全局对准的面部图像和面部特征点的位置裁取多个面部区域,这些面部区域在位置、尺寸、颜色通道和水平翻转方面变化。相应地,通过不同训练的深度卷积特征提取系统来提取多个DeepID2矢量,该多个深度卷积特征提取系统中的每个在每个面部图像的一个特定面部区域上提取一个多维度DeepID2矢量。

以及随后在步骤s102中,设备1000(具体地,单元10)操作为组合DeepID2矢量。组合的长DeepID2矢量通过PCA进一步压缩以用于面部验证。

以及随后在步骤S103中,通过联合贝叶斯模型进行面部验证,其通过单元30比较分别从待比较的两个面部图像提取出的DeepID2并输出面部验证分数。联合贝叶斯模型将面部图像的特征表示取作人与人之间的变化和同一人内的变化的总和,这两种变化都用高斯分布建模并且可从训练数据估测。面部验证是测试两个面部图像属于人与人之间的变化以及属于同一人内的变化的联合概率之间的对数似然比值,其具有封闭式的解并且是有效的。

在本申请的实施方式中,为了进一步利用从大量面部区域提取的DeepID2的丰富的池,特征选择算法被重复多次(例如七次),每次从在先前特征选择步骤中未被选择的面部区域中选择DeepID2。随后分别在七组选择的DeepID2中的每个上学习联合贝叶斯模型。融合(例如,通过SVM)每对比较的面部图像的七个联合贝叶斯分数以获得最终面部验证判定。

虽然已经描述了本发明的优选示例,但是本领域技术人员可在知晓基本发明构思的情况下对这些示例进行改变或修改。所附权利要求旨在理解为包括优选示例以及落入本发明范围内的全部改变或修改。

明显地,本领域技术人员可在不背离本发明精神和范围的情况下对本发明进行改变或修改。因而,如果这些改变或修改属于权利要求和等效技术的范围,则这些改变或修改也可落入本发明的范围中。

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