一种基于三级卷积神经网络的人脸检测方法及系统与流程

文档序号:12721213阅读:258来源:国知局
一种基于三级卷积神经网络的人脸检测方法及系统与流程

本发明涉及人脸检测技术领域,具体涉及一种基于三级卷积神经网络的人脸检测方法及系统。



背景技术:

进入二十一世纪以来,计算机技术蓬勃发展,被广泛的运用于各大领域;随着计算机技术的发展,人脸检测技术应运而生并且在不断的迭代、更新中。人脸检测是指对于任意图像集合,采用一定的策略对其进行搜索以确定其中具有人脸的图像。

人脸检测是自动人脸识别系统中的一个关键环节。早期的人脸识别研究主要针对具有较强约束条件的人脸图象(如无背景的图象),往往假设人脸位置一直或者容易获得,因此人脸检测问题并未受到重视。

随着电子商务等应用的发展,人脸识别成为最有潜力的生物身份验证手段,这种应用背景要求自动人脸识别系统能够对一般图象具有一定的识别能力,由此所面临的一系列问题使得人脸检测开始作为一个独立的课题受到研究者的重视。今天,人脸检测的应用背景已经远远超出了人脸识别系统的范畴,在基于内容的检索、数字视频处理、视频检测、人脸建模以及人脸跟踪等方面有着重要的应用价值。

人脸检测技术一般采用的搜索策略为决策树、逻辑回归、朴素贝叶斯以及三级卷积神经网络等算法等,其中基于三级卷积神经网络的人脸检测方法/系统凭借检测速度快,识别准确率高而迅速迭代、更新。现有技术中的基于三级卷积神经网络的人脸检测方法:1)通过多级性能逐级增强的网络进行逐级训练,将前一级判断为人脸的候选框传递给下一级作为训练样本进行学习;2)每一级中通过人脸的分类和人脸框的回归网络进行判决;3)如果分类正确直接将修正过的数据全部后馈。

现有技术的不足之处在于,由于前一级网络性能较差,存在部分人脸无法正确判定,导致传入下一级人脸候选框有损失,整体性能差;仅仅通过人脸分类和人脸框的回归无法达到网络的性能上线,仍有提升空间;数据全部后馈,网络学习的深度不够,不能挖掘网络性能。



技术实现要素:

本发明的目的是提供一种基于三级卷积神经网络的人脸检测方法及系统,以解决整体性能差;仅通过人脸分类和人脸框进行校正,无法达到网络的性能上线;正确分类的部分仍然进行回归校正的问题。

为了实现上述目的,本发明提供如下技术方案:

一种基于三级卷积神经网络的人脸检测方法,包括以下步骤:

获取训练样本和检测图片;所述训练样本至少包括标注有人脸框和人脸特征点的人脸图片;

将所述训练样本输入三级卷积神经网络进行逐级训练,所述训练的过程为:

根据所述训练样本和前n级的训练结果进行预测后降维,得到对应的二维特征向量,并据其计算获得第一偏移量;

通过所述第一偏移量对所述二维特征向量进行回归校正,得到对应的训练结果;

将所述检测图片输入训练后的三级卷积神经网络进行逐级人脸检测,得到人脸矩形框。

上述基于三级卷积神经网络的人脸检测方法,所述训练样本中的人脸图片还含有图片分类标签和唯一确定的人脸框。

上述基于三级卷积神经网络的人脸检测方法,所述二维特征向量的获得包括以下步骤:

根据所述训练样本和前n级的训练结果获得m维特征向量;

通过全卷积层/全连接层对所述m维特征向量进行降维处理,获得所述二维特征向量。

上述基于三级卷积神经网络的人脸检测方法,所述三级网络包括第一支路、第二支路和第三支路,所述二级网络包括所述第一支路和所述第二支路,所述第一支路与所述一级网络相同。

上述基于三级卷积神经网络的人脸检测方法,在三级网络中,m维特征向量的获得包括以下步骤:

