基于TPLBP/HOG特征与DBN深度模型的人脸识别研究

2019-09-19 07:33
测控技术 2019年6期
关键词:人脸特征提取纹理

(华东交通大学 电气与自动化工程学院,江西 南昌 330013)

目前,人脸识别已经成为机器视觉、模式识别和人工智能领域的热门话题,具有广泛的应用领域,但它也是一项具有挑战性的任务[1],因为不同人的五官差异巨大,并且有着丰富的表情。一般来说,人脸识别系统具有两个关键部分[2]:人脸面部特征提取和识别匹配。

面部特征提取是人脸识别任务的关键问题。为了表征人脸信息,提取的特征是否合适对后一步分类性能产生重要影响。文献[3]提出对人脸图像进行多方向多尺度DCP(Dual-Cross Patterns)特征提取,利用高斯算子的一阶导数来减少光照差异的影响,然后在全局和分区级别计算DCP特征,再对高维DCP特征降维,实验结果表明该方法能达到较高识别率,但是使用该方法提取得到的人脸特征维数过高,计算量较大,复杂度较高,导致识别速度较久。文献[4]提出对人脸图像使用Gabor相位图的直方图来进行特征提取,与其他特征提取技术相比,使用Gabor算子可以更快地完成特征检测,然而,单一特征对人脸图像的表述有限,不能完整地表达人脸图像的信息。文献[5]提出了一种将人脸图像的局部二值模式(Local Binary Pattern,LBP)纹理特征和方向梯度直方图(Histogram of Oriented Gradient,HOG)特征相融合的特征表达方法,实验结果表明,相较于使用单一特征,融合特征能更完整地表达人脸信息,达到更好的效果。

在分类识别算法方面,目前广泛研究的有支持向量机(Support Vector Machine,SVM)[6]、决策树、K最近邻(K-Nearest Neighbor,KNN)[7]等。文献[8]采用了一种基于TBE-CNN(Trunk-Branch Ensemble Convolutional Neural Networks)模型用于人脸识别方法,该方法从整体脸部图像和围绕脸部分区图像中提取信息,通过在干线和分支网络之间共享低层和中层卷积层来高效地提取人脸信息特征,最后实验验证了所提出方法的有效性。然而,直接以像素级的人脸图像作为输入,CNN模型会因为光照、倾斜、背景变化学习到不良的特征,最终影响识别的结果。Hinton[9]提出深信念网络(Deep Belief Nets,DBN)模型,DBN是一种模拟哺乳动物大脑皮层的感知过程,通过逐层训练,将感知的高维度低层次的信息分类识别的深度学习算法。DBN作为一种深度学习算法,适合人脸的识别。

为了获得更高的人脸识别准确率,针对以上人脸识别算法的问题,笔者提出了多纹理特征融合,主成分分析法(Principal Component Analysis,PCA)[10]将特征数据进行降维处理,结合DBN强大的函数表达能力对人脸数据进行训练并识别。通过对DBN深度模型的参数的动态搜索确定最佳值后,提出了基于DBN模型的人脸识别算法。经测试,该算法比传统的SVM、KNN和DBN更加准确。

1 深度信念网络模型(DBN)

DBN是一个典型的多层次深度学习结构,是由多层限制玻尔兹曼机(RBM)叠加组成的概率生成神经网络。典型的DBN结构如图1所示。

1.1 受限玻尔兹曼机(RBM)

RBM是一种典型的神经网络,由2层神经元组成,分别称为可见层和隐藏层,可见层与隐藏层的神经元之间为双向连接,同一层RBM的单元不相互连接。本质上,RBM是一个二部图,它的隐藏层能够获得可见层神经元的输入数据的高阶相关性。RBM的可见层用v表示,用于接收输入信号,隐藏层由h表示,可视为是输入信号的特征提取器。RBM模型如图2所示。

图1 DBN深度信念模型

图2 受限玻尔兹曼机(RBM)

1.2 DBN训练方法

DBN的关键特征是它的相邻层可以分成几个独立的RBM。DBN的原理是采用最底层DBN的输出作为下一层的输入,然后将下一层的输出作为更高层的输入。在实践中,DBN的训练过程包括两个步骤:预训练和微调。

(1) DBN预训练。

