人脸识别方法及其模型训练方法技术

技术编号:27592362 阅读:19 留言:0更新日期:2021-03-10 10:10
人脸识别方法及其模型训练方法,其中,人脸识别模型训练方法包括:a)获得人脸数据集;b)对人脸数据集进行预处理,得到输入数据;c)将输入数据输入到待训练神经网络中,待训练神经网络对输入数据进行特征提取;d)根据待训练神经网络输出的输出向量来计算网络损失;e)根据网络损失来更新权重值;f)重复执行上述步骤c、步骤d、步骤e,直至网络损失收敛至低于预定的第一目标值;g)将待训练神经网络中小于预设的第一阈值的权重值设置为0;h)重复执行上述步骤c、步骤d、步骤e,直至网络损失收敛至低于预定的第二目标值。本发明专利技术能够提高人脸检测的准确率,加快人脸识别的速度。加快人脸识别的速度。加快人脸识别的速度。

【技术实现步骤摘要】
人脸识别方法及其模型训练方法


[0001]本专利技术涉及人工智能
,特别是涉及一种人脸识别方法及其模型训练方法。

技术介绍

[0002]随着现代科学信息产业的发展,身份认证技术已经转到了生物特征层面。当前的生物特征识别技术包括:指纹识别、视网膜识别、步态识别等。与其它识别方法相比,人脸识别由于具有直接、友好、方便等特点,使用者无任何心理障碍,易于为用户所接受,从而广泛应用于诸如刑侦破案、证件验证、视频监控、入口控制等领域。
[0003]早期的人脸识别系统采用传统的机器学习的方法,包括几何特征、局部特征分析等方法,但这些方法都存在着识别率不高、抗干扰能力差等缺点,这些对人脸识别系统的应用造成了极大的干扰。
[0004]近年来,随着人工智能的快速发展,采用训练后的人工神经网络来进行人脸识别是未来的发展趋势。现有技术中用于人脸识别的人工神经网络往往存在着误检率高、检测速度慢等缺陷,阻碍了人工神经网络在人脸识别领域的应用。
[0005]由此可见,人脸检测的人工神经网络如何克服上述缺陷,训练出误检率低、检测速度快的人工神经网络,进而提高人脸检测的检测准确率和检测速度,是目前亟需解决的问题。

技术实现思路

