一种人脸识别方法、系统及电子设备和存储介质与流程

文档序号:18321314发布日期:2019-08-03 10:29阅读:178来源:国知局
一种人脸识别方法、系统及电子设备和存储介质与流程

本申请涉及人脸识别技术领域,更具体地说,涉及一种人脸识别方法、系统及一种电子设备和一种计算机可读存储介质。



背景技术:

对于零售行业门店(如服装店、商店等)需要统计对客流属性分析,主要包括统计到店人流中性别和年龄分布,并制定相应的销售策略。通过摄像设备采集人脸图片,并识别该人脸图片的性别和年龄信息。

在现有技术中,采用机器学习模型(如svm、adaboost)等对输入人脸图片进行识别,准确度较差。且识别性别和年龄信息需要两个模型进行分别识别,识别效率较低。

因此,如何提高人脸识别的效率和准确度是本领域技术人员需要解决的技术问题。



技术实现要素:

本申请的目的在于提供一种人脸识别方法、系统及一种电子设备和一种计算机可读存储介质,提高了人脸识别的效率和准确度。

为实现上述目的,本申请提供了一种人脸识别方法,包括:

获取训练集;其中,所述训练集包括已标记性别和年龄的人脸图片;

利用所述训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型,以便利用所述目标学习模型识别目标人脸图片;

其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

其中,所述性别识别分支包括:

与所述特征提取层连接的第一batchnorm层;

与所述第一batchnorm层连接的第一全连接层。

其中,所述第一年龄识别分支包括:

与所述第一batchnorm层连接的第二batchnorm层;

与所述第二batchnorm层连接的第二全连接层;

所述第二年龄分支包括:

与所述第一batchnorm层连接的第三batchnorm层;

与所述第三batchnorm层连接的第三全连接层。

其中,所述特征提取层利用全局可分离卷积对所述输入人脸图片进行特征提取。

其中,所述获取训练集,包括:

获取训练集,并对所述训练集中的每个所述人脸图片进行图像预处理,得到每个所述人脸图片对应的标准人脸图片。

其中,所述利用所述训练集训练mobilefacenet学习模型,包括:

利用所述训练集训练mobilefacenet学习模型;其中,在训练过程中采用交叉熵损失函数。

其中,所述利用所述目标学习模型识别目标人脸图片,包括:

当接收到目标人脸图片时,将所述目标人脸图片输入所述目标学习模型中,得到所述目标人脸图片的性别识别结果和年龄识别结果。

为实现上述目的,本申请提供了一种人脸识别系统,包括:

获取模块,用于获取训练集;其中,所述训练集包括已标记性别和年龄的人脸图片;

训练模块,用于利用所述训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型,以便利用所述目标学习模型识别目标人脸图片;

其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

为实现上述目的,本申请提供了一种电子设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述人脸识别方法的步骤。

为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述人脸识别方法的步骤。

通过以上方案可知,本申请提供的一种人脸识别方法,包括:获取训练集;其中,所述训练集包括已标记性别和年龄的人脸图片;利用所述训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型,以便利用所述目标学习模型识别目标人脸图片;其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

本申请提供的人脸识别方法,通过训练完成的mobilefacenet学习模型对人脸图片的性别和年龄进行识别。mobilefacenet学习模型采用轻量高效的网络设计和损失函数设计,可以同时解决人脸识别中效率和准确度的问题。训练利用的训练集包括同时标记了性别和年龄的人脸图片,训练完成的

mobilefacenet学习模型可以同时输出性别和年龄的识别结果,进一步提高了人脸识别的效率。另外,对于不同性别识别结果的人脸图片,采用不同的年龄识别分支识别其年龄,进一步提高了人脸识别的准确度。由此可见,本申请提供的人脸识别方法,提高了人脸识别的效率和准确度。本申请还公开了一种人脸识别系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1为根据一示例性实施例示出的一种人脸识别方法的流程图;

图2为bottleneck结构的卷积的结构示意图;

图3为根据一示例性实施例示出的另一种人脸识别方法的流程图;

图4为根据一示例性实施例示出的又一种人脸识别方法的流程图;

图5为根据一示例性实施例示出的一种人脸识别系统的结构图;

图6为根据一示例性实施例示出的一种电子设备的结构图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例公开了一种人脸识别方法,提高了人脸识别的效率和准确度。

参见图1,根据一示例性实施例示出的一种人脸识别方法的流程图,如图1所示,包括:

s101:获取训练集;其中,所述训练集包括已标记性别和年龄的人脸图片;