将所述训练样本和上一级的训练结果输入所述第一支路获取第一特征向量,将其输入所述第二支路获取第二特征向量,将其输入所述第三支路获取第三维特征向量;

将所述第一特征向量、第二特征向量以及第三特征向量进行拼接,得到m维特征向量。

上述基于三级卷积神经网络的人脸检测方法,所述第一偏移量的获取包括以下步骤:

将所述二维特征向量输入SoftmaxWithLoss层,计算获得分类偏移量;

将所述二维特征向量输入Euclidean Loss层,计算获得人脸框偏移量以及所述人脸特征点偏移量。

上述基于三级卷积神经网络的人脸检测方法,所述分类偏移量的计算包括以下步骤:

对所述二维特征向量进行定义;定义为Z={z1,z2},其中

通过softmax函数进行分类;分为二类,特殊化为:

通过损失函数计算预测到的所述二维特征向量与所述训练样本间的差异;

损失函数为:

其中计算

修正其中α为系数。

上述基于三级卷积神经网络的人脸检测方法,所述人脸矩形框的获得包括以下步骤:

将所述检测图片输入一级网络对其进行筛选、回归校正并合并,得到第一人脸候选框;

将所述第一人脸候选框输入二级网络对其进行筛选、回归校正并合并,得到第二人脸候选框;

将所述第二人脸候选框输入三级网络对其进行筛选、回归校正并合并,得到人脸矩形框。

上述基于三级卷积神经网络的人脸检测方法,进行筛选、回归校正并合并包括以下步骤:

根据检测图片/第一人脸候选框/第二人脸候选框以及相应的人脸概率,筛选出大于设定概率阈值的人脸候选框;

根据筛选后得到的人脸候选框计算获得第二偏移量,通过所述第二偏移量对其进行回归校正;

通过非极大值抑制算法对校正后得到的人脸候选框进行合并,得到第一人脸候选框/第二人脸候选框/人脸矩形框。

本发明提供的基于三级卷积神经网络的人脸检测方法,具有以下有益效果:

1)在训练过程中,通过增加前n级的训练结果作为后一级的输入,弥补了训练数据的缺失问题,从而提高了人脸检测的准确度和召回率,并且提升了整体网络的性能;

2)在训练样本中加入人脸特征点,通过人脸特征点使人脸的分类以及人脸矩形框的定位精度得到提高,从而接近于达到网络上线,并且进一步提升了人脸检测的召回率和准确度;

3)仅通过计算得到的第一(第二)偏移量中的分类偏移量进行图片分类的回归校正,如此保证了分类正确的部分不再进行回归校正,从而使人脸检测的速度得到提高,并达到进一步挖掘网络性能的目的。

一种基于三级卷积神经网络的人脸检测系统,包括三级卷积神经网络,所述三级卷积神经网络包括:

获取单元,用以获取训练样本和检测图片;所述训练样本至少包括标注有人脸特征点的人脸图片;

网络训练单元,用以将所述训练样本输入三级卷积神经网络进行逐级训练;

其包括:特征向量模块和回归校正模块,

所述特征向量模块,用以根据所述训练样本和前n级的的训练结果进行预测后降维,得到对应的二维特征向量,并据其计算获得第一偏移量;

所述回归校正模块,用以通过所述第一偏移量对所述二维特征向量进行回归校正,得到对应的训练结果;

人脸检测单元,用以将所述检测图片输入训练后的三级卷积神经网络进行逐级人脸检测,得到人脸矩形框。

本发明提供的基于三级卷积神经网络的人脸检测系统,具有以下有益效果:

1)通过网络训练单元2(或人脸检测单元3)中的二级网络和三级网络弥补再一级网络性能差的缺陷,使图片分类的精确性得到提高,从而提升了人脸检测的召回率和准确度,并且提升了整体网络的性能;

2)在获取单元1的训练样本中的人脸图片上加入人脸特征点,通过人脸特征点使人脸的分类以及人脸矩形框的定位精度得到提高,从而接近于达到网络上线,并且进一步提升了人脸检测的召回率和准确度;