预训练本质上是一种自下而上的无监督学习过程。由于RBM无法完美模拟原始数据的特征,因此需要更高层次的网络来模拟特征,无监督训练的贪婪学习方法是有效的。这种方法也被称为对比散度法(Contrastive Divergence,CD)。该CD学习方法有效地提高了基于混合模型的似然概率的训练数据下界。作为能量模型,RBM通过使用以下能量函数来表征可见和隐藏层之间的关系。

RBM的能量函数为

(1)

θ={w,b,c}

式中,wij为可见层神经元vi和隐藏层神经元hj之间的关联强度;偏置系数bi和cj分别为可见层神经元vi和隐藏层神经元hj自身的权重。

该模型可见层和隐藏层的联合概率分布为

(2)

vi和hj只能是“0”或“1”的二值函数,“1”表示该神经元被激活,“0”为没有激活。在一个RBM中,隐藏层神经元被可见层激活的概率为

(3)

由于可见层和隐藏层是双向连接的,可见层神经元被隐藏层激活的概率为

(4)

为了在一阶方法中优化v的对数似然性,需要logP(v)关于θ的梯度为

(5)

(6)

(7)

根据以上3个梯度公式,经过若干次对比散度迭代训练,就可以求出网络参数。

(2) DBN微调。

预训练之后,RBM模型的每一层都已初始化。所有的RBM模型按照训练顺序粘接在一起形成一个DBN。调整训练过程基于输入数据和重构数据之间的损失函数。采用反向传播算法重新调整网络参数,最终得到全局最优网络。输入数据与重构数据之间的使用损失函数为

(8)

式中,x为输入数据,x′为重建数据;‖·‖2表示重建误差的L2范数形式。

DBN模型的预训练过程的本质就是求取每一层RBM的参数,将与训练获取到的参数作为BP网络的初始化参数,利用BP网络对预训练参数进行整体微调,从而克服训练时间过长以及陷入局部最优解的缺点。

2 多特征提取融合

本文提出了一种基于全局人脸图像HOG特征和分区人脸图像TPLBP特征融合的人脸识别新框架,它结合了HOG特征和TPLBP特征的优点,优势互补,统一融合特征可以滤除噪音,更好地表达人脸纹理信息。

2.1 TPLBP特征

LBP特征是描述图像的纹理信息最好的特征之一,具有旋转不变性和对单调灰度变化的不变性,区分性高,且其分类能力强、计算效率高,使其适用于要求苛刻图像分析人物,已经被Ahonen[11]等人应用于人脸识别并取得了很好的效果。为了使LBP算子能够适应不同尺度的纹理特征,Wolf[12]等人提出了一种改进的LBP算子——Three-Patch LBP Codes(TPLBP),TPLBP将3×3邻域拓展到了任意邻域,不再是中心像素灰度值与其方形邻域像素之间灰度值比较,而是通过比较3个邻域局部块像素的灰度值来产生代码,分配给每个像素单个的比特值。其中,中心块、邻域局部块的维度以及中心块和周围局部块之间的距离都是任意的。

用α和w分别表示中心块和局部块的维度,S个局部块均匀分布在以中心块为原心、半径为r的环中,沿着该环取一对局部块,并将它们的灰度值与中心块的灰度值进行比较。根据两个局部中的灰度值哪一个更加类似于中央块的像素值来设置单个比特的值。通过对每个像素应用式(9)来生成TPLBP:

(9)

式中,Ci和C(i+α)mods分别为沿着环的两个局部块;Cp为中心块。 函数d是两个块之间的任意距离函数,τ是略大于零的阈值。具体的TPLBP算子运算过程如图3所示,计算式中,α=2,S=8,w=3。

可见,TPLBP特征算子作为纹理描述算子,不仅保留了LBP算子旋转不变性和灰度不变性的优点,相比LBP其维数大大降低,具有更高的计算效率。由于TPLBP是以中心对称方式进行特征提取的,所以TPLBP比LBP具有更强的抗噪能力。

为了更好地描述图像局部的纹理差异,在保留全局纹理特性的基础上能增加微观纹理信息,将整幅图像划分成若干成若干子块图像,分别提取各个子块内的TPLBP特征直方图,然后按照先行后列的顺序组合成整幅图像的TPLBP直方图。图4为分区TPLBP 直方图的构建过程图。

2.2 HOG特征