在本步骤中,获取用于训练深度学习模型的训练集,该训练集中的人脸图片为使用mtcnn人脸检测模型裁剪数据集中后的人脸图片。训练集中的人脸图片已标记性别和年龄,其中,性别标签包括男和女,对应的后续目标学习模型输出的性别分类为两分类。年龄标签可以包括0至99岁,超过超过99岁可以视为99岁,对应的后续目标学习模型输出的年龄分类为100分类。当然还可以根据年龄分层设置年龄标签,例如,年龄标签可以为n维数组,对应的后续目标学习模型输出的年龄分类为n分类,标签中的第1个数据对应年龄0-9岁,第2个数据对应年龄10-19岁,依此类推,在此不进行具体限定。

s102:利用所述训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型,以便利用所述目标学习模型识别目标人脸图片;

其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

在具体实施中,利用上一步骤获取的训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型。mobilefacenet为当前较新的深度学习模型,主要被应用于人脸识别方向,对于人脸相关的应用有一定的适用性。在训练过程中对年龄分支和性别分支进行同时训练,得到目标学习模型,实现了同一学习模型同时输出性别和年龄分类结果。

在训练时,首先使用全量的训练集训练性别识别分支,再利用性别识别结果为男性的人脸图片训练第一年龄识别分支,利用性别识别结果为女性的人脸图片训练第二年龄识别分支,即第一年龄识别分支用于识别性别识别结果为男性的人脸图片,第二年龄识别分支用于识别性别识别结果为女性的人脸图片。对于不同性别识别结果的人脸图片,采用不同的年龄识别分支识别其年龄,进一步提高了人脸识别的准确度。

优选的,在训练过程中采用交叉熵损失函数,由于mobilefacenet轻量高效的的网络设计和损失函数设计,能同时满足准确性和效率问题。

在具体实施中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层;与所述特征提取层连接的性别分支对应的第一batchnorm层;与所述第一batchnorm层连接的所述性别分支对应的第一全连接层;与所述第一batchnorm层连接的所述第一年龄识别分支对应的第二batchnorm层;与所述第一batchnorm层连接的所述第一年龄识别分支对应的第二全连接层;与所述第一batchnorm层连接的所述第二年龄识别分支对应的第三batchnorm层;与所述第三batchnorm层连接的所述第二年龄识别分支对应的第三全连接层。

mobilefacenet学习模型的特征提取层的具体网络结构如表1所示:

表1

其中,input代表输入特征的大小和维度,operator代表每一步的操作,t为bottleneck中使用参数,c为卷积核的个数,即输出特征图的通道数,n为每一行操作重复的次数,s为卷积或池化操作的步长。

conv为卷积操作,conv3×3即代表卷积核为3×3的卷积操作,depthwise代表depthwise类型的卷积,bottleneck代表bottleneck结构的卷积,其结构如图2所示。gdconv(globaldepthwiseconvolution)为全局可分离卷积。如果输入特征的维度h×w,那么全局可分离卷积的卷积核大小也是h×w,通道数即为特征维数。

上述特征提取层利用全局可分离卷积对所述输入人脸图片进行特征提取,使用全局可分离卷积代替全局池化,对人脸特征信息尽可能保留,提高特征提取的准确度,进而提高人脸识别的准确度。

mobilefacenet学习模型的性别分支为:与上述特征提取层相连的3×3×32、步长为1的卷积层,与该卷积层相连的bn(batchnorm)层,与该bn层相连的全连接层,该全连接层的输出为两分类,即性别分支的输出为两分类。

mobilefacenet学习模型的两个年龄分支结构一致,均包括:与性别分支中的bn相连的3×3×32、步长为1的卷积层,与该卷积层相连的bn(batchnorm)层,与该bn层相连的全连接层,此处不对输出分类的具体数量进行限定。

训练完成后可以利用训练完成的目标学习模型识别目标人脸图片。具体的,当接收到目标人脸图片时,将所述目标人脸图片输入所述目标学习模型中,得到所述目标人脸图片的性别识别结果和年龄识别结果。

本申请实施例提供的人脸识别方法,通过训练完成的mobilefacenet学习模型对人脸图片的性别和年龄进行识别。mobilefacenet学习模型采用轻量高效的网络设计和损失函数设计,可以同时解决人脸识别中效率和准确度的问题。训练利用的训练集包括同时标记了性别和年龄的人脸图片,训练完成的mobilefacenet学习模型可以同时输出性别和年龄的识别结果,进一步提高了人脸识别的效率。另外,对于不同性别识别结果的人脸图片,采用不同的年龄识别分支识别其年龄,进一步提高了人脸识别的准确度。由此可见,本申请实施例提供的人脸识别方法,提高了人脸识别的效率和准确度。

