掌桥专利:专业的专利平台
掌桥专利
首页

人脸识别方法和装置

文献发布时间:2023-06-19 11:26:00


人脸识别方法和装置

技术领域

本申请涉及一种人脸识别技术领域,更具体地,涉及一种人脸识别方法和装置。

背景技术

人脸识别技术在我们的日常生活中具有广泛的应用,例如电话解锁、视频监控、在线支付、访问控制、相册管理等。

人脸识别技术主要通过设计有效的网络结构并构造用于特征学习的判别损失函数来获得训练好的网络以执行人脸识别。近年来,由于深度神经网络技术的迅速发展以及可用的大规模人脸数据集,人脸识别准确度得到了显著提高。人脸识别的一些代表性且比较成功的工作包括DeepFace、DeepID、FaceNet、DeepFR、InsightFace、MobileFace等。

现有的大多数人脸识别方法通常都是通过精心设计的CNN网络从全脸图像中提取全局特征。例如,为了验证给定的一对人脸图像是否具有相同的身份,将这两个人脸图像馈送到训练好的CNN分类器中以获取它们的脸部表征,然后将这两个脸部表征进行比较以确定它们是否是同一个人。由于CNN参数在训练后是固定的,因此被比较人脸图像无论与哪个人脸图像进行比较,通过训练好的CNN网络获取到的被比较人脸图像的表征都保持固定。为了将被比较人脸图像与所有其他人的人脸图像区分开,人脸图像的表征必须具有足够的区分性,这是非常具有挑战性的。为了使得人脸图像的表征具有足够的区分性,可通过比较器网络来计算配对图像之间的相似度,然而,该方法需要首先进行面部特征点检测,以进行基于特征点的特征比较,这是一项繁琐的工作。另外,可通过对比卷积机制来提取人脸图像对之间的不同特征来提高人脸识别准确度,然而该方法忽略了被比较人脸对之间相似特征的作用,尤其是当两个人脸图像来自同一身份时。另外,可通过利用注意力机制来提高人脸识别的准确度,然而现有的通过自注意力机制来提高人脸识别准确度的方法仍然存在被比较人脸图像的表征固定的问题,且仍然忽略了被比较图像对之间的相似特征的作用。

如何考虑被比较人脸图像对之间的相似特征对提高人脸识别准确度的作用以进一步提高人脸识别准确度是本发明亟待解决的问题。

发明内容

本发明的目的在于提供一种人脸识别方法和装置,以至少解决上述相关技术中的问题,也可不解决任何上述问题。

根据本发明的示例性实施例,提供一种人脸识别方法,所述方法包括:基于第一人脸图像的局部特征和第二人脸图像的局部特征,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征;基于第一人脸图像的第一全局特征和第二全局特征获取第一人脸图像的最终全局特征;基于第二人脸图像的第一全局特征和第二全局特征获取第二人脸图像的最终全局特征;基于第一人脸图像的最终全局特征和第二人脸图像的最终全局特征对第一人脸图像和第二人脸图像进行识别,其中,第一人脸图像的第二全局特征是基于第一人脸图像的局部特征获取的,第二人脸图像的第二全局特征是基于第二人脸图像的局部特征获取的。

由于用于进行人脸识别的第一人脸图像的最终全局特征与第二人脸图像相关,用于进行识别的第二图像的最终全局特征与第一图像相关,因此,本公开的人脸识别方法可以注意到图像对之间的特征关联,从而能够提高人脸识别的准确度。

可选地,基于第一人脸图像的局部特征和第二人脸图像的局部特征,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征的步骤包括:基于第一人脸图像的局部特征和第二人脸图像的局部特征进行注意力池化处理,以用于分别获得第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

通过注意力池化处理,可使得第一人脸图像的第一全局特征与第二人脸图像相关联,并使得第二人脸图像的第一全局特征与第一人脸图像相关联,从而能够更多地关注比较图像对之间相似特征的比较,从而提高识别准确率。

可选地,所述第一人脸图像的局部特征为嵌入位置信息的第一人脸图像的局部特征;所述第二人脸图像的局部特征为嵌入位置信息的第二人脸图像的局部特征。

通过将位置信息嵌入人脸图像的局部特征,以基于嵌入了位置信息的人脸图像的局部特征执行池化处理,使得可保证人脸图像对相应位置的元素对应,从而能够更多地反映图像对相似部分的关联。

可选地,基于第一人脸图像的局部特征和第二人脸图像的局部特征进行注意力池化处理,以用于分别获得第一人脸图像的第一全局特征和第二人脸图像的第一全局特征的步骤包括:基于第一人脸图像的局部特征和第二人脸图像的局部特征,利用多头注意力机制分别获取第一人脸图像针对第二人脸图像的第一注意力池化特征和第二人脸图像针对第一人脸图像的第二注意力池化特征;基于第一注意力池化特征,获取第一人脸图像的第一全局特征;基于第二注意力池化特征,获取第二人脸图像的第一全局特征。

