基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法
技术领域:
本发明属于机器视觉领域,特别涉及一种基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法。
背景技术:
人脸识别技术是利用计算机分析人脸视频或图像,从中提取人脸特征,并通过这些特征识别身份的一种技术。
目前人脸身份识别技术发展较快,取得了大量的研究成果。常见的人脸身份识别算法可分为几类:基于几何特征的人脸身份识别、基于子空间分析的人脸身份识别、基于弹性匹配的人脸身份识别、基于隐马尔可夫模型的人脸身份识别、基于神经网络的人脸身份识别和基于3D的人脸身份识别。如Takatsugu等[1] 使用一种基于动态链接结构的弹性匹配法来定位人脸,并根据人脸数据库进行匹配识别。Lin等[2]采用正反例样本进行强化学习,从而得到较为理想的概率估计结果,并采用模块化的网络结构加快网络的学习速度。虽然人脸身份识别研究已积累了宝贵的丰富经验,但目前的识别技术仍然不能对诸如人脸自身及所处环境的复杂性等情况进行有效的处理,如表情、姿态、光照强度等条件的变化以及人脸上的遮挡物,都会使人脸身份识别方法的鲁棒性受到很大的影响。
本发明针对上述人脸身份识别存在的问题,提出了一种基于GB(2D)2PCANet 深度卷积模型的人脸身份识别方法,不仅吸取了深度模型和Gabor滤波的优点,可以提取数据中更加抽象的特征,对光照、表情、遮挡等因素具有鲁棒性,而且克服了卷积神经网络耗时及标签数目需求量大的缺点。
发明内容:
本发明的主要目的是提出一种基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法,在极大减少光照、表情、遮挡等因素干扰的同时,能够高效地进行人脸识别。
为了实现上述目的,本发明提供如下技术方案,包含训练阶段和测试阶段。
基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法训练阶段技术方案如下:
步骤一、对已知人脸库中的训练集人脸图像进行预处理,包括转化成灰度图和调整图像尺寸到相同大小p×q;
步骤二、将训练样本依次送入GB(2D)2PCANet模型的第一个特征提取层,获取第一个特征提取层的Gabor特征图像;具体地,令表示人脸图像训练集,其中N为训练集中的样本数,表示一张人脸样本图像;将每个样本 Ai依次送入第一个特征提取层,首先进行5个尺度和8个方向结合的2D Gabor 滤波,通过降采样,得到最终的Gabor特征图像[3],记为其中 s是特征图像降采样后的像素个数,t是2D Gabor滤波器的个数,t= 40;
步骤三、对每个Gabor特征图像Bi,扫描提取m×n个l1×l2大小的图像块,对图像块
进行去均值操作,获得其中表示 Bi中第j个去均值图像块;
所有Gabor特征图像经过相同的处理之后,可得到样本矩阵为了方便描述,用连续的序号表
示I中所有的图像块并重记为
步骤四、利用基于(2D)2PCA的特征投影向量分析方法[4],同时从行、列两个方向提取样本矩阵I的最优投影轴,作为第一层特征提取阶段卷积滤波器N1为第一层卷积滤波器的个数;
步骤五、将步骤四学习到的卷积滤波器与训练集人脸原始图像分别卷积,得到N×N1个特征图其中
步骤六、将步骤五得到的每个训练样本Ai对应的特征图作为第二个特征提取层输入,利用与步骤三至步骤五同样的特征学习方法,依次学习第二层的(人脸区分性特征)卷积滤波器N2为第二层卷积滤波器的个数;并用卷积滤波器与步骤五得到的特征图分别卷积,得到N×N1×N2个第二层特征图其中
步骤七、对步骤六中得到的每个训练样本Ai对应的第二层特征图二值哈希编码得到二值化特征图具体地,首先利用二值哈希函数H(·)将二值化,其中,当输入大于0时, H(·)值为1,当输入小于或等于0时,H(·)值为0;然后将所有由第二层的输入(第一层中由训练样本Ai生成的第n个特征图)二次卷积得到的N2个二值化特征图作为一组,将这N2个二值化特征图同一像素位置的二进制数组成的二值向量并转化为十进制数,从而得到一张整数值输出图其中i∈[1,N],n∈ [1,N1];因此单个样本Ai最终生成N1个二值特征图所有样本最终得到N×N1个二值特征图
步骤八、针对每个二值特征图其中i∈[1,N],n∈[1,N1],以滑动窗的形式取
[b1b2]大小的块,块的重叠比例为α,计算每个块的统计直方图,记为然后将所
有由单个样本Ai生成的N1个二值特征图的局部区域的统计直方图拼接起来,
得到人脸图像Ai的最终输出特征
步骤九、将步骤八得到的所有样本的输出特征送入Linear SVM分类器中训练,获得基于GB(2D)2PCANet的最优Linear SVM的人脸身份识别分类模型。
基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法的测试阶段技术方案如下:
步骤一:对待测试人脸图像B进行预处理,包括转化成灰度图和调整图像尺寸到相同大小p×q;
步骤二:与训练阶段类似,将待测试人脸图像B与训练阶段第一个特征提取层学习到的第一层卷积滤波器分别卷积得到第一层的特征图
步骤三:与训练阶段类似,步骤二输出的特征图作为第二个特征提取层原始输入,与训练阶段第二个特征提取层学习到的卷积滤波器分别卷积得到第二层的输出特征图
步骤四:与训练阶段类似,对步骤三得到的特征图做二值哈希编码,统计局部区域直方图,并将所有局部区域的统计直方图拼接起来,作为人脸图像B的最终提取到的特征
步骤五、将步骤四得到的图像最终输出特征送入训练好的Linear SVM分类器中进行分类,获得分类结果,即人脸识别结果。
与现有的技术相比,本发明具有以下有益效果:
1、本方法采用深度网络结构的特征学习方法,吸取了深度学习网络的优点,能够从数据中自动学习到有效的区分性特征表达,取代了手工提取特征,有效提高了自动人脸身份识别的准确率;
2、本方法提出的网络结构具有平移、旋转不变性。结合2D Gabor滤波和 (2D)2PCA卷积滤波器的学习,使得模型具有良好的局部特征表达能力,并且对光照、表情和噪音变体具有较好的鲁棒性,有效提升了复杂环境下人脸身份识别的健壮性和识别性能;
3、传统的深度卷积神经网络以监督学习的方式进行训练,不仅需要大量的标签数据,而且需要繁重的迭代学习。本方法采用无监督的学习方式,大大减少了运算量,提高了系统的效率。
附图说明:
图1基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法特征学习框架;
图2在AR人脸库上,GB(2D)2PCANet模型块尺寸[b1 b2]变化对遮挡的鲁棒性;
图3在AR人脸库上,GB(2D)2PCANet模型块重叠比例α变化对识别率的影响。
具体实施方式
为了更好的说明本发明的目的、具体步骤以及特点,下面结合附图,以AR人脸库[5]为例,对本发明作进一步详细的说明:
本发明提出的一种基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法,其中GB(2D)2PCANet深度卷积模型如图1所示。GB(2D)2PCANet由两个特征提取层和一个非线性输出层组成,特征提取层的卷积滤波器由Gabor和(2D)2PCA学习得到,用于卷积原始输入图像提取特征,非线性输出层包括二值哈希和局部直方图计算操作,用于进一步计算出最终的特征。
本发明提出的一种基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法,包含训练阶段和测试阶段。
基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法训练阶段技术方案如下:
步骤一、对已知人脸库中的训练集人脸图像进行预处理,包括转化成灰度图和调整图像尺寸到相同大小p×q;
步骤二、将训练样本依次送入GB(2D)2PCANet模型的第一个特征提取层,获取第一个特征提取层的Gabor特征图像;具体地,令表示人脸图像训练集,其中N为训练集中的样本数,表示一张人脸样本图像;将每个样本 Ai依次送入第一个特征提取层,首先进行5个尺度和8个方向结合的2D Gabor 滤波,通过降采样,得到最终的Gabor特征图像[3],记为其中 s是特征图像降采样后的像素个数,t是2D Gabor滤波器的个数,t= 40;
步骤三、对每个Gabor特征图像Bi,扫描提取m×n个l1×l2大小的图像块,对图像块
进行去均值操作,获得其中表示 Bi中第j个去均值图像块;
所有Gabor特征图像经过相同的处理之后,可得到样本矩阵为了方便描述,用连续的序号表
示I中所有的图像块并重记为
步骤四、利用基于(2D)2PCA的特征投影向量分析方法[4],同时从行、列两个方向提取样本矩阵I的最优投影轴,作为第一层特征提取阶段卷积滤波器N1为第一层卷积滤波器的个数;
步骤五、将步骤四学习到的卷积滤波器与训练集人脸原始图像分别卷积,得到N×N1个特征图其中
步骤六、将步骤五得到的每个训练样本Ai对应的特征图作为第二个特征提取层输入,利用与步骤三至步骤五同样的特征学习方法,依次学习第二层的(人脸区分性特征)卷积滤波器N2为第二层卷积滤波器的个数;并用卷积滤波器与步骤五得到的特征图分别卷积,得到N×N1×N2个第二层特征图其中
步骤七、对步骤六中得到的每个训练样本Ai对应的第二层特征图二值哈希编码得到二值化特征图具体地,首先利用二值哈希函数H(·)将二值化,其中,当输入大于0时, H(·)值为1,当输入小于或等于0时,H(·)值为0;然后将所有由第二层的输入(第一层中由训练样本Ai生成的第n个特征图)二次卷积得到的N2个二值化特征图作为一组,将这N2个二值化特征图同一像素位置的二进制数组成的二值向量并转化为十进制数,从而得到一张整数值输出图其中i∈[1,N],n∈ [1,N1];因此单个样本Ai最终生成N1个二值特征图所有样本最终得到N×N1个二值特征图
步骤八、针对每个二值特征图其中i∈[1,N],n∈[1,N1],以滑动窗的形式取
[b1 b2]大小的块,块的重叠比例为α,计算每个块的统计直方图,记为然后将
所有由单个样本Ai生成的N1个二值特征图的局部区域的统计直方图拼接起
来,得到人脸图像Ai的最终输出特征
步骤九、将步骤八得到的所有样本的输出特征送入Linear SVM分类器中训练,获得基于GB(2D)2PCANet的最优Linear SVM的人脸身份识别分类模型。
基于GB(2D)2PCANet深度卷积模型的人脸身份识别方法的测试阶段技术方案如下:
步骤一:对待测试人脸图像B进行预处理,包括转化成灰度图和调整图像尺寸到相同大小p×q;
步骤二:与训练阶段类似,将待测试人脸图像B与训练阶段第一个特征提取层学习到的第一层卷积滤波器分别卷积得到第一层的特征图
步骤三:与训练阶段类似,步骤二输出的特征图作为第二个特征提取层原始输入,与训练阶段第二个特征提取层学习到的卷积滤波器分别卷积得到第二层的输出特征图
步骤四:与训练阶段类似,对步骤三得到的特征图做二值哈希编码,统计局部区域直方图,并将所有局部区域的统计直方图拼接起来,作为人脸图像B的最终提取到的特征
步骤五、将步骤四得到的图像最终输出特征送入训练好的Linear SVM分类器中进行分类,获得分类结果,即人脸识别结果。
上述技术方案中,训练阶段步骤一训练集人脸图像进行预处理具体方法:
首先将彩色图像转化为灰度图,并将图像尺寸调整到相同大小p×q,以AR 人脸库为例,预处理后,训练集中N张人脸图像记为其中 p×q=60×43。
上述技术方案中,训练阶段步骤二GB(2D)2PCANet第一个特征提取层的Gabor 特征图像提取方法为:
1、对训练集中的每一张人脸图像Ai,进行5个尺度和8个方向(共40个 2D Gabor滤波器)的2D Gabor滤波,2D Gabor滤波器计算方法如下:
x′=x cosθ+y sinθ
y′=-x sinθ+y cosθ
其中f是滤波器的中心频率,γ和η对应高斯函数两个互相垂直的轴,γ/η是高斯函数的长宽比,θ是旋转角度;
不同频率(尺度)和方向的Gabor滤波器可以通过得到,其
中,fv是第v个频率(尺度),θu是第u个方向, U是2D Gabor滤波器选择的方向总数目,k是频
率衰减因子,参数选取如下:v∈{0,…,4},u∈{0,…,7},U=8,fmax=0.25,为了表示清晰,下面采用Gv,u(x,y)表示
2、设原始输入图像表示为A(x,y),将上式获得的2D Gabor滤波器 Gv,u(x,y),与原始图像进行卷积可以得到Gabor特征图像:
Av,u(x,y)=A(x,y)*Gv,u(x,y)
其中*表示卷积运算,Av,u(x,y)表示对应于v尺度和u方向的2D Gabor滤波器与原始图像的卷积输出;
3、对Gabor特征图像进行降采样,得到最终的Gabor特征图像[3],记为其中s是特征图像降采样后的像素个数,t是2D Gabor滤波器的个数;以AR人脸库为例,以d=4对所有t个Gabor 特征图像Av,u(x,y)降采样,降采样后的输出转换成向量的形式,将t 个向量依次连接起来形成一个向量,该向量即可用来表示一幅图像的 Gabor特征向量:t=40;所有的训练样本的Gabor特征图像记为
上述技术方案中,训练阶段步骤四(2D)2PCA的特征投影向量分析方法为:
1、假设第一层卷积滤波器的个数是N1(以AR人脸库为例,N1=3);对于样本矩阵I中
的每个图像块从行的方向,寻找最优投影轴行协方差矩阵定义如下:其中是所有训练样本的平
均值;对行协方差矩阵Grow进行 K-L分解,由Grow的前N1个最大特征值对应的特征向量构
成,记为
2、同样地,从列的方向,寻找最优投影轴列协方差矩阵定义如下:由列协方差矩阵Gcol的前N1个最大特征值对应
的特征向量构成,记为
3、计算N1个卷积滤波器:Wn=YnXn T,n=1,2,…,N1。
上述技术方案中,训练阶段步骤五中第一层特征图的计算方法为:
其中*表示卷积运算,n∈[1,N1],i∈[1,N];最终可获得N× N1个特征图
上述技术方案中,训练阶段步骤六GB(2D)2PCANet第二个特征提取层的特征学习
方法与第一个特征提取层的特征学习方法相同,如图1所示,对每一个输入样本Ai,以步骤
五得到的N1个特征图作为第二个特征提取层输入,假设第二层卷积滤波器的个数
是N2(以AR人脸库为例,N2=4),学习得到N2个卷积滤波器将卷积滤波器与N1个特征图分别卷积,共得到N1×N2个特征图
其中所有样本生成的第一层特征图依次送入第二层,最终获得N×
N1×N2个第二层特征图
上述技术方案中,训练阶段步骤七中二值哈希编码的具体计算方法为:
1、利用二值哈希函数H(·)将每个训练样本Ai对应的第二层特征图二值化,其中,当输入大于0时,H(·)值为1,当输入小于或等于0时,H(·)值为0;
2、将所有由第二层的同一个输入(第一层中由训练样本Ai生成的第n个特征图)二次卷积得到的N2个二值化特征图作为一组,将这N2个二值化特征图同一像素位置的二进制数组成的二值向量并转化为十进制数,从而得到一张整数值输出图其中i∈[1,N],n∈[1,N1],因此单个样本Ai最终生成N1个二值特征图所有样本最终得到N×N1个二值特征图
上述技术方案中,训练阶段步骤八中局部统计直方图的具体计算方法为:
对于每个输出图其中i∈[1,N],n∈[1,N1],以滑动窗的形式取[b1b2] 大小的
块,块的重叠比例为α(以AR人脸库为例,b1×b2=3×2,α=0.7), 计算每个块的统计直方
图,记为然后将所有由单个样本Ai生成的N1个二值特征图的局部
区域的统计直方图拼接起来,得到人脸图像Ai的最终输出特征
上述技术方案中,测试阶段步骤一测试集人脸图像进行预处理具体方法:
首先将测试图像转化为灰度图,并调整图像尺寸到训练集相同大小p×q,以AR人脸库为例,预处理后,待测试人脸图像B记为待测试人脸图像其中p×q=60×43。
上述技术方案中,测试阶段步骤二的具体方法为:
将待测试人脸图像B,与训练阶段第一个特征提取层学习到的第一层卷积滤波器分别卷积得到第一层的特征图其中以AR 人脸库为例,共计N1=3个特征图。
上述技术方案中,测试阶段步骤三的具体方法为:
将步骤二输出的特征图与训练阶段步骤六得到的第二个特征提取层N2个卷积滤波器分别卷积,得到N1×N2个特征图其中以AR人脸库为例,共计12(N1× N2=3×4)个特征图。
上述技术方案中,测试阶段步骤四中特征图二值哈希编码的具体方法为:
1、利用二值哈希函数H(·)将第二层所有输出的特征图二值化,其中,当输入大于0时,H(·)值为1,当输入小于或等于0时,H(·)值为0;
2、把步骤三中由第n个第一层特征图卷积得到的N2个二值化特征图作为一组,将这N2个二值化特征图同一像素位置的二进制数组成的二值向量并转化为十进制数,从而得到一张整数值输出图;如图1 所示,步骤三中所有N1×N2个特征图最终得到N1个输出图
上述技术方案中,测试阶段步骤四中局部统计直方图的具体计算方法为:
对于每个输出图以滑动窗的形式取[b1b2]大小的块,块的重
叠比例为α(以AR人脸库为例,b1×b2=3×2,α=0.7),计算每个块的统计直方图,记为然后将所有局部区域的统计直方图拼接起来,作为人脸测试图像B的最终输
出特 (n∈[1N1])。
上述技术方案中,测试阶段步骤五的具体方法为:
利用训练好的Linear SVM分类器对测试阶段步骤四得到的测试样本B的最终特征进行分类,完成测试样本的分类。
为验证本发明的有效性,本发明在四个著名的人脸数据库(ORL、Extended YaleB、AR和XM2VTS)上先后进行了实验。
表1:人脸数据库特性描述
实验参数设置如下:
表2:人脸数据库实验参数设置
*具体设置请参加对各个实验的说明
表3为本发明提出的方法在ORL和Extended Yale B数据集的测试结果,本发明提出的方法在ORL和Extended Yale B人脸库上都取得了较高的识别率。尽管Extended YaleB上的人脸图像具有显著的光照和姿态变化,但本发明提出方法对光照、表情和噪音具有鲁棒性,而且可以学习更加抽象和高层的特征,因此提供了很好的表现。
表2:在ORL和Extended Yale B上的识别率
从AR人脸库中选择50个男人和50个女人。每类中含有自然表情和正面光照的7张图像作为训练样本,其余19张图像作为测试样本,记为T。根据存在的变体,进一步将T分为4个子集,记为Exps(表情),Illum(光照),Occlus (遮挡)和Illum+Occlus(光照加遮挡),4个子集中每类的样本个数分别为 4,3,4,8。从表4可以看出,本发明提出的方法对各种人脸识别噪声都有较好的鲁棒性,处理光照、表情、遮挡情况均非常有效。
表4:AR上不同方法的识别率
同时实验研究了模型块尺寸[b1 b2]变化对遮挡变体的鲁棒性和块重叠比例变化α对识别率的影响,实验结果如图2和图3所示。从图2可知,当块尺寸增加时,模型识别率逐渐下降,因而块尺寸较小时,模型对遮挡具有较好的鲁棒性。从图3可知,当块重叠比例为0.7,0.8和0.9时,模型取得较好的识别率。
在XM2VTS人脸库中,每类随机选择S(2,3,4,5,6,7)个样本作为训练样本,每类中剩余的样本作为测试样本。实验结果如表5所示。
由表5可以看出,本发明提出的方法即使在训练样本个数非常少的情况下,仍然具有很好的表现。因此本发明提出的方法对训练样本个数具有很少的敏感性。
表5:XM2VTS上不同训练样本个数对应的识别率.
由于本发明采用基于卷积结构的深度学习模型的人脸特征学习方法,因而能吸取深度卷积网络的优点,能够自动学习到有效的区分性特征表达。卷积滤波器的学习通过2DGabor和(2D)2PCA,使得模型具有良好的局部性,可以更好的提取局部特征,并且对光照、表情和噪音变体具有良好的鲁棒性,从而提高了本方法的健壮性和识别性能。本方法使用无监督的学习方式,克服了传统的深度卷积神经网络不足,大大减少了运算量,提高了系统的效率。
上面结合附图对本发明的具体实施方式做了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
[1]Takatsugu H,Yoshio I and Masahiko Y,Parallelization between facelocalization and person identification[A].Proc of Sixth IEE E InternationalConference on Automatic Face and Gesture Recognition[C].2004.183-188.
[2]Lin S H,Kung S Y and Lin L J.Face recognition/detection byprobabilistic decision based nerual network[J].IEEE Trans.on Neural Networks,1997,8(1):114-132.
[3]Meshgini,S.,A.Aghagolzadeh,and H.Seyedarabi,Face recognition usingGabor-based direct linear discriminant analysis and support vectormachine.Computers&Electrical Engineering, 2013.39(3):p.727-745.
[4]Zhang,D.and Z.-H.Zhou,Two-directional two-dimensional PCA forefficient face representation and recognition.Neurocomputing,2005.69(1-3):p.224-231.
[5]A.Martinez and R.Benavente,The ar face database,CVC TechnicalReport,vol.24,1998.