本申请实施例公开了一种人脸识别方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

参见图3,根据一示例性实施例示出的另一种人脸识别方法的流程图,如图3所示,包括:

s201:获取训练集,并对所述训练集中的每个所述人脸图片进行图像预处理,得到每个所述人脸图片对应的标准人脸图片;

在本实施例中,利用训练集中的人脸图片训练mobilefacenet学习模型之前,首先对每个人脸图片进行图像预处理,得到标准人脸图片。此处不对预处理的具体操作进行限定,对目标人脸图片进行图像预处理的步骤可以包括调整所述目标人脸图片的尺寸为目标尺寸。例如,可以将人脸图片的大小同一为112×112。对目标人脸图片进行图像预处理的步骤也可以包括识别所述目标人脸图片中的人眼位置,根据所述人眼位置矫正所述目标人脸图片,以使所述目标人脸图片中的人脸为正脸。在具体实施中,根据目标人脸图片中的人眼位置,将目标人脸图片中的人脸矫正至双眼水平,即矫正人脸为正脸。

s202:利用所述标准人脸图片训练mobilefacenet学习模型,得到训练完成的目标学习模型;

其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

s203:当接收到待识别人脸图片时,对所述待识别人脸图片进行图像预处理,得到每个所述人脸图片对应的待识别标准人脸图片;

在本步骤中,将待识别人脸图片输入目标学习模型之前,同样需要对该待识别人脸图片进行图像预处理,具体过程与上述介绍相似,在此不再赘述。

s204:将所述待识别标准人脸图片输入所述目标学习模型中,得到所述待识别人脸图片的性别识别结果和年龄识别结果。

本申请实施例公开了一种人脸识别方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

参见图4,根据一示例性实施例示出的又一种人脸识别方法的流程图,如图4所示,包括:

s301:获取训练集,并利用特征点回归模型检测所述训练集中的每个人脸图片中人脸区域的的特征点位置;其中,所述人脸图片具体为已标记性别和年龄的人脸图片;

在本实施例中,获取训练集后,利用特征点回归模型检测每个人脸图片中人脸区域的的特征点位置,以便后续步骤根据该特征点位置进行扩圈操作。此处的特征点回归模型可以优选为dlib68特征点回归模型。

s302:根据所述特征点位置利用预设的扩圈策略对每个所述人脸图片进行扩圈处理;

在本步骤中,基于上一步骤获取的特征点位置利用预设的扩圈策略对每个人脸图片。具体的,可以对人脸图片的宽度进行扩大,以获取人耳等特征,还可以对人脸图片的长度进行扩大,以获取发型等特征,当然也可以同时进行宽度和长度方向上的扩大。根据扩圈后的人脸位置,从原始图像中扣取对应区域的人脸数据,作为后续训练集的人脸图片。

一种具体的扩圈处理方法为:根据每个所述人脸图片中的所述特征点位置确定两眼间距;将每个所述人脸图片的左边界向左移动第一距离,将每个所述人脸图片的右边界向右移动所述第一距离;其中,所述第一距离为第一比值与所述两眼间距的乘积;将每个所述人脸图片的上边界向上移动第二距离,将每个所述人脸图片的下边界向下移动所述第二距离;其中,所述第二距离为第二比值与所述两眼间距的乘积。

在本实施例中,以两眼间距作为扩圈操作的基础。首先根据特征点位置确定两眼间距,按照两眼间距离,将人脸图片的四个边界分别向外扩大一定区域,即将左边界和右边界分别向左向右扩大第一距离,第一距离为第一比值与两眼间距的乘积,将上边界和下边界分别向上向下扩大第二距离,第二距离为第二比值与两眼间距的乘积。此处不对第一比值和第二比值进行具体限定,例如第一比值可以为1/4,第二比值可以为1/2。此处的扩圈操作具体为:宽度向左向右分别扩大1/4个两眼间距,长度向上向下分别扩大1/2个两眼间距。

作为一种优选实施方式,在对人脸图片进行扩圈处理之前,还可以包括对人脸图片进行预处理,得到标准人脸图片的步骤,与上述实施例介绍的相似,在此不再赘述。

