本申请涉及图像处理技术领域,尤其涉及人工智能中深度学习、云计算及计算机视觉领域,具体涉及戴口罩人脸识别方面。
背景技术:
在呼吸道传染病流行、由粉尘或气味等因素污染的环境中,人们通常会在口鼻部位佩戴口罩用于过滤进入口鼻空气,以达到遮挡有害的气体、气味、飞沫、病毒等物质的作用。
然而,在需要通过人脸识别进行人脸认证的情况下,由于现有的人脸识别系统并不具备对口罩遮挡的人脸进行识别的能力,因此在人脸识别时需要用户摘取口罩加以配合,降低了用户的使用体验。
技术实现要素:
本申请实施例提供了一种具备对遮挡情况下的人脸进行识别能力的人脸识别模型训练方法、装置、设备及介质。
根据本申请的第一方面,提供了一种人脸识别模型训练方法,包括:
根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;
确定至少两个所述遮挡特征数据之间的遮挡特征距离;
根据至少一个所述遮挡特征数据的人脸识别误差,以及所述遮挡特征距离,对所述特征提取网络进行训练。
根据本申请的第二方面,提供了另一种人脸识别模型训练装置,包括:
遮挡特征数据得到模块,用于根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;
遮挡特征距离确定模块,用于确定至少两个所述遮挡特征数据之间的遮挡特征距离;
特征提取网络训练模块,用于根据至少一个所述遮挡特征数据的人脸识别误差,以及所述遮挡特征距离,对所述特征提取网络进行训练。
根据本申请的第三方面,提供了又一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请实施例提供的任意一种人脸识别模型训练方法。
根据本申请的第四方面,提供了再一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行本申请实施例提供的任意一种人脸识别模型训练方法。
本申请实施例根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;确定至少两个遮挡特征数据之间的遮挡特征距离;根据至少一个遮挡特征距离的人脸识别误差,以及遮挡特征距离,对特征提取网络进行训练。本申请实施例所训练的人脸识别模型具备了对存在遮挡的遮挡人脸图像,进行人脸识别的能力。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1a是本申请实施例提供的一种人脸识别模型训练方法的流程图;
图1b是本申请实施例提供的一种人脸识别模型训练过程示意图;
图2a是本申请实施例提供的另一种人脸识别模型训练方法的流程图;
图2b是本申请实施例提供的另一种人脸识别模型训练过程示意图;
图3a是本申请实施例提供的另一种人脸识别模型训练方法的流程图;
图3b是本申请实施例提供的另一种人脸识别模型训练过程示意图;
图4a是本申请实施例提供的另一种人脸识别模型训练方法的流程图;
图4b是本申请实施例提供的另一种人脸识别模型训练过程示意图;
图5a是本申请实施例提供的另一种人脸识别模型训练方法的流程图;
图5b是本申请实施例提供的另一种人脸识别模型训练过程示意图;
图6是本申请实施例提供的一种人脸识别模型训练装置的结构图;
图7是用来实现本申请实施例的人脸识别模型训练方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本申请实施例提供的各人脸识别模型训练方法和人脸识别模型训练装置,适用于对存在遮挡物的遮挡人脸图像,进行人脸识别能力的人脸识别模型,进行模型训练的情况,该方法由人脸识别装置执行,该装置采用软件和/或硬件实现,并具体配置于电子设备中。
图1a是本申请实施例提供的一种人脸识别模型训练方法的流程图,该方法包括:
s101、根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据。
人脸识别模型包括特征提取网络和分类器。特征提取网络用于对所输入的人脸图像进行特征提取;分类器用于基于所提取的特征数据对人脸图像进行人脸识别。在对人脸识别模型进行训练过程中,会对特征提取网络和分类器两部分的网络参数进行训练。由于对人脸识别模型进行训练时的训练样本库和人脸识别模型使用时的注册人脸库中所包含的人图像来源不同,图像种类和数量等也不同,因此在实际使用人脸识别模型进行人脸识别时,通常会舍弃分类器,仅采用训练好的特征提取网络进行人脸特征提取。
遮挡图像可以理解为存在遮挡物的人脸图像。例如,遮挡物可以是帽檐、眼镜和口罩等中的至少一种。
在本申请实施例的一种可选实施方式中,遮挡图像可以是对样本用户进行图像采集时,由样本用户佩戴至少一种遮挡物所采集的图像。
为了提高遮挡图像获取的便捷度,在本申请实施例的另一可选实施方式中,还可以获取样本用户的至少两个候选原始图像;对各候选原始图像分别添加遮挡物,得到至少两个遮挡图像。
可以理解的是,通过遮挡图像自动生成的方式,可以通过现有的人脸图像进行遮挡物的添加,无需样本用户进行遮挡物佩戴,即可生成大量遮挡图像,使得遮挡图像获取方式更加便捷,提高了遮挡图像获取效率。
为了进一步提高遮挡图像的生成效率,同时保证所生成的遮挡图像之间的差异性,为所训练的人脸识别模型的模型精度奠定基础,针对同一样本用户,所生成的至少两个遮挡图像的遮挡物材质不同;和/或,至少两个候选原始图像的姿态不同。
当然,为了提高遮挡图像的利用率,通常会将采集的遮挡图像和/或生成的遮挡图像存储在电子设备本地、或与电子设备关联的其他存储设备中。相应的,在需要进行人脸识别模型训练时,进行遮挡图像的获取。
s102、确定至少两个所述遮挡特征数据之间的遮挡特征距离。
示例性地,通过范数计算等方式,确定至少两个遮挡特征数据之间的距离,并将所确定的距离作为遮挡特征距离。其中,遮挡特征距离用于表征遮挡特征数据之间的特征相似度。其中,相似度越大,表明遮挡特征数据之间共性越大,相应的,遮挡特征距离越小;相似度越小,表征遮挡特征数据之间共性越小,相应的,遮挡特征距离越大。
为了实现对训练样本库中的训练样本的充分应用,一般的,会确定各个遮挡特征数据之间的遮挡特征距离。
可以理解的是,针对一个样本用户,所确定的遮挡特征距离为至少一个。
s103、根据至少一个所述遮挡特征数据的人脸识别误差,以及所述遮挡特征距离,对所述特征提取网络进行训练。
示例性地,针对各遮挡特征数据,通过人脸识别模型中的分类器,确定该遮挡特征数据对应的预测识别结果;根据预测识别结果与实际标签识别结果,确定人脸识别误差;根据至少一个遮挡特征数据的人脸识别误差,以及遮挡特征距离,优化调整人脸识别模型中的特征提取网络和分类器的模型参数。
可以理解的是,在特征提取网络的训练过程中,引入各遮挡特征数据的人脸识别误差,能够使得特征提取网络具备对存在遮挡的遮挡人脸图像进行识别的能力,提高模型识别结果的准确度。通过在特征提取网络的训练过程中,引入遮挡特征距离,保证了同一样本用户对应的不同遮挡图像之间,能够进行共性特征的提取,进一步提高了模型识别结果的准确度。
为了实现对现有的非遮挡人脸图像,进行人脸识别的人脸识别模型的复用,在一个可选实施例中,还可以将现有的对非遮挡人脸图像具备识别能力的人脸识别模型,直接采用本申请所涉及的人脸识别模型训练方法,引入遮挡图像进行再训练,从而使所训练模型兼备对遮挡人脸图像和非遮挡人脸图像进行人脸识别的能力。
参见图1b所示的一种人脸识别模型训练过程示意图,以基于样本用户的两个遮挡图像,进行人脸识别模型训练为例,对人脸识别模型的训练过程,进行详细说明。
1)针对每个样本用户,获取样本用户的遮挡图像a和遮挡图像b;其中,遮挡图像a和遮挡图像b的遮挡物材质不同,或对应的候选原始图像中的人脸姿态不同。
2)通过特征提取网络分别对遮挡图像a和遮挡图像b进行特征提取,得到遮挡特征数据a和遮挡特征数据b。
3)通过分类器,分别对遮挡特征数据a和遮挡特征数据b进行分类,得到预测识别结果a和预测识别结果b;通过预测识别结果a与该样本用户的实际标签识别结果,以及预测识别结果b与该样本用户的实际标签识别结果,确定分类损失。
4)根据遮挡特征数据a和遮挡特征数据b之间的特征距离,确定遮挡特征间损失。
5)根据各样本用户的分类损失和遮挡特征间损失,构建损失函数。
6)根据损失函数对特征提取网络和分类器中的网络参数进行优化调整,得到对存在遮挡物的遮挡人脸图像,具备人脸识别能力的人脸识别模型。
本申请实施例根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;确定至少两个遮挡特征数据之间的遮挡特征距离;根据至少一个遮挡特征数据的人脸识别误差,以及遮挡特征距离,对特征提取网络进行训练。上述技术方案通过引入遮挡特征数据的人脸识别误差,对特征提取网络进行训练,使得训练后的特征提取网络具备了对存在遮挡物的遮挡人脸图像,进行特征数据提取的能力,从而基于所提取特征进行人脸识别时,保证了人脸识别结果的准确度。同时,通过引入遮挡特征距离,保证了特征提取网络,对遮挡图像中通用特征的提取能力,弱化了由于姿态和/或遮挡物材质等因素对特征提取结果的影响,提高了人脸识别模型的鲁棒性和准确性。
在上述各技术方案的基础上,在一个可选实施例中,还可以通过训练好的特征提取网络,进行人脸识别。示例性地,采用训练好的人脸识别网络,提取待测用户的人脸图像的待测特征数据;确定待测特征数据与注册人脸库中各注册人脸特征之间的相似度;根据相似度,确定待测用户的用户类别。可选的,注册人脸库可以包括注册遮挡人脸库,用于存储用户在注册时所采集的存在遮挡物的注册人脸图像;或者可选的,注册人脸库还可以包括注册非遮挡人脸库,用于存储用户在注册时所采集的不存在遮挡物的注册人脸图像。
在一个可选实施例中,可以采用训练好的特征提取网络,对注册人脸库中的注册人脸图像进行特征提取,得到注册人脸特征。
为了减少人脸识别时的数据运算量,并且进一步提高人脸识别效率,在另一可选实施例中,可以通过训练好的特征提取网络对所采集的人脸图像进行特征提取得到注册人脸特征,并根据存在遮挡物的人脸图像对应的注册人脸特征,构建注册遮挡人脸库;根据不存在遮挡物的注册人脸特征,构建注册非遮挡人脸库。
可选的,选取相似度最高的设定数量的注册用户作为待测用户的用户类别。其中,设定数量可以由技术人员根据需要或经验值确定,或通过大量试验反复确定。例如,可以是1。当然,还可以设置为大于1的数值,从而在对人脸识别精度较高的场景下,反馈给待测用户至少两个识别结果,并由待测用户进行识别结果的确认。
可以理解的是,通过上述训练好的特征提取网络进行人脸识别,能够实现对存在遮挡物的人脸图像进行人脸识别,无需佩戴有遮挡物的用户,摘除遮挡物配合识别,提高了识别效率,同时增强了用户的使用体验。
需要说明的是,进行人脸识别模型训练和人脸识别模型使用的电子设备,可以是相同或不同。
图2a是本申请实施例提供的另一种人脸识别模型训练方法的流程图,该方法在上述各技术方案的基础上,进行了优化改进。
进一步地,在操作“根据至少一个所述遮挡特征数据的人脸识别误差,以及所述遮挡特征距离,对所述特征提取网络进行训练”之前,追加“根据所述特征提取网络,对所述样本用户的至少一个原始图像进行特征提取,得到原始特征数据”;相应的,将操作“根据至少一个所述遮挡特征数据的人脸识别误差,以及所述遮挡特征距离,对所述特征提取网络进行训练”细化为“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练”,以使人脸识别模型兼备对存在遮挡物和不存在遮挡物的遮挡人脸图像和非遮挡人脸图像进行识别的能力。
如图2a所示的一种人脸识别模型训练方法,包括:
s201、根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据。
s202、确定至少两个所述遮挡特征数据之间的遮挡特征距离。
s203、根据所述特征提取网络,对所述样本用户的至少一个原始图像进行特征提取,得到原始特征数据。
原始图像可以理解为样本用户不存在遮挡的人脸图像。原始图像可以包括注册人脸库中的不存在遮挡的注册人脸图像;或者还可以,包括收集的其他场景下所采集的不存在遮挡的人脸图像。
为了提高原始图像的利用率,通常会将采集的原始图像或收集的原始图像,预先存储在电子设备本地、或与电子设备关联的其他存储设备中,相应的,在需要进行人脸识别模型训练时,进行原始图像的获取。
需要说明的是,本申请实施例对s203与s201~s202执行时的先后顺序不做限定,也即s203可以在s201~s202之前执行,也可以在s201~s202之后执行,或者还可以与s201~s202同时执行或交叉执行。
s204、根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练。
示例性地,针对原始特征数据,通过人脸识别模型中的分类器,确定该原始特征数据对应的预测识别结果;根据预测识别结果与样本用户的实际标签识别结果,确定原始特征数据的人脸识别误差。
可以理解的是,通过在对特征提取网络进行训练的过程中,通过引入原始特征数据的人脸识别误差,使得所训练的人脸识别模型兼备了对未遮挡的非遮挡人脸图像进行人脸识别的能力,无需专门针对未遮挡的非遮挡人脸图像训练相应的人脸识别模型,节约了人力物力成本。
为了实现对遮挡人脸图像进行人脸识别的人脸识别模型的复用,在一个可选实施例中,还可以将前述训练好的人脸识别模型,直接采用原始图像进行再训练,缩短了人脸识别模型的训练周期;在再训练的过程中,引入原始图像的原始特征数据对应的人脸识别误差,从而使所训练模型兼备了对不存在遮挡物的非遮挡人脸图像的人脸识别能力。
为了实现对非遮挡人脸图像进行人脸识别的人脸识别模型的复用,在另一可选实施例中,还可以将训练好的非遮挡人脸识别模型,直接采用遮挡图像进行再训练,缩短了人脸识别模型的训练周期;在再训练的过程中,引入遮挡特征数据的人脸识别误差和遮挡特征距离,从而使所训练模型兼备了对存在遮挡物的遮挡人脸图像的人脸识别能力。
参见图2b所示的一种人脸识别模型训练过程示意图,以基于样本用户的两个遮挡图像和一个原始图像进行人脸识别模型训练为例,对人脸识别模型的训练过程,进行详细说明。
1)针对每个样本用户,获取样本用户的原始图像a、遮挡图像a和遮挡图像b。其中,遮挡图像a和遮挡图像b的遮挡物材质不同,或对应的候选原始图像中的人脸姿态不同;遮挡图像a和遮挡图像b对应的各候选原始图像,与原始图像a的人脸姿态相同或不同。
2)通过特征提取网络分别对原始图像a、遮挡图像a和遮挡图像b进行特征提取,得到原始特征数据a、遮挡特征数据a和遮挡特征数据b。
3)通过分类器,分别对原始特征数据a、遮挡特征数据a和遮挡特征数据b进行分类,得到预测识别结果a、预测识别结果a和预测识别结果b;通过预测识别结果a与该样本用户的实际标签识别结果,预测识别结果a与该样本用户的实际标签识别结果,以及预测识别结果b与该样本用户的实际标签识别结果,确定分类损失。
4)根据遮挡特征数据a和遮挡特征数据b之间的特征距离,确定遮挡特征间损失。
5)根据各样本用户的分类损失和遮挡特征间损失,构建损失函数。
6)根据损失函数对特征提取网络和分类器中的网络参数进行优化调整,得到兼备对存在遮挡物的人脸图像和不存在遮挡物的人脸图像,进行人脸识别能力的人脸识别模型。
本申请实施例通过在对人脸识别模型进行训练的过程中,追加根据特征提取网络对样本用户的至少一个原始图像进行特征提取,得到原始特征数据,进而在进行人脸识别模型训练时,引入原始特征数据的人脸识别误差,从而使得人脸识别模型兼备了对存在遮挡物的遮挡人脸图像,以及不存在遮挡物的非遮挡人脸图像,进行人脸识别的能力。
在上述各技术方案的基础上,在一个可选实施例中,还可以通过训练好的特征提取网络,进行人脸识别。示例性地,采用训练好的人脸识别网络,提取待测用户的人脸图像的待测特征数据;确定待测特征数据与注册人脸库中各注册人脸特征之间的相似度;根据相似度,确定待测用户的用户类别。可选的,注册人脸库包括注册遮挡人脸库和/或注册非遮挡人脸库。
可以理解的是,通过上述训练好的特征提取网络进行人脸识别,能够实现对存在遮挡物的人脸图像进行人脸识别,无需用户摘除口罩配合识别,提高了识别效率,同时增强了用户的使用体验。
在一个可选实施例中,若注册人脸库包括注册遮挡人脸库和注册非遮挡人脸库时,还可以识别待测用户的人脸图像是否覆盖有遮挡物;若识别到待测用户的人脸图像覆盖有遮挡物,则确定待测特征数据与注册遮挡人脸库中各注册人脸特征之间的相似度,从而通过注册覆盖有遮挡物的注册遮挡人脸库进行遮挡人脸识别,提高了遮挡人脸识别精度。
在另一可选实施例中,若注册人脸库包括注册遮挡人脸库和注册非遮挡人脸库时,还可以识别待测用户的人脸图像是否覆盖有遮挡物;若识别到待测用户的人脸图像未覆盖有遮挡物,则确定待测特征数据与注册非遮挡人脸库中各注册人脸特征之间的相似度,从而通过注册未覆盖遮挡物的注册非遮挡人脸库进行非遮挡人脸识别,提高了非遮挡人脸识别精度。
图3a是本申请实施例提供的另一种人脸识别模型训练方法的流程图,本申请实施例在前述各技术方案的基础上,进行了优化改进。
进一步地,若所述原始图像为至少两个,则在操作“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练”之前,追加“确定至少两个所述原始特征数据之间的原始特征距离”;相应的,将操作“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练”,细化为“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、所述遮挡特征距离、以及所述原始特征距离,对所述特征提取网络进行训练”,以进一步提高人脸识别模型,对不存在遮挡物的非遮挡人脸图像的识别精度。
如图3a所示的一种人脸识别模型训练方法,包括:
s301、根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据。
s302、确定至少两个所述遮挡特征数据之间的遮挡特征距离。
s303、根据所述特征提取网络,对所述样本用户的至少两个原始图像进行特征提取,得到原始特征数据。
其中,至少两个原始图像的姿态不同。
s304、确定至少两个所述原始特征数据之间的原始特征距离。
示例性地,通过范数计算等方式,确定至少两个原始特征数据之间的距离,并将所确定的距离作为原始特征距离。其中,原始特征距离用于表征原始特征数据之间的特征相似度。其中,相似度越大,表明原始特征数据之间共性越大,相应的,原始特征距离越小;相似度越小,表征原始特征数据之间共性越小,相应的,原始特征距离越大。
需要说明的是,本申请实施例对s303~s304与s301~s302执行时的先后顺序不做限定,也即s303~s304可以在s301~s302之前执行,也可以在s303~s304之后执行,或者还可以与s301~s302同时执行或交叉执行。
s305、根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、所述遮挡特征距离、以及所述原始特征距离,对所述特征提取网络进行训练。
可以理解的是,在特征提取网络进行训练的过程中,通过引入原始特征距离,保证了特征提取网络对非遮挡图像中通用特征的提取能力,弱化了由于姿态等因素对特征提取结果的影响,提高了人脸识别模型的鲁棒性和准确性。
为了实现对遮挡人脸图像进行人脸识别的人脸识别模型的复用,在一个可选实施例中,还可以将前述训练好的人脸识别模型,直接采用原始图像进行再训练,缩短了人脸识别模型的训练周期;在再训练的过程中,引入原始图像的原始特征数据对应的人脸识别误差,和/或原始特征距离,从而使所训练模型兼备了对不存在遮挡物的非遮挡人脸图像的人脸识别能力。
为了实现对非遮挡人脸图像进行人脸识别的人脸识别模型的复用,在另一可选实施例中,还可以将训练好的非遮挡人脸识别模型,直接采用遮挡图像进行再训练,缩短了人脸识别模型的训练周期;在再训练的过程中,引入遮挡特征数据的人脸识别误差、遮挡特征距离以及原始特征距离,从而使所训练模型兼备了对存在遮挡物的遮挡人脸图像的人脸识别能力。
参见图3b所示的一种人脸识别模型训练过程示意图,以基于样本用户的两个遮挡图像和两个原始图像,进行人脸识别模型训练为例,对人脸识别模型的训练过程,进行详细说明。
1)针对每个样本用户,获取样本用户的原始图像a、原始图像b、遮挡图像a和遮挡图像b。其中,遮挡图像a和遮挡图像b的遮挡物材质不同,或对应的候选原始图像中的人脸姿态不同;原始图像a和原始图像b中的人脸姿态不同;遮挡图像a和遮挡图像b对应的各候选原始图像,与原始图像a或原始图像b的人脸姿态相同或不同。
2)通过特征提取网络分别对原始图像a、原始图像b、遮挡图像a和遮挡图像b进行特征提取,得到原始特征数据a、原始特征数据b、遮挡特征数据a和遮挡特征数据b。
3)通过分类器,分别对原始特征数据a、原始特征数据b、遮挡特征数据a和遮挡特征数据b进行分类,得到预测识别结果a、预测识别结果b、预测识别结果a和预测识别结果b;通过预测识别结果a与该样本用户的实际标签识别结果,预测识别结果b与该样本用户的实际标签识别结果,预测识别结果a与该样本用户的实际标签识别结果,以及预测识别结果b与该样本用户的实际标签识别结果,确定分类损失。
4)根据遮挡特征数据a和遮挡特征数据b之间的特征距离,确定遮挡特征间损失;以及根据原始特征数据a和原始特征数据b之间的特征距离,确定原始特征间损失。
5)根据各样本用户的分类损失、遮挡特征间损失和原始特征间损失,构建损失函数。
6)根据损失函数对特征提取网络和分类器中的网络参数进行优化调整,得到兼备对存在遮挡物的人脸图像和不存在遮挡物的人脸图像,进行人脸识别能力的人脸识别模型。
本申请实施例通过采用至少两个原始图像,辅助进行人脸识别模型的训练过程中,追加确定至少两个原始特征数据之间的原始特征距离,进而在进行人脸识别模型训练时,引入原始特征距离,从而保证了特征提取网络对非遮挡人脸图像中的通用特征的提取能力,弱化了由于姿态等因素对特征提取结果的影响,进而提高了人脸识别模型的鲁棒性和准确度。
图4a是本申请实施例提供的另一种人脸识别模型训练方法的流程图,本申请实施例在前述各技术方案的基础上,进行了优化改进。
进一步地,在操作“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练”之前,追加“确定所述原始特征数据与所述遮挡特征数据之间的交叉特征距离”;相应的,将操作“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练”细化为“根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、所述遮挡特征距离、以及所述交叉特征距离,对所述特征提取网络进行训练”,以使人脸识别模型具备对存在遮挡物和不存在遮挡物的遮挡人脸图像和非遮挡人脸图像的混合识别能力。
如图4a所示的一种人脸识别模型训练方法,包括:
s401、根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据。
s402、确定至少两个所述遮挡特征数据之间的遮挡特征距离。
s403、根据所述特征提取网络,对所述样本用户的至少一个原始图像进行特征提取,得到原始特征数据。
s404、确定所述原始特征数据与所述遮挡特征数据之间的交叉特征距离。
示例性地,通过范数计算等方式,确定各原始特征数据与各遮挡特征数据之间的交叉特征距离,并将所确定的距离作为交叉特征距离。其中,交叉特征距离用于表征原始特征数据与遮挡特征数据之间的特征相似度。其中,相似度越大,表明原始特征数据与遮挡特征数据之间的共性越大,相应的,交叉特征距离越小;相似度越小,表征原始特征数据与遮挡特征数据之间的共性越小,相应的,交叉特征距离越大。
需要说明的是,本申请实施例对s403~s404与s401~s402执行时的先后顺序不做任何限定,也即,s403~s404可以在s401~s402之前执行,也可以在s401~s402之后执行,或者还可以与s401~s402同时执行或交叉执行。
s405、根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、所述遮挡特征距离、以及所述交叉特征距离,对所述特征提取网络进行训练。
可以理解的是,在对特征提取网络进行训练的过程中,通过引入交叉特征距离,保证了特征提取网络对非遮挡图像以及遮挡图像中,通用特征的提取能力,弱化了由于遮挡物遮挡对特征提取结果的影响,提高了人脸识别模型的准确度,同时使得模型具备了对遮挡图像和非遮挡图像进行混合识别的能力。
为了实现对现有的遮挡人脸图像进行人脸识别的人脸识别模型的复用,在一个可选实施例中,还可以将前述训练好的人脸识别模型,直接采用原始图像进行再训练,缩短了人脸识别模型的训练周期;在再训练的过程中,引入原始图像的原始特征数据和遮挡图像的遮挡特征数据之间的交叉特征距离,从而使所训练模型兼备了对不存在遮挡物的非遮挡人脸图像的人脸识别能力。
为了实现对非遮挡人脸图像进行人脸识别的人脸识别模型的复用,在另一可选实施例中,还可以将训练好的非遮挡人脸识别模型,直接采用遮挡图像进行再训练,缩短了人脸识别模型的训练周期;在再训练的过程中,引入遮挡特征数据的人脸识别误差、遮挡特征距离和交叉特征距离,从而使所训练模型兼备了对存在遮挡物的遮挡人脸图像的人脸识别能力。
参见图4b所示的一种人脸识别模型训练过程示意图,以基于样本用户的两个遮挡图像和一个原始图像,进行人脸识别模型训练为例,对人脸识别模型的训练过程,进行详细说明。
1)针对每个样本用户,获取样本用户的原始图像a、遮挡图像a和遮挡图像b。其中,遮挡图像a和遮挡图像b的遮挡物材质不同,或对应的候选原始图像中的人脸姿态不同;遮挡图像a和遮挡图像b对应的各候选原始图像,与原始图像a的人脸姿态相同或不同。
2)通过特征提取网络分别对原始图像a、遮挡图像a和遮挡图像b进行特征提取,得到原始特征数据a、遮挡特征数据a和遮挡特征数据b。
3)通过分类器,分别对原始特征数据a、遮挡特征数据a和遮挡特征数据b进行分类,得到预测识别结果a、预测识别结果a和预测识别结果b;通过预测识别结果a与该样本用户的实际标签识别结果,预测识别结果a与该样本用户的实际标签识别结果,以及预测识别结果b与该样本用户的实际标签识别结果,确定分类损失。
4)根据遮挡特征数据a和遮挡特征数据b之间的特征距离,确定遮挡特征间损失;根据遮挡特征数据a与原始特征数据a之间的特征距离,以及遮挡特征数据b与原始特征数据a之间的特征距离,确定交叉特征间损失。
5)根据各样本用户的分类损失、遮挡特征间损失以及交叉特征间损失,构建损失函数。
6)根据损失函数对特征提取网络和分类器中的网络参数进行优化调整,得到对遮挡人脸图像和非遮挡人脸图像进行混合识别的人脸识别模型。
本申请实施例通过引入交叉特征距离,保证了特征提取网络对非遮挡图像以及遮挡图像中,通用特征的提取能力,弱化了由于遮挡物遮挡对特征提取结果的影响,进而提高了人脸识别模型的鲁棒性和准确度,同时使得模型具备了对遮挡图像和非遮挡图像进行混合识别的能力。
在上述各技术方案的基础上,在一个可选实施例中,还可以通过训练好的特征提取网络,进行人脸识别。示例性地,采用训练好的特征提取网络,提取待测用户的人脸图像的待测特征数据;确定待测特征数据与注册人脸库中各注册人脸特征之间的相似度;根据相似度,确定待测用户的用户类别。其中,注册人脸库包括注册遮挡人脸库、注册非遮挡人脸库以及注册交叉人脸库中的至少一种。
可以理解的是,由于本申请实施例涉及的人脸识别模型具备对遮挡人脸图像和非遮挡人脸图像的混合识别能力,为了提高构建注册人脸库时的便捷度,可选的,注册人脸库为注册交叉人脸库。
图5a是本申请实施例提供的另一种人脸识别模型训练方法的流程图,本申请实施例在上述各技术方案的基础上,提供了一种优选实施方式。
s501、根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像和至少两个原始图像,分别进行特征提取,得到至少两个遮挡特征数据,以及至少两个原始特征数据。
s502、确定至少两个遮挡特征数据之间的遮挡特征距离;确定至少两个原始特征数据之间的原始特征距离;以及,确定至少两个原始特征数据和遮挡特征数据之间的交叉特征距离。
s503、根据至少两个原始特征数据的人脸识别误差、至少两个遮挡特征数据的人脸识别误差、遮挡特征距离、原始特征距离、以及各交叉特征距离,对特征提取网络进行训练。
可以理解的是,通过在对人脸识别模型的特征提取网络的训练过程中,引入原始特征数据的人脸识别误差以及遮挡特征数据的人脸识别误差,使得人脸识别模型能够兼备对遮挡人脸以及非遮挡人脸的识别能力;通过引入原始特征距离,能够弱化人脸姿态对所提取特征的影响,保证所提取特征的一致性和通用性,从而提高人脸识别模型对非遮挡图像的人脸识别结果的准确度和鲁棒性;通过引入遮挡特征距离,能够弱化人脸姿态和/或遮挡物材质对所提取特征的影响,保证所提取特征的一致性和通用性,从而提高人脸识别模型对遮挡图像的人脸识别结果的准确度和鲁棒性;通过交叉特征距离,能够进一步提高对原始图像和遮挡图像所提取特征的一致性和通用性,从而提高人脸识别模型对遮挡图像和非遮挡图像进行混合识别时的识别结果的准确度。
为了实现对遮挡人脸图像进行人脸识别的人脸识别模型的复用,在一种可选实施例中,可以将各训练好的遮挡人脸识别模型中,引入原始特征距离和交叉特征距离,从而达到上述效果。
为了实现对非遮挡人脸图像进行人脸识别的人脸识别模型的复用,在另一可选实施例中,还可以将训练好的非遮挡人脸识别模型,直接采用遮挡图像进行再训练,并在再训练的过程中,引入遮挡特征数据的人脸识别误差、遮挡特征距离、原始特征距离以及交叉特征距离,从而达到上述效果
参见图5b所示的一种人脸识别模型训练过程示意图,以基于样本用户的两个遮挡图像和两个原始图像,进行人脸识别模型训练为例,对人脸识别模型的训练过程,进行详细说明。
1)针对每个样本用户,获取样本用户的原始图像a、原始图像b、遮挡图像a和遮挡图像b。其中,遮挡图像a和遮挡图像b的遮挡物材质不同,或对应的候选原始图像中的人脸姿态不同;原始图像a和原始图像b中的人脸姿态不同;遮挡图像a和遮挡图像b对应的各候选原始图像,与原始图像a或原始图像b的人脸姿态相同或不同。
2)通过特征提取网络分别对原始图像a、原始图像b、遮挡图像a和遮挡图像b进行特征提取,得到原始特征数据a、原始特征数据b、遮挡特征数据a和遮挡特征数据b。
3)通过分类器,分别对原始特征数据a、原始特征数据b、遮挡特征数据a和遮挡特征数据b进行分类,得到预测识别结果a、预测识别结果b、预测识别结果a和预测识别结果b;通过预测识别结果a与该样本用户的实际标签识别结果,预测识别结果b与该样本用户的实际标签识别结果,预测识别结果a与该样本用户的实际标签识别结果,以及预测识别结果b与该样本用户的实际标签识别结果,确定分类损失。
4)根据遮挡特征数据a和遮挡特征数据b之间的特征距离,确定遮挡特征间损失;根据原始特征数据a和原始特征数据b之间的特征距离,确定原始特征间损失;以及根据遮挡特征数据a分别与原始特征数据a和原始特征数据b之间的特征距离,以及遮挡特征数据b分别与原始特征数据a和原始特征数据b之间的特征距离,确定交叉特征间损失。
5)根据各样本用户的分类损失、遮挡特征间损失、原始特征间损失以及交叉特征间损失,构建损失函数。
6)根据损失函数对特征提取网络和分类器中的网络参数进行优化调整,得到兼备对存在遮挡人脸图像和非遮挡人脸图像,进行人脸识别的人脸识别模型,同时该人脸识别模型还具备对遮挡人脸图像和非遮挡人脸图像的混合识别能力,并分别提高了对遮挡人脸图像和非遮挡人脸图像的识别精度。
图6是本申请实施例提供的一种人脸识别模型训练装置的结构图,该人脸识别模型训练装置600,包括:遮挡特征数据得到模块601、遮挡特征距离确定模块602和特征提取网络训练模块603。其中,
遮挡特征数据得到模块601,用于根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;
遮挡特征距离确定模块602,用于确定至少两个所述遮挡特征数据之间的遮挡特征距离;
特征提取网络训练模块603,用于根据至少一个所述遮挡特征数据的人脸识别误差,以及所述遮挡特征距离,对所述特征提取网络进行训练。
本申请实施例通过遮挡特征数据得到模块根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;通过遮挡特征距离确定模块确定至少两个遮挡特征数据之间的遮挡特征距离;通过特征提取网络训练模块根据至少一个遮挡特征数据的人脸识别误差,以及遮挡特征距离,对特征提取网络进行训练。上述技术方案通过引入遮挡特征数据的人脸识别误差,对特征提取网络进行训练,使得训练后的特征提取网络具备了对存在遮挡物的遮挡人脸图像,进行特征数据提取的能力,从而基于所提取特征进行人脸识别时,保证了人脸识别结果的准确度。同时,通过引入遮挡特征距离,保证了特征提取网络,对遮挡图像中通用特征的提取能力,弱化了由于姿态和/或遮挡物材质等因素对特征提取结果的影响,提高了人脸识别模型的鲁棒性和准确性。
进一步地,该装置,还包括:
原始特征数据得到模块,用于在根据各所述遮挡特征数据的人脸识别误差,以及各所述遮挡特征距离,对所述特征提取网络进行训练之前,根据所述特征提取网络,对所述样本用户的至少一个原始图像进行特征提取,得到原始特征数据;
相应的,所述特征提取网络训练模块603,包括:
第一特征提取网络训练单元,用于根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练。
进一步地,若所述原始图像为至少两个,则所述装置还包括:
原始特征距离确定模块,用于在根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练之前,确定至少两个所述原始特征数据之间的原始特征距离;
相应的,所述特征提取网络训练模块603,包括:
第二特征提取网络训练单元,用于根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、所述遮挡特征距离、以及所述原始特征距离,对所述特征提取网络进行训练。
进一步地,该装置,还包括:
交叉特征距离确定模块,用于在根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、以及所述遮挡特征距离,对所述特征提取网络进行训练之前,
确定所述原始特征数据与所述遮挡特征数据之间的交叉特征距离;
相应的,所述特征提取网络训练模块603,包括:
第三特征提取网络训练单元,用于根据至少一个所述原始特征数据的人脸识别误差、至少一个所述遮挡特征数据的人脸识别误差、所述遮挡特征距离、以及所述交叉特征距离,对所述特征提取网络进行训练。
进一步地,该装置,还包括:
待测特征数据提取模块,用于采用训练好的所述特征提取网络,提取待测用户的人脸图像的待测特征数据;
相似度确定模块,用于确定所述待测特征数据与注册人脸库中各注册人脸特征之间的相似度;其中,注册人脸库包括注册遮挡人脸库、注册非遮挡人脸库以及注册交叉人脸库中的至少一种;
用户类别确定模块,用于根据所述相似度,确定所述待测用户的用户类别。
进一步地,若所述注册人脸库包括注册遮挡人脸库和所述注册非遮挡人脸库,所述相似度确定模块,包括:
相似度确定单元,用于若识别到所述待测用户的人脸图像覆盖有遮挡物,则确定所述待测特征数据与注册遮挡人脸库中各注册人脸特征之间的相似度。
进一步地,该装置,还包括:
候选原始图像获取模块,用于获取所述样本用户的至少两个候选原始图像;
遮挡图像得到模块,用于对各所述候选原始图像分别添加遮挡物,得到至少两个遮挡图像。
进一步地,所述遮挡物为口罩。
进一步地,至少两个所述遮挡图像的遮挡物材质不同,和/或,至少两个所述候选原始图像的姿态不同。
上述人脸识别模型训练装置可执行本申请任意实施例所提供的人脸识别模型训练方法,具备执行人脸识别模型训练方法相应的功能模块和有益效果。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图7所示,是实现本申请实施例的人脸识别模型训练方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器701为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的人脸识别模型训练方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的人脸识别模型训练方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的人脸识别模型训练方法对应的程序指令/模块(例如,附图6所示的遮挡特征数据得到模块601、遮挡特征距离确定模块602和特征提取网络训练模块603)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的人脸识别模型训练方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储实现人脸识别模型训练方法的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至实现人脸识别模型训练方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现人脸识别模型训练方法的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,以及产生与实现人脸识别模型训练方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,根据人脸识别模型中的特征提取网络,对样本用户的至少两个遮挡图像分别进行特征提取,得到至少两个遮挡特征数据;确定至少两个遮挡特征数据之间的遮挡特征距离;根据至少一个遮挡特征数据的人脸识别误差,以及遮挡特征距离,对特征提取网络进行训练。上述技术方案通过引入遮挡特征数据的人脸识别误差,对特征提取网络进行训练,使得训练后的特征提取网络具备了对存在遮挡物的遮挡人脸图像,进行特征数据提取的能力,从而基于所提取特征进行人脸识别时,保证了人脸识别结果的准确度。同时,通过引入遮挡特征距离,保证了特征提取网络,对遮挡图像中通用特征的提取能力,弱化了由于姿态和/或遮挡物材质等因素对特征提取结果的影响,提高了人脸识别模型的鲁棒性和准确性。应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。