本发明涉及图像识别技术领域,特别涉及一种人脸质量评定方法、系统、电子设备及可读存储介质。
背景技术:
随着移动互联网的发展,大量的人脸图像数据,包括手机,监控图像设备,摄像头拍摄等,出现在人们的生活当中。这些图像数据也广泛地应用于人脸识别,人脸活体检测等相关的技术当中。然而,这些数据因其拍摄设备,拍摄环境,拍摄手法,存储方式,后期处理等因素的影响,具有质量参差不齐的特点。这些质量问题很容易导致活体检测与人脸识别性能的下降。除此之外,在某些应用上要求上传的图像需要符合某些质量规范要求。因此,一套合格的质量判断与择优系统无论是对人脸活体检测还是对于人脸识别以及相关的一些规范要求来说都是必要的。
现有的人脸图片质量择优方法主要通过传统的图像处理方法来对图像质量进行判断,而且通常仅对某个方面,例如说模糊,遮挡等进行判断。这些方法基于传统的图像处理与模式匹配,使用了人工设计的特征,鲁棒性较差,难以对各种任务均有效;考虑的质量影响因素较为单一,评价指标较少;使用数据较少,普适性差,无法应对较为复杂的场景。
技术实现要素:
本发明要解决的技术问题是如何提供一种适应多种场景、普适性好的人脸质量评定方法、系统、电子设备及可读存储介质。
为了解决上述技术问题,本发明的技术方案为:
第一方面,本发明提出了一种人脸质量评定方法,包括步骤:
准备包含人脸的图像数据集以及对应的人脸属性标签;
进行人脸检测,获得关键点并进行人脸对齐;
将人脸图像的像素值进行归一化;
评估人脸质量得分,质量得分评估的参照因素包括人脸亮度、左右脸亮度差异、两眼间距及神经网络质量输出,所述神经网络质量输出通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估;将各参照因素进行加权计算,获得人脸质量得分。
优选地,所述神经网络质量输出包括绕y轴方向的人脸角度、绕x轴方向的人脸角度、绕z轴方向的人脸角度、表情分类、眼镜分类、口罩分类、眼睛状态分类、嘴巴状态分类、妆容状态分类、人脸真实度、人脸模糊度、人脸遮挡度。
优选地,通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估神经网络质量输出的过程包括,
s1:设计网络训练的目标函数,包括多个softmax损失函数及euclidean损失函数,分别定义如下:
softmax损失l:l=-log(pi),
其中pi为每一个属性类计算出的归一化后的概率,即
euclidean损失l:
其中yi为真实的标签值,
s2:利用已标注好的数据进行训练,得到一个训练模型;然后利用该训练模型对某些样本缺失的标注进行补充,以减少数据标注的稀疏性;
s3:利用s2得到的模型作为新的训练初始化权重,并利用补充标注后的该数据集再次进行端到端的训练;
s4:重复步骤s2及步骤s3直至得到满足条件的网络模型。
优选地,表情分类,眼镜分类,口罩分类,眼睛状态分类,嘴巴状态分类,妆容状态分类采用softmax损失函数作为目标函数;
绕y轴方向的人脸角度,绕x轴方向的人脸角度,对应绕z轴方向的人脸角度,人脸真实度,人脸模糊度,人脸遮挡度则采用euclidean损失函数作为目标函数;
优选地,绕y轴方向的人脸角度,绕x轴方向的人脸角度,对应绕z轴方向的人脸角度,人脸真实度,人脸模糊度,人脸遮挡度则采用euclidean损失函数作为目标函数。
优选地,所述人脸亮度为人脸区域的灰度平均值除以255;所述左右脸亮度差异的计算方法为:左脸的亮度值与右脸亮度值之间的差值的绝对值。
优选地,绕y轴方向的人脸角度区间为[-75°,75°];绕x轴方向的人脸角度区间为[-75°,75°];绕z轴方向的人脸角度区间为[-90°,90°];
表情分类为8类:愤怒、恶心、惊恐、开心、正常、悲伤、惊讶、打哈欠;
眼镜分类为3类:无眼镜、正常眼镜、有色眼镜;
口罩分类为2类:无口罩、戴口罩;
眼睛状态为3类:正常睁眼、闭眼、遮挡;
嘴巴状态为3类:正常闭合、张嘴、遮挡;
妆容状态为2类:正常、浓妆;
人脸真实度区分为:石像雕像画像、动画人脸和真实人脸。
第二方面,本发明还提出一种人脸质量评定系统,包括:
数据模块:准备包含人脸的图像数据集以及对应的人脸属性标签;
检测模块:进行人脸检测,获得关键点并进行人脸对齐;
归一化模块:将人脸图像的像素值进行归一化;
评估模块:评估人脸质量得分,质量得分评估的参照因素包括人脸亮度、左右脸亮度差异、两眼间距及神经网络质量输出,所述神经网络质量输出通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估;将各参照因素进行加权计算,获得人脸质量得分。
第三方面,本发明还提出一种人脸质量评定电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的人脸质量评定方法的步骤。
第四方面,一种人脸质量评定的可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时间实现上述的人脸质量评定方法的步骤。
本发明公开了一种基于深度卷积神经网络和传统图像处理的人脸图像质量判定优劣的方法。在多个数据集上采用深度学习构建多任务的深度卷积神经网络和在部分数据集上采用传统图像处理技术的方式一起,输出多种人脸图像质量的同时,根据适用场景对其进行加权计算,构建了一套人脸图像质量的评估方式。本方法可输出多个人脸图像质量或者进行总体打分,可单独运用在需要控制人脸图像质量的过滤系统上;也可在一个时间周期内挑选出最优人脸,配合人脸识别或者活体检测等系统,实现更高的效率。本方法具有泛化能力好,速度快,具有普适性等优点。
附图说明
图1为本发明人脸质量评定方法一实施例的步骤流程图;
图2为本发明人脸质量评定方法一实施例的106个人脸关键点的示意图;
图3为本发明人脸质量评定方法一实施例的人脸角度定义图;
图4为本发明人脸质量评定方法另一实施例的步骤流程图;
图5为本发明人脸质量评定方法一实施例的模型训练流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明要解决的技术问题是如何提供一种适应多钟场景、普适性好的人脸质量评定方法、系统、电子设备及可读存储介质。
为了解决上述技术问题,本发明的技术方案为:
参照图1,本发明提出了一种人脸质量评定方法,包括步骤:
准备包含人脸的图像数据集以及对应的人脸属性标签;
进行人脸检测,获得关键点并进行人脸对齐;
将人脸图像的像素值进行归一化;
评估人脸质量得分,质量得分评估的参照因素包括人脸亮度、左右脸亮度差异、两眼间距及神经网络质量输出,神经网络质量输出通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估;将各参照因素进行加权计算,获得人脸质量得分。
具体地,神经网络质量输出包括绕y轴方向的人脸角度、绕x轴方向的人脸角度、绕z轴方向的人脸角度、表情分类、眼镜分类、口罩分类、眼睛状态分类、嘴巴状态分类、妆容状态分类、人脸真实度、人脸模糊度、人脸遮挡度。
具体地,通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估神经网络质量输出的过程包括,
设计网络训练的目标函数,包括多个softmax损失函数及euclidean损失函数,分别定义如下:
softmax损失l:l=-log(pi),
其中pi为每一个属性类计算出的归一化后的概率,即
euclidean损失l:
其中yi为真实的标签值,
利用已标注好的数据进行训练,得到一个训练模型;然后利用该训练模型对某些样本缺失的标注进行补充,其选取的为置信度高的样本属性,以减少数据标注的稀疏性;然后得利前述模型作为新的训练初始化权重,并利用补充标注后的该数据集再次进行端到端的训练得到新的模型;重复前面的步骤直到得到满足条件的网络模型。
具体地,表情分类,眼镜分类,口罩分类,眼睛状态分类,嘴巴状态分类,妆容状态分类采用softmax损失函数作为目标函数;
绕y轴方向的人脸角度,绕x轴方向的人脸角度,对应绕z轴方向的人脸角度,人脸真实度,人脸模糊度,人脸遮挡度则采用euclidean损失函数作为目标函数;
具体地,人脸亮度为人脸区域的灰度平均值除以255;左右脸亮度差异的计算方法为:左脸的亮度值与右脸亮度值之间的差值的绝对值。
绕y轴方向的人脸角度区间为[-75°,75°];绕x轴方向的人脸角度区间为[-75°,75°];绕z轴方向的人脸角度区间为[-90°,90°];
表情分类为8类:愤怒、恶心、惊恐、开心、正常、悲伤、惊讶、打哈欠;
眼镜分类为3类:无眼镜、正常眼镜、有色眼镜;
口罩分类为2类:无口罩、戴口罩;
眼睛状态为3类:正常睁眼、闭眼、遮挡;
嘴巴状态为3类:正常闭合、张嘴、遮挡;
妆容状态为2类:正常、浓妆;
人脸真实度区分为:石像雕像画像、动画人脸和真实人脸。
本发明公开了一种基于深度卷积神经网络和传统图像处理的人脸图像质量判定优劣的方法。在多个数据集上采用深度学习构建多任务的深度卷积神经网络和在部分数据集上采用传统图像处理技术的方式一起,输出多种人脸图像质量的同时,根据适用场景对其进行加权计算,构建了一套人脸图像质量的评估方式。本方法可输出多个人脸图像质量或者进行总体打分,可单独运用在需要控制人脸图像质量的过滤系统上;也可在一个时间周期内挑选出最优人脸,配合人脸识别或者活体检测等系统,实现更高的效率。本方法具有泛化能力好,速度快,具有普适性等优点。
参照图4及图5,本发明的另一实施例中,人脸质量评定方法的过程如下。
数据集的准备和预处理。准备包含人脸的图像数据集以及对应的人脸属性标签;其中数据集主要包括2个部分,第一部分数据集的主要组成为多个大型公开数据集,人脸更加多样化。这些数据集的标签较为稀疏,具体表现为部分数据集标有角度标签,部分数据集标有眼镜标签,部分数据集标有嘴巴状态标签等等,针对没有标签的质量属性则人工加入适量标签。第二部分数据集的主要组成为少量私有数据库,更加适用于现实场景。
参照图2,对图像进行人脸检测,得出106个人脸关键点后进行人脸对齐。人脸图像大小为112*96像素。
对人脸图像进行归一化。具体为设定平均图像的rgb值为[127.5,127.5,127.5],缩放值为1/127.5。即人脸图像数据集中的每幅人脸图像减去平均图像并乘以缩放值,把图像像素值归一化到[-1,1]之间。
构建质量输出:共有15个质量输出。构建2个光照相关的质量输出。根据106个人脸关键点划分出人脸各个区域,根据人脸区域的灰度平均值计算人脸亮度:
birghtness=mean(人脸区域的灰度值)/255
根据左右脸的灰度平均值计算左右脸亮度差异。
根据人脸关键点,计算两眼间距。构建1个质量输出。
基于mobilefacenet的神经网络结构来构建多任务卷积神经网络,构建12个质量输出:
绕y轴方向的人脸角度(yaw),绕x轴方向的人脸角度(pitch),绕z轴方向的人脸角度(roll),表情分类,眼镜分类,口罩分类,眼睛状态分类,嘴巴状态分类,妆容状态分类,人脸真实度(该项区分的是石像雕像画像,动漫人脸和真实人脸),人脸模糊度,人脸遮挡度。
参照图3,具体为,绕y轴方向的人脸角度(yaw)区间为[-75°,75°];
绕x轴方向的人脸角度(pitch)区间为[-75°,75°];
绕z轴方向的人脸角度(roll)区间为[-90°,90°];
表情分类为8类:愤怒/恶心/惊恐/开心/正常/悲伤/惊讶/打哈欠;
眼镜分类为3类:无眼镜/正常眼镜/有色眼镜;
口罩分类为2类:无口罩/戴口罩;
眼睛状态为3类:正常睁眼/闭眼/遮挡;
嘴巴状态为3类:正常闭合/张嘴/遮挡;
妆容状态为2类:正常/浓妆;
人脸真实度,该项区分的是石像雕像画像,动画人脸和真实人脸,区间为[0,1];
人脸模糊度区间为[0,1];
人脸遮挡度区间为[0,1];
其中,表情分类,眼镜分类,口罩分类,眼睛状态分类,嘴巴状态分类,妆容状态分类都采用softmax损失函数作为目标函数;饶y轴方向的人脸角度(yaw),绕x轴方向的人脸角度(pitch),对应饶z轴方向的人脸角度(roll),人脸真实度,人脸模糊度,人脸遮挡度则采用euclidean损失函数作为目标函数。
网络训练的目标函数为多个softmax损失函数和euclidean损失函数的组合。多个任务进行共同学习时其损失函数定义如下:
lmult-itasks=a1·lage a2·lyaw a3·lroll a4·lpitch a5·lemotion a6·lglasses a7·lmask a8·leye a9·lmout
a10·lmakeup a11·lrealist
其中lmulti-tasks为多任务的总目标优化函数,ai(i=1,,11)分别为预设的各个损失的权重,
将稀疏标注的数据集放到构建好的卷积神经网络模型中利用反向传播算法进行端到端的训练,得到初始模型。
将数据集送入初始模型进行前向计算,除了已拥有标注的部分质量,该网络模型的高置信度的计算结果将作为协助来补充人脸质量标注,以减少数据集的稀疏性。例如,一张人脸图的眼镜分类识别结果为95%为戴墨镜,该置信度较高,则作为标注;若结果为70%为戴墨镜,该置信度较低,则不作为标注,将该图的眼镜分类的标注空置。
用初始模型进行初始化,利用该数据集再次进行端到端的训练。
可重复以上2步来多次对数据集进行标注补充以得到更加精确的网络模型。
人脸质量评分基于以下15项质量加权计算得出:
人脸亮度(brightness),左右脸亮度差异(side_diff);两眼间距(eye_dist);绕y轴方向的人脸角度(yaw),绕x轴方向的人脸角度(pitch),绕z轴方向的人脸角度(roll),表情分类(emotion),眼镜分类(glasses),口罩分类(mask),眼睛状态分类(eye_status),嘴巴状态分类(mouth_status),妆容状态分类(makeup),人脸真实度(realistic),人脸模糊度(blur),人脸遮挡度(occlusion)。
将各个质量因素标准化。
将人脸光照状态标准化,公式如下:
ebrightness代表人脸亮度的质量评分,区间为0~1,越大代表光照质量越好。在min_brightness(预先设置的最暗光线值)和max_brightness(预先设置的最亮光线值)之间的视为正常光照。
将左右脸亮度差异标准化,公式如下:
eside_diff=1-side_diff
代表左右脸亮度差异的质量评分,区间为[0,1],越大代表人脸越均匀,质量越好。
将角度归一化和标准化,公式如下:
epose=1-(pitch2 yaw2 roll2)/(752 752 902)
代表人脸姿态的综合评分,区间为[0,1],越大表示人脸姿态越好。将两眼间距一化,公式如下:
eeye_dist=min(eyedist,std_eye_dist)/std_eye_dist
eeye_dist代表瞳距的质量评分,区间为[0,1],越大代表瞳距质量越好。std_eye_dist为瞳距标准值,设置该项的作用为限制瞳距对整体质量评分的贡献,即当瞳距大于该值时,瞳距再大也不会提升整体质量评分。
将表情归一化,公式如下:
眼镜分类,口罩分类,眼镜状态分类,嘴巴状态分类,妆容状态分类的归一化同上。
计算总体的人脸质量评分,
equality=a1·epose a2·eeye_dist a3·eemotion a4·eglasses a5·emask a6·eeye_status a7·emouth_status a8·emakeup a9·erealistic a10·eblur a11·eocciusion a12·ebrightness a13·eside_diff
其中,ai(i=1,…13)分别为各个质量项的权重,相加为1。可根据不同场景设置不同的权重分布。equality越大说明该人脸图像质量越好。
第二方面,本发明还提出一种人脸质量评定系统,包括:
数据模块:准备包含人脸的图像数据集以及对应的人脸属性标签;
检测模块:进行人脸检测,获得关键点并进行人脸对齐;
归一化模块:将人脸图像的像素值进行归一化;
评估模块:评估人脸质量得分,质量得分评估的参照因素包括人脸亮度、左右脸亮度差异、两眼间距及神经网络质量输出,神经网络质量输出通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估;将各参照因素进行加权计算,获得人脸质量得分。
第三方面,本发明还提出一种人脸质量评定电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述的人脸质量评定方法的步骤。
第四方面,一种人脸质量评定的可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时间实现上述的人脸质量评定方法的步骤。
本发明技术方案,具有速度快的优点。技术方案中的卷积神经网络使用基于多标签学习的方法,可以混合多个人脸质量,发掘他们之间的关联性,提高模型的泛化能力。且能够在复杂的现实场景下准确地进行识别各类质量属性。包含了较为全面的质量影响因子。其整体质量评分由多个不同的质量评价指标加权计算得出,有效避免了单一因子进行质量评价的局限性。
以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。
1.一种人脸质量评定方法,其特征在于,包括步骤:
准备包含人脸的图像数据集以及对应的人脸属性标签;
进行人脸检测,获得关键点并进行人脸对齐;
将人脸图像的像素值进行归一化;
评估人脸质量得分,质量得分评估的参照因素包括人脸亮度、左右脸亮度差异、两眼间距及神经网络质量输出,所述神经网络质量输出通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估;将各参照因素进行加权计算,获得人脸质量得分。
2.根据权利要求1所述的人脸质量评定方法,其特征在于:所述神经网络质量输出包括绕y轴方向的人脸角度、绕x轴方向的人脸角度、绕z轴方向的人脸角度、表情分类、眼镜分类、口罩分类、眼睛状态分类、嘴巴状态分类、妆容状态分类、人脸真实度、人脸模糊度、人脸遮挡度。
3.根据权利要求2所述的人脸质量评定方法,其特征在于,通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估神经网络质量输出的过程包括:
s1:设计网络训练的目标函数,包括多个softmax损失函数及euclidean损失函数,分别定义如下:
softmax损失l:l=-log(pi),
其中pi为每一个属性类计算出的归一化后的概率,即
euclidean损失l:
其中yi为真实的标签值,
s2:利用已标注好的数据进行训练,得到一个训练模型;利用该训练模型对样本缺失的标注进行补充,以减少数据标注的稀疏性;
s3:利用s2得到的模型作为新的训练初始化权重,并利用补充标注后的该数据集再次进行端到端的训练;
s4:重复步骤s2及步骤s3直至得到满足条件的网络模型。
4.根据权利要求3所述的人脸质量评定方法,其特征在于:
表情分类,眼镜分类,口罩分类,眼睛状态分类,嘴巴状态分类,妆容状态分类采用softmax损失函数作为目标函数;
绕y轴方向的人脸角度,绕x轴方向的人脸角度,对应绕z轴方向的人脸角度,人脸真实度,人脸模糊度,人脸遮挡度则采用euclidean损失函数作为目标函数。
5.根据权利要求2所述的人脸质量评定方法,其特征在于:所述人脸亮度为人脸区域的灰度平均值除以255;所述左右脸亮度差异的计算方法为:左脸的亮度值与右脸亮度值之间的差值的绝对值。
6.根据权利要求2所述的人脸质量评定方法,其特征在于:
绕y轴方向的人脸角度区间为[-75°,75°];绕x轴方向的人脸角度区间为[-75°,75°];绕z轴方向的人脸角度区间为[-90°,90°];
表情分类为8类:愤怒、恶心、惊恐、开心、正常、悲伤、惊讶、打哈欠;
眼镜分类为3类:无眼镜、正常眼镜、有色眼镜;
口罩分类为2类:无口罩、戴口罩;
眼睛状态为3类:正常睁眼、闭眼、遮挡;
嘴巴状态为3类:正常闭合、张嘴、遮挡;
妆容状态为2类:正常、浓妆;
人脸真实度区分为:石像雕像画像、动画人脸和真实人脸。
7.一种人脸质量评定系统,其特征在于,包括:
数据模块:准备包含人脸的图像数据集以及对应的人脸属性标签;
检测模块:进行人脸检测,获得关键点并进行人脸对齐;
归一化模块:将人脸图像的像素值进行归一化;
评估模块:评估人脸质量得分,质量得分评估的参照因素包括人脸亮度、左右脸亮度差异、两眼间距及神经网络质量输出,所述神经网络质量输出通过基于mobilefacenet的神经网络结构来构建多任务卷积神经网络进行评估;将各参照因素进行加权计算,获得人脸质量得分。
8.一种人脸质量评定电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现权利要求1-6任一项所述的人脸质量评定方法的步骤。
9.一种人脸质量评定的可读存储介质,其上存储有计算机程序,其特征在于:该计算机程序被处理器执行时间实现权利要求1-6任一项所述的人脸质量评定方法的步骤。
技术总结