董兰芳,张军挺
(中国科学技术大学 计算机科学与技术学院,合肥 230027)
随着近年来社交平台与媒体的发展,人脸年龄估计与性别识别在现实生活中的应用越来越多,引起了人们广泛的兴趣。人脸年龄估计与性别识别技术在身份认证、人机接口、网络娱乐以及计算机视觉中的应用也越来越多。年龄估计和性别识别方法有相似之处,首先它们的识别对象都是人脸,输入一张图像,都要进行人脸检测定位、图像预处理,然后提取出人脸特征,最后进行识别。在以前对人脸年龄估计和性别识别的研究中,提取的特征大多是人为设计的浅层特征,然后使用机器学习方法对输入特征进行分类。
本文运用深度卷积神经网络一般到特殊的微调方法对人脸属性进行微调训练。使用在自然场景下拍摄的图像,训练过程较简单,不需要复杂繁琐的人脸归一化预处理,且训练出的模型对复杂光照、姿态和背景变化具有鲁棒性。
下面分别对人脸年龄估计和性别识别的研究进行讨论。
人脸年龄估计与性别识别主要步骤如图1所示。
图1 人脸年龄估计与性别识别流程
在年龄估计方面,文献[1]在1994年就开始研究人脸图像的年龄估计,首先对人脸的眼睛、鼻子和嘴巴进行定位,然后计算人脸上述特征的大小、距离、比例等,使用计算的特征对年龄分类;文献[2]使用类似文献[1]的方法,对年龄在18岁以下的人脸进行分类,需要精确检测定位脸部特征,这种方法对在自然场景下的人脸图像则不适合。文献[3]提出衰老模式子空间方法,使用个人在不同时间段的人脸图像来对衰老模式进行建模,对于输入的人脸图像,通过子空间投影方法,重构出其衰老模式,从而估计人脸图像的年龄。文献[4]使用子空间学习方法,提取与人脸年龄相关的特征,并设计局部可调的回归学习方法估计人脸年龄。随着越来越多鲁棒的图像特征描述符被提出来,有些描述符也被应用在人脸年龄估计的研究中。文献[5]使用Gabor[6]特征,以及模糊线性判别分析方法对年龄分类;文献[7]使用Gabor[6]特征和LBP[8]特征作为输入特征,并用支持向量机对年龄分类;文献[9]使用LBP[8]特征,以及dropout-SVM分类器对人脸年龄估计与性别识别进行研究。
在性别识别方面,早在20世纪90年代,文献[10]提出使用全连接神经网络,在小数据集上对人脸图像进行性别识别实验;文献[11]较早使用支持向量机(SVM)直接对图像强度进行分类,在FERET[12]数据库上实验;文献[13]用Adaboost分类器,对图像像素强度进行训练与测试;文献[14]使用Adaboost分类器,但输入使用人脸图像的LBP特征;文献[15]使用SIFT特征,并运用Adaboost进行特征选择;文献[16]使用WLD[17]特征进行人脸性别识别研究,在FERET[12]数据库上进行训练和测试;文献[18]使用LBP特征和Adaboost结合的方法,在LFW[19]数据集上进行人脸性别识别的实验。其中LFW是自然场景下的人脸数据库,近年来被很多研究者用作人脸识别的研究;文献[20]使用深度卷积神经网络对人脸年龄与性别分类进行研究。
以上对人脸年龄与性别识别的研究,使用的特征大多是人工设计的,在限制性条件下会取得较好的结果,但受光照、姿态、背景变化影响较大,对自然场景下的人脸进行识别时,会遇到更大的挑战。近年来,深度学习技术快速发展,基于卷积神经网络提取的特征,分类效果较好,有着广泛的应用。比如文献[21]提出基于深度卷积神经网络的服装图像分类检索算法,在服装分类问题上取得较高的准确率。
本文提出基于深度卷积神经网络(DCNN)从一般到特殊的微调方案,训练好模型后进行特征提取,再结合使用随机森林(RFC)方法对人脸年龄与性别分类进行训练和测试。其中DCNN使用的是VGG-Face[22]网络结构,如图2所示,先对不同人脸进行分类预训练,然后在CelebA[23]人脸属性数据库上进行微调训练,挖掘不同个体的人脸差异与人脸属性的内在联系,最后使用RFC进行训练和测试。模型的训练使用了大量自然场景下的图像,对于复杂光照、人脸姿态以及背景变化具有鲁棒性。本文使用Adienc[9]数据集进行实验,其中数据集由各个年龄段、不同性别的人脸图像组成,均在自然场景下拍摄,如图3所示。
图2 一般到特殊的微调训练流程
图3 Adience数据库中的人脸图像
对于训练集与测试集图像,本文采用Mathias[24]的人脸检测器得到人脸的定位。对于少部分没有检测到人脸的图像,或者图像较模糊时,则直接舍弃,防止这些图像对训练结果产生干扰。
改变上述图像尺寸,使每个图像都是224像素×224像素,作为深度卷积神经网络的输入。
基于DCNN的特征提取流程如图2所示,受文献[25-26]的启发,本文提出一般到特殊的微调方案,并将卷积神经网络各全连接层的特征连接起来,构成特征向量。主要包含3个步骤:
1)采用VGG-Face[22]的模型,它在大数据集上对不同人脸进行分类预训练。如图4所示,该网络有13个卷积层和3个全连接层。其中,卷基层参数表示为“conv<感受野大小>-<通道数>”,最大池化层用maxpool表示,全连接层表示为FC-<输出数>。在该网络中,图像输入尺寸是固定的,接着依次通过一系列核大小为3×3的卷积层。每2个或3个连续堆叠的卷积层构成一个单元模块,称之为Block。每个Block模块后面都会接入一个maxpool层,用于减少输入的尺寸大小,并保持网络的平移不变性。经过多个堆叠的Block模块后,接入一个三层全连接层,最后连接一个softmax分类器。为了简洁,ReLU激活函数没有在图4中展示。该网络最大的特点就是它的卷积核尺寸全都是3×3,卷积操作能够覆盖到输入的上、下、左、右、中、左上、右上、左下、右下共9个方向。多个小卷积核的堆叠跟单个大卷积核比,具有更好的特征提取能力。
图4 VGG-Face卷积神经网络配置
2)在CelebA[23]人脸属性数据集上对VGG-Face[22]模型进行多标签微调训练,该数据集共有40个属性类别,每个属性用“是”或者“不是”来表示,例如是否年轻等。本文选取其中5个属性,分别是:(1)是否留胡子;(2)是否年轻;(3)是否戴眼镜;(4)性别是否为男;(5)是否戴帽子。在多标签微调训练时,需要设计多个损失函数层,将图4的网络结构更改一下。首先为每个属性标签定义一个损失函数,在深度学习框架caffe[27]中表示为softmaxWithloss;然后在每个损失函数前添加一个全连接层,新添加的全连接层都与VGG-Face的第2个全连接层连接,即图4中的FC-4096层;最后将FC-2622全连接层去掉。将各个损失函数的权重值设置为0.2,使得所有任务的权重值相加为1,把全连接层的学习率设置为0.001,其他中间层的学习率设置为0.000 1,微调训练得到的模型记作模型a。
3)输入人脸图像,经过模型a前向,将所有全连接层的输出值连接起来,构成一个向量,作为人脸DCNN特征。
与传统手工设计的特征相比(例如LBP特征、HOG特征等),使用本文方法提取人脸特征,主要有以下优势:
1)近年来,深度学习快速发展在计算机视觉领域有出色的表现。本文使用深度卷积神经网络进行训练,提取的特征对自然场景中的复杂光照、人脸姿态变化,以及部分遮挡等具有鲁棒性。
2)假如某个手工设计的特征可以有效识别出人脸性别,但是它对于人脸年龄的估计就不一定有效,因此,对于同一张输入图像,使用传统方法需要计算不同的特征。
本文挑选了几个人脸属性进行训练,例如“是否年轻”“性别是否为男”“是否留胡子”等,这几个属性跟人脸年龄与性别的识别有关系。对于一张输入图像,本文只需要前向一次网络来提取特征值。
3)本文先在大规模人脸数据库上,对不同的人脸个体进行识别训练,再对人脸属性微调训练,使用这种方法不容易发生过拟合。
4)本文方法的可扩展性较强。比如有新的应用需求时,要对人脸种族、表情等进行识别,只需要挑选相关的人脸属性数据库进行微调训练。
RFC是Leo breiman[28]提出的集成树形分类器,由k棵分类树组成,它的基本思想是将多个弱分类器集成为一个强分类器。分类树由根节点、内部节点和叶子节点构成。其中,根节点代表训练集,每个内部节点代表弱分类器,将样本按照某一属性划分,每个叶子节点都是有标签的训练或测试集,将输入数据分类成若干个子集。RFC最后的决策结果是所有分类树投票选择的最优结果。
使用基尼指数[29]选择最优的特征,同时决定该特征的最优二值切分点。基尼指数Ggini(D)表示集合D的不确定性。在分类问题中,假设共有N个类,对于给定样本集合D,其基尼指数定义为:
(1)
其中,Cn是D中属于第n类的样本子集。如果样本集合D根据特征A的取值是否为a,被划分为D1和D2两部分,即:
D1={(x,y)∈D|A(x)=a},D2=D-D1
(2)
在特征A的条件下,集合D的基尼指数定义为:
(3)
基尼指数Ggini(D)表示集合D的不确定性,基尼指数Ggini(D,A)表示经过A=a分割过后集合D的不确定性。基尼指数越大,样本集合的不确定性就越大。构建分类树时,要选择基尼指数最小的特征,以及其相应的最优二值切分点。
使用基尼指数最小准则构建RFC,主要有如下步骤:
1)使用bootstrap重抽样方法从原始样本集D中有放回地抽取,将第k个样本集记作Dk,并为第k棵分类树生成随机向量θk,θk跟前面的随机向量独立同分布。本文使用h(Dk,θk)表示第k棵分类树模型。
2)分别对k个样本建立分类树。分类树的生成就是递归构建二叉分类树的过程,使用基尼指数最小的特征分裂二叉树。假设输入样本Dk是M维的特征向量,在树的每个节点处,从这M个特征中随机抽取m(m< 3)根据每一棵分类树的结果,投票决定最后的分类结果。 构建随机森林的流程如图5所示。 图5 随机森林分类器流程 本文在2.2节中提取人脸属性特征向量,将其构成样本集合D,使用RFC进行训练和测试。RFC能够处理高维的数据,同时随机选择特征可以有效防止过拟合。 本文使用Adience[9]数据库,该数据库被专门用来做年龄与性别的分类研究。数据库中的图像由用户手机上传到Flickr平台上,在非限制性条件下拍摄的,并且没有经过滤波操作。数据库中的人脸姿势、光照条件以及背景都存在差异,能够展现在实际生活中图像的真实情况。 Adience数据库包含了2 284个不同个体,一共约26 KB张图像。表1展现了数据库中在不同年龄阶段的人中男性和女性的人数。根据文献[9]中定义的5份数据集,本文取前4份作为训练集,最后一份作为测试集。 表1 Adience人脸数据集 对于人脸年龄分类,本文分为8个年龄段。分类结果如表2所示,记录了在不同分类树数量情况下的准确率。人脸年龄分类存在3种情况: 1)预测的年龄段就是人脸图像所在的实际年龄段。 2)预测的年龄段存在错误。当预测年龄段跟实际年龄段相邻,即预测的年龄段比实际年龄大一个区间或者小一个区间,本文把这种情况记作1-off误差。如果把存在1-off误差的预测结果当做分类正确处理,可以得到1-off准确率,同理也可以得到2-off准确率,如表2所示。这种测试方法沿用了前人的经验。人脸是否花妆、是否使用护肤品保养、拍摄图像是否模糊等情况,都会影响分类准确率。 表2 各年龄段分类准确率均值估计结果 某个年龄段的分类准确率,可以用式(4)表示。 (4) 其中,Nacc表示在这个年龄段分类正确的数量,Nall表示这个年龄段的总人数。年龄分类的实验结果使用各个年龄段分类准确率的平均值±标准差来表示。 从表2可以看出,对于年龄分类,在测试集上准确率为55%左右,1-off准确率为85%左右,2-off准确率为97%左右,随着分类树数量增加,分类准确率有所提高。如图6所示为部分存在预测误差的图像,它的预测年龄跟实际年龄不在一个区间内,但是受遮挡、模糊等外界因素影响,它“看起来”像预测的年龄。第1行图像是预测的年龄段比实际年龄要大,第2行图像是预测的年龄段比实际年龄要小。1-off准确率在一定程度上描述了本文方法对人脸年龄估计的有效性。 图6 年龄分类错误图像 人脸性别分类结果如表3所示,在测试集上准确率为86%左右。其中,性别分类准确率表示为分类正确的人脸数量与总数量的比值。图7展示了部分分类错误的图像,其中第一行图像是将男性错误识别为女性,第二行图像是将女性错误识别为男性。从图7中可以看出,部分性别识别错误的图像存在较大的“混淆性”,有时候人们很难做出准确的判断。 表3 性别识别准确率 图7 性别分类错误图像 本文与文献[9,20]相同,都为使用Adience人脸数据库进行实验,其中对于训练集和测试集的定义一样,年龄段的划分方式也相同。因此,本文引用文献[9,20]的实验结果进行比较,如表4和表5所示。在人脸年龄分类方面,本文方法的准确率要比文献[9,20]好。在性别识别方面,本文方法的准确率高于文献[9],和文献[20]相当。 表4 在Adience上的年龄估计结果比较 表5 在Adience上的性别识别结果比较 % 文献[9]使用传统手工设计的特征(LBP特征),并结合支持向量机进行分类。文献[20]使用2个深度卷积神经网络,分别对人脸年龄与性别进行训练,得到2个模型。本文提出一般到特殊的训练方案,并使用一个模型提取人脸特征,与上述2种方法相比,本文提取的深度卷积特征对各种环境变化具有鲁棒性,而手工设计特征则受环境的影响较大。本文使用一个特征向量,可以同时对人脸年龄与性别进行分类,不需要多次计算不同特征,比较方便。一般到特殊的训练方案可以防止过拟合,也容易扩展人脸属性识别的内容,比如增加种族、表情的识别等。 目前传统的方法解决了人脸年龄估计与性别识别问题,但是这些工作大部分都是在限制性图像数据集上进行研究的。对于在自然场景下拍摄的图像,由于存在复杂光照、姿态、背景变化、遮挡以及模糊的影响,年龄与性别识别会遇到更大的挑战。本文运用深度卷积神经网络一般到特殊的微调方法,对人脸属性进行微调训练。实验图像在自然场景下拍摄,训练过程较简单,不需要复杂繁琐的人脸归一化预处理。本文训练出的模型对复杂光照、姿态和背景变化具有鲁棒性。实验结果表明,该方法能够克服复杂光照、姿态变化的影响,准确地对自然场景下的人脸进行年龄估计和性别识别。 [1] KWON Y H,da VITORIN L N.Age classification from facial images[J].Computer Vision and Image Understanding,1999,74(1):1-21. [2] RAMANATHAN N,CHELLAPPA R.Modeling age progression in young faces[C]//Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition.Washington D.C.,USA:IEEE Press,2006:387-394. [3] GENG X,ZHOU Z H,SNITH-MILES K.Automatic age estimation based on facial aging patterns[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2007,29(12):2234-2240. [4] GUO G,FU Y,DYER C R,et al.Image-based human age estimation by manifold learning and locally adjusted robust regression[J].IEEE Transactions on Image Processing,2008,17(7):1178-1188. [5] GAO F,AI H.Face age classification on consumer images with gabor feature and fuzzy LDA method[C]//Proceedings of International Conference on Biometrics.Germany,Berlin:Springer,2009:132-141. [6] LIU C,WECHSLER H.Gabor feature based classification using the enhanced fisher linear discriminant model for face recognition[J].IEEE Transactions on Image processing,2002,11(4):467-476. [7] CHOI S E,LEE Y J,LEE S J,et al.Age estimation using a hierarchical classifier based on global and local facial features[J].Pattern Recognition,2011,44(6):1262-1281. [8] AHINEN T,HADID A,PIETIKAINEN M.Face description with local binary patterns:application to face recognition[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2006,28(12):2037-2041. [9] EIDINGER E,ENBAR R,HASSNER T.Age and gender estimation of unfiltered faces[J].IEEE Transactions on Information Forensics and Security,2014,9(12):2170-2179. [10] GOLOMB B A,LAWRENCE D T,SEJNOWSKI T J.SEXNET:A neural network identifies sex from human faces[C]//Proceedings of IEEE NIPS’90.Washington D.C.,USA:IEEE Press,1990:21-32. [11] MDGHADDAM B,YANG M H.Learning gender with support faces[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2002,24(5):707-711. [12] PHILLIPS P J,WECHSLER H,HUANG J,et al.The FERET database and evaluation procedure for face-recognition algorithms[J].Image and Vision Computing,1998,16(5):295-306. [13] BALUJA S,ROWLEY H A.Boosting sex identification performance[J].International Journal of Computer Vision,2007,71(1):111-119. [14] SUN N,ZHENG W,SUN C,et al.Gender classification based on boosting local binary pattern[C]//Proceedings of International Symposium on Neural Networks.Germany:Berlin:Springer,2006:194-201. [15] WANG J G,LI J,YAU W Y,et al.Boosting dense SIFT descriptors and shape contexts of face images for gender recognition[C]//Proceedings of 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops.Washington D.C.,USA:IEEE Press,2010:96-102. [16] ULLAH I,HUSSAIN M,MUHAMMAD G,et al.Gender recognition from face images with local WLD descriptor[C]//Proceedings of the 19th International Conference on Systems,Signals and Image Processing.Washington D.C.,USA:IEEE Press,2012:417-420. [17] CHEN J,SHAN S,HE C,et al.WLD:a robust local image descriptor[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2010,32(9):1705-1720. [18] SHAN C.Learning local binary patterns for gender classification on realworld face images[J].Pattern Recognition Letters,2012,33(4):431-437. [19] HUANG G B,RAMESH M,BERG T,et al.Labeled faces in the wild:a database for studying face recognition in unconstrained environments.technical report:07-49[R].Amherst,USA:University of Massachusetts,2007. [20] LEVI G,HASSNER T.Age and gender classification using convolutional neural networks[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition Workshops.Washington D.C.,USA:IEEE Press,2015:34-42. [21] 厉 智,孙玉宝,王 枫,等.基于深度卷积神经网络的服装图像分类检索算法[J].计算机工程,2016,42(11):309-315. [22] PARKHI O M,VEDALDI A,ZISSERMAN A.Deep face recognition[C]//Proceedings of British Machine Vision Conference.Washington D.C.,USA:IEEE Press,2015:6. [23] LIU Z,LUO P,WANG X,et al.Deep learning face attributes in the wild[C]//Proceedings of IEEE International Conference on Computer Vision.Washington D.C.,USA:IEEE Press,2015:3730-3738. [24] MATHIAS M,BENENSON R,PEDERSOLI M,et al.Face detection without bells and whistles[C]//Proceedings of European Conference on Computer Vision.Germany,Berlin:Springer,2014:720-735. [25] ZHANG K,TAR L,LI Z,et al.Gender and smile classi-fycation using deep convolutional neural networks[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition Workshops.Washington D.C.,USA:IEEE Press,2016:34-38. [26] WANG X,GUO R,KAMBHAMETTU C.Deeply learned feature for age estimation[C]//Proceedings of 2015 IEEE Winter Conference on Applications of Computer Vision.Washington D.C.,USA:IEEE Press,2015:534-541. [27] JIA Yangqing,SHELHAMER V,et al.Caffe:convolutional architecture for fast feature embedding[EB/OL].[2014-10-15].https://dl.acm.org/citation.cfm?id=264786 8.2654889. [28] BREIMAN L.Random forests[J].Machine Learning,2001, 45(1):5-32. [29] 李 航.统计学习方法[M].北京:清华大学出版社,2012.4 实验结果与分析
4.1 实验数据
4.2 结果分析
5 结束语