HOG作为SIFT特征的关键点描述,在对象检测和模式匹配方面取得了巨大的成功。HOG提取的纹理特征不仅可以详尽地表述图像内容,还能弱化光线干扰,同时,可以忽略细微的面部表情动作而不影响检测效果。

图4 分区TPLBP直方图的构建过程

HOG特征提取过程如图5所示,具体步骤如下[13]。

图5 HOG 特征提取过程

① 对采集到的图像先做Gamma标准化处理,消除光照变化的影响。

② 将处理后的图像分割为若干个小块(block),每块由4个细胞单元(cell)组成。计算图像中像素点(x,y)处的水平方向梯度和垂直方向梯度为

Gx(x,y)=H(x+1,y)-H(x-1,y)

(10)

Gy(x,y)=H(x,y+1)-H(x,y-1)

(11)

像素点(x,y)处的梯度幅值和梯度方向分别为

(12)

(13)

③ 每个细胞单元对梯度直方图进行规定权重的投影,统计每个细胞单元的梯度直方图,进而得到每个小块的直方图。

④ 对每个细胞单元进行对比度归一化。

⑤ 将所有归一化后的特征向量串行级联,以构成整张图像的HOG特征。

图6为部分人脸图像提取出来的HOG特征。

图6 HOG 特征提取过程

2.3 特征融合

为了得到人脸图像更加完整、有效的描述,将得到的TPLBP特征和HOG特征级联融合,特征融合过程如图7所示。

图7 多特征融合的流程

3 TPLBP/HOG融合特征和DBN结合的人脸识别算法

本文提出了一种TPLBP/HOG融合特征和深度信念网络(DBN)相结合的人脸识别的方法,算法流程图如图8所示。

该算法具体步骤如下:

① 对训练样本和测试样本的人脸图像灰度化,然后进行限制对比度自适应直方图均衡(Contrast Limited Adaptive Histogram Equalization,CLAHE)[14]预处理。

② 利用第1节中的特征提取融合方法分别提取TPLBP纹理特征和HOG特征,每张人脸提取出来的HOG特征转至为一维数据,而每张人脸的TPLBP纹理特征提取出来后转至为行向量的数据矩阵,将这些特征数据合并起来并作为一行向量d=(x1,x2,…xn),将TPLBP纹理特征与HOG特征进行串联融合就会形成训练数据。为了加快训练速度,利用PCA法对训练的特征数据矩阵进行降维处理,经过PCA降维后的训练特征训练数据记为train_x;同理,对于测试数据也利用相同的方法进行数据提取与降维,记为test_x。

③ 利用步骤②中获取到的train_x作为训练数据输入到DBN中进行训练。

④ 对第一层RBM模型利用对比散度算法进行训练,从而获取到最优参数。

⑤ 在多层RBM网络中,采用前一层RBM网络隐藏层的输出作为后一层RBM网络的可见层的输入,通过对比散度算法训练神经网络,以获得最低能量函数以及RBM的最优参数。

⑥ 重复步骤④与步骤⑤,依次迭代循环训练各个RBM层,直至训练完所有RBM网络;

⑦ 训练完所有RBM网络得到各个RBM层最优参数后,最终利用RBM的参数作为BP神经网络的输入,不断修正调整RBM参数直至得到最优DBN模型。

4 实验结果及分析

为了验证本文算法的有效性,选用ORL人脸数据库进行识别实验,为进一步验证本文算法的性能,在Yale和Yale-B人脸库上进行性能测试。

ORL人脸数据库共有40个人,每个人有10张图像数据,选取每个人的7张图片作为训练数据,其他3张作为测试数据,则训练样本总共有280张图像,测试总共有120张图片。AR人脸数据库中包含了120个人的4000张彩色图片,选取每个人的7张图片作为训练数据,3张作为测试数据。Yale-B人脸数据库包含38个人,每个人有64幅不同光照的图像。从每人的图像中选出正面标记的10张图像,7张作为训练数据,其他3张作为测试数据。

4.1 DBN参数设置

以ORL人脸数据库为基础对人脸识别系统中的重要参数进行了实验,以确定每个参数的最优取值[15]。