通过交叉注意力机制,本公开的人脸识别方法可以注意到图像对之间的最相似特征之间的关联,从而能够提高人脸识别的准确度。例如,当比较来自同一身份但具有不同照度、姿势或年龄的图像对时,更容易从图像对中找出相同的特征,另一方面,如果比较的图像来自不同的身份,则注意最相似的面部区域之间的特征比较,将使得可以获得更可靠的识别结果。

可选地,基于第一人脸图像的局部特征和第二人脸图像的局部特征,利用多头注意力机制分别获取第一人脸图像针对第二人脸图像的第一注意力池化特征和第二人脸图像针对第一人脸图像的第二注意力池化特征的步骤包括:将第二人脸图像的局部特征乘以与查询(Query)相应的第一查询矩阵获取第一查询向量、将第一人脸图像的局部特征乘以与键(KEY)相应的第一键矩阵获取第一键向量,将第一人脸图像的局部特征乘以与值(Value)相应的第一值矩阵获取第一值向量,并基于获取的第一查询向量、第一键向量以及第一值向量获取第一人脸图像针对第二人脸图像的注意力池化特征;以及将第一人脸图像的局部特征乘以与查询相应的第二查询矩阵获取第二查询向量、将第二人脸图像的局部特征乘以与键相应的第二键矩阵获取第二键向量,将第二人脸图像的局部特征乘以与值(Value)相应的第二值矩阵获取第二值向量,并基于获取的第二查询向量、第二键向量以及第二值向量获取第二人脸图像针对第一人脸图像的注意力池化特征。

通过查询向量实现交叉注意力机制,可保证第一人脸图像的第一全局特征和第二人脸图像的第一全局特征之间分别关联对方图像局部特征,使得可以更多地关注人脸图像对相似部分之间的比较,从而提高识别成功率。

可选地,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征的步骤包括:使用同一网络或者不同的网络分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

通过同一网络,可以节省软硬件开销,通过不同网络分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征,可以提高识别速度。

根据本发明的示例性实施例,提供一种人脸识别装置,所述装置包括:第一全局特征获取模块:被配置为基于第一人脸图像的局部特征和第二人脸图像的局部特征,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征;最终全局特征获取模块:被配置为基于第一人脸图像的第一全局特征和第二全局特征获取第一人脸图像的最终全局特征,以及基于第二人脸图像的第一全局特征和第二全局特征获取第二人脸图像的最终全局特征;识别模块:被配置为基于第一人脸图像的最终全局特征和第二人脸图像的最终全局特征对第一人脸图像和第二人脸图像进行识别,其中,第一人脸图像的第二全局特征是基于第一人脸图像的局部特征被获取的,第二人脸图像的第二全局特征是基于第二人脸图像的局部特征获取的。

由于用于进行识别的第一人脸图像的最终全局特征与第二人脸图像相关,用于进行识别的第二图像的最终全局特征与第一图像相关,因此,本公开的人脸识别方法可以注意到图像对之间的特征关联,从而能够提高人脸识别的准确度。

可选地,第一全局特征获取模块被配置为:基于第一人脸图像的局部特征和第二人脸图像的局部特征进行注意力池化处理,以用于分别获得第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

通过注意力池化处理,可使得第一人脸图像的第一全局特征与第二人脸图像相关联,并使得第二人脸图像的第一全局特征与第一人脸图像相关联,从而能够更多地关注比较图像对之间相似特征的比较,从而提高识别准确率。

可选地,所述第一人脸图像的局部特征为嵌入位置信息的第一人脸图像的局部特征;所述第二人脸图像的局部特征为嵌入位置信息的第二人脸图像的局部特征。

通过将位置信息嵌入人脸图像的局部特征,以基于嵌入了位置信息的人脸图像的局部特征执行池化处理,使得可保证人脸图像对相应位置的元素对应,从而能够更多地反映图像对相似部分的关联。

可选地,第一全局特征获取模块被配置为:基于第一人脸图像的局部特征和第二人脸图像的局部特征,利用多头注意力机制分别获取第一人脸图像针对第二人脸图像的第一注意力池化特征和第二人脸图像针对第一人脸图像的第二注意力池化特征;基于第一注意力池化特征,获取第一人脸图像的第二全局特征;基于第二注意力池化特征,获取第二人脸图像的第二全局特征。

通过交叉注意力机制,本公开的人脸识别方法可以注意到图像对之间的最相似特征之间的关联,从而能够提高人脸识别的准确度。例如,当比较来自同一身份但具有不同照度、姿势或年龄的图像对时,更容易从图像对中找出相同的特征,另一方面,如果比较的图像来自不同的身份,则注意最相似的面部区域之间的特征比较,将使得可以获得更可靠的识别结果。