3)仅通过特征向量模块21和回归校正模块22的配合得到的分类偏移量进行图片分类的回归校正,如此保证了分类正确的部分不需进行校正,从而使人脸检测的速度得到提高,并达到进一步挖掘网络性能的目的。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的基于三级卷积神经网络的人脸检测方法的结构框图;

图2为本发明一优选实施例提供的基于三级卷积神经网络的人脸检测方法的流程示意图;

图3为本发明一优选实施例提供的基于三级卷积神经网络的人脸检测方法的流程示意图;

图4为本发明一优选实施例提供的基于三级卷积神经网络的人脸检测方法的流程示意图;

图5为本发明一优选实施例提供的基于三级卷积神经网络的人脸检测方法的流程示意图;

图6为本发明一优选实施例提供的基于三级卷积神经网络的人脸检测方法的流程示意图;

图7为本发明一优选实施例提供的基于三级卷积神经网络的人脸检测方法的流程示意图;

图8为本发明实施例提供的基于三级卷积神经网络的人脸检测系统的结构示意图;

图9为本发明一优选实施例提供的一级网络的结构示意图;

图10为本发明一优选实施例提供的二级网络的结构示意图;

图11为本发明一优选实施例提供的三级网络的结构示意图。

附图标记说明:

1、获取单元;2、网络训练单元;21、特征向量模块;22、回归校正模块;3、人脸检测单元。

具体实施方式

为了使本领域的技术人员更好地理解本发明的技术方案,下面将结合附图对本发明作进一步的详细介绍。

如图1-7和9-11所示,为本发明实施例提供的基于三级卷积神经网络的人脸检测方法,还包括以下步骤:

S101、获取训练样本和检测图片;所述训练样本至少包括标注有人脸框和人脸特征点的人脸图片;

如图9-11所示,进一步的,所述三级卷积神经网络包括一级网络、二级网络以及三级网络,所述三级网络包括第一支路、第二支路和第三支路,所述二级网络包括所述第一支路和所述第二支路,所述第一支路与所述一级网络相同。第一支路的网络结构与一级网络完全相同,便于分辨,图中以12-net代表一级网络,24-net代表二级网络,48-net代表三级网络;即24-net包括12-net支路和24-net支路,48-net包括12-net支路、24-net支路以及48-net支路,并且12-net、24-net和48-net逐级相连,如此,能对训练样本逐级挑选,排除没有人脸的其他图片,获得准确的人脸图片以及其对应的更为精确的人脸框(确定人脸位置)。

进一步的,所述训练样本中的人脸图片还含有图片分类标签。具体的,所述训练样本为包含有分类标签、唯一确定的人脸框以及标注的人脸特征点信息的人脸图片以及其他图片;通过分类标签可进行图片分类训练,即将训练样本分为有标签的人脸图片集合以及其他图片集合两类;通过人脸框可确定人脸在该人脸图片中的矩形区域,从而框定该区域即为确定人脸位置;人脸特征点(landmark点)为鼻子、眼镜、嘴巴、额头以及人脸轮廓线等突出部位,通过这些部位可以很容易判断出人脸的不同;由于仅通过人脸框确定人脸位置存在误差,通过人脸特征点能够精确定位人脸:通过增大或缩小人脸框,使人脸特征点落在人脸框的范围之内,从而提高人脸框的人脸定位精度。检测图片为人脸图片、环境图片以及其他任意图片的集合;待训练完成后,可进行检测图片的人脸检测。获取训练样本的方式可以为通过调取现有技术中的人脸库,或者通过3D打印等方式得到人脸图片,并加入分类标签、唯一确定的人脸框、标注人脸特征点,再将其混合在其他图片中。

S102、将所述训练样本输入三级卷积神经网络进行逐级训练;

逐级训练是指依次按照一级网络、二级网络、三级网络的顺序对三级卷积神经网络进行训练,三级卷积神经网络具有学习能力,经过训练后能够学习图片分类的方式,并且能够在图片中找出相应的位置用矩形框框定,甚至可以通过引入人脸特征点对矩形框的位置进一步校正,从而当输入大量各异的图片时,可以通过训练后的三级卷积神经网络实现人脸分类、定位。

