一种基于多层次特征深度学习的人脸检测方法及系统与流程

文档序号:15079681发布日期:2018-08-03 12:40阅读:257来源:国知局

本发明涉及图像处理领域,特别是一种基于多层次特征深度学习的人脸检测方法及系统。



背景技术:

人脸检测是指对任意输入图像中进行搜索以确定是否包含人脸,如果包含人脸就返回所有人脸的位置、大小等信息。它是人脸信息处理的前提和基础,检测性能的好坏直接影响到人脸信息处理的结果。人脸检测对于人来说非常简单,但是图片存储在机器中不过就是一个由0和1组成的二进制串,由数列排成的阵列,因此对于机器来说,人脸检测是一件很复杂的任务。机器检测人脸的主要目标就是在低计算量的前提下保证高的正确率。人脸检测问题的研究源于人脸识别问题,最早的人脸识别是在假设人脸位置已经获得的前提下进行的,然而随着应用要求的提高,往往需要首先从实际的复杂背景中检测和定位出人脸。

目前人脸检测算法普遍采用的是科研工作者Paul Viola和Michael Jones设计的人脸检测器,利用特征的快速计算方法——积分图,有效的分类器学习方法——AdaBoost,以及高效的分类策略——级联结构的设计来实现人脸检测,但是面对复杂的外部环境,传统的人脸检测器往往会出现大量的误检与漏检。

随着深度学习在机器视觉领域的兴起,涌现了一些基于深度学习的人脸检测方法,如北京飞搜科技有限公司提出的专利申请“一种基于三级卷积神经网络的人脸检测方法及系统”(专利申请号201710078431.3,公开号CN106874868 A),公开了采用三级卷积神经网络进行人脸检测,通过多级性能逐渐增强的网路进行逐级训练并且将前n级的训练结果作为后一级的输入,但是该三级卷积神经网络需要采取分阶段的方式训练,存在效率慢、训练步骤繁琐、不能进行联合任务的问题,网络的泛化能力较差,具有一定的局限性。



技术实现要素:

发明目的:针对现有技术的不足,本发明目的在于提供一种基于多层次特征深度学习的人脸检测方法及系统,通过在不同层次的卷积输出特征图上进行检测,解决现有的人脸检测算法中存在训练步骤繁琐、效率慢和网络泛化能力差的缺点。

技术方案:本发明为实现上述发明目的采用以下技术方案:

一种基于多层次特征深度学习的人脸检测方法,包括如下步骤:

(1)获取训练集图像和验证集图像,所述训练集和验证集中图像包括具有光照变化和场景变化的尺寸归一化处理后的人脸图像;

(2)获取训练集图像和验证集图像的标签信息,所述标签信息包括图像中是否包含人脸的分类标签以及包含人脸时图像中人脸位置的右上顶点坐标和左下顶点坐标;

(3)将训练集和验证集图像以及相应的标签输入深度卷积神经网络中,对网络进行训练和调优,得到基于深度卷积神经网络的人脸检测模型;所述深度卷积神经网络包括:

第一网络模块,包括至少一个卷积层和池化层,采用3D卷积核对归一化后的训练集和验证集中的彩色图像进行卷积操作,输出若干特征图,用于提取输入图像的第一层次特征;

第二网络模块,包括至少三个级联的卷积层,采用3D卷积核对第一网络模块输出的特征图进行卷积操作,各卷积层输出不同尺度的特征图,用于提取输入图像的第二层次特征;

第三网络模块,包括第一支路和第二支路,所述第一支路包括第一串接层、分类层和至少两个并列的卷积层,用于完成人脸或非人脸的分类任务,其中各个卷积层的输入连接至所述第二网络模块中的不同的卷积层,各第一支路的卷积层输出的特征图通过第一串接层进行串接;所述分类层将第一串接层输出的特征列向量全连接到表示输入样本的类别的节点;所述第二支路包括第二串接层、回归层和至少两个并列的卷积层,用于完成人脸位置坐标回归任务,其中各个卷积层的输入连接至所述第二网络模块中的不同的卷积层,各第二支路的卷积层输出的特征图通过第二串接层进行串接;所述回归层将第二串接层输出的特征列向量全连接到表示输入样本人脸位置坐标的节点;