可选地,第一全局特征获取模块包括交叉注意力模块,被配置为:将第二人脸图像的局部特征乘以与查询相应的第一查询矩阵获取第一查询(Query)向量、将第一人脸图像的局部特征乘以与键(KEY)相应的第一键矩阵获取第一键向量,将第一人脸图像的局部特征乘以与值(Value)相应的第一值矩阵获取第一值向量,并基于获取的第一查询向量、第一键向量以及第一值向量计算第一人脸图像针对第二人脸图像的注意力池化特征;以及将第一人脸图像的局部特征乘以与查询相应的第二查询矩阵获取第二查询向量、将第二人脸图像的局部特征乘以与键相应的第二键矩阵获取第二键向量,将第二人脸图像的局部特征乘以与值(Value)相应的第二值矩阵获取第二值向量,并基于获取的第二查询向量、第二键向量以及第二值向量计算第二人脸图像针对第一人脸图像的注意力池化特征。

通过查询向量实现交叉注意力机制,可保证第一人脸图像的第一全局特征和第二人脸图像的第一全局特征之间分别关联对方图像局部特征,使得可以更多地关注人脸图像对相似部分之间的比较,从而提高识别成功率。

可选地,第一全局特征获取模块包括:第一人脸图像第一全局特征获取模块,被配置为获取第一人脸图像的第一全局特征;第二人脸图像第一全局特征获取模块,被配置为获取第二人脸图像的第一全局特征。

通过不同的模块分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征实现人脸图像的并行处理,可以提高人脸识别的速度。

根据本发明的示例性实施例,提供一种存储有计算机程序的计算机可读存储介质,其中,当所述计算机程序被处理器执行时实现如上所述的人脸识别方法。

根据本发明的示例性实施例,提供一种数据存储装置,所述装置包括:处理器;存储器,存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的人脸识别方法。

根据本公开的人脸识别方法和装置使得能够更多地关注用于进行识别的图像对之间的最相似特征之间的关联,从而提高人脸识别的准确率。

附图说明

通过下面结合示例性地示出一例的附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:

图1是示出根据本公开的实施例的人脸识别方法的流程图;

图2是示出根据本公开的实施例的基于交叉注意力机制对第一人脸图像局部特征和第二人脸图像的局部特征进行注意力池化处理的示例的示图;

图3是根据本公开的实施例的人脸识别方法的示意图;

图4是示出基于Baseline人脸识别方法、自注意力人脸识别方法以及根据本公开的实施例的人脸识别方法的人脸图像的可视化响应的示图;

图5是示出根据本公开的实施例的人脸识别装置的框图。

具体实施方式

下文中,参照附图对本公开的各种实施例进行描述,其中,相同的标号用于表示相同或相似的元件、特征和结构。然而,不旨在由本文所述的各种实施例将本公开限制于具体实施例,并且旨在于:本公开覆盖本公开的所有修改、等同物和/或替代物,只要它们在所附权利要求及其等同物的范围内。在以下说明书和权利要求书中使用的术语和词语不限于它们的词典含义,而是仅被用于使得能够清楚和一致地理解本公开。因此,对于本领域技术人员应显而易见的是:提供本公开的各种实施例的以下描述仅用于说明的目的,而不是为了限制由所附权利要求和它们的等同物限定的本公开的目的。

应理解,除非上下文另外明确指出,否则单数形式包括复数形式。本文使用的术语“包括”、“包含”和“具有”指示公开的功能、操作或元件的存在,但不排除其它功能、操作或元件。

例如,表述“A或B”、或“A和/或B中的至少一个”可指示A和B、A或者B。例如,表述“A或B”或“A和/或B中的至少一个”可指示(1)A、(2)B或(3)A和B两者。

在本公开的各种实施例中,意图是:当组件(例如,第一组件)被称为与另一组件(例如,第二组件)“耦接”或“连接”或者被“耦接”或者“连接”到另一组件(例如,第二组件)时,所述组件可被直接连接到所述另一组件,或者可通过另一组件(例如,第三组件)被连接。相比之下,当组件(例如,第一组件)被称为与另一组件(例如,第二组件)“直接耦接”或“直接连接”或者被直接耦接到或直接连接到另一组件(例如,第二组件)时,在所述组件和所述另一组件之间不存在另一组件(例如,第三组件)。

在描述本公开的各种实施例中使用的表述“被配置为”可以例如根据情况与诸如“适用于”、“具有…的能力”、“被设计为”、“适合于”、“被制造为”和“能够”的表述互换使用。术语“被配置为”可不一定指示按照硬件“被专门设计为”。相反,在一些情况下的表述“被配置为...的装置”可指示所述装置和另一装置或者部分“能够…”。例如,表述“被配置为执行A、B和C的处理器”可指示用于执行相应操作的专用处理器(例如,嵌入式处理器)或用于通过执行存储在存储器装置中的至少一个软件程序来执行相应的操作的通用处理器(例如,中央处理单元CPU或应用处理器(AP))。

本文使用的术语在于描述本公开的某些实施例,但并不旨在限制其它实施例的范围。除非本文另外指出,否则本文使用的所有术语(包括技术或科学术语)可具有与本领域技术人员通常理解的含义相同含义。通常,词典中定义的术语应被视为具有与相关领域中的上下文含义相同的含义,并且,除非本文明确地定义,否则不应被不同地理解或被理解为具有过于正式的含义。在任何情况下,本公开中定义的术语也不旨在被解释为排除本公开的实施例。