作为一种更优选的实施方式,所述根据所述特征点位置利用预设的扩圈策略对每个所述人脸图片进行扩圈处理之后,还包括:调整每个所述人脸图片的尺寸为目标尺寸。由于因为扩圈后的人脸大多不是正方形,如果按照上述图像预处理操作强制归一化成正方形,会有一定的形变,因此可以将人脸图片归一化至固定大小256×192,长宽比大约为4:3。

s303:利用扩圈完成的人脸图片训练mobilefacenet学习模型,得到训练完成的目标学习模型,以便利用所述目标学习模型识别目标人脸图片。

其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

在本实施例中,利用预设的扩圈策略对训练集中的每个人脸图片进行扩圈处理,由于扩圈后的人脸图片包括发型、耳钉等额外信息,即扩圈后的人脸图片可以提取较多的特征,基于此训练得到的学习模型对人脸图片识别的准确度较高。

下面对本申请实施例提供的一种人脸识别系统进行介绍,下文描述的一种人脸识别系统与上文描述的一种人脸识别方法可以相互参照。

参见图5,根据一示例性实施例示出的一种人脸识别系统的结构图,如图5所示,包括:

获取模块501,用于获取训练集;其中,所述训练集包括已标记性别和年龄的人脸图片;

训练模块502,用于利用所述训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型,以便利用所述目标学习模型识别目标人脸图片;

其中,所述mobilefacenet学习模型包括用于对输入人脸图片进行特征提取的特征提取层、与所述特征提取层连接的性别识别分支、与所述性别识别分支连接的第一年龄识别分支和第二年龄分支;所述第一年龄识别分支和所述第二年龄分支分别对应所述性别识别分支输出的两分类。

本申请实施例提供的人脸识别系统,通过训练完成的mobilefacenet学习模型对人脸图片的性别和年龄进行识别。mobilefacenet学习模型采用轻量高效的网络设计和损失函数设计,可以同时解决人脸识别中效率和准确度的问题。训练利用的训练集包括同时标记了性别和年龄的人脸图片,训练完成的mobilefacenet学习模型可以同时输出性别和年龄的识别结果,进一步提高了人脸识别的效率。另外,对于不同性别识别结果的人脸图片,采用不同的年龄识别分支识别其年龄,进一步提高了人脸识别的准确度。由此可见,本申请实施例提供的人脸识别系统,提高了人脸识别的效率和准确度。

在上述实施例的基础上,作为一种优选实施方式,所述性别识别分支包括:

与所述特征提取层连接的第一batchnorm层;

与所述第一batchnorm层连接的第一全连接层。

在上述实施例的基础上,作为一种优选实施方式,所述第一年龄识别分支包括:

与所述第一batchnorm层连接的第二batchnorm层;

与所述第二batchnorm层连接的第二全连接层;

所述第二年龄分支包括:

与所述第一batchnorm层连接的第三batchnorm层;

与所述第三batchnorm层连接的第三全连接层。

在上述实施例的基础上,作为一种优选实施方式,所述具体为获取训练集,并对所述训练集中的每个所述人脸图片进行图像预处理,得到每个所述人脸图片对应的标准人脸图片的模块。

在上述实施例的基础上,作为一种优选实施方式,所述训练模块502具体为利用所述训练集训练mobilefacenet学习模型;其中,在训练过程中采用交叉熵损失函数的模块。

在上述实施例的基础上,作为一种优选实施方式,所述训练模块502包括:

训练单元,用于利用所述训练集训练mobilefacenet学习模型,得到训练完成的目标学习模型;

识别单元,用于当接收到目标人脸图片时,将所述目标人脸图片输入所述目标学习模型中,得到所述目标人脸图片的性别识别结果和年龄识别结果。

关于上述实施例中的系统,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本申请还提供了一种电子设备,参见图6,本申请实施例提供的一种电子设备600的结构图,如图6所示,可以包括处理器11和存储器12。该电子设备600还可以包括多媒体组件13,输入/输出(i/o)接口14,以及通信组件15中的一者或多者。

其中,处理器11用于控制该电子设备600的整体操作,以完成上述的人脸识别方法中的全部或部分步骤。存储器12用于存储各种类型的数据以支持在该电子设备600的操作,这些数据例如可以包括用于在该电子设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件13可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器12或通过通信组件15发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口14为处理器11和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件15用于该电子设备600与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件15可以包括:wi-fi模块,蓝牙模块,nfc模块。

在一示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的人脸识别方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述人脸识别方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器12,上述程序指令可由电子设备600的处理器11执行以完成上述的人脸识别方法。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1