(4)将测试图像输入到训练好的基于深度卷积神经网络的人脸检测模型进行人脸检测,得到人脸检测结果。

作为优选,所述深度卷积神经网络的第一网络模块中各卷积层采用若干k×k×ma的3D卷积核对输入的图像序列或前一层输出的特征图序列进行3D卷积操作,其中k在1、3、5、7数值中选取,对于第一层卷积层ma为3,其余卷积层ma在64、128、256数值中选取,为前一层卷积层采用的卷积核个数;各池化层采用预设尺寸为l×l的滑动窗口对卷积层输出的特征图进行下采样,其中l在1、2数值中选取。

作为优选,所述深度卷积神经网络的第二网络模块中各卷积层采用若干k×k×mb的3D卷积核对前一层输出的特征图序列进行3D卷积操作,其中k在1、3、5、7数值中选取,mb在128、256、512数值中选取,为前一层卷积层采用的卷积核个数。

作为优选,所述深度卷积神经网络的第三网络模块中各卷积层采用若干k×k×mc的3D卷积核对所连接的第二网络模块中相应卷积层输出的特征图序列进行3D卷积操作,其中k在1、3、5、7数值中选取,mc为所连接的第二网络模块中卷积层采用的卷积核个数,第三网络模块中各卷积层所采用的卷积核的个数为2或4。

一种基于多层次特征深度学习的人脸检测系统,包括:

第一获取模块,用于获取训练集图像和验证集图像,所述训练集和验证集中图像包括具有光照变化和场景变化的尺寸归一化处理后的人脸图像;

第二获取模块,用于获取训练集图像和验证集图像的标签信息,所述标签信息包括图像中是否包含人脸的分类标签以及包含人脸时图像中人脸位置的右上顶点坐标和左下顶点坐标;

训练模块,用于将训练集和验证集图像以及相应的标签输入深度卷积神经网络中,对网络进行训练和调优,得到基于深度卷积神经网络的人脸检测模型;

以及检测模块,用于将测试图像输入到基于深度卷积神经网络的人脸检测模型进行人脸检测,得到人脸检测结果;

所述深度卷积神经网络包括:

第一网络模块,包括至少一个卷积层和池化层,采用3D卷积核对归一化后的训练集和验证集中的彩色图像进行卷积操作,输出若干特征图,用于提取输入图像的第一层次特征;

第二网络模块,包括至少三个级联的卷积层,采用3D卷积核对第一网络模块输出的特征图进行卷积操作,各卷积层输出不同尺度的特征图,用于提取输入图像的第二层次特征;

以及,第三网络模块,包括第一支路和第二支路,所述第一支路包括第一串接层、分类层和至少两个并列的卷积层,用于完成人脸或非人脸的分类任务,其中各个卷积层的输入连接至所述第二网络模块中的不同的卷积层,各第一支路的卷积层输出的特征图通过第一串接层进行串接;所述分类层将第一串接层输出的特征列向量全连接到表示输入样本的类别的节点;所述第二支路包括第二串接层、回归层和至少两个并列的卷积层,用于完成人脸位置坐标回归任务,其中各个卷积层的输入连接至所述第二网络模块中的不同的卷积层,各第二支路的卷积层输出的特征图通过第二串接层进行串接;所述回归层将第二串接层输出的特征列向量全连接到表示输入样本人脸位置坐标的节点。

有益效果:与现有技术相比,本发明具有以下技术效果:

1.通过人脸或非人脸的分类任务以及人脸位置坐标回归任务的联合学习实现人脸检测,简化了人脸检测的训练步骤,提高了人脸检测的效率;

2.深度卷积神经网络中较低层次的卷积输出特征图对图像中尺寸较小的人脸检测效果好,而较高层次的卷积输出特征图对图像中尺寸较大的人脸检测效果好,故利用不同层次的卷积输出特征图进行检测综合可以提高人脸检测的精度;

3.深度卷积神经网络可以接受任意尺度大小的测试图像,提高了人脸检测的鲁棒性和泛化能力。

附图说明

图1是本发明的一种基于多层次特征深度学习的人脸检测方法流程图。

图2是本发明中所构建的深度卷积神经网络结构图。

