基于多方向Gabor特征图协同表示的鲁棒人脸识别
2020-05-21张培徐望明伍世虔靳晓缘
张培,徐望明,3,伍世虔,靳晓缘
(1.武汉科技大学信息科学与工程学院,湖北武汉,430081;2.武汉科技大学机器人与智能系统研究院,湖北武汉,430081;3.武汉科技大学教育部冶金自动化与检测技术工程研究中心,湖北武汉,430081)
作为特征表示的典型方式之一,稀疏表示(sparse representation,SR)被广泛应用于计算机视觉、模式识别和机器学习等领域[1]。WRIGHT 等[2]将稀疏表示理论用于人脸识别,提出基于稀疏表示分类(sparse representation-based classification,SRC)的人脸识别方法。该方法与Eigenfaces[3]和Fisherfaces[4]等传统方法相比,有效地提升了对光照、姿态、表情以及遮挡等可变因素的鲁棒性,为人脸识别技术的研究提供了新思路。GAO等[5]提出了基于核稀疏表示分类(kernel SRC,KSRC)的人脸识别方法,通过核映射关系获取特征的非线性特性,减少了特征量化误差,提高了编码系数向量的稀疏性。YANG 等[6]利用最大似然估计解决稀疏编码问题,提出了一种鲁棒的稀疏编码模型,提高了对可变因素的适应性。这些算法都是在SRC 方法基础上提高系数编码的效率,是基于人脸图像像素灰度的全局排列,但是对光照、姿态和表情等影响因素的表现力仍然不够。考虑到Gabor特征能够表征人脸图像在不同方向和尺度的局部纹理信息[7],YANG等[8]提出了基于Gabor特征稀疏表示分类(Gabor-feature based SRC,GSRC)的人脸识别方法,通过Gabor特征构造的过完备字典提高编码系数向量的稀疏度,提高了人脸识别准确率。徐望明等[9]提出了一种基于多方向Gabor 特征图稀疏表示(multi-directional Gabor feature maps based SRC,MGFM-SRC)的人脸识别方法,在MGFM 图像上提取人脸的加权Gist 特征并结合SRC算法进行识别,进一步提高了人脸识别性能。杨清山等[10]利用Gabor多通道模型,提取不同通道的Gabor 特征分别构造字典结合稀疏表示分类器,提出了一种基于Gabor多通道加权稀疏表示分类算法(weighted multi-channel Gabor sparse representation classification,WMC-GSRC)。由于这些基于SRC的方法需要求解L1-范数最小化约束问题,一般用迭代法求解,计算复杂,且ZHANG等[11]发现稀疏性并不是取得较好人脸识别效果的本质因素,提出了基于协同表示分类的人脸识别方法(collaborative representation-based classification,CRC),在优化目标函数中用L2-范数替代L1-范数求解系数向量,进一步提高了人脸识别的效率和准确率。本文作者在上述研究基础上,提出一种更高效的基于多方向Gabor 特征图协同表示(MGFM based CRC,MGFM-CRC)的鲁棒人脸识别方法。首先,将人脸图像与多方向多尺度Gabor滤波器组卷积得到不同方向不同尺度的Gabor特征。然后,将同一方向不同尺度的Gabor特征进行融合,再在每个方向的融合特征图上提取Gist特征。在人脸识别阶段,本文采用2种识别策略:1)将所有方向的Gist特征直接串联或自适应加权后串联构成人脸特征向量并使用协同表示分类器得到识别结果;2)对每个方向的Gist特征向量分别使用协同表示分类器进行预分类,预分类时使用自适应K近邻策略确定候选类并评分,取总分最高的类作为识别结果。最后,在典型人脸数据库ORL,Extended Yale B 和AR 上通过实验验证本文方法对于光照、姿态和表情等可变因素的适应性。
1 多方向Gabor 特征图及其Gist 特征表示
对于输入的人脸图像,首先,计算其多方向Gabor 特征图(MGFM),并进一步提取Gist 特征,用特征向量表征输入人脸图像信息。图1所示为Gabor 特征图及其Gist 特征提取流程。以其中1 个方向为例,首先,将人脸图像与该方向的一组不同尺度的Gabor滤波器进行卷积,得到该方向不同尺度下的Gabor特征图;然后,融合多个尺度的实部和虚部Gabor特征;最后,对融合后幅值特征图进一步提取Gist特征,得到输入人脸图像在该方向下的1个特征向量。其他多个不同方向下的特征提取方法以此类推。
该方法的特点在于:1)利用特征融合方法减小Gabor特征的冗余信息,最大程度地保留有用的局部纹理特性;2)利用Gist 特征提取融合后的幅值特征图的全局特征表示,与Gabor局部特征在表示图像信息上形成互补,这样导致人脸图像特征具有更高分辨率。整个特征提取过程的主要步骤可分为:Gabor 局部特征提取、多尺度Gabor 特征融合和Gist特征计算。
1.1 Gabor局部特征提取
二维Gabor滤波器核函数gu,v(z)[12]定义为
式中:u和v分别为Gabor 核函数的方向和尺度;‖·‖为2-范数运算符;z=(x,y)为图像像素坐标;ku,v=kveiφu,kv=kmax/f v,φu=u/8× π。Gabor 核函数是复数形式,故有实部和虚部2个分量,实部滤波器具有平滑图像的效果,可减少对光照的敏感度,虚部滤波器能有效描述图像的边缘信息。本文采用8个方向(u= 0,1,…,7)和5个尺度(v=0,1,…,4)的Gabor滤波器组对人脸图像进行卷积:
式中:I(z)为人脸图像;Mu,v(z)为方向u尺度v下的Gabor特征;*为卷积运算符。
1.2 多尺度Gabor特征融合
利用Gabor 变换得到的不同方向和尺度的Gabor 特征存在相似性,导致一定程度的信息冗余。AMIN 等[13]提出了2 种Gabor 特征融合思路,即融合同一尺度下不同方向的Gabor特征或者融合同一方向下不同尺度的Gabor 特征,从实验结果看,后者比前者得到的Gabor融合特征更能够描述人脸图像信息。徐望明等[9]在此基础上提出了一种改进的特征融合方法,本文沿用这种特征融合方法,具体方法描述如下:
1)根据Gabor特征实部和虚部的采用二进制编码方式得到相应的二值特征图。
图1 第u个方向上的Gabor特征图及其Gist特征提取Fig.1 Gabor feature map and its Gist feature extraction in theu-th direction
式中:Re(Mu,v(z))和Im(Mu,v(z))分别为Gabor实部特征和虚部特征;PReu,v(z)和PImu,v(z)分别为编码后不同方向和尺度的实部和虚部二值特征。
2)分别对同一方向(如第u个方向)下不同尺度的特征图进行加权融合,得到十进制编码形式:
式中:TReu(z)和TImu(z)分别为第u个方向下不同尺度实部和虚部特征融合结果。
3)根据各个方向上融合后的实部特征和虚部特征求得幅值特征Fu(z):
1.3 Gist特征计算
融合后的每个幅值特征图作为输入图像,进一步提取其Gist 特征[14]形成表示人脸图像的全局特征向量,用于人脸识别。计算输入图像的Gist特征时,也利用一组Gabor 滤波器对其进行卷积处理,之后将滤波结果图像划分为均等不重叠的l×l个图像子块,并对每个图像子块取灰度平均值,把所有图像子块的灰度平均值串联起来即形成表示图像的特征向量。
以第u个方向为例,将特征图Fu(z)作为输入图像,提取其Gist特征的步骤如下。
1)对特征图Fu(z)与S个Gabor 滤波器进行卷积处理,得到卷积后的特征图:
式中:z为像素的坐标;gi为第i个Gabor 滤波器;S(S= 32)为8 个方向4 个尺度的Gabor 滤波器总数。
2)将Giu(z)划分成均等不重叠的L(L=l×l)个图像子块Gi,ju(z),其中l= 4,j= 1,2,3,4。3)将每个图像子块Gi,ju(z)取灰度平均值得到1个特征值,再将所有特征图的所有子块的特征值按序串联,形成表示每个方向图像的特征向量Gu:
通过上述特征提取步骤得到第u个方向Gabor特征图Fu(z)的全局特征表示形式Gu。以此类推,可以得到所有方向Gabor特征图的全局特征向量。
2 本文提出的人脸识别方法
针对文献[9]中方法进一步改进,提出一种基于多方向Gabor 特征图协同表示(MGFM based CRC,MGFM-CRC)的人脸识别方法。在得到多个方向下幅值特征图的Gist特征向量之后,进行人脸识别时,可将所有方向的Gist 特征串联(MGFMCRC-1)或按文献[9]自适应加权后串联(MGFMCRC-2)构成人脸特征向量,使用协同表示分类器得到识别结果。这里先介绍这2种方法并分析其存在的问题,从而提出一种新方法。首先,对每个方向的Gist特征向量分别使用相应的协同表示分类器进行预分类,预分类时使用自适应K近邻策略确定候选类并对其评分;然后,将所有候选类在所有方向的评分进行汇总;最后,取总分最高的类作为识别结果,该方法记为MGFM-CRC-3。
2.1 MGFM-CRC-1和MGFM-CRC-2
与其他使用SRC 分类器的算法一样,文献[9]提出的MGFM-SRC 人脸识别方法由于利用L1-范数求解稀疏系数向量,计算复杂。为了减少SRC算法复杂度,文献[11]提出CRC 算法,利用L2-范数替代L1-范数求解系数向量,能取得解析解,故计算更高效。CRC 算法并不强调分解的系数向量的稀疏性,而是考虑到利用所有字典原子的协同作用,并在保持与SRC算法识别率接近的情况下,大大地减少求解系数的时间。因此,可利用多方向Gabor 特征图方法结合协同表示分类器(CRC)完成人脸识别任务,具体方法可描述为:给定k个类别的n幅人脸图像组成的训练样本,按上述方法得到每幅图像在多个方向上的Gist特征向量,将它们按序串联(MGFM-CRC-1)或按文献[9]自适应加权后串联(MGFM-CRC-2)作为表征每幅人脸图像的全局特征向量,将所有人脸全局特征向量组成训练样本特征矩阵B=[B1,B2,…,Bk]=[b1,1,b1,2,…,bi,ni,…,bk,nk]∈Rc×n。其中:bi,j为第i类的第j个训练样本图像特征向量;n=n1+n2+ …+nk;c为特征向量的维度。由于特征向量维度较高,利用主成分分析法(principal component analysis,PCA)产生1 个变换矩阵ψ∈Rd×c,将高维特征降维得到矩阵Φ=ψB∈Rd×n作为协同表示字典矩阵,其中;d为主成分个数即降维后特征的维度。同样地,给定1个测试样本图像,得到多个方向的串联特征向量φ∈Rc×1,并降维后得Q=ψφ∈Rd×1,则其协同表示系数向量可通过以下优化问题求解:
式中:λ为正则化参数。
由于采用L2-范数作为规则化项,式(10)无需使用迭代法求解,其解析解为:=(ΦTΦ+λI)-1ΦTQ∈Rn。 令P=(ΦTΦ+λI)-1ΦT∈Rn×d,一旦字典矩阵Φ和参数λ给定,则P就可以预先计算出来。
求得协同表示的系数向量x∧后,就可以用各个类别的训练样本分别重构测试样本,相应的重构误差ri(Q)为
最后,根据重构误差最小化准则进行分类,即将最小误差所对应的类别标签作为测试样本的识别结果。
2.2 MGFM-CRC-3
MGFM-CRC-1和MGFM-CRC-2方法最终用来分类的图像特征向量均是将多个方向的Gist特征按序级联的结果,这样形成的特征向量维度较高,计算复杂且在存在一定程度上的特征信息冗余;同时,这2种方法中最终只是根据重构误差最小化准则判定识别结果,当最小误差和次小误差比较接近时,可能导致误判。
因此,本文进一步提出MGFM-CRC-3 方法对其进行改进:首先,提取到在m个方向下的Gabor特征图的Gist特征后,分别以每个方向下Gabor特征图的Gist特征作为描述人脸图像的特征向量;其次,进行m次协同表示分类,而且每次分类所得的预分类结果由K近邻策略确定并评分,不一定是最近邻(即最小重构误差对应的类);最后,汇总m次协同表示预分类结果,取总分最高的候选类作为最终识别结果。以方向u(u= 0,1,…,m- 1)为例进行说明:
给定k个类别的n幅训练样本图像,按前述特征提取方法得到每幅图像在该方向上的特征向量为第i类第j个人脸图像样本在第u个方向上的特征向量,其中q为特征向量的维度,并将这些特征向量组合成特征集Bu=同样,对测试样本图像提取该方向上的特征向量φu∈Rq,计算φu在对应特征集Bu上的协同表示系数向量:
再计算该方向上各个类别对应的重构误差ri(φu):
式中:i= 1,2,…,k,为样本图像类别;δi()为在第u个方向求得的系数向量xu∧中与第i类训练样本图像特征对应的系数向量;Buδi()为在第u个方向第i类训练样本图像特征与相应类系数对测试样本图像特征的重构结果。
根据式(14)所示的协同表示重构误差ri(φu)进行分类时,通常采用最近邻准则,即判定重构误差最小时所对应的类为测试样本的分类结果。由于没有考虑最小误差、次小误差及其他近邻误差的关系,容易导致分类错误。本文提出使用自适应K近邻策略进行改进,即根据各个类对应的重构误差,按设定的阈值条件自动选取K个近邻误差对应的类作为候选分类结果;然后,按重构误差来给各候选类进行评分,重构误差小的赋予大的分值,重构误差大的赋予小的分值。而对于非候选类,直接将其分值设置为0。对于每个类别i,Fij(g)为重构误差从小到大的排序函数,其中j=1,2,…,k。Fij(r(φu))表示重构误差ri(φu)排序第j个位置。利用Fij(r(φu))<α×Fi1(r(φu))这个判断条件自适应地选取K个近邻误差。
式中:sui为测试样本图像按其在第u个方向下的特征进行分类时判定其属于第i类的得分。
对每个方向均进行1次预分类,一共m次,得到相应的候选类,测试样本图像在每个方向的特征向量进行分类结果融合,则每个类别在所有方向的总得分si为
最后,根据评分最高所对应的类别,判断测试样本图像的识别结果。
综上,人脸识别方法MGFM-CRC-3 具体步骤为:
1)对含有k个类别的训练样本图像,用本文前述特征提取方法在m(m=8)个方向分别提取特征向量Gui,j(u= 0,1,…,m- 1),并构造每个方向的特征集Bu,进一步用PCA 降维算法得到变换矩阵ψu,从而得到每个方向的协同表示字典矩阵,Φu=
2)对测试样本图像,对第u个方向的特征向量φu,进行特征空间变换,得到每个方向降维后的特征向量Qu=ψuφu;
3)将字典矩阵Φu和测试样本特征向量Qu分别代替式(13)中的Bu和φu,求解协同表示的系数向量x∧u;
4)利用式(14)计算每个方向的每个类别的重构误差,ri(φu)(i= 1,2,…,k);
5)根据式(15)和式(16)得到在所有方向上每个类别的总评分si;
6)利用式(17)计算出评分最高时所对应的类别就是测试样本图像的识别结果。
3 实验结果与分析
为了验证本文方法的有效性,通过将CRC 算法[11]、MGFM-SRC算法[9]、MGFM-CRC-1算法、MGFM-CRC-2算法和MGFM-CRC-3算法分别在典型人脸数据库ORL[15],Extended Yale B[16-17]和AR[18]上进行实验。其中,参数设置如下:自适应K近邻系数α取5,在ORL 库中L2 正则化系数λ取0.08,在Extended Yale B 和AR库中L2正则化系数λ取0.001;实验所用平台配置为Inter Core(TM)i5,主频3.2 GHz,内存4 G,Matlab R2016b。
3.1 算法识别率
3.1.1 ORL人脸数据库
ORL人脸数据库包含40个人,每人10幅,共400幅人脸图像,存在不同程度的光照、表情和姿态变化。本文实验中将原始图像像素归一化为32像素× 32像素,通过ORL 人脸数据库来比较各种算法在不同训练样本个数下的表现。表1所示为在ORL 人脸数据库不同算法的识别率。由表1可见:在不同的训练样本个数下,与CRC算法相比,其他算法的识别率都有明显提升,表明多方向Gabor特征图能够描述人脸图像局部信息,对于光照、表情和姿态等变化具有较好的鲁棒性。在每类训练样本个数为5 的情况下,MFGM-CRC-2 算法和MGFM-CRC-3算法取得了最高识别率99.8%,在其他训练样本数情况下,MGFM-CRC-3 算法识别率都要高于其他算法的识别率,表明在CRC 分类器决策层使用K近邻策略并融合多个方向的识别结果,进一步提高了算法的鲁棒性。
表1 在ORL人脸数据库不同算法的识别率Table1 Recognition results of different methods on the ORL face database %
3.1.2 Extended Yale B人脸数据库
Extended Yale B 人脸数据库包含38 个人,每人64 幅在不同光照条件下的正面人脸图像。本文实验中原始人脸图像像素尺寸归一化为54像素×48像素,各类人脸图像随机选取50%作为训练样本,剩余50%作为测试样本。表2所示为Extended Yale B人脸数据率不同算法的识别率。由于Gabor局部特征具有良好的表征图像的能力,基于MGFM 表示的算法在任何特征维度下均比CRC 算法识别效果好。在3种数据维度下,MGFM-SRC和MGFMCRC-3 算法均取得了最好的效果,尤其当数据维度为300时,这2种方法的识别率都达到了100.0%(但MGFM-CRC-3 算法效率明显高于MGFMSRC)。另外,MGFM-CRC-3 算法识别率高于MGFM-CRC-1和MGFM-CRC-2算法识别率,同样表明对于MGFM采用分方向处理方式,在CRC分类器决策层使用K 近邻策略并将多个方向的识别结果进行融合,有利于提升识别率。
表2 在Extended Yale B人脸数据库不同算法的识别率Table2 Recognition results of different methods on Extended Yale B face database %
3.1.3 AR人脸数据库
本文实验选取AR人脸数据库中100人(50名男性和50 名女性)每人14 幅,共1 400 幅正面人脸图像,具有不同的光照和表情变化。将原始人脸图像像素尺寸归一化为66 像素×48 像素,各类选取前7 幅人脸图像作为训练样本,其余作为测试样本。表3所示为AR人脸数据库不同算法的识别率。在不同维度下,MGFM-CRC-3 算法均取得了最好识别效果。
表3 AR人脸数据库不同算法的识别率Table3 Recognition results of different methods on AR face database %
3.2 算法效率
表4所示为各个算法识别一幅人脸图像所需要的CPU 时间。由表4可见:CRC 算法识别一幅人脸图像所需时间较少,效率优势明显。基于MGFM 稀疏表示和协同表示的算法主要耗时体现在MGFM特征提取过程上。其中,MGFM-SRC算法所需时间最多,原因是利用L1-范数最小化来求解系数增加了算法复杂度,而本文提出的3 种MGFM-CRC 算法在各个数据库上的执行时间则基本保持一致,且效率明显高于MGFM-SRC 算法,这是因为使用了CRC 分类器,利用L2-范数替代SRC分类器中的L1-范数来求解系数向量,从而能取得解析解,导致计算更加高效。
表4 各个算法执行时间比较Table4 Run time comparison of various algorithms /ms
4 结论
1)基于多方向Gabor特征图(MGFM)建立人脸图像的特征表示,能有效描述人脸图像局部信息,对于光照、表情和姿态等变化具有较好的鲁棒性。
2)使用CRC 分类器实现人脸识别,CRC 算法并不追求求解系数向量的稀疏性,而是利用所有字典原子的协同作用,用L2-范数替代SRC分类器中的L1-范数来求解系数向量,由于能取得解析解,不仅能保持与SRC 算法接近的识别率,而且大幅提升计算效率。
3)原始CRC 算法在利用协同表示重构误差进行分类时,采用最近邻准则易导致分类错误,本文方法使用自适应K近邻策略进行改进,同时对多方向Gabor特征图引入分方向处理方式,采用评分机制进行分类判决,取得了较好的效果。