为了便于解释本公开,首先对人脸图像的局部特征表征方法进行说明,本领域技术人员应当理解,本文所述的人脸的局部特征表示人脸图像的局部特征表征或局部特征图,例如可以以矩阵的形式表示。

作为示例,可以利用卷积网络获取人脸图像的局部特征表征。

作为示例,可以以ResNet作为骨干网络对人脸图像的局部特征进行提取。例如,对于具有112×112大小的人脸图像,从卷积网络最后一个层输出的特征图可以具有C×7×7(C为信道大小,例如C=512)的大小,可进一步利用另一卷积层将C×7×7大小的特征图处理为C×5×5大小的特征图。

作为示例,也可以通过卷积网络直接获取具有C×5×5大小的特征图。经过卷积处理,人脸图像被划分为5×5的子区域,因此,可使用C×5×5大小的特征图来描述人脸图像。

进一步地,通过将获取的局部特征输入全连接层,即可获得人脸图像的全局特征或全局特征表征。

本领域技术人员应当理解,本文中的全局特征表示人脸图像的全局特征表征或全图特征图,例如可以以矩阵形式表示。

图1示出了根据本公开的实施例的人脸识别方法的流程图。

参照图1,在步骤S101,基于第一人脸图像的局部特征和第二人脸图像的局部特征,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

作为示例,可使用同一网络来获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征;或者使用第一网络获取第一人脸图像的第一全局特征,使用第二网络获取第二人脸图像的第一全局特征,其中第一网络和第二网络可以相同或者不同。

通过同一网络获取人脸图像的第一全局特征可以节省软硬件开销,通过两个网络分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征可以提高人脸识别的速度。

作为示例,基于第一人脸图像的局部特征和第二人脸图像的局部特征,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征的步骤包括:基于第一人脸图像局部特征和第二人脸图像的局部特征,进行注意力池化处理,以用于分别获得第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

作为示例,第一人脸图像的局部特征为嵌入位置信息的第一人脸图像的局部特征;第二人脸图像的局部特征为嵌入位置信息的第二人脸图像的局部特征。例如,可对第一人脸图像的局部特征嵌入位置信息获取嵌入位置信息的第一人脸图像的局部特征,对第二人脸图像的局部特征嵌入位置信息获取嵌入位置信息的第二人脸图像的局部特征。下面参照图2对注意力池化操作进行详细描述。

图2是示出根据本公开的实施例的基于交叉注意力机制对第一人脸图像局部特征和第二人脸图像的局部特征进行注意力池化处理的示例的示图。

参照图2,可通过将嵌入了位置信息的人脸图像A(以下也可被称为第一人脸图像或图像A)的局部特征和嵌入了位置信息的人脸图像B(以下也可被称为第二人脸图像或图像B)的局部特征输入左侧的多头注意力块来获得第一人脸图像针对第二人脸图像的注意力池化特征,将嵌入了位置信息的第一人脸图像的局部特征和嵌入了位置信息的第二人脸图像的局部特征输入右侧的多头注意力块来获得第二人脸图像针对第一人脸图像的注意力池化特征。

作为示例,可通过左侧注意力块的多头注意力层获取第一人脸图像针对第二人脸图像的注意力池化特征,并可通过右侧注意力块的多头注意力层获取第二人脸图像针对第一人脸图像的注意力池化特征。

作为示例,通过左侧注意力块的后续各层对第一人脸图像针对第二人脸图像的注意力池化特征进行处理并将处理结果输入第一全连接层可获得第一人脸图像的第一全局特征。

作为示例,通过右侧注意力块的后续各层对第二人脸图像针对第一人脸图像的池化特征进行处理,并将处理结果输入第二全连接层,可获得第二人脸图像的第一全局特征,其中,第一全连接层和第二全连接层可以为同一全连接层或分别独立的两个全连接层。

左侧的多头注意力块与右侧的多头注意力块具有与现有技术中的多头注意力块(或标准变形器(transformer)块)相同的结构,例如,可由多头注意力层、残差连接和层归一化(Add&Norm)层、前馈(Feed Forward)层构成,均是基于多头注意力机制来计算注意力。

对于现有技术中的基于自注意力机制的多头注意力块,输入多头注意力层的Query(查询)向量、键(Key)向量、值(Value)向量均相应于图像自身的局部特征,即Query(查询)向量、键(Key)向量、值(Value)向量通过将人脸图像的局部特征表征分别乘以矩阵W

也就是说,当基于自注意力机制获取人脸图像的池化特征时,获取的第一图像的池化特征仅与嵌入了位置信息的第一人脸图像的局部特征有关,而与比较人脸图像的局部特征无关,也就是说,无论与哪个人脸图像进行比较,获取的该图像的池化特征是固定的。