图3是本发明示例性实施例构建的深度卷积神经网络详细结构图。

图4是深度卷积神经网络中第一网络模块的详细结构图。

具体实施方式

下面结合说明书附图对本发明的具体实施方式做进一步详细的说明。

如图1所示,本发明实施例提供的一种基于多层次特征深度学习的人脸检测方法,主要包括如下步骤:

(1)获取训练集图像和验证集图像,其中训练集和验证集中图像包括具有光照变化和场景变化的尺寸归一化处理后的人脸图像。训练集图像和验证集图像可来源于celebA(Celeb Faces Attributes Dataset)数据库,在该人脸数据库上挑选具有光照变化和场景变化的人脸图像构成人脸图像数据库,对数据库中的样本进行尺寸归一化的预处理操作,得到N×N像素大小的图像,并将预处理后的图像划分为训练集和验证集,其中N取正整数。

(2)获取训练集图像和验证集图像的标签信息,其中标签信息包括图像中是否包含人脸的分类标签以及包含人脸时图像中人脸位置的右上顶点坐标和左下顶点坐标。

(3)构建深度卷积神经网络,将训练集和验证集图像以及相应的标签输入深度卷积神经网络中,对网络进行训练和调优,得到基于深度卷积神经网络的人脸检测模型。

(4)将测试图像输入到训练好的基于深度卷积神经网络的人脸检测模型进行人脸检测,得到人脸检测结果,若检测到人脸,则返回人脸位置坐标,若未检测到人脸,则不返回人脸位置坐标。

其中所构建的深度卷积神经网络的结构如图2所示,主要包括第一网络模块、第二网络模块、第三网络模块三个模块。

第一网络模块,包括至少一个卷积层和池化层,用于提取输入图像的第一层次特征,即较低层次的特征,采用3D卷积核对输入的归一化后的训练集和验证集中的彩色图像进行卷积操作,输出若干特征图。各卷积层可采用若干k×k×ma的3D卷积核对输入的图像序列或前一层输出的特征图序列进行3D卷积操作,其中k在1、3、5、7等数值中选取,对于第一层卷积层ma为3,其余卷积层ma在64、128、256等数值中选取,为前一层卷积层采用的卷积核个数;各池化层采用预设尺寸为l×l的滑动窗口对卷积层输出的特征图进行下采样,其中l在1、2等数值中选取。

第二网络模块,包括至少三个级联的卷积层,用于提取输入图像的第二层次特征,即较高层次的特征,采用3D卷积核对输入的第一网络模块输出的特征图堆叠得到的特征图序列进行卷积操作,各卷积层输出不同尺度的特征图。各卷积层可采用若干k×k×mb的3D卷积核对前一层输出的特征图序列进行3D卷积操作,其中k在1、3、5、7等数值中选取,mb在128、256、512等数值中选取,为前一层卷积层采用的卷积核个数。

第三网络模块,包括第一支路和第二支路,第一支路包括第一串接层、分类层和至少两个并列的卷积层,用于完成人脸或非人脸的分类任务,其中各个卷积层的输入连接至第二网络模块中的不同的卷积层,各第一支路的卷积层输出的特征图通过第一串接层进行串接;分类层将第一串接层输出的特征列向量全连接到表示输入样本的类别的节点;第二支路包括第二串接层、回归层和至少两个并列的卷积层,用于完成人脸位置坐标回归任务,其中各个卷积层的输入连接至第二网络模块中的不同的卷积层,各第二支路的卷积层输出的特征图通过第二串接层进行串接;回归层将第二串接层输出的特征列向量全连接到表示输入样本人脸位置坐标的节点。各卷积层可采用若干k×k×mc的3D卷积核对所连接的第二网络模块中相应卷积层输出的特征图序列进行3D卷积操作,其中k在1、3、5、7等数值中选取,mc为所连接的第二网络模块中卷积层采用的卷积核个数,第三网络模块中各卷积层所采用的卷积核的个数可为2或4等。

如图3、4为本发明优选实施例的深度卷积神经网络,其中第一网络模块A由13个卷积层和5个池化层构成,用于提取输入图像的较低层次的特征,由输入开始,依次所包括各个层如下:

第一层为卷积层1,采用m1个k1×k1×3的3D卷积核对输入彩色图像的R、G、B三个分量堆叠得到的N×N×3图像序列进行3D卷积操作,得到m1个N×N的特征图,其中k1取正整数,一般取1,3,5,7等,m1取正整数,一般取64,128,256等;

第二层为卷积层2,采用m1个k1×k1×m1的3D卷积核对卷积层1输出的m1个特征图堆叠得到的N×N×m1特征图序列进行3D卷积操作,得到m1个N×N的特征图;

第三层为池化层1,采用预设尺寸为l×l的滑动窗口对卷积层2输出的m1个特征图进行下采样,得到m1个s1×s1的特征图,其中l取正整数,一般取2,3,4等,s1取正整数;

第四层为卷积层3,采用m2个k1×k1×m1的3D卷积核对池化层1输出的m1个特征图堆叠得到的s1×s1×m1特征图序列进行3D卷积操作,得到m2个s1×s1的特征图,其中m2取正整数,一般取64,128,256等;

第五层为卷积层4,采用m2个k1×k1×m2的3D卷积核对卷积层3输出的m2个特征图堆叠得到的s1×s1×m2特征图序列进行3D卷积操作,得到m2个s1×s1的特征图;

第六层为池化层2,采用预设尺寸为l×l的滑动窗口对卷积层4输出的m2个特征图进行下采样,得到m2个s2×s2的特征图,其中s2取正整数;

第七层为卷积层5,采用m3个k1×k1×m2的3D卷积核对池化层2输出的m2个特征图堆叠得到的s2×s2×m2特征图序列进行3D卷积操作,得到m3个s2×s2的特征图,其中m3取正整数,一般取64,128,256等;

第八层为卷积层6,采用m3个k1×k1×m3的3D卷积核对卷积层5输出的m3个特征图堆叠得到的s2×s2×m3特征图序列进行3D卷积操作,得到m3个s2×s2的特征图;

第九层为卷积层7,采用m3个k1×k1×m3的3D卷积核对卷积层6输出的m3个特征图堆叠得到的s2×s2×m3特征图序列进行3D卷积操作,得到m3个s2×s2的特征图;

第十层为池化层3,采用预设尺寸为l×l的滑动窗口对卷积层7输出的m3个特征图进行下采样,得到m3个s3×s3的特征图,其中s3取正整数;

第十一层为卷积层8,采用m4个k1×k1×m3的3D卷积核对池化层3输出的m3个特征图堆叠得到的s3×s3×m3特征图序列进行3D卷积操作,得到m4个s3×s3的特征图,其中m4取正整数,一般取64,128,256等;

第十二层为卷积层9,采用m4个k1×k1×m4的3D卷积核对卷积层8输出的m4个特征图堆叠得到的s3×s3×m4特征图序列进行3D卷积操作,得到m4个s3×s3的特征图;

第十三层为卷积层10,采用m4个k1×k1×m4的3D卷积核对卷积层9输出的m4个特征图堆叠得到的s3×s3×m4特征图序列进行3D卷积操作,得到m4个s3×s3的特征图;

第十四层为池化层4,采用预设尺寸为l×l的滑动窗口对卷积层10输出的m4个特征图进行下采样,得到m4个s4×s4的特征图,其中s4取正整数;

第十五层为卷积层11,采用m4个k1×k1×m4的3D卷积核对池化层4输出的m4个特征图堆叠得到的s4×s4×m4特征图序列进行3D卷积操作,得到m4个s4×s4的特征图;

第十六层为卷积层12,采用m4个k1×k1×m4的3D卷积核对卷积层11输出的m4个特征图堆叠得到的s4×s4×m4特征图序列进行3D卷积操作,得到m4个s4×s4的特征图;

第十七层为卷积层13,采用m4个k1×k1×m4的3D卷积核对卷积层12输出的m4个特征图堆叠得到的s4×s4×m4特征图序列进行3D卷积操作,得到m4个s4×s4的特征图;

第十八层为池化层5,采用预设尺寸为l×l的滑动窗口对卷积层13输出的m4个特征图进行下采样,得到m4个s5×s5的特征图,其中s5取正整数;

