1.本技术涉及图像处理技术领域,特别是涉及一种特征提取网络的训练方法、脸部识别方法、电子设备及计算机可读存储介质。
背景技术:2.在诸多应用场景下需要进行脸部识别。例如,在视频跟踪场景下,通过脸部识别判断两个不同的对象是否为同一对象。又如,在身份验证场景下,通过脸部识别判断某个对象是否为已知身份的对象。
3.脸部识别的一般流程为,获取待识别对象的脸部图像,提取脸部图像的脸部识别特征,将脸部识别特征与其他对象的脸部识别特征进行比对,得到脸部识别结果。因此,脸部识别结果的准确度与脸部识别特征对脸部的表达能力相关,但是目前提取得到的脸部识别特征对脸部的表达能力不够好,影响脸部识别结果的准确度。
技术实现要素:4.本技术提供一种特征提取网络的训练方法、脸部识别方法、电子设备及计算机可读存储介质,能够解决目前提取得到的脸部识别特征对脸部的表达能力不够好的问题。
5.为解决上述技术问题,本技术采用的一个技术方案是:提供一种特征提取网络的训练方法。该方法包括:获取训练图像组,训练图像组包括第一脸部图像、第二脸部图像和第三脸部图像,第二脸部图像与第一脸部图像属于同一对象且不同脸部属性类别,第三脸部图像和第一脸部图像属于不同对象且同一脸部属性类别;利用特征提取网络分别提取第一脸部图像的脸部识别特征、第二脸部图像的脸部识别特征和第三脸部图像的脸部识别特征;基于第一脸部图像的脸部识别特征与第二脸部图像的脸部识别特征之间的相似度、以及第一脸部图像的脸部识别特征与第三脸部图像的脸部识别特征之间的相似度,构建第一损失;至少基于第一损失调整特征提取网络的参数。
6.为解决上述技术问题,本技术采用的一个技术方案是:提供一种脸部识别方法。该方法包括:获取待识别脸部图像;利用特征提取网络提取所述待识别脸部图像的脸部识别特征;将待识别脸部图像的脸部识别特征与各已知身份的脸部识别特征进行比对,以确定待识别脸部图像所属待识别对象的身份;其中,特征提取网络是通过前述训练方法训练得到的。
7.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种电子设备,该电子设备包括处理器、与处理器连接的存储器,其中,存储器存储有程序指令;处理器用于执行存储器存储的程序指令以实现上述方法。
8.为解决上述技术问题,本技术采用的又一个技术方案是:提供一种计算机可读存储介质,存储有程序指令,该程序指令被执行时能够实现上述方法。
9.通过上述方式,本技术通过属于同一对象且不同脸部属性类别的脸部图像的脸部识别特征之间的相似度、属于不同对象且同一脸部属性类别的脸部图像的脸部识别特征之
间的相似度来约束对特征提取网络的训练,从而训练得到的特征提取网络,在应用阶段提取到的脸部识别特征与脸部属性的相关程度在可控范围内,即降低脸部识别特征与脸部属性的相关程度,提高脸部识别特征的表达能力,进而将脸部识别特征应用于脸部识别,能够得到更加准确的脸部识别结果。
附图说明
10.图1是本技术特征提取网络的训练方法一实施例的流程示意图;
11.图2是本技术特征提取网络的训练方法另一实施例的流程示意图;
12.图3是特征提取网络的训练系统的结构示意图;
13.图4是特征提取网络的训练方法一具体实例的流程示意图;
14.图5是本技术脸部识别方法一实施例的流程示意图;
15.图6是脸部识别系统的结构示意图;
16.图7是本技术脸部识别方法一具体实例的流程示意图;
17.图8是本技术电子设备一实施例的结构示意图;
18.图9是本技术计算机可读存储介质一实施例的结构示意图。
具体实施方式
19.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
20.本技术中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
21.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,在不冲突的情况下,本文所描述的实施例可以与其它实施例相结合。
22.可以理解的是,脸部图像的脸部识别特征提取是基于特征提取网络实现的,通过相关技术中的训练方法,训练得到的特征提取网络提取到的脸部识别特征与脸部属性相关程度高。而在脸部识别阶段,进行比对的两张脸部图像的脸部属性往往存在不确定性,如果脸部属性类别不一致,会导致脸部识别结果的准确度降低,即两个对象本来是同一对象,但是由于脸部属性类别不一致,导致脸部识别结果表示两个对象不是同一对象;或者某个对象本来是特定对象,但是由于脸部属性类别不一致,导致脸部识别结果表示某个对象不是特定对象,从而识别效率降低。
23.为了减小甚至避免脸部属性影响脸部识别特征对其所属对象的表达能力,进而提高脸部识别结果的准确度,本技术提供了一种特征提取网络的训练方法,具体可以如下:
24.图1是本技术特征提取网络的训练方法一实施例的流程示意图。需注意的是,若有
实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施例可以包括:
25.s11:获取训练图像组。
26.训练图像组包括第一脸部图像、第二脸部图像和第三脸部图像,第二脸部图像与第一脸部图像属于同一对象且不同脸部属性类别,第三脸部图像和第一脸部图像属于不同对象且同一脸部属性类别。
27.本技术方法实施例的执行主体是特征提取网络的训练设备,该训练设备可以是任何具有特征提取网络的训练能力的终端(例如手机、电脑、摄像设备),还可以是服务器等等。
28.本技术提及的脸部图像可以是执行主体从摄像设备获取的,其可以是二维图像,也可以是三维图像。二维图像的情况下,二维摄像设备就能够适用,降低硬件成本,并且二维摄像设备的拍摄可以无需拍摄对象的配合,实现无感拍摄。三维图像相比于二维图像包含的信息更加丰富,相应地,训练和脸部识别的效果较好,但由于需要三维摄像设备(如双目相机)拍摄,因此需要较高的硬件成本,并且三维摄像设备的拍摄需要拍摄对象的配合。
29.对象可以是人、动物(如狗)等具有脸部识别需求的脸部识别主体。脸部属性可以包括脸部的表情、遮挡状态、肤色、性别、年龄等等中的至少一个。
30.其中,与表情相对应地脸部属性类别包括各种表情类别,如无表情(正常)、幸福、悲伤、惊喜、恐惧、愤怒、厌恶和蔑视。与遮挡状态相对应地脸部属性类别包括各种遮挡状态类别,遮挡状态类别可以是按照遮挡区域划分的,如眼睛区域、鼻子区域、脸颊区域、嘴巴区域,还可以是按照遮挡程度划分的,如0、1/3、1/2、2/3。与肤色相对应地脸部属性类别包括各种肤色类别,如黑色、黄色、白色。与性别相对应地脸部属性类别包括男、女。与年龄相对应地脸部属性类别包括各个年龄类别,如小孩、青年、中年和老年。
31.s12:利用特征提取网络分别提取第一脸部图像的脸部识别特征、第二脸部图像的脸部识别特征和第三脸部图像的脸部识别特征。
32.脸部识别特征即用于对象的脸部识别的特征。特征提取网络可以是任何具有特征提取能力的神经网络。
33.s13:基于第一脸部图像的脸部识别特征与第二脸部图像的脸部识别特征之间的相似度、以及第一脸部图像的脸部识别特征与第三脸部图像的脸部识别特征之间的相似度,构建第一损失。
34.例如,训练图像组为(a,p,n),a其中表示第一脸部图像,p表示第二脸部图像,n表示第三脸部图像。基于此,第一损失l
triplet
(a)可以通过下式计算:
35.l
triplet
(a)=max(d(a,p)-d(a,n)+margin,0);
36.其中,d(a,p)表示a和p的脸部识别特征相似度,d(a,n)表示a和n的脸部识别特征相似度,margin表示一个大于0的常数。
37.相似度可以是欧式距离、余弦距离等等。以欧式距离为例,第一损失l
triplet
(a)可以为:
[0038][0039]
其中,feata表示第一脸部图像a的脸部识别特征,feat
p
表示第二脸部图像p的脸部
识别特征,featn表示第三脸部图像n的脸部识别特征,表示2-范数的平方(欧式距离)。
[0040]
s14:至少基于第一损失调整特征提取网络的参数。
[0041]
可以理解的是,基于第一损失调整特征提取网络的参数,可以使得特征提取网络提取的属于同一对象且不同脸部属性类别的脸部识别特征之间的相似度提高,属于不同对象且同一脸部属性类别的脸部识别特征之间的相似度降低,从而降低脸部识别特征与脸部属性的相关程度,提高特征提取网络提取到的脸部识别特征的表达能力。
[0042]
在一些实施例中,还可以基于其他损失调整特征提取网络的参数。其他损失包括第二损失、第三损失和第四损失中的至少一个。
[0043]
第二损失可以是基于第一脸部图像的脸部属性特征与第一脸部图像的脸部识别特征之间的相似度获取的。具体来说,可以提取第一脸部图像的脸部属性特征;基于第一脸部图像的脸部属性特征与第一脸部图像的脸部识别特征之间的相似度,构建第二损失。
[0044]
脸部属性特征为表示脸部属性的特征,如下以表情这一脸部属性为例进行说明:
[0045]
表情特征包括若干运动单元(au,action unit)子特征。部分运动单元见下表1:
[0046]
action unit描述actionunit描述au1内部眉毛抬起au19嘴唇向外拉扯au2外部眉毛抬起au20嘴唇向后方拉扯au4眉毛整体低垂au22嘟起嘴唇成漏斗au5抬起上眼皮au23收紧双唇成一字au6抬起脸颊au24把双唇挤在一起au7眼睛收缩au25双唇分开暴露牙齿au9收缩提起鼻子au26双唇分开看见舌头au10抬起上嘴唇au27双唇分开看见喉咙au11加深中部鼻唇au28吸允嘴唇覆盖牙齿au12上扬嘴角au41微微低垂上眼皮au13拉动嘴角向上au42低垂上眼皮au14嘴角向牙齿收缩au43闭上眼睛au15嘴角垂直向下拉动au44下眼皮向上顶au16下嘴唇向下拉动au45双目眨眼au17挤动下唇向上顶au46单目眨眼au18向中间皱起嘴巴
…………
[0047]
运动单元是组成表情的基石,这些运动单元可以组合表示表情包括的所有表情类别,即每一表情类别对应若干运动单元。例如,表情包括无表情(正常)、幸福、悲伤、惊喜、恐惧、愤怒、厌恶和蔑视,无表情无对应的au,幸福对应au6和au12,悲伤对应au1、au4和au15,惊喜对应au1、au2、au5和au26,恐惧对应au1、au2、au4、au5、au7、au20和au26,愤怒对应au4、au5、au7和au23,厌恶对应au9、au15和au16,蔑视对应au12和au14。
[0048]
第二损失l
feat
可以通过如下公式计算:
[0049][0050]
其中,feat_aua表示第一脸部图像a的脸部属性特征。
[0051]
可以理解的是,在训练过程中,基于第二损失调整特征提取网络的参数,可以使得特征提取网络提取的脸部识别特征与脸部属性特征之间的相似度降低,从而进一步降低脸部识别特征与脸部属性的相关程度,进一步降低利用脸部识别特征进行脸部识别时脸部属性带来的干扰。
[0052]
第三损失可以是基于第一脸部图像的脸部属性特征与第一脸部图像带有的脸部属性特征标签之间的差异获取的,脸部属性特征与脸部属性特征标签的格式一致,脸部属性标签可以指示真实脸部属性特征。第三损失还可以是基于对第一脸部图像的预测脸部属性类别与第一脸部图像带有的脸部属性类别标签之间的差异构建的,预测脸部属性类别和脸部属性类别标签的格式一致,预设脸部属性类别是基于第一脸部图像的脸部属性特征进行脸部属性分类得到的。后者情况下,可以提取第一脸部图像的脸部属性特征;基于第一脸部图像的脸部属性特征对第一脸部图像进行脸部属性分类,得到第一脸部图像的预测脸部属性类别;基于预测脸部属性类别与脸部属性类别标签之间的差异,构建第三损失。
[0053]
脸部属性类别标签可以指示真实脸部属性类别,例如,在遮挡状态这一脸部属性下,遮挡状态类别标签可以指示真实遮挡状态类别。在表情这一脸部属性下,表情类别标签可以指示真实遮挡状态类别。
[0054]
或者,脸部属性类别标签可以指示真实脸部属性类别对应的各个真实组成单元类别。脸部属性类别又可以进一步包括若干个组成单元类别。例如,在遮挡状态这一脸部属性下,可以将脸部图像划分为若干子区域,一子区域为一组成单元,遮挡状态类别包括若干个子区域类别,子区域类别可以包括该子区域被遮挡或者该子区域未被遮挡,还可以包括该子区域的遮挡程度。由此,遮挡状态类别标签包括若干子区域类别标签,子区域类别标签可以指示真实子区域类别。又如,在表情这一脸部属性下,如前面提及的,表情由若干个运动单元组成,一运动单元为一组成单元,相应地,表情类别包括若干个运动单元类别,运动单元类别可以包括包含该运动单元或者未包含该运动单元,还可以包括该运动单元的运动幅度(例如运动单元为au12,运动幅度为嘴角上扬程度)。由此,表情类别标签可以包括若干运动单元类别标签,运动单元类别表情可以指示真实运动单元类别。并且,在遮挡状态类别标签指示遮挡程度的情况下,通过遮挡状态类别表情指导特征提取网络的训练,能够使得遮挡状态特征包含更多的遮挡状态信息,提高特征提取网络提取到的脸部属性特征(遮挡状态特征)对遮挡状态的表达能力。在表情类别标签指示运动幅度的情况下,通过表情类别表情指导特征提取网络的训练,能够使得表情特征包含更多的表情信息,提高特征提取网络提取到的脸部属性特征(表情特征)对表情的表达能力。
[0055]
以表情这一脸部属性为例对脸部属性类别标签的形式以及第三损失的计算进行说明。例如,在运动类别标签指示是否包含该运动单元的情况下,运动单元类别标签为y∈{0,1}c,0表示不包含该运动单元,1表示包含该运动单元。又如,在指示是否包含该运动单元以及运动单元的运动幅度的情况下,运动单元类别标签为y{-1,0,1}c,-1表示不包含该运动单元,0表示包含该运动单元,且该运动单元的运动幅度较小,1表示包含该运动单元,且该运动单元的运动幅度较大。
[0056]
由此,第三损失可以通过下式计算:
[0057]
[0058]
其中,c表示运动单元的数量(例如为17),表示第i张第一脸部图像的第j个预测运动单元类别,y
ac
表示第i张第一脸部图像的第j个运动单元类别标签(真实运动单元类别),[.]表示一个指示函数。
[0059]
可以理解的是,基于第三损失调整特征提取网络的参数,可以提高特征提取网络提取的脸部属性特征对脸部属性的表达能力。并且,如果结合第二损失和第三损失调整特征提取网络的参数,可以进一步降低特征提取网络提取的脸部识别特征与脸部属性的相关程度,进一步降低利用脸部识别特征进行脸部识别时脸部属性带来的干扰。
[0060]
第四损失可以是基于第一脸部图像的脸部识别特征与第一脸部图像带有的脸部识别特征标签之间的差异获取的,脸部识别特征标签指示真实脸部识别特征,脸部识别特征与脸部识别特征标签的格式一致。第四损失还可以是第一脸部图像所属对象的预测身份与第一脸部图像带有的身份标签之间的差异构建的,身份标签指示真实身份,身份标签与预测身份的格式一致,预测身份可以是基于第一脸部图像的脸部识别特征对第一脸部图像进行身份分类得到的。后者情况下,可以基于第一脸部图像的脸部识别特征对第一脸部图像进行身份分类,得到第一脸部图像所属对象的预测身份;基于第一脸部图像所属对象的预测身份与身份标签之间的差异,构建第四损失。
[0061]
第四损失l
identity
(a)可以表示为:
[0062]
l
identity
(a)=l(fc(feata),label);
[0063]
其中,label表示身份标签,fc表示分类器即全连接层,fc(feata)表示预测身份。在此情况下,第四损失为分类损失函数,包括但不限于为softmax、arcface、cosineface、cross entropy loss。
[0064]
可以理解的是,基于第四损失调整特征提取网络的参数,能够进一步提高特征提取网络提取到的脸部识别特征的表达能力。
[0065]
关于前面提及的,基于第一/第二/第三/第四损失调整特征提取网络的参数,可以是基于第一/第二/第三/第四损失反向计算梯度,并更新特征提取网络中的参数,并重复执行计算第一/第二/第三/第四损失、调整参数的步骤,直至满足训练条件,训练完成。训练条件可以是训练次数达到预期、训练时间达到预期、第一/第二/第三/第四损失不再下降等等。
[0066]
通过本实施例的实施,本技术通过属于同一对象且不同脸部属性类别的脸部图像的脸部识别特征之间的相似度、属于不同对象且同一脸部属性类别的脸部图像的脸部识别特征之间的相似度来约束对特征提取网络的训练,从而训练得到的特征提取网络,在应用阶段提取到的脸部识别特征与脸部属性的相关程度在可控范围内,即降低脸部识别特征与脸部属性的相关程度,提高脸部识别特征的表达能力,进而将脸部识别特征应用于脸部识别,能够得到更加准确的脸部识别结果。
[0067]
另外,由于通过本技术提供的训练方法能够提高特征提取网络提取到的脸部识别特征的表达能力,因此即使训练借助的脸部图像是二维的而不是三维的,也能够有较好的训练效果,后续应用于脸部识别也能够有较好的脸部识别效果,从而能够在保证脸部识别结果准确度的同时降低硬件成本。
[0068]
图2是本技术特征提取网络的训练方法另一实施例的流程示意图。需注意的是,若
有实质上相同的结果,本实施例并不以图2所示的流程顺序为限。本实施例是对s11的进一步扩展,如图1所示,本实施例可以包括:
[0069]
s21:获取训练图像集。
[0070]
训练图像集包括若干个对象的训练脸部图像,每个对象的训练脸部图像包括若干张不同脸部属性类别的训练脸部图像。
[0071]
s22:从训练图像集中选择一张训练脸部图像,作为第一脸部图像。
[0072]
s23:从训练图像集中确定与第一脸部图像属于同一对象且不同脸部属性类别的训练脸部图像,作为第一候选脸部图像;从各第一候选脸部图像中选择一张,作为第二脸部图像。
[0073]
在一些实施例中,可以随机从各第一候选脸部图像中选择一张,作为第二脸部图像。
[0074]
在一些实施例中,可以分别提取各第一候选脸部图像和第二脸部图像的脸部识别特征;分别获取各第一候选脸部图像的脸部识别特征与第一脸部图像的脸部识别特征的相似度;将与第一脸部图像的脸部识别特征相似度最小的第一候选脸部图像,作为第二脸部图像。可以理解的是,此方式能够进一步降低训练好的特征提取网络提取得到的脸部识别特征与脸部属性的相关程度,进一步提高脸部识别特征的表达能力。
[0075]
在一些实施例中,可以选择一张特定脸部属性类别的第一候选脸部图像,作为第二脸部图像。特定脸部属性类别为后续脸部识别时已知身份的脸部图像/脸部识别特征的属性类别。例如,在表情这一脸部属性下,后续脸部识别时,每个已知身份的对象的脸部图像的表情类别为无表情,则特定表情类别为无表情。此方式能够基于脸部识别的应用场景对训练过程进行适应性调整,进一步降低训练好的特征提取网络提取得到的脸部识别特征与脸部属性的相关程度,进一步提高脸部识别特征的表达能力。
[0076]
s24:从训练图像集中确定与第一脸部图像属于不同对象且同一脸部属性类别的训练脸部图像,作为第二候选脸部图像;从各第二候选脸部图像中选择一张,作为第三脸部图像。
[0077]
在一些实施例中,可以随机从各第二候选脸部图像中选择一张,作为第三脸部图像。
[0078]
在一些实施例中,可以提取各第二候选脸部图像和第一脸部图像的脸部识别特征;分别获取各第二候选脸部图像的脸部识别特征与第一脸部图像的脸部识别特征的相似度;将与第一脸部图像的脸部特征相似度最大的第二候选脸部图像,作为第三脸部图像。
[0079]
可以理解的是,此方式能够使得训练好的特征提取网络提取得到的属于不同对象且同一脸部属性类别的脸部识别特征之间的相似度进一步降低,从而能够进一步降低训练好的特征提取网络提取得到的脸部识别特征与脸部属性的相关程度,进一步提高脸部识别特征的表达能力。
[0080]
如下结合图3和图4,以一个例子的形式对特征提取网络的训练方法进行说明:
[0081]
特征提取网络的训练方法是依据特征提取网络的训练系统实现的。图3是特征提取网络的训练系统的结构示意图。如图3所示,特征提取网络的训练系统包括摄像设备和特征提取网络的训练设备。摄像设备用于拍摄脸部图像,特征提取网络的训练设备用于从摄像设备获取训练脸部图像,并对训练脸部图像进行处理,以实现对特征提取网络的训练。
[0082]
本例子中,对象为人,脸部属性为表情。结合图4说明特征提取网络的训练系统对脸部图像的处理过程:
[0083]
1)获取训练图像集。收集m(m远大于10万)个人的训练脸部图像,每个人的训练脸部图像包括各个表情类别的训练脸部图像。利用关键点检测算法将每张训练脸部图像对齐到标准模板之下,且为每张训练脸部图像打上身份标签和表情类别标签,得到训练图像集dataset。
[0084]
2)构建特征提取网络,包含若干卷积层、池化层、激活层、批标准化层(batchnorm)等等。
[0085]
3)从dataset随机挑选batch_size张训练脸部图像作为第一脸部图像,组成一个batch集合a={a1,a2,
…
,ai,
…
},batch_size是训练的超参,一个常数。
[0086]
4)通过特征提取网络提取a的脸部识别特征和a的表情特征和a的表情特征其中,表示第i张第一脸部图像的脸部识别特征,feat_au
ai
表示第i张第一脸部图像的表情特征。
[0087]
5)针对ai计算损失。
[0088]
①
挑选第二脸部图像:从dataset中挑选与属于同一人且无表情的训练脸部图像构成集合p;通过特征提取网络提取p的脸部识别特征其中,表示p中第i张脸部图像的脸部识别特征;计算feat
ai
与feat
p
中各脸部识别特征的相似度(欧式距离);将p中对应相似度最小(欧式距离最大)的训练脸部图像p确定为第二脸部图像。
[0089]
②
挑选第三样本图像:从dataset中挑选与属于不同人且同一表情类别的训练脸部图像构成集合n;通过特征提取网络提取n的脸部识别特征,然后计算feat
ai
与n中的各脸部识别特征的相似度(欧式距离),将n中对应相似度最大(欧式距离最小)的训练脸部图像n确定为第三脸部图像。
[0090]
③
计算ai的第一损失:
[0091][0092]
计算ai的第二损失:
[0093][0094]
计算ai的第三损失:
[0095][0096]
计算ai的第四损失:
[0097]
l
identity
(a)=l(fc(feata),label);
[0098]
计算ai的最终的损失:
[0099]
loss
ai
=w1*l
identity
(a)+w2*l
triplet
(a)+w3*l
au
(a)+w4*l
feat
(a);
[0100]
其中,w1,w2,w3,w4分别表示权重,为大于0的常数。
[0101]
6)计算batch集合a的平均损失:
[0102][0103]
7)基于平均损失调整特征提取网络的参数。
[0104]
进一步地,通过前述训练方法训练得到特征提取网络之后,可以将特征提取网络应用于脸部识别。如下以身份验证的应用场景为例,对特征提取网络进行说明:
[0105]
图5是本技术脸部识别方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图5所示的流程顺序为限。如图5所示,本实施例可以包括:
[0106]
s31:获取待识别脸部图像。
[0107]
本实施例的执行主体是脸部识别设备,该训练设备可以是任何具有脸部识别能力的终端(例如手机、电脑、摄像设备),还可以是服务器等等。脸部识别设备和特征提取网络的训练设备可以是同一电子设备,也可以是不同的电子设备。
[0108]
待识别脸部图像可以是场景图像,场景图像中不仅包括对象的脸部,还包括对象的身体、背景等等。待识别脸部图像还可以是对场景图像中的脸部区域,脸部区域可以通过对待识别脸部图像进行脸部检测得到。
[0109]
在将待识别脸部图像应用于后续步骤之前,还可以通过关键点检测算法将待识别脸部图像对其到标准模板之下。
[0110]
s32:利用特征提取网络提取待识别脸部图像的脸部识别特征。
[0111]
s33:将待识别脸部图像的脸部识别特征与各已知身份的脸部识别特征进行比对,以确定待识别脸部图像所属待识别对象的身份。
[0112]
各已知身份的脸部识别特征与待识别脸部图像的脸部识别特征可以是同步提取得到的,各已知身份的脸部识别特征也可以是预先提取之后存储于脸部特征库的。
[0113]
在确定待识别脸部图像的身份之后,还可以将待识别脸部图像的脸部识别特征与身份存入脸部特征库。
[0114]
通过本实施例的实施,本技术在脸部识别任务中,用于提取脸部识别特征的特征提取网络是通过前述训练方法得到的,因此提取得到的脸部识别特征与脸部属性的相关程度低,表达能力强,从而得到的脸部识别结果(身份)准确度高。并且,由于脸部识别特征与脸部属性的相关程度低,脸部识别受脸部属性影响小甚至无影响,因此对于每个已知身份的对象,仅需存储一张已知对象的任一脸部属性类别的脸部图像,就可以保证脸部识别结果的准确度。
[0115]
如下结合图6和图7,以一个例子的形式对脸部识别方法进行说明:
[0116]
脸部识别方法是依据脸部识别系统实现的,图6是脸部识别系统的结构示意图。如图3所示,脸部识别系统包括摄像设备和脸部识别设备。摄像设备用于拍摄待识别脸部图像,脸部识别设备用于从摄像设备获取待识别脸部图像,并对待识别脸部图像进行处理,以实现脸部识别。
[0117]
在本例子中,对象为人,脸部属性为表情。结合图7对脸部识别系统的脸部识别过程:
[0118]
1)构建脸部特征库,其中包含若干已知身份的无表情的脸部识别特征。
[0119]
2)获取待识别图像,并通过关键点检测算法将待识别图像对齐至标准模板之下。
[0120]
3)利用特征提取网络提取待识别图像的脸部识别特征。
[0121]
4)基于脸部识别特征确定待识别图像所属待识别人的身份。将待识别图像的脸部识别特征分别与脸部特征库中已知身份的脸部识别特征之间的相似度,挑选对应相似度最高且大于相似度阈值的已知身份的脸部识别特征作为脸部识别结果,脸部识别结果对应身份即为待识别人的身份。
[0122]
图8是本技术电子设备一实施例的结构示意图。如图8所示,该电子设备包括处理器21、与处理器21耦接的存储器22。
[0123]
其中,存储器22存储有用于实现上述任一实施例的方法的程序指令;处理器21用于执行存储器22存储的程序指令以实现上述方法实施例的步骤。其中,处理器21还可以称为cpu(central processing unit,中央处理单元)。处理器21可能是一种集成电路芯片,具有信号的处理能力。处理器21还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0124]
本实施例中,电子设备可以为前面提及的特征提取网络的训练设备、脸部识别设备等等。本实施例的其他详细说明请参考前面的方法实施例,在此不赘述。
[0125]
图9是本技术计算机可读存储介质一实施例的结构示意图。如图9所示,本技术实施例的计算机可读存储介质30存储有程序指令31,该程序指令31被执行时实现本技术上述实施例提供的方法。其中,该程序指令31可以形成程序文件以软件产品的形式存储在上述计算机可读存储介质30中,以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的计算机可读存储介质30包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
[0126]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0127]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
技术特征:1.一种特征提取网络的训练方法,其特征在于,包括:获取训练图像组,所述训练图像组包括第一脸部图像、第二脸部图像和第三脸部图像,所述第二脸部图像与所述第一脸部图像属于同一对象且不同脸部属性类别,所述第三脸部图像和所述第一脸部图像属于不同所述对象且同一所述脸部属性类别;利用所述特征提取网络分别提取所述第一脸部图像的脸部识别特征、所述第二脸部图像的脸部识别特征和所述第三脸部图像的脸部识别特征;基于所述第一脸部图像的脸部识别特征与所述第二脸部图像的脸部识别特征之间的相似度、以及所述第一脸部图像的脸部识别特征与所述第三脸部图像的脸部识别特征之间的相似度,构建第一损失;至少基于所述第一损失调整所述特征提取网络的参数。2.根据权利要求1所述的方法,其特征在于,所述获取训练图像组,包括:获取训练图像集,所述训练图像集包括若干个对象的训练脸部图像,每个所述对象的训练脸部图像包括若干张不同所述脸部属性类别的训练脸部图像;从所述训练图像集中选择一张所述训练脸部图像,作为所述第一脸部图像;从所述训练图像集中确定与所述第一脸部图像属于同一所述对象且不同所述脸部属性类别的训练脸部图像,作为第一候选脸部图像;从各所述第一候选脸部图像中选择一张,作为所述第二脸部图像;从所述训练图像集中确定与所述第一脸部图像属于不同所述对象且同一所述脸部属性类别的训练脸部图像,作为第二候选脸部图像;从各所述第二候选脸部图像中选择一张,作为所述第三脸部图像。3.根据权利要求2所述的方法,其特征在于,所述从各所述第一候选脸部图像中选择一张,作为所述第二脸部图像,包括:分别提取各所述第一候选脸部图像和所述第一脸部图像的脸部识别特征;分别获取各所述第一候选脸部图像的脸部识别特征与所述第一脸部图像的脸部识别特征的相似度;将与所述第一脸部图像的脸部识别特征相似度最小的所述第一候选脸部图像,作为所述第二脸部图像;和/或,所述从各所述第二候选脸部图像中选择一张,作为所述第三脸部图像,包括:提取各所述第二候选脸部图像和所述第一脸部图像的脸部识别特征;分别获取各所述第二候选脸部图像的脸部识别特征与所述第一脸部图像的脸部识别特征的相似度;将与所述第一脸部图像的脸部特征相似度最大的所述第二候选脸部图像,作为所述第三脸部图像。4.根据权利要求1所述的方法,其特征在于,所述至少基于所述第一损失调整所述特征提取网络的参数,包括:基于所述第一损失和其他损失调整所述特征提取网络的参数,所述其他损失包括第二损失、第三损失和第四损失中的至少一个;其中,所述第二损失是基于所述第一脸部图像的脸部属性特征与所述第一脸部图像的脸部识别特征之间的相似度获取的,所述第三损失是基于所述第一脸部图像的预测脸部属
性类别与所述第一脸部图像带有的脸部属性类别标签之间的差异获取的,所述第四损失是基于所述第一脸部图像所属对象的预测身份与所述第一脸部图像带有的身份标签之间的差异获取的。5.根据权利要求4所述的方法,其特征在于,所述脸部属性特征为表情特征;和/或,所述第二损失的获取步骤包括:提取所述第一脸部图像的脸部属性特征;基于所述第一脸部图像的脸部属性特征与所述第一脸部图像的脸部识别特征之间的相似度,构建所述第二损失。6.根据权利要求4所述的方法,其特征在于,所述第三损失的获取步骤包括:提取所述第一脸部图像的脸部属性特征;基于所述第一脸部图像的脸部属性特征对所述第一脸部图像进行脸部属性分类,得到所述第一脸部图像的预测脸部属性类别;基于所述预测脸部属性类别与所述脸部属性类别标签之间的差异,构建所述第三损失。7.根据权利要求4所述的方法,其特征在于,所述第四损失的获取步骤包括:基于所述第一脸部图像的脸部识别特征对所述第一脸部图像进行身份分类,得到所述第一脸部图像所属对象的预测身份;基于所述第一脸部图像所属对象的预测身份与所述身份标签之间的差异,构建所述第四损失。8.一种脸部识别方法,其特征在于,包括:获取待识别脸部图像;利用特征提取网络提取所述待识别脸部图像的脸部识别特征;将所述待识别脸部图像的脸部识别特征与各已知身份的脸部识别特征进行比对,以确定所述待识别脸部图像所属待识别对象的身份;其中,所述特征提取网络是通过权利要求1~7中任一项方法训练得到的。9.一种电子设备,其特征在于,包括处理器、与所述处理器连接的存储器,其中,所述存储器存储有程序指令;所述处理器用于执行所述存储器存储的所述程序指令以实现权利要求1-7或8中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储程序指令,所述程序指令能够被处理器执行,被执行时实现如权利要求1-7或8中任一项所述的方法。
技术总结本申请公开了一种特征提取网络的训练方法、脸部识别方法、电子设备及计算机可读存储介质。该训练方法包括:获取训练图像组,训练图像组包括第一脸部图像、第二脸部图像和第三脸部图像;利用特征提取网络分别提取第一脸部图像的脸部识别特征、第二脸部图像的脸部识别特征和第三脸部图像的脸部识别特征;基于第一脸部图像的脸部识别特征与第二脸部图像的脸部识别特征之间的相似度、以及第一脸部图像的脸部识别特征与第三脸部图像的脸部识别特征之间的相似度,构建第一损失;至少基于第一损失调整特征提取网络的参数。通过上述方式,能够提高特征提取网络提取的脸部识别特征的表达能力。能力。能力。
技术研发人员:王飒 朱树磊 殷俊
受保护的技术使用者:浙江大华技术股份有限公司
技术研发日:2022.06.21
技术公布日:2022/11/1