而在本公开中,输入多头注意力层的Query向量不是相应于图像自身的局部特征,而是相应于比较图像的局部特征,也就是说输入左侧多头注意力块的多头注意力层的Query向量相应于第二人脸图像的局部特征,而输入右侧多头注意力块的多头注意力层的Query向量相应于第一人脸图像的局部特征。也就是说,本公开是基于交叉注意力机制来获取第一人脸图像的池化特征和第二人脸图像的池化特征。

本领域技术人员应当理解,如上所述,本公开基于交叉注意力机制获取人脸的池化特征的方案与现有技术中基于注意力机制获取人脸图像的池化特征的区别在于:本公开在获取第一人脸图像的注意力池化特征时,输入多头注意力层的Q向量相应于嵌入了位置信息的第二人脸图像的局部特征,在获取第二人脸图像的注意力池化特征时,输入多头注意力层的Q向量相应于嵌入了位置信息的第一人脸图像的局部特征;而在现有技术中,基于自注意力机制获取第一人脸图像的注意力池化特征时,输入多头注意力层的Q向量相应于第一人脸图像的局部特征,基于自注意力机制获取第二人脸图像的注意力池化特征时,输入多头注意力层的Q向量对应于第二人脸图像的局部特征。

也就是说,根据本公开的实施,可基于嵌入位置信息的第一人脸图像的局部特征和嵌入位置信息的第二人脸图像的局部特征,利用多头注意力机制分别获取第一人脸图像针对第二人脸图像的第一注意力池化特征以及第二人脸图像针对第一人脸图像的第二注意力池化特征。

作为示例,可将第二人脸图像的局部特征乘以与查询(Query)相应的第一查询矩阵获取第一查询向量、将第一人脸图像的局部特征乘以与键(Key)相应的第一键矩阵获取第一键向量,将第一人脸图像的局部特征乘以与值(Value)相应的第一值矩阵获取第一值向量,并基于获取的第一查询向量、第一键向量以及第一值向量获取第一人脸图像针对第二人脸图像的注意力池化特征(本文中也可称为第一注意力池化特征);将第一人脸图像的局部特征乘以与查询相应的第二查询矩阵获取第二查询向量、将第二人脸图像的局部特征乘以与键相应的第二键矩阵获取第二键向量,将第二人脸图像的局部特征乘以与值(Value)相应的第二值矩阵获取第二值向量,并基于获取的第二查询向量、第二键向量以及第二值向量计算第二人脸图像针对第一人脸图像的注意力池化特征(本文中也可称为第二注意力池化特征)。

本领域技人员应当理解,如果通过同一网络分别获取第一注意力池化特征和第二注意力池化特征,以“第一”修饰的矩阵与以“第二”修饰的矩阵对应相同,例如,第一查询矩阵和第二查询矩阵相同。

作为示例,如果通过独立的两个网络分别获取第一注意力池化特征和第二注意力池化特征,则以“第一”修饰的矩阵与以“第二”修饰的矩阵对应不同,例如,第一查询矩阵和第二查询矩阵是不同的矩阵。

作为另一示例,如果通过独立的两个网络分别获取第一注意力池化特征和第二注意力池化特征,则以“第一”修饰的矩阵与以“第二修饰的矩阵”也可以相同,例如,第一查询矩阵和第二查询矩阵是相同的矩阵。

为了便于解释,将图像的局部特征处理为具有5×5的大小,经过特征重排列(feature rearrange)处理表示为具有1×25的大小,然后输入到图2中的多头注意力块。