第二网络模块由9个卷积层构成,用于提取输入图像的较高层次的特征,依次所包括各个层如下:

第一层为卷积层14,采用m5个k1×k1×m4的3D卷积核对池化层5输出的m4个特征图堆叠得到的s5×s5×m4特征图序列进行3D卷积操作,得到m5个s5×s5的特征图,其中m5取正整数,一般取128,256,512等;

第二层为卷积层15,采用m6个k2×k2×m5的3D卷积核对卷积层14输出的m5个特征图堆叠得到的s5×s5×m5特征图序列进行3D卷积操作,得到m6个s5×s5的特征图,其中k2取正整数,一般取1,3,5,7等,m6取正整数,一般取128,256,512等;

第三层为卷积层16,采用m7个k1×k1×m6的3D卷积核对卷积层15输出的m6个特征图堆叠得到的s5×s5×m6特征图序列进行3D卷积操作,得到m7个s6×s6的特征图,其中m7取正整数,一般取128,256,512等,s6取正整数;

第四层为卷积层17,采用m8个k2×k2×m7的3D卷积核对卷积层16输出的m7个特征图堆叠得到的s6×s6×m7特征图序列进行3D卷积操作,得到m8个s6×s6的特征图,其中m8取正整数,一般取128,256,512等;

第五层为卷积层18,采用m9个k1×k1×m8的3D卷积核对卷积层17输出的m8个特征图堆叠得到的s6×s6×m7特征图序列进行3D卷积操作,得到m9个s7×s7的特征图,其中m9取正整数,一般取128,256,512等,s7取正整数;

第六层为卷积层19,采用m10个k2×k2×m9的3D卷积核对卷积层18输出的m9个特征图堆叠得到的s7×s7×m9特征图序列进行3D卷积操作,得到m10个s7×s7的特征图,其中m10取正整数,一般取128,256,512等;

第七层为卷积层20,采用m11个k1×k1×m10的3D卷积核对卷积层19输出的m10个特征图堆叠得到的s7×s7×m10特征图序列进行3D卷积操作,得到m11个s8×s8的特征图,其中m11取正整数,一般取128,256,512等,s8取正整数;

第八层为卷积层21,采用m12个k2×k2×m11的3D卷积核对卷积层20输出的m11个特征图堆叠得到的s8×s8×m11特征图序列进行3D卷积操作,得到m12个s8×s8的特征图,其中m12取正整数,一般取128,256,512等;

第九层为卷积层22,采用m13个k1×k1×m12的3D卷积核对卷积层21输出的m12个特征图堆叠得到的s8×s8×m12特征图序列进行3D卷积操作,得到m13个s9×s9的特征图,其中m13取正整数,一般取128,256,512等,s9取正整数;

第三网络模块包含两个并行的支路,第一支路用于完成人脸或非人脸的分类任务,第二支路用于完成人脸位置坐标回归任务,第一支路和第二支路的具体结构如下:

第一支路由5个卷积层、1个串接层和1个分类层构成,具体结构如下:

第一层为卷积层23,采用m14个大小为k1×k1×m5的3D卷积核对卷积层14输出的m5个特征图堆叠得到的s5×s5×m5特征图序列进行3D卷积操作,得到m14个s5×s5的特征图,其中m14取正整数,一般取2,4等;

第二层为卷积层24,采用m14个大小为k1×k1×m7的3D卷积核对卷积层16输出的m7个特征图堆叠得到的s6×s6×m7特征图序列进行3D卷积操作,得到m14个s6×s6的特征图;

第三层为卷积层25,采用m14个大小为k1×k1×m9的3D卷积核对卷积层18输出的m9个特征图堆叠得到的s7×s7×m9特征图序列进行3D卷积操作,得到m14个s7×s7的特征图;

第四层为卷积层26,采用m14个大小为k1×k1×m11的3D卷积核对卷积层20输出的m11个特征图堆叠得到的s8×s8×m11特征图序列进行3D卷积操作,得到m14个s8×s8的特征图;

第五层为卷积层27,采用m14个大小为k1×k1×m13的3D卷积核对卷积层22输出的m13个特征图堆叠得到的s9×s9×m13特征图序列进行3D卷积操作,得到m14个s9×s9的特征图;

