CN108596138A - 一种基于迁移层次网络的人脸识别方法 - Google Patents
一种基于迁移层次网络的人脸识别方法 Download PDFInfo
- Publication number
- CN108596138A CN108596138A CN201810413269.0A CN201810413269A CN108596138A CN 108596138 A CN108596138 A CN 108596138A CN 201810413269 A CN201810413269 A CN 201810413269A CN 108596138 A CN108596138 A CN 108596138A
- Authority
- CN
- China
- Prior art keywords
- network
- face
- image
- model
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000013508 migration Methods 0.000 title claims abstract description 7
- 230000005012 migration Effects 0.000 title claims abstract description 7
- 238000012549 training Methods 0.000 claims abstract description 58
- 238000013519 translation Methods 0.000 claims abstract description 6
- 230000002708 enhancing effect Effects 0.000 claims abstract description 4
- 230000006870 function Effects 0.000 claims description 16
- 230000008859 change Effects 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 12
- 230000009466 transformation Effects 0.000 claims description 10
- 238000000513 principal component analysis Methods 0.000 claims description 7
- 239000013598 vector Substances 0.000 claims description 7
- 230000001965 increasing effect Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000005286 illumination Methods 0.000 claims description 4
- 239000000463 material Substances 0.000 claims description 4
- 238000005498 polishing Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000007423 decrease Effects 0.000 claims description 2
- 238000001914 filtration Methods 0.000 claims description 2
- 238000003475 lamination Methods 0.000 claims description 2
- 238000013528 artificial neural network Methods 0.000 claims 1
- 239000000470 constituent Substances 0.000 claims 1
- 238000013135 deep learning Methods 0.000 abstract description 13
- 238000013526 transfer learning Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 9
- 210000002569 neuron Anatomy 0.000 description 6
- 238000000605 extraction Methods 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000013480 data collection Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 241001351225 Sergey Species 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 239000006002 Pepper Substances 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011773 genetically engineered mouse model Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于迁移层次网络的人脸识别方法,包括:步骤1:选取预训练模型。步骤2:搭建用于人脸分类的层次网络。步骤3:根据选取的预训练模型和已有人脸数据的相似程度确定微调的网络层次。步骤4:针对人脸训练数据集进行预处理操作,包括颜色增强,旋转,平移,增加随机噪声等。步骤5:使用caffe深度学习库对已有的数据进行训练。步骤6:使用已训练好的模型进行人脸识别。
Description
技术领域
本发明属于计算机视觉领域,尤其涉及一种基于迁移层次网络的人脸识别方法。
背景技术
近年来,深度学习在计算机视觉领域取得了广泛的应用。深度学习方法在使用比传统方法更多的训练集,采用更深的网络结构后,在人脸识别方面也取得了比较明显的进步。然而在某些场景下,由于资源、人手等成本的限制,不能获得足够多的有标签训练样本来训练,导致无法得到更优秀的模型。
发明内容
发明目的:本发明提出了当人脸数据较少时可采用的基于迁移层次网络的人脸识别方案。采用已经训练好的具有普遍意义的模型,以此模型的权值作为新模型的预值。同时不断调整模型的学习率,这对资源有限时,使用深度学习方法进行人脸识别提供了非常有价值的借鉴意义。
本发明具体包括如下步骤:
步骤1,选取预训练模型;
步骤2,搭建层次网络;
步骤3,对人脸训练数据集进行预处理;
步骤4,确定微调的网络层次结构;
步骤5,在人脸训练数据集上进行重训练操作,如果在人脸训练数据集上的准确率不理想,则转步骤4,否则得到训练好的模型,执行步骤6;
步骤6,对于给定的图片,采用与步骤3中相同的方式进行相应的预处理,使用步骤5得到的已训练好的模型进行人脸识别,给出识别结果。
步骤1所选取的预训练模型为VGG-FACE模型。本发明采用的预训练网络是VGG-net,使用此预训练网络主要是因为该网络的卷积核大小均相等,且网络结构可以逐步递进深入,之前训练的浅层网络的权值可以赋予深度网络,且该网络的权值具有一定的通用性,而且有开放专门使用此网络训练人脸图像的模型;
步骤2中,搭建的层次网络为VGG-net卷积神经网络,卷积层步长和补齐均设置为1,卷积层共分成五组,每一组之后接池化层,初始输入大小为224×224,初始卷积核数目为64,卷积核大小全部为3×3,两个卷积层作为第一组,第二组同样是两个卷积层,池化后卷积核数目加倍为128个,第三,四,五组均为三个卷积层,卷积核数目依次为256,512,512;池化层采用最大池化方式,池化层步长大小为2,每次池化后特征图的尺寸减半,为了保证网络的表达能力,将卷积核的数目增加一倍;全连接层将之前提取的特征再次进行非线性变换,全连接参数为4096-4096-1000,并接Softmax进行分类(参考文献:《数字图像处理》冈萨雷斯/伍兹电子工业出版社),使用步骤1的预训练模型对搭建的层次网络初始化。
卷积神经网络一般分为三种网络层:卷积层,池化层和全连接层。卷积层通过使用不同的卷积核从多个角度获得图像特征。池化层主要是将之前的特征进行平滑,筛选,减少参数量。全连接层能够继续进行非线性变换,并起到分类器的作用。VGG-net采用小的同样尺寸的卷积核替代原先不同大小的卷积核。卷积核的大小全部设置成3×3,步长和补齐均设置为1,这样构建能够使得卷积以后的特征图和卷积前大小相等。与原先5×5和7×7大小的卷积核相比,两个3×3大小的卷积层能够拥有5×5大小的感受野,3个卷积层就能够拥有7×7大小的感受野,这样就可以模拟更大的感受野,并保持较小的卷积核。这样就能够有效的降低参数个数。例如2个3×3的卷积核参数个数为18,而5×5的卷积核参数个数为25,单这一层就降低了7个参数。本发明采用的是VGG-16模型,卷积层共分成五组,每一组之后接池化层,初始输入大小为224×224,初始卷积核数目为64,卷积核大小全部为3×3,两个卷积层作为第一组,第二组同样是两个卷积层,池化后卷积核数目加倍为128个,第三,四,五组均为三个卷积层,卷积核数目依次为256,512,512。池化层采用最大池化方式,步长大小为2,每次池化后特征图的尺寸减半,为了保证网络的表达能力,将卷积核的数目增加一倍。全连接层将之前提取的特征再次进行非线性变换,全连接参数为4096-4096-1000,并接Softmax进行分类;
步骤3包括:使用以下一种或两种以上组合数据增强变换来增加输入数据的量:
旋转、反射变换:随机旋转图像一定角度(随机逆时针或者顺时针旋转图像0~90度),或者改变图像内容的朝向(逆时针旋转图片90度或者180度,或者270度);
翻转变换:沿着水平或者垂直方向翻转图像;
缩放变换:将图像放大或者缩小到搭建的层次网络指定的输入大小,即224×224;
平移变换:在图像平面上对图像以一定方式进行平移,具体包括:将图像随机向左或者向右,向上或者向下平移,向左或者向右平移的距离随机在0~1/2图像的长,向上或者向下平移的距离在0~1/2图像的宽;
尺度变换:对图像参照SIFT(Scale Invariant Feature Transform,尺度不变特征变换)特征提取思想,利用指定的尺度因子对图像滤波构造尺度空间,改变图像内容的大小或模糊程度;
对比度变换:在图像的HSV(Hue,Saturation,Value,色调(H),饱和度(S),明度(V))颜色空间,改变饱和度S和V亮度分量,保持色调H不变,对每个像素的S和V分量进行指数运算(参考文献:《数字图像处理》冈萨雷斯/伍兹电子工业出版社),指数因子在0.25到4之间,增加光照变化;
噪声扰动:对图像的每个像素RGB进行随机扰动;
颜色变换:在人脸训练数据集像素值的RGB颜色空间进行PCA主成分分析(Principal Component Analysis,主成分分析),得到RGB空间的3个主方向向量,3个特征值,p1,p2,p3,λ1,λ2,λ3,p1,p2,p3代表人脸训练数据集像素值的RGB颜色空间进行PCA主成分分析后得到RGB空间的3个主方向向量,λ1,λ2,λ3代表人脸训练数据集像素值的RGB颜色空间进行PCA主成分分析后得到RGB空间的3个特征值,对每幅图像的每个像素Ixy=[IRxy,IGxy,IBxy]T进行如下的变化:
[p1,p2,p3][α1λ1,α2λ2,α3λ3]T
其中,IRxy指的RGB空间R空间(x,y)坐标位置的像素值,IGxy指的RGB空间G空间(x,y)坐标位置的像素值,IBxy指的RGB空间B空间(x,y)坐标位置的像素值,T表示矩阵形式的转置,α1、α2、α3是满足均值为0、方差为0.1的随机变量,用[p1,p2,p3][α1λ1,α2λ2,α3λ3]T这个公式计算得到的值来代替[IRxy,IGxy,IBxy]T这个本来的值,达到颜色变换的作用。
步骤4中,对步骤1选取预训练模型的网络结构需要根据人脸识别的难度进行裁剪和调整,选取相应的网络层进行微调(参考文献:《Deep Face Recognition》Parkhi,OmkarM and Vedaldi,Andrea and Zisserman,Andrew and others),得到新的网络模型。
步骤5包括:
步骤5-1,在步骤4得到的新的网络模型基础上,采用caffe的快速卷积方法(参考文献:《Caffe:Convolutional architecture for fast feature embedding》YangqingJia,Evan Shelhamer,Jeff Donahue,Sergey Karayev),使用现有的人脸训练数据集的数据,根据人脸训练数据集上分类的损失函数值的变化调整网络模型的学习率,并重新训练,单个输入的分类损失函数L(xs,ys)的计算公式为:
其中,K为分类种类的个数,xs表示输入的单个样本,ys表示该样本的类别,取值范围为1到K,表示ys类别为k时,取值为1,否则取值为0;C(xs)表示样本xs输入到网络后的输出结果;
最后的目的是最小化所有样本的分类的损失函数和,以此来训练新的网络模型,公式如下:
其中,(xs,ys)~(Xs,Ys)表示(xs,ys)是从数据集(Xs,Ys)采样得到的一个样本,Xs表示样本的集合,Ys表示样本对应的类别标签的集合,|Xs|表示总样本的个数;
步骤5-2,最终的目的是最小化损失函数和,所以当损失函数不再下降的时候,需要降低网络模型的学习率,以便让损失函数继续下降;
训练网络模型直到人脸训练数据集上的结果变化不大为止,即前后两次的结果相差不超过1%,则得到训练好的模型,执行步骤6;如果准确率不理想,即前后两次的结果相差超过1%,则转步骤4。
步骤2中,深度学习中,网络结构的设计对最后的识别结果起着至关重要的作用。从早期用于手写数字识别的LeNet-5到应用于ImageNet大批量图片数据识别时使用的AlexNet,包括近期获得CVPR 2016 best paper的ResNet等工作都是基于网络结构展开的,本发明采用的预训练网络是VGG-net,使用此预训练网络主要是因为该网络的卷积核大小均相等,且网络结构可以逐步递进深入,之前训练的浅层网络的权值可以赋予深度网络,且该网络的权值具有一定的通用性,而且有开放专门使用此网络训练人脸图像的模型,有利于实验和讨论的展开。
步骤3中,深度学习对数据量的要求比其他模型要大很多,实际上在某个大型的数据集上训练一个普适的模型,再将此模型作为初始权值。通过微调来获得较快的收敛速度和较高的精度。影响迁移学习效果的一个很重要的因素是原数据集与新数据集的相似度。一般来说,原数据集较大,且在内容上与新数据集更相似的,效果更好。迁移学习可以通过微调来实现,微调时主要需要考虑原始模型所用的数据集与新数据集所用的数据集在规模和相似度上的差别,一般来说,规模和相似度越高,迁移学习的效果越好。
微调VGG-FACE:本发明所选的模型为VGG-FACE模型。VGG-FACE采用的是VGG网络结构,在大规模的人脸数据集上训练而得,其训练集从2622人拍照采集而得,一共有260万张图像,主要是通过网络收集,通过谷歌必应搜索,每个人获得2000幅图像并经过后续的筛选处理完成。本发明使用的是Yale和AR数据集。使用VGG-FACE模型作为初始权值。
迁移学习网络结构的限制:使用原有的模型进行微调时,使用已有参数时,网络结构必须相同。包括两种情况:
(1)使用原先网络的所有层,并可以增加新的网络层。但使用已有的网络
层,每层的结点数必须保证相同。
(2)使用部分网络层次的权值,每层结点数同样必须保证相同。
微调时,学习率的改变:由于采用了预训练的模型,默认初始值是比较优的,所以学习率的设置均较小,一般从0.01逐步衰减至0.000001。这样梯度变化不至于太快。
微调时,一般都是微调所有层,当数据量特别少的时候,为了防止过拟合,也可以只微调高层。一般认为低层提取到的特征更一般化,比如边缘,彩色半点等。高层特征越来越接近新数据集中所包含的分类的细节。
针对现有技术的问题,本发明研究了在样本不足时可采用的基于迁移学习和微调构建的层次网络,并在人脸识别的具体视觉任务上做实验验证。在深度学习中,迁移学习主要指的是权重迁移,将预训练好的网络权重作为新网络的初始权重,然后微调此通用网络权重以满足新的识别任务。在Mnist,Yale,AR等数据集上的实验证明,该方法不仅可以取得比较好的预测效果,相比于从头训练,还可以缩短训练时间。
深度学习通过把原始数据通过一些简单但是非线性的模型转变成为更高层次的,更加抽象的表达。通过足够多的转换和组合,几乎可以拟合任意函数。
深度学习能够从原始的训练数据中学习到隐藏的语义,并实现更有利于分类的特征表达,通过该种构造与转换,可以完成多种语义识别与分析的任务。对包括语音识别,视觉对象识别,甚至于自然语言等方面都带来了显著的改善。深度学习能够发现大数据中的复杂结构。它是利用BP反向传播来进行训练的。其核心是特征的提取与分类是通过通用的学习过程从数据中学到的而不是手工工程的设计。且深度学习框架能够为很多问题提供通用的解决方案。
本方法重点讨论在样本量相对较少时,采用深度学习模型时需要做的解决方案,通过选取开源的训练好的通用模型,在构建符合新数据集的网络结构,将原先的权值作为初始值,进行迁移学习,并微调使得在新的数据集上效果更好。在人脸识别方面取得了令人满意的实验结果。
有益效果:本发明解决了现有技术中的问题:
1)由于资源,人手等成本的限制,并不能获得足够多的有标签的人脸训练样本。针对这种场景,本发明提出了在样本不足时可采用的基于迁移学习和微调构建的层次网络,并针对人脸识别问题做了有益的验证。
2)快速卷积核学习率的设置:在迁移学习具体的细节处理上,给出了较快速的卷积操作的实现,这样可以在CPU模式下节约时间,同时还研究了学习率的改变对最终效果的影响,并且在标准数据集上做对比实验,给出了该方法的有效性验证,这对资源有限时,深度学习方法的选择和改良提供了帮助。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。
图1为im2col实现示意图。
图2为caffe卷积实现示意图。
图3为网络模型图。
图4是本发明流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
本发明适用于当训练数据集较小,实际可用的资源不足时,可采用的一种基于迁移层次网络的人脸识别方法。本发明提出了新的人脸识别的方法。1)在搭建网络时,利用大小相等的卷积核替代原先较大的卷积核,以构造层次网络2)在进行迁移学习时,通过原模型与现有数据集之间的相似关系,确定网络的微调层次结构,并不断的调整学习率。3)在执行卷积运算时,使用caffe工具提供的im2col方法将卷积转为矩阵相乘。整个过程如图4所示,本发明包括如下步骤:
步骤1:预训练模型选取。选取VGG-FACE网络的权值作为网络的初始权值;
步骤2:层次网络搭建:本发明采用的是VGG-16模型,卷积层共分成五组,每一组之后接池化层,初始输入大小为224×224,初始卷积核数目为64,卷积核大小全部为3×3,两个卷积层作为第一组,第二组同样是两个卷积层,池化后卷积核数目加倍为128个,第三,四,五组均为三个卷积层,卷积核数目依次为256,512,512。池化层采用最大池化方式,步长大小为2,每次池化后特征图的尺寸减半,为了保证网络的表达能力,将卷积核的数目增加一倍;
步骤3:人脸数据预处理:对已有的人脸数据,做适当的旋转,偏移,颜色加深,施加随机椒盐噪声等,以增加训练集的数量;
步骤4:确定微调的网络层次。一般来讲,网络的前面层次,涉及的更多是低层特征的提取,后面层次提取的特征更有表达能力,全连接层则更更多的涉及分类的信息;
步骤5:深度学习模型训练,使用微调的方法完成模型的迁移学习;不断的调整模型的学习率,若在训练集上的准确率不够理想,则转步骤4;
步骤6:使用已训练好的模型进行人脸识别。
步骤4中,迁移学习可以通过微调来实现,微调时主要需要考虑原始模型所用的数据集与新数据集所用的数据集在规模和相似度上的差别,一般来说,规模和相似度越高,迁移学习的效果越好。微调VGG-FACE:本发明所选的模型为VGG-FACE模型VGG-FACE采用的是VGG网络结构,在大规模的人脸数据集上训练而得,其训练集从2622人拍照采集而得,一共有260万张图像,主要是通过网络收集,通过谷歌必应搜索,每个人获得2000幅图像并经过后续的筛选处理完成。本发明所使用的是Yale和AR数据集。使用VGG-FACE模型作为初始权值。迁移学习网络结构的限制:使用原有的模型进行微调时,使用已有参数时,网络结构必须相同。包括两种情况:
(1)使用原先网络的所有层,并可以增加新的网络层。但使用已有的网络层,每层的结点数必须保证相同。
(2)使用部分网络层次的权值,每层结点数同样必须保证相同。
微调时,学习率的改变:由于采用了预训练的模型,默认初始值是比较优的,所以学习率的设置均较小,一般从0.01逐步衰减至0.000001。这样梯度变化不至于太快。
微调时,一般都是微调所有层,当数据量特别少的时候,为了防止过拟合,也可以只微调高层。一般认为低层提取到的特征更一般化,比如边缘,彩色半点等。高层特征越来越接近新数据集中所包含的分类的细节。
步骤5中,层次网络的训练最重要的是卷积操作的实现。caffe中卷积的实现思想是img2col,假设一副图像尺寸大小为M×M,卷积核大小为m×m。如图2(图2中Caffe为一种深度学习工具,参考文献:《Caffe:Convolutional architecture for fast featureembedding》Jia,Yangqing and Shelhamer,Evan and Donahue,Jeff and Karayev,Sergeyand Long,Jonathan and Girshick,Ross and Guadarrama,Sergio and Darrell,Trevor),那么在计算时,卷积核与图像中每个m×m大小的图像块均要做像素点级别的相乘操作,这就相当于把该m×m图像块提取出来,然后表示成一个长度为m2的列向量,只要计算共有多少个这种图像块即可。考虑简单的情况,不计算补齐值(padding)和步长(stride)的情况下,一共有(M-m+1)^2个,把这么多的图像块均表示为m^2的列向量,然后将其组合为一个大矩阵(m^2x(M-m+1)^2)。这就是img2col对卷积的具体实现方式,见图1(图1中英文的含义:
im2col:将图片转换为矩阵形式
Image:图片
C:channel通道数
H:height高度
W:width宽度
Feature Matrix:由图片转化得到的特征矩阵
K:卷积核的大小
Filter:卷积核
Cout:卷积核的个数),matlab中就有这种函数。最后把卷积核也表示为m2向量,并按列均复制为同尺寸矩阵(m^2x(M-m+1)^2)。将俩矩阵按列做点积即可得结果。
如图3所示,x1:网络模型的第一个输入,
x2:网络模型的第二个输入,
W(1):网络第一层神经元的参数,
W(2):网络第二层神经元的参数,
b(1):网络第一层神经元的偏置,
b(2):网络第二层神经元的偏置,
网络第一个输入的第一层、第二层神经元的输出,
网络第二个输入的第一层、第二层神经元的输出,
将事先已知是否为同一人脸的一对照片,分别输入到网络模型中。如同图3所示,左边图片x1输入到网络中得到右边图片x2输入网络模型中得到并通过模型的迁移学习的部分,在已知两幅图为同一个人脸还是不同人脸的条件下,去更新网络模型的参数,从而达到训练网络模型的目的。
实施例:
本发明采用上述方案,在标准的人脸数据集Yale,AR上取得了令人满意的效果。Yale数据集是由耶鲁大学的计算视觉与控制中心搜集创建而成,数据集中有15位人员的各个角度的图片共165张,包含各种视觉因素的影响,诸如光照,表情和姿态的变化。AR:包括120人,4000多幅图像,分别对应于不同表情和光照条件下的人脸。是公认度比较高的一种数据库。
具体实现如下:
步骤1:可选用的具有一般意义的初始模型主要是ImageNet分类模型和VGG模型,本发明要做的是人脸识别,所以选用VGG-Face模型。
步骤2:搭建用于人脸分类的层次网络,将卷积层分成5个组,每一组均有3层,卷积核的大小均为3×3。第一组有64张特征图;初始输入大小为224×224,初始卷积核数目为64,卷积核大小全部为3×3,两个卷积层作为第一组,第二组同样是两个卷积层,池化后卷积核数目加倍为128个,第三,四,五组均为三个卷积层,卷积核数目依次为256,512,512。具体参数见表1:
表1
VGG-16参数 | |
Group1 | Conv3-64 |
Group2 | Conv3-128 |
Group3 | Conv3-256 |
Group4 | Conv3-512 |
Group5 | Conv3-512 |
Fully-Connect | 4096-4096-1000 |
步骤3:在Yale数据集上,微调网络的所有层,并重命名最后一层,以进行分类。
步骤4,采用每个人2张作为训练集,9张作为测试集,并做旋转,偏移,颜色增强等操作。
步骤5,将已有的广义VGG模型的权值作为新模型的权值,在此模型上,使用caffe深度学习库在现有的训练数据上进行重训练操作,包括卷积,池化,全连接特征提取;卷积时采用caffe实现的快速卷积方案,首先使用im2col方法将特征图转化为矩阵。见图1。转化为矩阵形式后,采用GEMM算法做实际计算,使用Filter Matrix乘以Feature Matrix的转置,得到输出矩阵Cout x(H x W),即三维Blob的值(Cout x H x W)。
步骤6,对于给定的图片,进行相应的预处理,然后使用已训练好的模型进行分类识别操作,具体操作参数为test–-model–vgg_finetune,在Yale数据集上的结果如表2:
表2
方法 | 准确率 |
PCA | 82.90% |
LDA | 78.50% |
LDA+Gabor | 92.60% |
HOG | 94.80% |
SIFT | 84.40% |
VGG+finetuning | 96.70% |
在AR数据集上实验结果见表3:
表3
Method | Accuracy |
SRC | 56.00% |
ESRC | 81.25% |
SVDL | 85.92% |
VGG_Face+finetuning | 87.00% |
PCRC | 90.84% |
本发明提供了一种基于迁移层次网络的人脸识别方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (6)
1.一种基于迁移层次网络的人脸识别方法,其特征在于,包括如下步骤:
步骤1,选取预训练模型;
步骤2,搭建层次网络;
步骤3,对人脸训练数据集进行预处理;
步骤4,确定微调的网络层次结构;
步骤5,在人脸训练数据集上进行重训练操作,如果在人脸训练数据集上的准确率不理想,则转步骤4,否则得到训练好的模型,执行步骤6;
步骤6,对于给定的图片,采用与步骤3中相同的方式进行相应的预处理,使用步骤5得到的已训练好的模型进行人脸识别,给出识别结果。
2.根据权利要求1所述的方法,其特征在于,步骤1所选取的预训练模型为VGG-FACE模型。
3.根据权利要求2所述的方法,其特征在于,步骤2中,搭建的层次网络为VGG-net卷积神经网络,卷积层步长和补齐均设置为1,卷积层共分成五组,每一组之后接池化层,初始输入大小为224×224,初始卷积核数目为64,卷积核大小全部为3×3,两个卷积层作为第一组,第二组同样是两个卷积层,池化后卷积核数目加倍为128个,第三,四,五组均为三个卷积层,卷积核数目依次为256,512,512;池化层采用最大池化方式,池化层步长大小为2,每次池化后特征图的尺寸减半,为了保证网络的表达能力,将卷积核的数目增加一倍;全连接层将之前提取的特征再次进行非线性变换,全连接参数为4096-4096-1000,并接Softmax进行分类,使用步骤1的预训练模型对搭建的层次网络初始化。
4.根据权利要求3所述的方法,其特征在于,步骤3包括:使用以下一种或两种以上组合数据增强变换来增加输入数据的量:
旋转、反射变换:随机旋转图像一定角度,或者改变图像内容的朝向;
翻转变换:沿着水平或者垂直方向翻转图像;
缩放变换:将图像放大或者缩小到搭建的层次网络指定的输入大小,即224×224;
平移变换:在图像平面上对图像以一定方式进行平移,具体包括:将图像随机向左或者向右,向上或者向下平移,向左或者向右平移的距离随机在0~1/2图像的长,向上或者向下平移的距离在0~1/2图像的宽;
尺度变换:对图像参照SIFT特征提取思想,利用指定的尺度因子对图像滤波构造尺度空间,改变图像内容的大小或模糊程度;
对比度变换:在图像的HSV颜色空间,改变饱和度S和V亮度分量,保持色调H不变,对每个像素的S和V分量进行指数运算,指数因子在0.25到4之间,增加光照变化;
噪声扰动:对图像的每个像素RGB进行随机扰动;
颜色变换:在人脸训练数据集像素值的RGB颜色空间进行PCA主成分分析(PrincipalComponent Analysis,主成分分析),得到RGB空间的3个主方向向量,3个特征值,p1,p2,p3,λ1,λ2,λ3,p1,p2,p3代表人脸训练数据集像素值的RGB颜色空间进行PCA主成分分析后得到RGB空间的3个主方向向量,λ1,λ2,λ3代表人脸训练数据集像素值的RGB颜色空间进行PCA主成分分析后得到RGB空间的3个特征值,对每幅图像的每个像素Ixy=[IRxy,IGxy,IBxy]T进行如下的变化:
[p1,p2,p3][α1λ1,α2λ2,α3λ3]T
其中,IRxy指的RGB空间R空间(x,y)坐标位置的像素值,IGxy指的RGB空间G空间(x,y)坐标位置的像素值,IBxy指的RGB空间B空间(x,y)坐标位置的像素值,T表示矩阵形式的转置,α1、α2、α3是满足均值为0、方差为0.1的随机变量,用[p1,p2,p3][α1λ1,α2λ2,α3λ3]T这个公式计算得到的值来代替[IRxy,IGxy,IBxy]T这个本来的值,达到颜色变换的作用。
5.根据权利要求4所述的方法,其特征在于,步骤4中,对步骤1选取预训练模型的网络结构需要根据人脸识别的难度进行裁剪和调整,选取相应的网络层进行微调,得到新的网络模型。
6.根据权利要求5所述的方法,其特征在于,步骤5包括:
步骤5-1,在步骤4得到的新的网络模型基础上,采用caffe的快速卷积方法,使用现有的人脸训练数据集的数据,根据人脸训练数据集上分类的损失函数值的变化调整网络模型的学习率,并重新训练,单个输入的分类损失函数L(xs,ys)的计算公式为:
其中,K为分类种类的个数,xs表示输入的单个样本,ys表示该样本的类别,取值范围为1到K,表示ys类别为k时,取值为1,否则取值为0;C(xs)表示样本xs输入到网络后的输出结果;
最后的目的是最小化所有样本的分类的损失函数和,以此来训练新的网络模型,公式如下:
其中,(xs,ys)~(Xs,Ys)表示(xs,ys)是从数据集(Xs,Ys)采样得到的一个样本,Xs表示样本的集合,Ys表示样本对应的类别标签的集合,|Xs|表示总样本的个数;
步骤5-2,最终的目的是最小化损失函数和,所以当损失函数不再下降的时候,需要降低网络模型的学习率,以便让损失函数继续下降;
训练网络模型直到人脸训练数据集上的结果变化不大为止,即前后两次的结果相差不超过1%,则得到训练好的模型,执行步骤6;如果准确率不理想,即前后两次的结果相差超过1%,则转步骤4。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810413269.0A CN108596138A (zh) | 2018-05-03 | 2018-05-03 | 一种基于迁移层次网络的人脸识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810413269.0A CN108596138A (zh) | 2018-05-03 | 2018-05-03 | 一种基于迁移层次网络的人脸识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108596138A true CN108596138A (zh) | 2018-09-28 |
Family
ID=63620639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810413269.0A Pending CN108596138A (zh) | 2018-05-03 | 2018-05-03 | 一种基于迁移层次网络的人脸识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108596138A (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214470A (zh) * | 2018-10-25 | 2019-01-15 | 中国人民解放军国防科技大学 | 一种基于编码网络微调的图像能见度检测方法 |
CN109255340A (zh) * | 2018-10-29 | 2019-01-22 | 东北大学 | 一种融合多种改进vgg网络的人脸识别方法 |
CN109389607A (zh) * | 2018-10-12 | 2019-02-26 | 上海鹰觉科技有限公司 | 基于全卷积神经网络的舰船目标分割方法、系统及介质 |
CN109409442A (zh) * | 2018-11-21 | 2019-03-01 | 电子科技大学 | 迁移学习中卷积神经网络模型选择方法 |
CN109767816A (zh) * | 2018-12-27 | 2019-05-17 | 浙江省天正设计工程有限公司 | 一种基于深度神经网络的化学工艺危险自动化分析的方法 |
CN109934198A (zh) * | 2019-03-22 | 2019-06-25 | 北京市商汤科技开发有限公司 | 人脸识别方法及装置 |
CN110008842A (zh) * | 2019-03-09 | 2019-07-12 | 同济大学 | 一种基于深度多损失融合模型的行人重识别方法 |
CN110097033A (zh) * | 2019-05-15 | 2019-08-06 | 成都电科智达科技有限公司 | 一种基于特征扩充的单样本人脸识别方法 |
CN110163151A (zh) * | 2019-05-23 | 2019-08-23 | 北京迈格威科技有限公司 | 人脸模型的训练方法、装置、计算机设备和存储介质 |
CN110222562A (zh) * | 2019-04-26 | 2019-09-10 | 昆明理工大学 | 一种基于Fast R-CNN的人脸检测方法 |
CN110533076A (zh) * | 2019-08-01 | 2019-12-03 | 江苏濠汉信息技术有限公司 | 基于视觉分析的施工人员安全带佩戴的检测方法及装置 |
CN110781817A (zh) * | 2019-10-25 | 2020-02-11 | 南京大学 | 一种解决部件不对齐的行人再识别方法 |
CN110807448A (zh) * | 2020-01-07 | 2020-02-18 | 南京甄视智能科技有限公司 | 人脸关键点数据增强方法、装置、系统以及模型训练方法 |
CN110852205A (zh) * | 2019-10-28 | 2020-02-28 | 北京影谱科技股份有限公司 | 一种基于改进的卷积网络的人脸识别方法及装置 |
CN111178699A (zh) * | 2019-12-15 | 2020-05-19 | 贵州电网有限责任公司 | 一种调度操作票智能校核系统构建方法 |
CN111339983A (zh) * | 2020-03-05 | 2020-06-26 | 四川长虹电器股份有限公司 | 一种微调人脸识别模型的方法 |
CN111598157A (zh) * | 2020-05-14 | 2020-08-28 | 北京工业大学 | 一种基于vgg16网络层级优化的身份证图像分类方法 |
CN111860132A (zh) * | 2020-06-08 | 2020-10-30 | 东北农业大学 | 一种基于vgg-16卷积神经网络的家鸡个体识别方法 |
CN112784643A (zh) * | 2019-11-08 | 2021-05-11 | 广东毓秀科技有限公司 | 一种通过部件对齐池化进行行人重识别的方法 |
CN112966673A (zh) * | 2021-05-19 | 2021-06-15 | 南京视察者智能科技有限公司 | 一种行人重识别模型的构建方法及行人重识别方法 |
CN113591689A (zh) * | 2021-07-29 | 2021-11-02 | 安徽理工大学 | 一种煤和矸石rgb图像识别方法及其系统 |
CN114743041A (zh) * | 2022-03-09 | 2022-07-12 | 中国科学院自动化研究所 | 一种预训练模型抽选框架的构建方法及装置 |
CN113505740B (zh) * | 2021-07-27 | 2023-10-10 | 北京工商大学 | 基于迁移学习和卷积神经网络的面部识别方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8345962B2 (en) * | 2007-11-29 | 2013-01-01 | Nec Laboratories America, Inc. | Transfer learning methods and systems for feed-forward visual recognition systems |
CN106295584A (zh) * | 2016-08-16 | 2017-01-04 | 深圳云天励飞技术有限公司 | 深度迁移学习在人群属性的识别方法 |
CN106599797A (zh) * | 2016-11-24 | 2017-04-26 | 北京航空航天大学 | 一种基于局部并行神经网络的红外人脸识别方法 |
CN107506740A (zh) * | 2017-09-04 | 2017-12-22 | 北京航空航天大学 | 一种基于三维卷积神经网络和迁移学习模型的人体行为识别方法 |
-
2018
- 2018-05-03 CN CN201810413269.0A patent/CN108596138A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8345962B2 (en) * | 2007-11-29 | 2013-01-01 | Nec Laboratories America, Inc. | Transfer learning methods and systems for feed-forward visual recognition systems |
CN106295584A (zh) * | 2016-08-16 | 2017-01-04 | 深圳云天励飞技术有限公司 | 深度迁移学习在人群属性的识别方法 |
CN106599797A (zh) * | 2016-11-24 | 2017-04-26 | 北京航空航天大学 | 一种基于局部并行神经网络的红外人脸识别方法 |
CN107506740A (zh) * | 2017-09-04 | 2017-12-22 | 北京航空航天大学 | 一种基于三维卷积神经网络和迁移学习模型的人体行为识别方法 |
Non-Patent Citations (2)
Title |
---|
MOSTAFAMEHDIPOUR GHAZI ET AL.: "Plant identification using deep neural networks via optimization of transfer learning parameters", 《NEUROCOMPUTING》 * |
周旺: "基于卷积神经网络的人脸年龄估计算法", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109389607A (zh) * | 2018-10-12 | 2019-02-26 | 上海鹰觉科技有限公司 | 基于全卷积神经网络的舰船目标分割方法、系统及介质 |
CN109214470A (zh) * | 2018-10-25 | 2019-01-15 | 中国人民解放军国防科技大学 | 一种基于编码网络微调的图像能见度检测方法 |
CN109214470B (zh) * | 2018-10-25 | 2020-11-03 | 中国人民解放军国防科技大学 | 一种基于编码网络微调的图像能见度检测方法 |
CN109255340A (zh) * | 2018-10-29 | 2019-01-22 | 东北大学 | 一种融合多种改进vgg网络的人脸识别方法 |
CN109409442A (zh) * | 2018-11-21 | 2019-03-01 | 电子科技大学 | 迁移学习中卷积神经网络模型选择方法 |
CN109767816A (zh) * | 2018-12-27 | 2019-05-17 | 浙江省天正设计工程有限公司 | 一种基于深度神经网络的化学工艺危险自动化分析的方法 |
CN110008842A (zh) * | 2019-03-09 | 2019-07-12 | 同济大学 | 一种基于深度多损失融合模型的行人重识别方法 |
CN109934198A (zh) * | 2019-03-22 | 2019-06-25 | 北京市商汤科技开发有限公司 | 人脸识别方法及装置 |
CN110222562A (zh) * | 2019-04-26 | 2019-09-10 | 昆明理工大学 | 一种基于Fast R-CNN的人脸检测方法 |
CN110097033B (zh) * | 2019-05-15 | 2023-04-07 | 成都电科智达科技有限公司 | 一种基于特征扩充的单样本人脸识别方法 |
CN110097033A (zh) * | 2019-05-15 | 2019-08-06 | 成都电科智达科技有限公司 | 一种基于特征扩充的单样本人脸识别方法 |
CN110163151A (zh) * | 2019-05-23 | 2019-08-23 | 北京迈格威科技有限公司 | 人脸模型的训练方法、装置、计算机设备和存储介质 |
CN110163151B (zh) * | 2019-05-23 | 2022-07-12 | 北京迈格威科技有限公司 | 人脸模型的训练方法、装置、计算机设备和存储介质 |
CN110533076A (zh) * | 2019-08-01 | 2019-12-03 | 江苏濠汉信息技术有限公司 | 基于视觉分析的施工人员安全带佩戴的检测方法及装置 |
CN110781817A (zh) * | 2019-10-25 | 2020-02-11 | 南京大学 | 一种解决部件不对齐的行人再识别方法 |
CN110852205A (zh) * | 2019-10-28 | 2020-02-28 | 北京影谱科技股份有限公司 | 一种基于改进的卷积网络的人脸识别方法及装置 |
CN112784643A (zh) * | 2019-11-08 | 2021-05-11 | 广东毓秀科技有限公司 | 一种通过部件对齐池化进行行人重识别的方法 |
CN111178699A (zh) * | 2019-12-15 | 2020-05-19 | 贵州电网有限责任公司 | 一种调度操作票智能校核系统构建方法 |
CN110807448A (zh) * | 2020-01-07 | 2020-02-18 | 南京甄视智能科技有限公司 | 人脸关键点数据增强方法、装置、系统以及模型训练方法 |
CN111339983A (zh) * | 2020-03-05 | 2020-06-26 | 四川长虹电器股份有限公司 | 一种微调人脸识别模型的方法 |
CN111598157A (zh) * | 2020-05-14 | 2020-08-28 | 北京工业大学 | 一种基于vgg16网络层级优化的身份证图像分类方法 |
CN111598157B (zh) * | 2020-05-14 | 2023-09-15 | 北京工业大学 | 一种基于vgg16网络层级优化的身份证图像分类方法 |
CN111860132A (zh) * | 2020-06-08 | 2020-10-30 | 东北农业大学 | 一种基于vgg-16卷积神经网络的家鸡个体识别方法 |
CN112966673A (zh) * | 2021-05-19 | 2021-06-15 | 南京视察者智能科技有限公司 | 一种行人重识别模型的构建方法及行人重识别方法 |
CN112966673B (zh) * | 2021-05-19 | 2021-07-23 | 南京视察者智能科技有限公司 | 一种行人重识别模型的构建方法及行人重识别方法 |
CN113505740B (zh) * | 2021-07-27 | 2023-10-10 | 北京工商大学 | 基于迁移学习和卷积神经网络的面部识别方法 |
CN113591689A (zh) * | 2021-07-29 | 2021-11-02 | 安徽理工大学 | 一种煤和矸石rgb图像识别方法及其系统 |
CN114743041A (zh) * | 2022-03-09 | 2022-07-12 | 中国科学院自动化研究所 | 一种预训练模型抽选框架的构建方法及装置 |
CN114743041B (zh) * | 2022-03-09 | 2023-01-03 | 中国科学院自动化研究所 | 一种预训练模型抽选框架的构建方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108596138A (zh) | 一种基于迁移层次网络的人脸识别方法 | |
Rahman et al. | A new benchmark on american sign language recognition using convolutional neural network | |
CN108182441B (zh) | 平行多通道卷积神经网络、构建方法及图像特征提取方法 | |
Zhang et al. | End-to-end photo-sketch generation via fully convolutional representation learning | |
CN107145830B (zh) | 基于空间信息增强和深度信念网络的高光谱图像分类方法 | |
CN108491849A (zh) | 基于三维稠密连接卷积神经网络的高光谱图像分类方法 | |
CN111242841B (zh) | 一种基于语义分割和深度学习的图片背景风格迁移方法 | |
CN106126581A (zh) | 基于深度学习的手绘草图图像检索方法 | |
CN108121975A (zh) | 一种联合原始数据和生成数据的人脸识别方法 | |
CN106570521B (zh) | 多语言场景字符识别方法及识别系统 | |
CN103942571B (zh) | 一种基于遗传规划算法的图形图像分类方法 | |
CN108664911A (zh) | 一种基于图像稀疏表示的鲁棒人脸识别方法 | |
CN106529586A (zh) | 基于补充文本特征的图像分类方法 | |
CN113449776A (zh) | 基于深度学习的中草药识别方法、装置及存储介质 | |
Liu et al. | Image retrieval using CNN and low-level feature fusion for crime scene investigation image database | |
CN109325434A (zh) | 一种多特征的概率主题模型的图像场景分类方法 | |
CN109508640A (zh) | 一种人群情感分析方法、装置和存储介质 | |
CN110414516B (zh) | 一种基于深度学习的单个汉字识别方法 | |
CN115049814A (zh) | 采用神经网络模型的护眼灯智能调节方法 | |
CN112966672B (zh) | 一种复杂背景下的手势识别方法 | |
CN107133579A (zh) | 基于CSGF(2D)2PCANet卷积网络的人脸识别方法 | |
Ichimura | Spatial frequency loss for learning convolutional autoencoders | |
CN112800977A (zh) | 基于多粒度卷积神经网络剪枝的教师板书动作识别方法 | |
CN105184320B (zh) | 基于结构相似度的非负稀疏编码的图像分类方法 | |
CN108108652A (zh) | 一种基于字典学习的跨视角人体行为识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180928 |