所设置的DBN网络深度为3层,其中包含2层RBM神经网络和1层BP神经网络。设置每层RBM的学习率为0.8,迭代次数为30;选择Sigmoid函数作为BP网络的传递函数,NN的迭代次数为100。根据经验数值,设置RBM神经网络的MiNi_Batchs为100,NN网络的MiNi_Batchs为20,使得整个网络的学习速率更加快速一些。

通过不断调整RBM隐藏层神经元的个数来寻找网络最优参数,经过多次实验,本文选取lambda为0.025;隐藏层神经元个数为120;迭代次数为100。

4.2 与其他方法对比

4.2.1 基于DBN模型不同特征提取方法识别率对比

为了验证本文中TPLBP/HOG融合特征对于人脸信息表征的有效性,在人脸图像中分别提取LBP、TPLBP、HOG、TPLBP/HOG 融合特征,然后再根据提取得到的不同特征使用DBN深度模型在3种人脸数据库上进行人脸识别实验。不同特征的识别准确率对比如表1所示。

表1 基于DBN模型的不同特征识别准确率对比

由表1可知,基于TPLBP/HOG融合特征的人脸识别率高于单一特征表达方法的识别率,反映了基于全局人脸图像HOG特征和分区人脸图像TPLBP特征具有很好的互补作用,本文提出的TPLBP/HOG融合特征能更全面地表达人脸图像信息。

4.2.2 基于TPLBP/HOG融合特征不同分类算法识别率对比

为了验证DBN模型对于人脸识别的有效性,将DBN与经典模式算法SVM和KNN算法进行对比。在人脸图像中提取TPLBP/HOG融合特征,之后采取不同的分类算法都以TPLBP/HOG融合特征作为输入,分别在3种人脸数据库上进行验证。对比试验结果如表2所示。

表2 基于TPLBP/HOG融合特征不同分类算法识别准确率对比

由表2可知,都以TPLBP/HOG融合特征输入SVM、KNN和DBN分类算法时,DBN模型对于人脸识别在不同的人脸数据库中识别准确率均高于传统的学习算法SVM和KNN。DBN模型将无监督的训练学习和有监督的微调结合,能够自主从高维度低层次的图像特征中学习到高层次的特征信息,在人脸识别中取得了良好的效果。

4.2.3 不同实验方法识别率对比

为了验证TPLBP/HOG融合特征和DBN结合的人脸识别算法相较于传统的监督分类算法SVM、KNN以及传统DBN深度学习算法在人脸识别准确率上的优越性,特地利用3种人脸数据库形成相同的训练和测试数据对这3种算法进行了测试验证,测试结果如表3所示。

表3 不同实验方法测试对比结果

由表3可知,本文提出的基于TPLBP/HOG融合特征和DBN深度模型相结合的人脸识别算法在3种不同的人脸数据库实验中,识别准确率是最高的。尤其在ORL人脸数据库中,识别效果最好,达到了98.33%,比传统的基于LBP的SVM和KNN方法分别提高了13.03%和5.13%,比传统DBN深度学习方法也提高了3.51%。这说明,DBN模型在对人脸特征信息学习和分类方面更好。

5 结束语

本文采用TPLBP/HOG融合特征和DBN深度模型相结合的人脸识别方法。提取全局人脸图像HOG特征和分区人脸图像TPLBP特征并融合,融合后的特征同时包含人脸图像的纹理和结构特征,能更丰富地表达人脸的信息。DBN作为深度学习算法之一,能自主将感知的人脸图像信息的低层次信息转变为高层次信息,进一步提高了识别的准确率。将本文方法在ORL、AR、Yale-B人脸数据库上进行实验测试,识别率分别达到98.33%、97.39%和96.72%,体现了基于TPLBP/HOG融合特征和DBN深度模型方法在提取人脸特征、人脸识别上有很好的效果,鲁棒性强。在今后的研究中,视频数据处理将成为研究工作的重点,未来的目标是从实时视频中实现人脸识别。

猜你喜欢
人脸特征提取纹理
有特点的人脸
一起学画人脸
基于BM3D的复杂纹理区域图像去噪
基于Gazebo仿真环境的ORB特征提取与比对的研究
使用纹理叠加添加艺术画特效
基于Daubechies(dbN)的飞行器音频特征提取
三国漫——人脸解锁
TEXTURE ON TEXTURE质地上的纹理
Bagging RCSP脑电特征提取算法
消除凹凸纹理有妙招!