第六层为串接层1,将卷积层23,卷积层24,卷积层25,卷积层26和卷积层27的输出特征图通过串接层1进行串接,得到一个n1维的特征列向量,其中n1取正整数;

第七层为分类层,采用Softmax分类器将串接层1输出的特征列向量全连接到n2个输出节点,每个节点对应输入样本的类别,其中n2取正整数,一般取2,4等;

第二支路由5个卷积层、1个串接层和1个回归层构成,具体结构如下:

第一层为卷积层28,采用m15个大小为k1×k1×m5的3D卷积核对卷积层14输出的m5个特征图堆叠得到的s5×s5×m5特征图序列进行3D卷积操作,得到m15个s5×s5的特征图,其中m15取正整数,一般取2,4等;

第二层为卷积层29,采用m15个大小为k1×k1×m7的3D卷积核对卷积层16输出的m7个特征图堆叠得到的s6×s6×m7特征图序列进行3D卷积操作,得到m15个s6×s6的特征图;

第三层为卷积层30,采用m15个大小为k1×k1×m9的3D卷积核对卷积层18输出的m9个特征图堆叠得到的s7×s7×m9特征图序列进行3D卷积操作,得到m15个s7×s7的特征图;

第四层为卷积层31,采用m15个大小为k1×k1×m11的3D卷积核对卷积层20输出的m11个特征图堆叠得到的s8×s8×m11特征图序列进行3D卷积操作,得到m15个s8×s8的特征图;

第五层为卷积层32,采用m15个大小为k1×k1×m13的3D卷积核对卷积层22输出的m13个特征图堆叠得到的s9×s9×m13特征图序列进行3D卷积操作,得到m15个s9×s9的特征图;

第六层为串接层2,将卷积层28,卷积层29,卷积层30,卷积层31和卷积层32的输出特征图通过串接层2进行串接,得到一个n3维的特征列向量,其中n3取正整数;

第七层为回归层,采用Euclidean回归器将串接层2输出的特征列向量全连接到n4个输出节点,每个节点对应输入样本人脸位置坐标,其中n4取正整数,一般取2,4等。

具体的,本发明提供的一个示例性实施例以在celebA数据库上共挑选12800张具有光照变化和场景变化的人脸图像作为深度卷积神经网络的训练集和验证集样本图像,样本进行尺度归一化的预处理操作后得到512×512像素大小的图像,然后任意选取其中70%的图像作为训练集,剩下的30%作为验证集。对训练集和验证集图像进行标注,给出标签,若包含人脸,则标定图像中人脸位置坐标(xmin,ymin,xmax,ymax),其中(xmin,ymin)表示图像中人脸位置的右上顶点坐标,(xmax,ymax)表示图像中人脸位置的左下顶点坐标,xmin,ymin,xmax,ymax取值均为非负实数。

所构建的深度卷积神经网络,各模块的具体结构如下:

第一网络模块由输入开始,依次所包括各个层如下:

第一层为卷积层1,采用64个3×3×3的3D卷积核对输入彩色图像的R、G、B三个分量堆叠得到的512×512×3图像序列进行3D卷积操作,得到64个512×512的特征图;

第二层为卷积层2,采用64个3×3×64的3D卷积核对卷积层1输出的64个特征图堆叠得到的512×512×64特征图序列进行3D卷积操作,得到64个512×512的特征图;

第三层为池化层1,采用预设尺寸为2×2的滑动窗口对卷积层2输出的64个特征图进行下采样,得到64个256×256的特征图;

第四层为卷积层3,采用128个3×3×64的3D卷积核对池化层1输出的64个特征图堆叠得到的256×256×64特征图序列进行3D卷积操作,得到128个256×256的特征图;

第五层为卷积层4,采用128个3×3×128的3D卷积核对卷积层3输出的128个特征图堆叠得到的256×256×128特征图序列进行3D卷积操作,得到128个256×256的特征图;

第六层为池化层2,采用预设尺寸为2×2的滑动窗口对卷积层4输出的128个特征图进行下采样,得到128个128×128的特征图;

第七层为卷积层5,采用256个3×3×128的3D卷积核对池化层2输出的128个特征图堆叠得到的128×128×128特征图序列进行3D卷积操作,得到256个128×128的特征图;