在S102步骤中,所述训练还包括以下步骤:

S1021、根据所述训练样本和前n级的训练结果进行预测后降维,得到对应的二维特征向量,并据其计算获得第一偏移量;

训练结果是指在三级卷积神经网络中每个级的网络预测、降维并回归校正后得到的结果;当训练样本输入一级网络时,前n级的训练结果为“空”,当训练样本输入二级网络时,前n级的训练结果为“一级网络的训练结果”,当训练样本输入三级网络时,上一级的训练结果为“一级网络的训练结果”和“二级网络的训练结果”;预测并降维是指训练过程中,对输入的训练样本进行分类、人脸位置的预测,并且将其转换为便于运算的二维特征向量;第一偏移量是指训练过程中,预测并降维后得到的二维特征向量相对于训练样本(主要是指预测值和训练样本中的分类标签、唯一确定的人脸框以及标注的人脸特征点这几个方面的差异)的差异,即预测后与预测前值之间的差异;优选的,通过损失函数进行两者之间的计算。通过下一级网络弥补上一级网络(上一级网络的训练结果和训练样本均输入下一级)性能差的缺陷,使图片分类的精确性得到提高,从而提升了人脸检测的召回率和准确度,并且提升了整体网络的性能。

在步骤S1021中,所述二维特征向量的获得包括以下步骤:

S201、根据所述训练样本和前n级的训练结果获得m维特征向量;

在全卷积层/全连接层之前为预测结构,通过该结构预测得到各个网络的m维特征向量,由于一级网络、二级网络、三级网络的结构均不相同,并且输入其中进行训练的图片也不同,因此得到的m维特征向量也均不相同;二级网络对一级网络预测出现的误差部分进行纠正,同上,三级网络纠正二级网络;纠正的要点为一级/二级网络预测得到的结果中可能出现未被分类至人脸图片集合,却含有标签的图片或者未含有标签却被分类至人脸图片集合的图片的情况;通过二级/三级网络可大大降低上述情况的发生的概率,从而使三级卷积神经网络具有自我净化的能力。

在S201步骤中的三级网络中,m维特征向量的获得包括以下步骤:

S301、将训练样本和上一级的训练结果输入第一支路获取第一特征向量,将其输入第二支路获取第二特征向量,将其输入第三支路获取第三维特征向量;

S302、将所述第一特征向量、第二特征向量以及第三特征向量进行拼接,得到m维特征向量。

各级网络中的预测结构均具有拼接功能;在三级网络中,各级支路分别运行得到不同的特征向量,各个特征向量(即第一特征向量、第二特征向量以及第三特征向量)的维度均不相同,将上述特征向量进行叠加,得到m维特征向量;在二级网络中,同上的拼接方式,少一支路,因此无第三特征向量;在一级网络中,只有一条支路,因此拼接得到的结果就是该支路的结果。为转化为二维特征向量作准备,以向量的形式表示人脸,使计算更为方便。具体的,将对应的训练数据分别输入到三个支路中。第一条支路和和12-net完全一样,在全卷积之前,可以得到m维(以16维为例)的特征向量,第二个支路经过24-net全连接层之前的层以后可以得到n维(以128维为例)的人脸特征向量。第三个支路经过48-net全连接层之前的层以后可以得到p维(以256维为例)的人脸特征向量,将三个特征向量进行拼接。假设为12-net的特征向量,为24-net的特征向量。为48-net的特征向量。将三个向量进行拼接可以得到400维((m+n+p)维)将X4经过全连接层。

S202、通过全卷积层/全连接层对所述m维特征向量进行降维处理,获得所述二维特征向量。

在全卷积层之前有进行预测的预测结构,通过预测结构从所述训练样本中将该预测结构默认认为是人脸图片集合分为一类,其他图片集合分为另一类;并且得到该人脸图片集合的预测人脸框以及预测人脸特征点,将其转换为m维特征向量的形式予以表示。全卷积层具有将多维特征向量降维至二维的作用,该m维特征向量通过该全卷积层就能得到二维特征向量,便于进行预测值和训练样本间的偏移量的计算。