[0006]本专利技术解决的技术问题是:如何提高人脸检测的检测准确率和检测速度。
[0007]为了解决上述技术问题,本专利技术实施例提供一种人脸识别模型训练方法,包括:a)获得人脸数据集,所述人脸数据集用于对人脸识别的待训练神经网络进行训练;b)对人脸数据集进行预处理,得到输入数据;c)将输入数据输入到待训练神经网络中,待训练神经网络对输入数据进行特征提取;d)根据待训练神经网络输出的输出向量来计算网络损失,包括采用如下算式来计算待训练神经网络的网络损失:其中,L表示网络损失,N表示每个批次训练样本的数量,s表示人脸向量映射超球体的半径,yi表示某一类人或某个人,m表示角度裕量,λ表示平衡参数,用于平衡算式中加号前后两部分的权重,xi表示某一类的向量,cyi表示第yi类样本的深度特征的中心,k表示网络第k层,wi表示第i层所有权重之和;e)根据网络损失来更新权重值;f)重复执行上述步骤c、步骤d、步骤e,直至网络损失收敛至低于预定的第一目标值;
g)将待训练神经网络中小于预设的第一阈值的权重值设置为0;h)重复执行上述步骤c、步骤d、步骤e,直至网络损失收敛至低于预定的第二目标值。
[0008]可选的,所述获得人脸数据集包括:采用本地摄像头和OpenCV来获取人脸数据集。
[0009]可选的,所述获得人脸数据集包括:从互联网上下载公开的人脸数据集。
[0010]可选的,所述获得人脸数据集还包括:对人脸数据集进行数据清理;所述对人脸数据集进行数据清理包括:获取第一神经网络,所述第一神经网络为经训练后的人脸识别神经网络;将人脸数据集输入到第一神经网络中,其中,将同一个人的照片放在同一个文件夹内进行输入,不同的文件夹对应于不同人的照片;针对各张照片,第一神经网络分别输出输出向量;针对各个文件夹,分别计算文件夹内所有照片的输出向量的平均值;计算各张照片的输出向量与该照片所在文件夹内所有照片的输出向量的平均值之间的距离,作为第一距离;删除第一距离大于预设的第二阈值的照片。
[0011]可选的,所述获得人脸数据集包括:从互联网上下载多位公众人物的照片组成人脸数据集,该人脸数据集中包括关于各位公众人物的照片多张。
[0012]可选的,所述对人脸数据集进行预处理包括:对于人脸数据集中的YUV图形,提取其在Y方向上的分量作为待训练神经网络的输入。
[0013]可选的,所述对人脸数据集进行预处理包括:对人脸数据集中的照片进行随机旋转、随机翻转和/或随机裁剪。
[0014]可选的,所述待训练神经网络对输入数据进行特征提取包括:采用Inception-Resnet-v1网络结构的神经网络来对输入数据进行特征提取。
[0015]可选的,所述根据网络损失来更新权重值包括:计算网络损失对于各个网络权重值的导数,根据该导数和学习率来更新权重值。
[0016]可选的,所述第二目标值小于或等于所述第一目标值。
[0017]为了解决上述技术问题,本专利技术实施例还提供一种人脸识别方法,包括:采用如上所述的人脸识别模型训练方法来对待训练神经网络进行训练;采用训练后的待训练神经网络来进行人脸识别。
[0018]与现有技术相比,本专利技术的技术方案具有以下有益效果:在训练直至网络损失收敛至低于预定的第一目标值之后,将待训练神经网络中小于预设的第一阈值的权重值设置为0,然后继续进行训练,直至网络损失收敛至低于预定的第二目标值,能够让算法更有利于硬件中的稀疏模块去发挥更高的效果,从而减少了人脸识别算法运行的时间,加快了人脸识别的检测速度。
[0019]进一步的,采用全新设计的算法来计算网络损失,该算法将Arcface损失函数与Centerloss函数结合,能够使得同类分布更紧密,从而有助于降低误检率,提高人脸检测的准确率。
[0020]进一步的,在改进后的网络损失算法的基础上,再进一步增加对于权重值的L1正则化项,从而进一步增加权重值的稀疏程度,加快人脸识别的检测速度。
附图说明
[0021]图1为本专利技术实施例中人脸识别模型训练方法流程图;图2为现有技术中人脸识别算法的训练流程图;图3为本专利技术实施例中深度学习的人脸识别算法的训练流程图。
具体实施方式
[0022]根据
技术介绍
部分的分析可知,现有技术中用于人脸识别的人工神经网络往往存在误检率高、检测速度慢等缺陷。
[0023]本专利技术在训练直至网络损失收敛至低于预定的第一目标值之后,将待训练神经网络中小于预设的第一阈值的权重值设置为0,然后继续进行训练,直至网络损失收敛至低于预定的第二目标值,同时采用全新设计的算法来计算网络损失,该算法将Arcface损失函数与Centerloss函数结合,再进一步增加对于权重值的L1正则化项,从而使得训练后的人脸检测神经网络的检测准确率更高、检测速度更快。
[0024]为使本领域技术人员更好地理解和实现本专利技术,以下参照附图,通过具体实施例进行详细说明。
[0025]实施例一如下所述,本专利技术实施例提供一种人脸识别模型训练方法。
[0026]参照图1所示的人脸识别模型训练方法流程图,以下通过具体步骤进行详细说明:S101,获得人脸数据集。
[0027]其中,所述人脸数据集用于对人脸识别的待训练神经网络进行训练。
[0028]在一些实施例中,可以采用本地摄像头和OpenCV来获取人脸数据集。具体的,通过完成Python脚本,脚本可以开启本地计算机的摄像头,拥有本地人脸检测功能,并能将人脸检测出来的人脸截图保存在本地文件夹中。
[0029]对于志愿者的人脸样本,需要收集符合如下一些条件的照片:不同的光线条件、一天中的不同时间和/或不同的表情。
[0030]在另一些实施例中,可以从互联网上下载公本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种人脸识别模型训练方法,其特征在于,包括:a)获得人脸数据集,所述人脸数据集用于对人脸识别的待训练神经网络进行训练;b)对人脸数据集进行预处理,得到输入数据;c)将输入数据输入到待训练神经网络中,待训练神经网络对输入数据进行特征提取;d)根据待训练神经网络输出的输出向量来计算网络损失,包括采用如下算式来计算待训练神经网络的网络损失:其中,L表示网络损失,N表示每个批次训练样本的数量,s表示人脸向量映射超球体的半径,表示某一类人或某个人,m表示角度裕量,λ表示平衡参数,用于平衡算式中加号前后两部分的权重,表示某一类的向量,表示第类样本的深度特征的中心,k表示网络第k层,表示第i层所有权重之和;e)根据网络损失来更新权重值;f)重复执行上述步骤c、步骤d、步骤e,直至网络损失收敛至低于预定的第一目标值;g)将待训练神经网络中小于预设的第一阈值的权重值设置为0;h)重复执行上述步骤c、步骤d、步骤e,直至网络损失收敛至低于预定的第二目标值。2.如权利要求1所述的人脸识别模型训练方法,其特征在于,所述获得人脸数据集包括:采用本地摄像头和OpenCV来获取人脸数据集。3.如权利要求1所述的人脸识别模型训练方法,其特征在于,所述获得人脸数据集包括:从互联网上下载公开的人脸数据集。4.如权利要求3所述的人脸识别模型训练方法,其特征在于,所述获得人脸数据集还包括:对人脸数据集进行数据清理;所述对人脸数据集进行数据清理包括:获取第一神经网络,所述第一神经网络为经训练后的人脸识别神经网络;将人脸数据集输入到第一神经网络中,其中,将同一个人的照片放在同一个文件夹内进行输入,不同的...

【专利技术属性】
技术研发人员:吕桢飞
申请(专利权)人:上海齐感电子信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1