第八层为卷积层6,采用256个3×3×256的3D卷积核对卷积层5输出的256个特征图堆叠得到的128×128×256特征图序列进行3D卷积操作,得到256个128×128的特征图;

第九层为卷积层7,采用256个3×3×256的3D卷积核对卷积层6输出的256个特征图堆叠得到的128×128×256特征图序列进行3D卷积操作,得到256个128×128的特征图;

第十层为池化层3,采用预设尺寸为2×2的滑动窗口对卷积层7输出的256个特征图进行下采样,得到256个64×64的特征图;

第十一层为卷积层8,采用512个3×3×256的3D卷积核对池化层3输出的256个特征图堆叠得到的64×64×256特征图序列进行3D卷积操作,得到512个64×64的特征图;

第十二层为卷积层9,采用512个3×3×512的3D卷积核对卷积层8输出的512个特征图堆叠得到的64×64×512特征图序列进行3D卷积操作,得到512个64×64的特征图;

第十三层为卷积层10,采用512个3×3×512的3D卷积核对卷积层9输出的512个特征图堆叠得到的64×64×512特征图序列进行3D卷积操作,得到512个64×64的特征图;

第十四层为池化层4,采用预设尺寸为2×2的滑动窗口对卷积层10输出的512个特征图进行下采样,得到512个32×32的特征图;

第十五层为卷积层11,采用512个32×32×512的3D卷积核对池化层4输出的512个特征图堆叠得到的32×32×512特征图序列进行3D卷积操作,得到512个32×32的特征图;

第十六层为卷积层12,采用512个3×3×512的3D卷积核对卷积层11输出的512个特征图堆叠得到的32×32×512特征图序列进行3D卷积操作,得到512个32×32的特征图;

第十七层为卷积层13,采用512个3×3×512的3D卷积核对卷积层12输出的512个特征图堆叠得到的32×32×512特征图序列进行3D卷积操作,得到512个32×32的特征图;

第十八层为池化层5,采用预设尺寸为2×2的滑动窗口对卷积层13输出的512个特征图进行下采样,得到512个16×16的特征图;

第二网络模块依次所包括各个层如下:

第一层为卷积层14,采用1024个3×3×512的3D卷积核对池化层5输出的512个特征图堆叠得到的16×16×512特征图序列进行3D卷积操作,得到1024个16×16的特征图;

第二层为卷积层15,采用256个1×1×1024的3D卷积核对卷积层14输出的1024个特征图堆叠得到的16×16×1024特征图序列进行3D卷积操作,得到256个16×16的特征图;

第三层为卷积层16,采用512个3×3×256的3D卷积核对卷积层15输出的256个特征图堆叠得到的16×16×256特征图序列进行3D卷积操作,得到512个9×9的特征图;

第四层为卷积层17,采用128个1×1×512的3D卷积核对卷积层16输出的512个特征图堆叠得到的9×9×512特征图序列进行3D卷积操作,得到128个9×9的特征图;

第五层为卷积层18,采用256个3×3×128的3D卷积核对卷积层17输出的128个特征图堆叠得到的9×9×128特征图序列进行3D卷积操作,得到256个5×5的特征图;

第六层为卷积层19,采用128个1×1×256的3D卷积核对卷积层18输出的256个特征图堆叠得到的5×5×256特征图序列进行3D卷积操作,得到128个5×5的特征图;

第七层为卷积层20,采用256个3×3×128的3D卷积核对卷积层19输出的128个特征图堆叠得到的5×5×128特征图序列进行3D卷积操作,得到256个3×3的特征图;

第八层为卷积层21,采用128个1×1×256的3D卷积核对卷积层20输出的256个特征图堆叠得到的3×3×256特征图序列进行3D卷积操作,得到128个3×3的特征图;

第九层为卷积层22,采用256个3×3×128的3D卷积核对卷积层21输出的128个特征图堆叠得到的3×3×128特征图序列进行3D卷积操作,得到256个1×1的特征图;

第三网络模块的第一支路,具体结构如下:

第一层为卷积层23,采用2个大小为3×3×1024的3D卷积核对卷积层14输出的1024个特征图堆叠得到的16×16×1024特征图序列进行3D卷积操作,得到2个16×16的特征图;

第二层为卷积层24,采用2个大小为3×3×512的3D卷积核对卷积层16输出的512个特征图堆叠得到的9×9×512特征图序列进行3D卷积操作,得到2个9×9的特征图;

第三层为卷积层25,采用2个大小为3×3×256的3D卷积核对卷积层18输出的256个特征图堆叠得到的5×5×256特征图序列进行3D卷积操作,得到2个5×5的特征图;

第四层为卷积层26,采用2个大小为3×3×256的3D卷积核对卷积层20输出的256个特征图堆叠得到的3×3×256特征图序列进行3D卷积操作,得到2个3×3的特征图;

第五层为卷积层27,采用2个大小为3×3×256的3D卷积核对卷积层22输出的256个特征图堆叠得到的1×1×256特征图序列进行3D卷积操作,得到256个1×1的特征图;

第六层为串接层1,将卷积层23,卷积层24,卷积层25,卷积层26和卷积层27的输出特征图通过串接层1进行串接,得到一个744维的特征列向量;

第七层为分类层,采用Softmax分类器将串接层1输出的特征列向量全连接到2个输出节点,每个节点对应输入样本的类别;

第三网络模块的第二支路,具体结构如下:

第一层为卷积层28,采用4个大小为3×3×1024的3D卷积核对卷积层14输出的1024个特征图堆叠得到的16×16×1024特征图序列进行3D卷积操作,得到4个16×16的特征图;

第二层为卷积层29,采用4个大小为3×3×512的3D卷积核对卷积层16输出的512个特征图堆叠得到的9×9×512特征图序列进行3D卷积操作,得到4个9×9的特征图;

第三层为卷积层30,采用4个大小为3×3×256的3D卷积核对卷积层18输出的256个特征图堆叠得到的5×5×256特征图序列进行3D卷积操作,得到4个5×5的特征图;

第四层为卷积层31,采用4个大小为3×3×256的3D卷积核对卷积层20输出的256个特征图堆叠得到的3×3×256特征图序列进行3D卷积操作,得到4个3×3的特征图;

第五层为卷积层32,采用4个大小为3×3×256的3D卷积核对卷积层22输出的256个特征图堆叠得到的1×1×256特征图序列进行3D卷积操作,得到4个1×1的特征图;

第六层为串接层2,将卷积层28,卷积层29,卷积层30,卷积层31和卷积层32的输出特征图通过串接层2进行串接,得到一个1488维的特征列向量;

第七层为回归层,采用Euclidean回归器将串接层2输出的特征列向量全连接到4个输出节点,每个节点对应输入样本人脸位置坐标。

将训练集和验证集图像以及相应的标签输入深度卷积神经网络中,对网络进行训练、调优。最后利用训练好的深度卷积神经网络模型对输入的测试图像进行人脸检测。

本发明另一实施例公开了一种基于多层次特征深度学习的人脸检测系统,包括:第一获取模块,用于获取训练集图像和验证集图像,所述训练集和验证集中图像包括具有光照变化和场景变化的尺寸归一化处理后的人脸图像;第二获取模块,用于获取训练集图像和验证集图像的标签信息,所述标签信息包括图像中是否包含人脸的分类标签以及包含人脸时图像中人脸位置的右上顶点坐标和左下顶点坐标;训练模块,用于将训练集和验证集图像以及相应的标签输入深度卷积神经网络中,对网络进行训练和调优,得到基于深度卷积神经网络的人脸检测模型;以及检测模块,用于将测试图像输入到基于深度卷积神经网络的人脸检测模型进行人脸检测,得到人脸检测结果。

上述基于多层次特征深度学习的人脸检测系统实施例可以用于执行上述基于多层次特征深度学习的人脸检测方法实施例,其技术原理、所解决的技术问题及产生的技术效果相似,上述描述的基于多层次特征深度学习的人脸检测的具体工作过程及有关说明,可以参考前述多基于多层次特征深度学习的人脸检测方法实施例中的对应过程,在此不再赘述。

本领域技术人员可以理解,可以对实施例中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个系统中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。

以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。

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