S1022、通过所述第一偏移量对所述二维特征向量进行回归校正,得到对应的训练结果;

各级网络中的全卷积/连接层之后具有后馈结构,通过该结构对预测值进行回归校正;回归校正是指通过第一偏移量对预测到的值进行补偿,校正分类产生的偏移、人脸框产生的偏移以及人脸特征点产生的偏移,从而使人脸分类、人脸定位更为精确,最终获得的人脸框也更为精确,将网络已经分类正确的部分不进行分类的回归校正,进一步挖掘网络性能,保证了检测速度。

在S1022步骤中,所述第一偏移量的获取包括以下步骤:

S401、将所述二维特征向量输入SoftmaxWithLoss层,计算获得分类偏移量;

在获得二维特征向量后,通过SoftmaxWithLoss层分类偏移量的计算,将计算得到的权重W,偏置项b进行后馈,即通过分类偏移量可进行分类的回归校正,提高分类的召回率、准确度。

在S401步骤中,所述分类偏移量的计算包括以下步骤:

S501、对所述二维特征向量进行定义;

定义为Z={z1,z2},其中

S502、通过softmax函数进行分类;分为二类,特殊化为:

S503、通过损失函数计算预测到的所述二维特征向量与所述训练样本间的差异;

损失函数为:

其中计算

修正其中α为系数。

S402、将所述二维特征向量输入Euclidean Loss层,计算获得人脸框偏移量以及所述人脸特征点偏移量。

通过欧式距离和损失函数的结合在各级网络均进行人脸框偏移量和人脸特征偏移量的回归校正,从而实现对最终获得的人脸矩形框的校正,保证人脸识别速度的前提下进一步提高人脸识别率。

S103、将所述检测图片输入所述三级卷积神经网络进行逐级人脸检测,得到人脸矩形框。

检测结果为通过三级卷积神经网络中的各级网络对输入的检测图片进行分类,并检测获得人脸位置以及人脸特征点的统称,其为各个网络检测获得的人脸候选框;对应三个网络,检测结果有三个,对其进行筛选、回归校正并合并后输入下一级进行检测,最终可以得到人脸矩形框;人脸矩形框为先通过特定程序筛选,再通过人脸特征点偏移量、人脸框偏移量两者的结合对其校正后,再合并相同或相似的人脸框得到的矩形框,其能够确定上述的人脸位置等信息。

在S103步骤中,所述人脸矩形框的获得包括以下步骤:

S601、将所述检测图片输入一级网络对其进行筛选、回归校正并合并,得到第一人脸候选框;

S602、将所述第一人脸候选框输入二级网络对其进行筛选、回归校正并合并,得到第二人脸候选框;

S603、将所述第二人脸候选框输入三级网络对其进行筛选、回归校正并合并,得到人脸矩形框。

一级网络检测获得第一人脸候选框,二级网络检测获得第二人脸候选框,三级网络检测获得人脸矩形框(上述三个人脸候选框对应步骤103中的三个检测结果),对前两个检测结果进行筛选、回归校正并合并后分别得到第二人脸候选框以及最终的人脸矩形框;进一步的,得到第一人脸候选框后从原图中截取出来调整到24*24px大小输入第二网络中进行检测,得到第二人脸候选框后从原图中截取出来调整到48*48px大小输入第三网络中进行检测,检测后再筛选、回归校正并合并后得到人脸矩形框。逐级检测,获得精确的人脸矩形框(人脸位置),从而进一步提高了检测的召回率和准确度。

在S103步骤中,进行筛选、回归校正并合并包括以下步骤:

S701、根据检测图片/第一人脸候选框/第二人脸候选框以及相应的人脸概率,筛选出大于设定概率阈值的人脸候选框;

S702、根据筛选后得到的人脸候选框计算获得第二偏移量,通过所述第二偏移量对其进行回归校正;