作为示例,可以通过卷积神经网络获取具有5×5大小的图像A的局部特征图,然后将A的局部特征图进行特征重排列(feature rearrange)处理,获得以{v

参照图2,可将A的局部特征

本领域技术人员应当理解,输入左侧注意力块的图像的局部表征仅是基于图像自身获得图像的局部特征(为了便于描述,以下称为第一局部特征),例如,可基于图像A,通过卷积网络获取图像A的局部特征(即图像A的第一局部特征),或者基于图像B通过卷积网络获取的图像B的局部特征(即图像B的第一局部特征),而经过左侧注意力块的处理输出的局部特征为基于图像A的第一局部特征和图像B的第一局部特征获取的图像A的基于交叉注意力机制的局部特征表征(为了便于描述,以下称为图像A的第二局部特征)。

类似地,将B的局部特征表征(图像B第一局部特征)

作为示例,图2中的左侧多头注意力层的输出和右侧多头注意力层中的一个头的输出可以表示为下面的等式(1):

其中,d表示缩放因子。

作为示例,

作为示例,可以基于正弦函数和余弦函数来对人脸图像的局部特征进行位置编码以获得嵌入了位置信息的人脸图像的局部特征。

通过嵌入位置信息来获取嵌入了位置信息的人脸图像的局部特征可以采用现有技术中的任何位置编码方法来实现。

作为示例,嵌入了位置信息的人脸图像的局部特征表征可以表示为:

h

其中,v

作为另一示例,输入到多头注意力块的人脸图像的第一局部特征也可以是未进行位置编码或位置嵌入的人脸的局部特征。即输入到多头注意力块的局部特征可以为{v

具体地,以左侧的多头注意力块为例,通过多头注意力层获取到图像A针对图像B的注意力池化特征之后,通过多头注意力块的后续层的处理,最终输出图像A的第二局部特征。

作为示例,左侧注意力块的参数和右侧注意力块的参数可以相同或者不同。

虽然图2示出了两个多头注意力块,但是也可以使用一个多头注意力块对第一人脸图像和第二人脸图像分别进行注意力池化处理。

作为示例,可以使用一个多头注意力块来获取图像A的注意力池化特征以及图像B的注意力池化特征,例如,通过多头注意力块首先获取图像A针对图像B的注意力池化特征,然后获取图像B针对图像A的注意力池化特征。

以上描述了基于第一人脸图像的局部特征和第二人脸图像的局部特征,利用多头注意力机制分别获取第一人脸图像针对第二人脸图像的第一注意力池化特征和第二人脸图像针对第一人脸图像的第二注意力池化特征的过程。

在获取到人脸图像的注意力池化特征之后,然后可进一步获得人脸图像的第一全局特征。

作为示例,可通过将图像A的第二局部特征输入全连接层来获得图像A的第一全局特征。由于基于交叉注意力机制获得到图像A的第二局部特征,因此图像A的第一全局特征反映了图像A与图像B之间的关联性。

类似地,通过将图像B的第二局部特征输入全连接层来获得图像B的第一全局特征。由于基于交叉注意力机制获得到图像B的第二局部特征,因此图像B的第一全局特征反映了图像A与图像B之间的关联性。

返回图1,在步骤S102,基于第一人脸图像的第一全局特征和第二全局特征提取第一人脸图像的最终全局特征。

作为示例,可以通过将第一人脸图像的第一全局特征和第二全局特征进行级联来获取第一人脸图像的最终全局特征。

作为示例,可基于第一人脸图像的第一局部特征获得第一人脸图像的第二全局特征,也就是说,第一人脸图像的第二全局特征是基于第一人脸图像的第一局部特征获得的,其与第二人脸图像无关,这与上文所述的第一人脸图像的第一全局特征不同,如上所述第一人脸图像的第一全局特征与第二人脸图像相关。

在步骤S103,基于第二人脸图像的第一全局特征和第二全局特征提取第二人脸图像的最终全局特征。

作为示例,可以通过将第二人脸图像的第一全局特征和第二全局特征进行级联来获取第二人脸图像的最终全局特征。

作为示例,可基于第二人脸图像的第一局部特征获得第二人脸图像的第二全局特征,也就是说,第二人脸图像的第二全局特征是基于第二人脸图像的第一局部特征获得的,其与第一人脸图像无关,这与上文所述的第二人脸图像的第一全局特征不同,如上所述第二人脸图像的第一全局特征与第二人脸图像相关。

作为示例,可以顺序、并行或者反向执行步骤S102和步骤S103。在步骤S104,基于第一人脸图像的最终全局特征和第二人脸图像的最终全局特征对第一人脸图像和第二人脸图像进行识别。

作为示例,可以根据预设规则基于第一人脸图像的最终全局特征和第二人脸图像的最终全局特征识别第一人脸图像和第二人脸图像是否来自同一身份。

图3示出了根据本公开的实施例的执行人脸识别方法的示意图。

参照图3,为了便于描述,以下将图3左侧上部的第一张人脸图像和左侧下部的第二张人脸图像称为第一人脸图像(或人脸图像A)和第二人脸图像(或人脸图像B)。

首先,可通过例如卷积网络提取第一人脸图像和第二图像的第一局部特征,图3虽然示出通过两个相同的网络分别获取第一人脸图像的第一局部特征和第二人脸的图像的第一局部特征,但是也可以通过同一个网络分别获取第一人脸的第一局部特征和第二人脸的第一局部特征。

然后可将第一人脸图像的第一局部特征输入全连接层FC来获取第一人脸图像的第二全局特征g

可对第一人脸图像的局部特征执行特征重排(feature rearrange)处理并进行位置嵌入操作来获得嵌入位置信息的第一人脸图像的第一局部特征表征,然后基于交叉注意力机制获取第一人脸图像的第二局部特征

将第一人脸图像的第二局部特征输入全连接层FC来获取第一人脸图像的第一全局特征。

通过利用级联层对第一人脸图像的第一全局特征和第二全局特征执行级联操作获得第一人脸图像的最终全局特征。

以上参照图3描述了第一人脸图像的最终全局特征的获取过程。

图3中获取第二人脸图像的最终全局特征的过程与获取第一人脸图像的全局特征的过程类似,在此不做赘述。

在获取到第一人脸图像的最终全局特征和第二人脸的最终全局特征之后,即可基于最终全局特征确定第一人脸图像和第二人脸图像是否是相同身份。

执行上述人脸识别方法的网络的相关参数可以通过利用二值熵损失函数和附加角裕度损失函数来联合训练。

具体地,可以将用于训练的图像对的最终全局特征中的元素对应相乘(element-wise multiplied),并输入到线性层来做二值预测以确定图像对是否来自同一身份。二值熵损失函数可表示为以下等式2:

其中,j表示样本对序号,N表示小批训练样本中的图像对的数量,l

可以将如下等式(3)所示的附加角裕度损失函数用于身份分类:

其中,2N是小批训练样本中的图像对的数量,θ为特征和相应权重之间的角度,s为尺寸因子,m为阈值因子,k表示样本序号,y

可以使用如下函数端对端训练整个网络:

min(αL

其中,α为平衡两个L

根据本公开的示例,在进行人脸识别时,无需复杂设计的人脸对齐模块,即无需对人脸对进行对齐处理,就可以基于交叉注意力机制潜在地了解人脸图像对的局部对应关系。

图4是示出基于Baseline人脸识别方法、自注意力人脸识别方法以及根据本公开的实施例的人脸识别方法的人脸图像的可视化响应的示图。

参照图4,第一行显示了基于Baseline的特征响应,第二行显示基于自注意力的特征响应,最后一行是基于本公开的交叉注意力的特征响应。与第一和第二行相比,本公开的方法将在比较的人脸图像对的最相似的人脸部分上具有较高的特征响应。具体地,以左侧第二对人脸图像为例,在眼睛周围具有较高的响应,这表示眼睛周围的特征更相似。从这些显着区域进行特征提取和比较,更可判断具有不同表情或姿势的人脸是否属于同一身份,对于不同身份的图像,在相似的面部区域也有较高的响应,因此更可将不同的身份区分开,从而提高人脸识别的准确性。相反,基于其他人脸识别方法的人脸图像可视化响应未显示此类对应关系。

实际上,根据本公开的实施例,基于比较图像(例如,图像B)的查询向量(或比较图像的第一局部特征)来在计算人脸图像(例如,图像A)的池化特征,比较图像(例如,图像B)的查询向量可以引导注意力权重的计算将重点放在与比较图像对最相似的特征区域上。对于同一个人但姿势、照度或年龄不同的图像对,将使最相似的面部部位的特征响应更高。对于不同身份的图像对,强调相似特征之间的比较使得可以进行更准确的识别。

即使对于相似度很小的图像,与来自图像A背景的特征相比,图像B的面部区域中的特征也将与图像A的面部区域中的特征更相似,这将导致特征在整个面部区域的响应更高,即可以更加关注面部区域之间的比较,排除剩余背景信息的影响。

以上参照图1至图4对根据本公开的实施例的人脸识别方法进行了描述,下面将参照图5对根据本公开的实施例的人脸识别装置进行说明。

本领域技术人员应当理解,下文中所使用的术语具有与上文中的相应术语具有相同或相似的含义。

图5是示出根据本公开的实施例的人脸识别装置的框图。

参照图5,人脸识别装置500可包括第一全局特征获取模块501、最终全局特征获取模块502、识别模块503。本领域技术人员应当理解,人脸识别装置500可以另外地包括其他组件、可将人脸识别装置500的至少一个组件组合为一个组件或者将一个组件拆分为多个组件,在拆分或组合后获得的组件均能实现拆分或组合前组件的功能。

作为示例,第一全局特征获取模块501可被配置为基于第一人脸图像的局部特征和第二人脸图像的局部特征,分别获取第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

作为示例,第一全局特征获取模块501可包括:第一人脸图像第一全局特征获取模块(未示出),被配置为获取第一人脸图像的第一全局特征;第二人脸图像第一全局特征获取模块(未示出),被配置为获取第二人脸图像的第一全局特征的模块。

作为示例,最终全局特征获取模块502可被配置为:基于第一人脸图像的第一全局特征和第二全局特征获取第一人脸图像的最终全局特征,以及基于第二人脸图像的第一全局特征和第二全局特征获取第二人脸图像的最终全局特征,其中,第一人脸图像的第二全局特征是基于第一人脸图像的局部特征被获取的,第二人脸图像的第二全局特征是基于第二人脸图像的局部特征获取的。

作为示例,最终全局特征获取模块502可包括第一人脸图像级联层(未示出),被配置为获取基于第一人脸图像的第一全局特征和第二全局特征获取第一人脸图像的最终全局特征;第二人脸图像级联层(未示出),被配置为基于第二人脸图像的第一全局特征和第二全局特征获取第二人脸图像的最终全局特征。

作为示例,第一全局特征获取模块501可被配置为:基于第一人脸图像的局部特征和第二人脸图像的局部特征进行注意力池化处理,以用于分别获得所述第一人脸图像的第一全局特征和第二人脸图像的第一全局特征。

作为示例,第一全局特征获取模块501可包括第一注意力池化模块(未示出),被配置为利用交叉注意力机制对第一人脸图像的局部特征进行注意力池化处理以获取第一人脸图像针对第二人脸图像的第一注意力池化特征;第二注意力池化模块(未示出),被配置为基于交叉注意力机制对第二人脸图像的局部特征进行注意力池化处理以获取第二人脸图像针对第一人脸图像的第二注意力池化特征。

作为示例,人脸识别装置500还可包括位置信息嵌入模块(未示出),被配置为:对第一人脸图像的局部特征嵌入位置信息获取嵌入位置信息的第一人脸图像的局部特征;以及对第二人脸图像的局部特征嵌入位置信息获取嵌入位置信息的第二人脸图像的局部特征。

作为示例,人脸识别装置500还可包括特征重排列模块(未示出),被配置为对人脸图像的第一局部特征进行特征重排列。例如,将具有5×5大小的局部特征图特征重排为1×25大小的局部特征图。

作为示例,第一全局特征获取模块501可被配置为:对嵌入位置信息的第一人脸图像的局部特征和嵌入位置信息的第二人脸图像的局部特征,进行注意力池化处理。

作为示例,第一全局特征获取模块501可包括交叉注意力模块(未示出),被配置为:将第二人脸图像的局部特征乘以与查询相应的第一查询矩阵获取第一查询(Query)向量、将第一人脸图像的局部特征乘以与键(KEY)相应的第一键矩阵获取第一键向量,将第一人脸图像的局部特征乘以与值(Value)相应的第一值矩阵获取第一值向量,并基于获取的第一查询向量、第一键向量以及第一值向量计算第一人脸图像针对第二人脸图像的注意力池化特征;将第一人脸图像的局部特征乘以与查询相应的第二查询矩阵获取第二查询向量、将第二人脸图像的局部特征乘以与键相应的第二键矩阵获取第二键向量,将第二人脸图像的局部特征乘以与值(Value)相应的第二值矩阵获取第二值向量,并基于获取的第二查询向量、第二键向量以及第二值向量计算第二人脸图像针对第一人脸图像的注意力池化特征。

作为示例,交叉注意力模块可包括第一交叉注意力模块,被配置为获取第一人脸图像针对第二人脸图像的注意力池化特征;第二交叉注意力模块,被配置为获取第二人脸图像针对第一人脸图像的注意力池化特征。

作为示例,交叉注意力模块可包括多头注意力层,被配置为基于第一人脸图像的第一局部特征和第二人脸图像的第一局部特征获取第一人脸图像针对第二人脸图像的注意力池化特征;基于第一人脸图像的第一局部特征和第二人脸图像的第一局部特征获取第二人脸图像针对第一人脸图像的注意力池化特征。

作为示例,交叉注意力模块还可包括残差连接和层归一化(Add&Norm)层、前馈(Feed Forward)层。通过残差连接和层归一化(Add&Norm)层、前馈(Feed Forward)层,可从第一人脸图像针对第二人脸图像的注意力池化特征获得第一人脸图像的第二局部特征,并从第二人脸图像针对第一人脸图像的注意力池化特征获得第二人脸图像的第二局部特征。

作为示例,第一全局特征获取模块还可包括全连接层(未示出),被配置为基于第一人脸图像的第二局部特征获取第一人脸图像的第一全局特征;基于第二人脸图像的第二局部特征获取第二人脸图像的第一全局特征。

作为示例,人脸识别装置500还可包括第一局部特征获取模块(未示出),被配置为基于第一人脸图像获取第一人脸图像的第一局部特征,并基于第二人脸图像获取第二人脸图像的第一局部特征。

作为示例,人脸识别装置500还可包括第二全局特征获取模块,被配置为:基于第一人脸图像的第一局部特征获取第一人脸图像的第二全局特征,并基于第二人脸图像的第一局部特征获取第二人脸图像的第二全局特征。作为示例,第二全局特征获取模块可以为全连接层。

根据本公开的实施例,提供了一种存储有计算机程序的计算机可读存储介质,其中,当所述计算机程序被处理器执行时实现如上所述的人脸识别方法。

根据本公开的实施例,提供了一种数据存储装置,其中,所述装置包括:处理器;存储器,存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的人脸识别方法。

虽然本公开包括特定示例,但本领域的普通技术人员将理解,可在不脱离权利要求及其等同物的精神和范围的情况下,在形式和细节上做出各种改变。在此公开的示例将被视为描述性意义,而不是为了限制的目的。在每个示例中对特征或方面的描述将被视为可适用于其他示例中的相似特征或方面。如果以不同的顺序执行描述的技术,和/或如果以不同的方式组合和/或由其他部件或其等同物替代或补充描述的系统、结构、装置或电路,则可获得合适的结果。因此,公开的范围不是由详细的描述限定,而是由权利要求及其等同物体限定,权利要求及其等同物的范围内的全部改变将被视为包括在本公开内。

相关技术
  • 人脸部件特征和Gabor人脸特征融合的人脸识别方法及其装置
  • 人脸识别方法和装置及人脸识别系统的训练方法和装置
技术分类

06120112922614