人脸识别技术作为经典的模式识别问题,拥有广泛的用途,如人机互动、身份识别以及疑犯追踪等。一般来说,人脸识别主要包含四部分内容:检测、对齐、特征提取与分类,其中特征提取与分类器设计是两个关键步骤。由于图像在拍摄过程受姿态、光照、表情、遮挡等因素的影响,会使得同类样本的相似度降低,异类样本的相似度反而升高,因此相比分类器的设计,鲁棒的特征提取在人脸识别中扮演更重要的角色,也就是说,如何设计对光照、遮挡等因素鲁棒的图像特征成为了一个重要且具有挑战性的研究内容。
目前,各式各样的人脸图像特征方法被提出,其中具有代表性的特征有:子空间学习特征[1](主成分分析(Principle Component Analysis,PCA)和线性判别分析(Linear Discriminative Analysis,LDA));Gabor特征[2];局部二值模式(Local Binary Pattern,LBP)特征[3]等。在这些特征提取算法中,PCA和LDA算法通过把整幅图像映射到一个低维子空间来提取图像的整体特征,这类特征对遮挡、光照及姿势变化等因素敏感;Gabor和LBP对图像进行局部编码,研究指出此类局部编码提取的特征具有更强的鲁棒性。然而,无论整体特征还是局部特征都是启发式的,且需要人工的设计以及丰富的经验和专业知识,通常难以得到最优的编码方案,因此这些特征的表征能力有限。
近年来,稀疏表示分类(Sparse Representation Classification,SRC)[4]及其变种[5-9]在人脸识别应用中取得了巨大成功,尤其在光照和遮挡情况下表现出了较强的鲁棒性。基于同类样本位于同一线性子空间中的假设,稀疏表示理论把人脸识别看成了约束条件下的多线性回归问题。Wright等[4]指出,在稀疏表示理论框架下,特征的选择其实并不再那么重要,重要的是特征的维数以及稀疏表示的计算。然而,研究指出,当每类图像的训练样本数量不够充分时,稀疏表示的分类准确率将会大幅度降低;同时,在L1范数约束下,稀疏表示的求解计算量相当大,这限制了它在实际场景中的应用。
2012年Hinton团队在ImageNet竞赛中利用深度卷积神经网络(Convolutional Neural Network,CNN)把识别错误率降低了十多个百分点。自此,特征学习(深度学习)[10]受到广泛关注,成为特征提取的热门研究方向。特征学习模型通过把底层网络的输出特征作为输入传到高层网络的这种机制,能够自动地逐层学习从低到高的语义特征,因此它被应用于图像分类、自然语言处理、语音识别等众多领域,且取得了突破性进展。CNN成功的关键要素是其卷积网络框架,该框架包含三个主要部分:卷积滤波器、非线性处理和特征池化。当前流行的滤波器学习算法有稀疏自编码(Sparse AutoEncoder,SAE)、受限波尔茨曼机(Restricted Boltzmann Machine,RBM)等神经网络算法,然而这些基于神经网络的滤波器学习方法需要调节大量模型参数,训练速度极慢。
本文受卷积网络框架的启发,提出了一种简单有效的人脸识别方法。具体而言,在卷积滤波器学习部分,使用收敛速度快且效果稳定的K-means聚类算法,每一个聚类中心(向量)转换为滤波器(矩阵);在非线性处理部分,使用双曲正切函数对卷积特征进行非线性变换;在特征池化部分,通过空间平均值池化方法对特征进行降维和去噪。图 1展示了本文方法从原始图像中学习特征的过程。
文献[11]指出,单层网络在无监督特征学习的图像分类中依然可以取得相当高甚至最好的准确率,只要各种参数取其极限值,因此,本文所提出的人脸图像特征学习也仅使用单层网络而非深层网络。但是,本文实验发现,在人脸识别中,滤波器的个数并不需要取其极限值,只需30个;而且注意到,文献[11]不包括非线性处理过程,本文采用卷积网络框架,具有非线性变换过程。
本文方法的特点如下:
1) 为了克服SAE和RBM等算法在卷积滤波器学习过程中存在的计算量大、速度慢等缺点,本文采用无需先验知识和监督信息的K-means算法加速卷积滤波器的学习过程。
2) 不同于图像分类中常用最大值池化提取显著特征,本文采用更加稳定有效的平均值池化,不仅对特征起到去噪和降维的作用,而且可以避免过拟合问题。
3) 本文算法对光照和遮挡等影响因素具有较强的鲁棒性:AR数据集中,在太阳镜和围脖遮挡时可以取得98.8%和98.9%的识别率;ExtendedYaleB数据集中,在中度光照条件下(子集4) 可以取得97.19%的识别率,而且在狒狒图遮挡实验中,获得97.01%的识别率(60%遮挡比例时)。
1 本文方法不失一般性,假定人脸图像大小为a×b,以一定步长提取大小为ω×ω的图像块,每个图像块按列向量化得:p∈Rω2,然后进行对比度归一化处理p=(p-μ)/σ,其中μ和σ分别是p的均值与标准差。文献[11]指出ZCA(Zero-phase Component Analysis)白化能够降低像素之间的相关性且使学习到的卷积滤波器具有更丰富的局部信息,因此本文对图像块进行ZCA白化预处理。
1.1 卷积滤波器学习假设P={p1,p2,…,pn}∈Rω2为预处理后的图像块,经典的聚类算法K-means首先随机初始化K个聚类中心:{μ1,μ2,…,μK}∈Rω2,然后按如下方式进行循环迭代直至收敛:
步骤1 对每一个图像块寻找最近的聚类中心。
${{\alpha }_{i}}=\underset{j}{\mathop{\arg \ \min }}\,\left\| {{\mathit{\pmb{p}}}_{i}}-{{\mathit{\pmb{\mu }}}_{j}} \right\|;i=1,\cdots ,n$ | (1) |
步骤2 聚类中心更新。
${{\mathit{\pmb{\mu}}\rm{ }}_{j}}=\sum\limits_{i=1}^{n}{1\left\{ {{\alpha }_{i}}=j \right\}}{{p}_{i}}/\sum\limits_{i=1}^{n}{1\left\{ {{\alpha }_{i}}=j \right\}}\ ;j=1,\cdots ,K$ | (2) |
当失真值
${{\mathit{\boldsymbol{W}}}_{j}}=ma{{t}_{\omega ,\omega }}\left( {{\mathit{\boldsymbol{\mu}}\rm{ }}_{j}} \right)\in {{\rm{R}}^{\omega \times \omega }};j=1,\cdots ,K$ | (3) |
其中函数matω,ω(·)把向量v∈Rω2映为矩阵m∈Rω×ω。图 2(a)展示了30个卷积滤波器,可见K-means可以学到不同位置和方向的边缘信息。
LeCun[12]首次提出图像卷积运算并成功将其应用于手写数字识别,研究发现卷积运算可以从图像中学习重要的结构信息,因此本文把聚类中心看作卷积滤波器,而非词袋模型中的字典。此外,由于人脸图像具有平稳性特性:图像任一部分的统计性质和其他部分的几乎相同,所以将不同滤波器与整幅图像的所有位置作卷积运算可以学习出充分、有用的局部特性。图 2(b)展示了人脸图像与不同滤波器作卷积的过程与结果,其中⊗为卷积运算符。从中可知三个滤波器分别提取了水平、135°和45°方向的特征,且提取了不同尺度的特征信息,因此,使用不同滤波器对人脸图像I∈Ra×b进行卷积运算的确可以提取不同的局部特征:
${{\mathit{\boldsymbol{C}}}_{k}}=\mathit{\boldsymbol{I}}\otimes {{\mathit{\boldsymbol{W}}}_{k}};k=1,2,\cdots ,K$ | (4) |
每个卷积图像Ck的大小为(a-ω+1) ×(b-ω+1) 。
类似于神经网络中激励函数的非线性作用,本文在得到每张图像的K张卷积图像后,为了挖掘图像的非线性结构特征,对{Ck}k=1K作非线性变换:
${{\mathit{\boldsymbol{T}}}_{k}}=H\left( {{\mathit{\boldsymbol{C}}}_{k}} \right)=H\left( \mathit{\boldsymbol{I}}\otimes {{\mathit{\boldsymbol{W}}}_{k}} \right);k=1,2,\cdots ,K$ | (5) |
其中H是非线性函数。通过2.2节的实验发现,双曲正切函数(tanh)比其他两种常用的激励函数(sigmoid,relu)表现更好,尤其在光照条件下,tanh比sigmoid和relu都高出十多个百分点,因此本文采用tanh作非线性特征映射。
为了加入特征的空间位置信息,提高噪声的鲁棒性且降低维数,通常对图像特征进行空间池化。每一张图像{Tk}k=1K首先被分成B个重叠的单元块,本文重叠系数设为0.5,在每一个单元块中计算池化特征,把所有B个池化特征连接起来形成向量F(Tk)∈RB×1,最终,图像I的特征表示为:
$f={{\left[ F{{\left( {{\mathit{\boldsymbol{T}}}_{1}} \right)}^{T}},F{{\left( {{\mathit{\boldsymbol{T}}}_{2}} \right)}^{T}},\cdots ,F{{\left( {{\mathit{\boldsymbol{T}}}_{K}} \right)}^{T}} \right]}^{T}}\in {{\bf{R}}^{BK\times 1}}$ | (6) |
设训练集有L个类共N张图像:$\sum\limits_{l=1}^{L}{{{n}_{l}}}=N$,则训练集图像的特征表示为X=[X1,X2,…,XL]∈RBK×N,其中Xl=Xl,1,Xl,2,…,Xl,nl]∈RBK×nl表示第l类图像的特征表示。本文利用线性回归分类器对测试样本y∈RBK分类。首先按每类训练样本,计算系数βi=(XlTXl)-1Xly;然后按每类计算测试样本y重构
在两个具有代表性的数据集上评估、验证本文所提方法的有效性和鲁棒性。在相同训练样本和测试样本设置的基础上,将本文方法与以下方法进行对比:稀疏表示类方法SRC[4]、协同表示(Collaborative Representation Classification,CRC)[5]、鲁棒稀疏编码(Robust Sparse Coding,RSC)[6]、正则鲁棒编码(Regularzed Robust Coding,RRC)[7]、伽博稀疏表示(Gabor Sparse Representation Classification,GSRC)[8]、联合模式学习(Joint Representation Pattern Learning,JRPL)[9]、鲁棒主成分分析法(Robust Principle Coponent Analysis,RPCA)[13]以及卷积滤波方法(Volterra)[14]。
2.1 数据集描述AR数据集[15]包含4000多张在不同表情、光照、遮挡等拍摄条件下的人脸图像。按照文献[4]的设置,采用100个人的图像,每个人包含26张图像,分别拍摄于两个时期,大小为165×120,如图 4(a)所示。
ExtendedYaleB数据集[16]包含38个人的不同光照条件下的2414张人脸图像,其中每个人约64张,每张图像大小为192×168。根据拍摄方位角及高度的不同,此数据集可以分成5个子集,其中子集5受到了严重的光照干扰,如图 4(b)所示。
2.2 通用参数设置影响本文方法识别率的参数主要有图像块大小ω、滤波器个数K以及池化单元块尺寸。在本节利用AR及ExtendedYaleB数据集对通用参数的最优选择进行评估。正如1.1节所述,不同的滤波器可以提取不同方向、不同尺度的边缘局部特征,所以,首先利用AR数据集中无遮挡图像评估参数ω及K对识别准确率的影响:AR01~AR07作训练样本,AR14~AR20作测试样本。从表 1可以看出,当K增大时,识别率呈上升的趋势,且K≥30时识别率趋于稳定,因此在考虑识别率和计算量的基础上,K选取为30,ω为9。
进一步,在ExtendedYaleB上测试本文方法是否可以选择通用的K值:子集1作训练,子集2~5作测试。从图 5可以看出,子集2~5均在K=30时取得最高的识别率。而且,在2.4节将看到,K-means滤波器具有较强的迁移、适应性,即一个数据集上训练的滤波器可用于另外的一个数据集中,也就是说,可以不对新数据集重新训练滤波器和选择K值。
由于当池化单元块的尺寸较小时,特征维数会很高,产生过拟合问题;而当池化单元块的尺寸太大时,图像的细节信息却被忽略。因此在接下来的实验中,针对常用的两种池化方法:最大值池化和平均值池化,测试它们在不同的池化单元块尺寸条件下对识别率的影响。
从图 6知,池化单元块增大时,两种池化方法的识别率均呈现下降趋势,而最大值池化的识别率下降幅度较大,这是因为在大单元块中取最大值往往会丢掉更多的细节信息,但是这些信息在平均值池化中被一定程度上保留了,所以平均值池化的识别准确率更高且更加稳定。本文选择平均值池化,且池化单元块的尺寸设置为9。
最后,在AR的无遮挡图像和ExtendedYaleB图像中测试不同非线性函数对识别率的影响。从表 2可以看出,在AR数据集中,使用tanh和sigmoid情况下的识别率基本相同且高于relu;但在ExtendedYaleB数据集中,使用函数tanh的识别率要明显优于sigmoid和relu,高出十多个百分点,尤其是在光照干扰严重的子集5中。因此,本文选择tanh函数作非线性特征映射。
在AR数据集中,本文按三种方案进行实验评估。第一种是无遮挡评估:AR01~07作训练,AR14~20作测试;第二种和第三种分别是太阳镜和围脖遮挡评估,按照文献[4]的设置:AR01~AR07及AR14~AR20作训练,太阳镜遮挡使用AR08和AR21作测试,围脖遮挡使用AR11和AR24作测试。
表 3列出了不同方法在AR数据集上的三种测试方案的识别率结果,可见:本文方法在无遮挡情况下取得了最高的识别率97.8%;在太阳镜和围脖遮挡情况下取得了98.8%和98.9%的识别率,均优于滤波器方法Volterra;虽然低于JRPL-L1的识别率,但是本文方法计算图像特征非常迅速,在Intel Core i5-3210M CPU,4 GB RAM的电脑上使用Matlab软件提取700张AR图像的特征仅需39.6 s(不包括滤波器训练时间,因为滤波器具有迁移、适应性,可以预先训练),平均处理一张图像只要0.056 s。
在ExtendedYaleB数据集中,本文按两种测试方案进行评估实验。 第一种评估本文方法针对光照的鲁棒性,使用子集1作训练样本,子集2~5分别用于测试; 第二种评估本文方法针对块状物体遮挡的鲁棒性,按照文献[4]的设置,使用子集1~2作训练样本,子集3作测试样本,且在子集3中的图像按随机位置加入不同比例(10%~60%)的狒狒图遮挡。
表 4中给出了第一种评估方案的对比结果,其他方法的识别率结果均引自文献[13]。从中可见轻度光照条件下(子集2~3) ,本文方法取得了100%的识别率;在中度光照条件下(子集4) ,本文方法优于所有对比方法,取得了97.19%的识别率,比经典的SRC高出近30个百分点;在重度光照条件下(子集5) ,除了梯度脸(Gradientface)和本文方法外,其余方法的识别率均严重下降。注意到,滤波器来自AR数据集的实验结果接近于滤波器来自ExtendedYaleB数据集的实验结果,这表示K-means滤波器在本文方法中有很强的迁移、适应能力,即在新数据集中可以考虑不重新训练滤波器。
表 5展示了所有对比方法在不同遮挡比例下的识别率,从中可见本文方法在所有遮挡比例下,识别率均等于或者高于对比方法。在50%遮挡比例下,本文方法能够完全正确识别;在60%遮挡比例下,本文方法优势更加明显,取得了97.01%的识别率,比JRPL-L2高出8.7个百分点;由此可以证明本文方法对遮挡具有较强的鲁棒性。
非受控条件下的LFW数据集包含姿势、年龄、视角、表情等变化的13233张图像。为了测试本文方法在LFW数据集中的表现,按照文献[6]的设置,提取两个子集,子集1、子集2分别包含143和311幅个人的图像,每个人的图像张数大于等于10和5。然而,本文方法在子集1和子集2的识别率仅有41.8%和56.3%,与当前流行的深度学习方法相比,识别率上存在不小的差距。这其中有两方面原因:一是K-means算法不能捕捉姿势、视角、年龄等因素引起的变化;二是本文方法实质上可以看成是一个单层的网络,且隐含层神经元个数K只取30,而当前的深度学习的层数一般都是8层以上,神经元个数也非常多。
3 结语在卷积网络框架的启发下,利用K-means收敛速度快的优势,本文提出了一种简单有效的人脸识别方法,该方法主要包括:K-means卷积滤波学习、非线性变换及空间池化三部分。对图像块大小、滤波器个数、池化单元块尺寸等参数通过实验验证,选择了最优的通用参数。在AR和ExtendedYaleB数据集上的对比实验结果表明,本文方法取得了可比较或更高的识别准确率,且对光照、遮挡等因素表现出了较强的鲁棒性。然而,值得指出的是,本文方法在包含姿势、视角等变化因素的数据集LFW上表现不佳,在未来的工作中需要对本文方法进行更深入的研究与改进。
[1] | BELHUMEUR P N, HESPANHA J P, KRIEGMAN D J. Eigenfaces vs. fisherfaces:recognition using class specific linear projection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1997, 19 (7) : 711-720. doi: 10.1109/34.598228 |
[2] | 何玲丽, 李文波. 基于对称Gabor特征和稀疏表示的人脸识别[J]. 计算机应用, 2014, 34 (2) : 550-552. ( HE L L, LI W B. Face recognition based on symmetric Gabor features and sparse representation[J]. Journal of Computer Applications, 2014, 34 (2) : 550-552. ) |
[3] | 张雯, 张文伟. 基于局部二值模式和深度学习的人脸识别[J]. 计算机应用, 2015, 35 (5) : 1474-1478. ( ZHANG W, ZHANG W W. Face recognition based on local binary pattern and deep learning[J]. Journal of Computer Applications, 2015, 35 (5) : 1474-1478. ) |
[4] | WRIGHT J, YANG A Y, GANESH A, et al. Robust face recognition via sparse representation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009, 31 (2) : 210-227. doi: 10.1109/TPAMI.2008.79 |
[5] | ZHANG L, YANG M, FENG X. Sparse representation or ollaborative representation:which helps face recognition?[C]//ICCV 2011:Proceedings of the 2011 International Conference on Computer Vision. Washington, DC:IEEE Computer Society 2011:471-478. |
[6] | YANG M, ZHANG L, YANG J, et al. Robust sparse coding for face recognition[C]//CVPR'11:Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC:IEEE Computer Society, 2011:625-632. |
[7] | YANG M, ZHANG L, YANG J, et al. Regularized robust coding for face recognition[J]. IEEE Transactions on Image Processing, 2013, 22 (5) : 1753-1766. doi: 10.1109/TIP.2012.2235849 |
[8] | YANG M, ZHANG L. Gabor feature based sparse representation for face recognition with Gabor occlusion dictionary[C]//ECCV 2010:Proceedings in 11th European Conference on Computer Vision, LNCS 6316. Berlin:Springer-Verlag, 2010:448-461. |
[9] | YANG M, ZHU P, LIU F, et al. Joint representation and pattern learning for robust face recognition[J]. Neurocomputing, 2015, 168 : 70-80. doi: 10.1016/j.neucom.2015.06.013 |
[10] | BENGIO Y, COURVILLE A, VINCENT P. Representation learning:a review and new perspectives[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35 (8) : 1798-1828. doi: 10.1109/TPAMI.2013.50 |
[11] | COATES A, LEE H, NG A Y. An analysis of single-layer networks in unsupervised feature learning[C]//Proceedings of the 14th International Conference on Artificial Intelligence and Statistics. Fort Lauderdale, FL:[s.n.], 2011:215-223. |
[12] | LeCUN Y, BOSER B, DENKER J S, et al. Backpropagation applied to handwritten zip code recognition[J]. Neural Computation, 1989, 1 (4) : 541-551. doi: 10.1162/neco.1989.1.4.541 |
[13] | LUAN X, FANG B, LIU L, et al. Extracting sparse error of robust PCA for face recognition in the presence of varying illumination and occlusion[J]. Pattern Recognition, 2014, 47 (2) : 495-508. doi: 10.1016/j.patcog.2013.06.031 |
[14] | KUMAR R, BANERJEE A, VEMURI B C, et al. Trainable convolution filters and their application to face recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34 (7) : 1423-1436. doi: 10.1109/TPAMI.2011.225 |
[15] | MARTINEE A, BENAVANTE R. The AR face database, CVC Technical Report 24[R]. Barcelona:Computer Vision Center, 1998. |
[16] | GEORGHIADES A S, BELHUMEUR P N, KRIEGMAN D J. From few to many:Illumination cone models for face recognition under variable lighting and pose[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2001, 23 (6) : 643-660. doi: 10.1109/34.927464 |