S703、通过非极大值抑制算法对校正后得到的人脸候选框进行合并,得到第一人脸候选框/第二人脸候选框/人脸矩形框。

人脸概率是指将检测图片中的部分图片分类为人脸图片集合后,该人脸图片集合中的图片其中包含有人脸的概率;将人脸概率与设定的概率阈值进行比对,若小于该设定值,则删除小于该设定值的人脸候选框,得到筛选后的人脸候选框;通过SoftmaxWithLoss层和Euclidean Loss层进行第二偏移量的计算,所述第二偏移量包括检测过程中的图片分类偏移、检测到的人脸框偏移以及检测到的人脸特征点偏移,从而通过上述偏移对筛选后得到的人脸候选框进行回归校正,得到校正后人脸候选框;再通过非极大值抑制算法对校正后得到的人脸候选框进行框合并,非极大值抑制算法是将人脸框按人脸的概率进行排序,挑出概率最大的人脸框与其他框计算重合度,重合度大于一定阈值就将对应的框删掉,从而达到合并框的目的,得到第一人脸候选框/第二人脸候选框/人脸矩形框。通过筛选、回归校正以及框合并使人脸检测的召回率和准确度进一步提高,并且保证了检测的速度。

本发明提供的基于三级卷积神经网络的人脸检测方法,具有以下有益效果:

1)在训练过程中,通过增加前n级的训练结果作为后一级的输入,弥补了训练数据的缺失问题,从而提高了人脸检测的准确度和召回率,并且提升了整体网络的性能;

2)在训练样本中加入人脸特征点,通过人脸特征点使人脸的分类以及人脸矩形框的定位精度得到提高,从而接近于达到网络上线,并且进一步提升了人脸检测的召回率和准确度;

3)仅通过计算得到的第一(第二)偏移量中的分类偏移量进行图片分类的回归校正,如此保证了分类正确的部分不再进行回归校正,从而使人脸检测的速度得到提高,并达到进一步挖掘网络性能的目的。

如图8所示,本发明实施例还提供基于三级卷积神经网络的人脸检测系统,包括三级卷积神经网络,所述三级卷积神经网络包括:

获取单元1,用以获取训练样本和检测图片;所述训练样本至少包括标注有人脸特征点的人脸图片;

网络训练单元2,用以将所述训练样本输入三级卷积神经网络进行逐级训练;

其包括:特征向量模块和回归校正模块,

所述特征向量模块21,用以根据所述训练样本和前n级的的训练结果进行预测后降维,得到对应的二维特征向量,并据其计算获得第一偏移量;

所述回归校正模块22,用以通过所述第一偏移量对所述二维特征向量进行回归校正,得到对应的训练结果;

人脸检测单元3,用以将所述检测图片输入训练后的三级卷积神经网络进行逐级人脸检测,得到人脸矩形框。

本发明提供的基于三级卷积神经网络的人脸检测系统,具有以下有益效果:

1)通过网络训练单元2(或人脸检测单元3)中的二级网络和三级网络弥补再一级网络性能差的缺陷,使图片分类的精确性得到提高,从而提升了人脸检测的召回率和准确度,并且提升了整体网络的性能;

2)在获取单元1的训练样本中的人脸图片上加入人脸特征点,通过人脸特征点使人脸的分类以及人脸矩形框的定位精度得到提高,从而接近于达到网络上线,并且进一步提升了人脸检测的召回率和准确度;

3)仅通过特征向量模块21和回归校正模块22的配合得到的分类偏移量进行图片分类的回归校正,如此保证了分类正确的部分不需进行校正,从而使人脸检测的速度得到提高,并达到进一步挖掘网络性能的目的。

以上只通过说明的方式描述了本发明的某些示范性实施例,毋庸置疑,对于本领域的普通技术人员,在不偏离本发明的精神和范围的情况下,可以用各种不同的方式对所描述的实施例进行修正。因此,上述附图和描述在本质上是说明性的,不应理解为对本发明权利要求保护范围的限制。

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