伊力哈木▪亚尔买买提,张 伟
(新疆大学电气工程学院,新疆 乌鲁木齐 830047)
最近几年,随着人类与机器之间的交互技术的迅猛发展,人脸面部表情识别问题越来越得到众多科学研究者的重视[1-3],尤其是在智能化模式领域内人脸面部表情辨识己成为现在热点研究内容之一。虽然当前在合理的受控条件下的人脸面部表情识别的研究已获得了长足进步,但是在非受控的自然环境条件下,人脸面部表情图像存在着很多不可预知的因素,这就导致现有的人脸面部表情辨识算法的性能效果不理想,尤其是利用现有的单一识别算法对于人脸面部表情的辨识不能体现出其优势,所以现在众多人脸面部表情识别领域内的学者开始注重多元化多特征融合算法方向的研究。
当前,人脸面部表情识别特征的主要提取方法有基于活动外观模型(AMM)[4],Gabor 小波变换[5],线性判别分析(LDA)[6]以及局部二元模式(LBP)[7-8]等。在这些方法中,基于活动外观模型(AMM)能够阐述人脸面部表情对象的纹理特征和形状特征两种特征属性,但是对于确定其初始参数来说比较困难,而且让计算变得复杂;Gabor 小波算法提取的是针对多尺度多方向人脸面部表情信息,这样就会产生高维数的表情特征向量,就会最终导致算法的实时处理不够完美;线性判别分析(LDA)可以加快人脸面部表情识别,但它对训练和检测人脸面部表情图像的灰度相关性有很大的依赖性,这就会导致具有很大局限;对于Gabor 小波特征来说,局部二元模式(LBP)具有灰度性和回转不变性,同时基本上可以排除非均匀光照的影响因素,且计算比较简单,属于有效的局部纹理特征描述算法。在识别人类面部表情时,单一的局部二元模式(LBP)算法很难准确定位不同方位的关键人脸面部表情的灰度变化趋向,导致其分类效果不尽如意。
双编码局部二值模式(Double Coding Local Binary Pattern,DCLBP)算子进行人脸面部表情图像局部纹理特征提取[9],并获得了良好的效果。
局部敏感直方图(Locality Sensitive Histograms,LSH)通过统计像素与周围像素的相关性得到人脸面部表情图像的光照不变特征[10],由于该特征具有较好的光照鲁棒性,从而在计算机视觉领域得到了广泛的应用。
受到文献[9]和[10]的启发,本文提出融合局部特征与深度置信网络的人脸面部表情识别。算法通过局部敏感质量分布图(LSH)的非均匀光照不变性特征优势以及双编码局部二值模式(DCLBP)算法的边缘局部细节纹理特征详细信息,通过估算各自特征的基本标准差后将两者提取的各自特征进行自适应融合来构造出更为合理有效的人脸面部表情特征信息,最后将融合后的人脸面部表情特征输入到深度置信网络(DBN)模型中进行相关具体训练,将训练后的深度置信网络(DBN)模型进行面部表情识别。该算法可以很好地运用到人脸面部表情识别当中,具有顽强的鲁棒性和有效性。
传统的图像质量分布图是将固定灰度值出现的次数进行统计,而LSH 传统质量分布图或传统局部质量分布图的估算方式都不同,它先用等间距的亮度间隔(bin)对人脸面部表情图像分层,然后在每个层次中的每个像素的具体位置都进行估算,其通过权衡那些亮度值并隶属于该层的像素对相同位置的干扰,得出一个具体浮点值,再把这些具体浮点值通过叠加到该层中的具体位置上,从而获得具体位置在该层的LSH 值。由于这些具体浮点值与估算LSH 的像素具体位置的间距不成正比,且是指数级降低,因此在估算每个具体位置的LSH 值时须要斟酌每个具体像素点,但是由于那些离这个具体位置远的像素由于权重值较小,因此可以省略不计。
位置p处的局部敏感质量分布图可以表达为:
式中:W表达为人脸面部表情图像的总像素值,bin为灰度级数,α∈(0,1)为控制参数,具体表达为像素远离中心像素而降低的权值。Q(Iq,b)用来判定具体位置q处的像素灰度值Iq是否与像素b相等,其表达式为:
由式(1)可以看出,具体浮点权重值与间距具有很紧密的关联:若p与q之间的间距越近,则|p-q|表现的越小,那么α|p-q|就越大;反之,若p与q之间的间距越远,|p-q|则越大,那么α|p-q|就越小。这样,间距中心具体像素距离较近的像素值基于其权值较大被考虑在内,而间距中心具体像素较远的像素值基于权值较小而被省略不计。
经过利用局部敏感质量分布图能够计算并构建人脸面部表情图像非均匀光照不变特征(Illumination Invariant Feature,IFF),其表达式定义为:
式中:rp≈kIp,k为一个常数量。bp代表p处具体像素的像素值所隶属的间距,整个人脸面部表情图像总共有bin个具体灰度间距级。根据文献[9]的学者He 等证明,在非光照强烈改变的形势下,式(3)中的人脸面部表情图像非均匀光照不变特征IFF 的具体值基本保持原样,因此可以认为人脸面部表情图像非均匀光照不变特征IFF 作为LSH 算法中的人脸面部表情图像非均匀光照不变特征,即fLSH。
对图像重新编码,是根据中心像素点与其领域像素点的灰度差异来实现的。编码方式如下:
式中:
ω×ω代表选取的邻域大小(3×3 的矩形块)。round()为四舍五入的计算结果;p(k,l)表示邻域内所有像素点预定义的权重矩阵;f为映射函数;g(k,l)邻域像素点的灰度值;g(i,j)中心像素点的灰度值;B特征直方图的区间数(28=256)。p(k,l)权重矩阵取值为:
传统的LBP 算子对于光线变化具有很强的鲁棒性,在人脸表情识别上效果比较明显。由于忽略邻域像素点的联系,存在结构信息遗失,导致识别率下降。
传统LBP 算法有8 个采样点,而DCLBP 算法有4 个采样点,如图1 所示。
图1 DCLBP 的采样点
了解各个采样点的像素值之间的关系,引入幅度阈值θ和差值阈值δ这两个变量,其计算如下:
式中:ic为人脸面部表情图像中心像素点的具体灰度值;ik为其邻域中第k个人脸面部表情图像采样点的灰度值;p为人脸面部表情图像采样点的数量。
获取最佳人脸面部表情特征信息,需把一位二进制编码的传统LBP 算子改进为具有两位二进制编码的LBP 算子。第一位二进制码与邻域像素和中心像素的灰度值的差异值有关,若差值阈值(δ)小于差值,那么二进制数码为1,否则就标注为0。第二位二进制数码与邻域像素灰度值和中心像素灰度值之间的差值的绝对值相关联,若幅度阈值(θ)小于差值绝对值,则二进制代码数记为1,否则为0。则DCLBP 的人脸面部表情编码特征方式如式(10)所示。
式中:
图2 所示为3×3 灰度图,p=4 时,根据式(8)和式(9),可得:
由式(11)可得图2 灰度图所对应的DCLBP 编码为DCLBP =01101100 =108。
图2 DCLBP 编码示意图
深度置信网络(DBN)由多层或多层受限玻尔兹曼机(RBM)和一层反向传播(BP)神经网络叠加组成。其中RBM 为DBN 的重要组成部分。RBM是拥有二元结构的图模型,具体由可视层v和隐含层h组合而成,可视层与隐含层之间具体为全相连状态,并将相连的权重具体设为ω。
RBM 的能量函数可表达定义为:
式中:θ=(ωij,ai,bj)是RBM 所表达的参数。ai为可见层结构的特定偏差值,bj为隐藏层结构的特征偏差值,ωij表示成为可见层与隐藏层之间的具体连接权值,n和m分别表示为可见层与隐藏层的特定神经元数值。由具体能量函数可以获得可见层与隐藏层之间的联合分布概率为:
当隐含层节点状态为已知情况下,则可视层节点的激活机率公式为:
RBM 通常采用迭代训练的方法来训练特定参数θ,此参数可以通过拟合来确定。如果计算训练集中的最大对数似然函数值,则获得特定参数θ,通过比较散度(CD)算法,获得特定参数θ的改进标准:
式中:ε表示为学习概率,‹·›data代表具体数据的期望分布值,‹·›recon表示通过CD 算法得到的分布期望。
深度置信网络DBN 模型的具体训练一般需要经历两个重要阶段:预训练和微调。首先采用无监督贪婪方法自下而上进行训练RBM,然后将底层RBM 隐藏层的具体输出当作向上一层RBM 的可见层输入。经过逐层训练,我们可以从高维特定数据中提取出更具差异性的低维人脸面部表情图像特征。其次经过有监督的方法利用BP 神经网络对其具体数据进行分类,并将偏差由顶层向下层传播,对RBM 网络进行具体微调,最终让RBM 整个网络的参数值达到最优化。
首先对于人脸面部表情辨识,深度学习仅仅能够提取人脸面部表情图像的整个特征信息,而不能充分提取局部的具体特征信息。局部敏感质量分布图(LSH)算法能够提取出人脸面部图像中的非均匀光照不变特征信息,但其人类面部表情图像特征亮度值整体偏高,则导致失去了部分人脸面部表情边缘细节特征信息;双编码局部二值模式(DCLBP)算子虽然能够较好地获取人脸面部表情图像的边缘局部细节纹理特征信息,但对非均匀光照所表现的阴影部分处理效果不理想。其次由LSH 算法所提取出来的人脸面部表情图像中,所对应的灰度值部分表现不高,而DCLBP 算子提取出来的人脸面部表情特征图像中的高灰度值部分则比较明显。这样如果直接将LSH 算法与DCLBP 算子的各自特征信息进行加权融合,就必然会丧失部分有用特征信息,最终导致人脸面部表情识别效果不理想。因此为了更好地利用两者特征信息的优势,我们在融合之前,先对DCLBP 算子所提取出的人脸面部表情图像特征信息进行取反操作,这样两种算法基本上将人脸面部表情像素灰度值通过不同映射生成人脸面部表情图像特征,由于两种特征信息具有类似的分布形式,因此可以支配适当的权重将两者特征信息进行融合,这样就可以很好地表现出两种特征信息的优点,让两者融合后的特征信息涵盖了更多有用的人脸面部表情识别信息。其LSH 算法与DCLBP 算子的特征融合的步骤为:
(1)设I(i,j)表示像素大小为M×N的人脸面部表情图像I在像素点(i,j)处的具体灰度值。定义人脸面部表情特征图像I的标准差σI表示为:
式中:I∈Ic={ILSH,ILOG}代表不同算法提取的人脸面部表情特征图像集合。
(2)利用式(21)和式(22),分别计算出ILSH和IDCLBP的标准差σLSH与σDCLBP
(3)计算融合系数ω1和ω2
LSH 和DCLBP 算法提取的人脸面部表情特征分别为fLSH与fDCLBP,其两者融合后的有效特征为:
式中:F即为计算局部敏感质量分布图(LSH)算法和双编码局部二值模式(DCLBP)算子各自人脸面部表情特征的标准差,并将两者人脸面部表情特征通过自适应融合来构造出更为有效的人脸面部表情信息特征。
计算局部敏感质量分布图(LSH)算法和双编码局部二值模式(DCLBP)算子的各自特征信息的基本标准差并将两者特征进行自适应融合来构造出更为合理的人脸面部表情特征,最后,将融合后的人脸面部表情特征输入深度置信网络(DBN)模型中进行训练,利用训练好的深度置信网络(DBN)模型识别人脸面部表情,这样不仅可以有利于获取人脸面部表情图像的局部特征信息,而且能够减少其网络训练的耗时。网络结构的联合分布为:
式中:H代表LSH 算法与DCLBP 算子两者各自特征自适应融合构造出的有效人脸面部表情特征F。h(1),h(2)…h(l)表示其深度信念网络(DBN)对其输入的特征H学习到差异层次的高级人脸面部表情特征信息。
训练前首先对人脸面部表情图像的训练集样本数据和人脸面部表情图像测试集样本数据采用双线性内插方法来进行质量分布图协调处理。训练阶段的具体步骤如下:
(1)由式(1)计算出原人脸面部表情图像中每个具体点的质量分布图,并由式(3)获得非均匀光照不变特征fLSH,其人脸面部表情特征图像为ILSH;
(2)采用DCLBP 算子对原人脸面部表情图像实行具体处理,并由式(10)获得人脸面部表情编码特征图像IDCLBP并对其进行取反处理,获取其边缘细节特征fDCLBP;
(3)由式(21)、式(22)分别计算获得人脸面部表情特征图像ILSH和IDCLBP的具体标准差σLSH与σDCLBP,进而由式(23)明确自适应融合系数值ω1和ω2,并经融合式(24)获取到局部敏感质量分布图(LSH)算法和双编码局部二值模式(DCLBP)算子各自特征信息的标准差值,并将两者人脸面部表情特征进行自适应融合来构造出最终更为有效的人脸面部表情特征F;
(4)将LSH 算法与DCLBP 算子经过自适应融合而架构出来的有效人脸面部表情特征F作为具体训练数据输入到DBN 可视层进行训练;
(5)采用对比散度算法(CD)具体训练第一层RBM 模型,从而得到最佳参数;
(6)在多层RBM 网络中,前一层RBM 网络隐藏层的输出当作后一层RBM 网络的可见层的输入信息,通过对比散度算法(CD)训练神经网络,得到最低动力能量函数以及RBM 的最优化的具体参数值;
(7)重复步骤(5)和步骤(6),然后按序迭代循序训练每个RBM 层,一直到训练结束所有RBM 网络为止;
(8)训练结束所有RBM 网络并得到每个RBM层具体最优参数值后,最终将RBM 的参数当作BP神经网络的输入,不停的改善调节RBM 参数直到最后获得最优化DBN 模型。
在人脸面部表情图像测试阶段过程中,测试样本过程与训练样本过程的操作相同,即通过LSH 算法与DCLBP 算子通过自适应融合构造出有效人脸面部表情特征F输入到训练好的DBN 模型中,并通过网络学习获取可以用来分类识别的人脸面部表情深层次的本质特征信息,最后通过具体分类器将其分类并对模型性能进行识别分析。本算法的流程图3所示。
图3 人脸面部表情识别基本流程
本文采用了JAFFE 人脸面部表情数据库和自建的新疆维吾尔族人脸面部表情数据库来进行算法的验证。经典的JAFFE 人脸面部表情数据库是由来自10 位日本女性志愿者构建的人脸面部表情图像数据库,每位志愿者的人脸面部表情拥有6 类基本人脸面部表情图像和1 类中性人脸面部表情图像,每个人脸面部表情含有3~4 幅人脸面部表情图像,这样数据库中就共有213 幅面部表情图像。本文选择每例人脸面部表情张量最大的表情图像作为样本,待检测出人脸面部表情后再归一化成大小为64×64 的表情图像,然后裁剪其大小为60×60 的子图像并通过镜像翻转将人脸面部表情样本数量扩大至原来的50 倍,并进行非均匀光照的预处理。同时,为了将实验的准确性进行进一步的提升,我们在进行实验时对采用的相互不同个体的7 类表情的3张人脸面部表情图像,然后随机采纳1 张人脸面部表情图像当作测试集数据,剩下的两张人脸面部表情图像则当作训练集数据,在进行实验验证时我们利用3 折交叉验证的方法,并将最后的人脸面部表情识别结果为3 次验证实验均值。JAFFE 人脸面部表情经非均匀光照处理后的数据库如图4 所示。
图4 非均匀光照下的JAFFE 人脸面部表情库
维吾尔族人脸面部表情数据库为课题组成员通过新疆大学学生以及社会自愿者收集而来,具有真实有效性。包含100 位维吾尔族人脸面部表情图像,包含中性表情和六种基本表情(高兴、生气、害怕、厌恶、悲哀、吃惊)。维吾尔族人脸面部表情图像处理过程与JAFFE 人脸面部表情数据库处理程序一样。先将已检测出的维吾尔族人脸面部表情图像进行大小归一化为64×64 的图像,再扩大到原来的50 倍,并进行非均匀光照的预处理。同样为了将实验的准确性进行进一步的提升,我们在进行实验时对采用的相互不同个体的6 类维吾尔族人脸面部表情的3 张人脸面部表情图像,然后随机采纳1 张人脸面部表情图像当作测试集数据,剩下的两张人脸面部表情图像则当作训练集数据,在进行实验验证时我们利用3 折交叉验证的方法,并将最后的人脸面部表情识别结果为3 次验证实验均值。维吾尔族人脸面部表情经非均匀光照处理后的数据库如图5所示。
图5 非均匀光照下的维吾尔族人脸面部表情库
为了探究不同层数DBN 和RBM 不同迭代次数对识别准确率的影响,本文通过实验方式确定DBN模型网络中RBM 的层数。设DBN 的RBM 层数为1~4,RBM 隐含层节点数设置为50。不同RBM 网络层数的DBN 模型表情识别率如图6 所示。
图6 不同RBM 网络层数的DBN 模型表情识别率
由图6 与表1 结果可知,当DBN 模型中RBM的层数为1 时,模型的训练与人脸面部表情的辨识时间较多,且人脸面部表情识别率整体较低,导致这一问题是因为RBM 的层数太少致使其重构偏差稍大。当RBM 的层数为2 时,在在JAFFE 人脸面部表情数据库和维吾尔族人脸面部表情数据库这两种数据库中进行表情识别实验的辨识率均为最高,且模型训练与人脸面部表情识别耗时最短。当RBM的层数紧接着继续增加时,DBN 模型的人脸面部表情识别率下降,与此同时训练与识别的耗时逐渐增加。鉴于以上因素,本文DBN 模型最终使用2 层RBM 结构。
表1 不同层数RBM 的DBN 模型训练与识别时间
为了验证本文所提出的方法对于人脸面部表情分类识别的合理性,在局部人脸面部表情图像中分别提取LBP 特征、HOG 特征、Gabor 特征、LSH 特征、DCLBP 特征以及LSH +DCLBP 的融合算法特征。然后再根据提取得到的不同特征使用DBN 深度模型在JAFFE 人脸面部表情数据库和维吾尔族人脸面部表情数据库上进行人脸面部表情识别实验。不同特征的人脸面部表情识别率对比仿真结果如表2 所示。
表2 基于DBN 模型不同特征提取方法识别率单位:%
由表2 可知,与单独采用LBP 特征、HOG 特征、Gabor 特征、LSH 特征、DCLBP 特征提取算法相比后可知,本文所提出的LSH+DCLBP 的融合算法,在JAFFE人脸面部表情库及维吾尔族人脸面部表情数据库上具有很高的识别率,其辨识率分别达到了94.78%和98.03%,其结果验证了多特征提取算法融合后的有效性,提高了其人脸面部表情特征提取能力。
为了验证DBN 该模型在人脸面部表情辨识的成效性,将DBN 与经典模式算法SVM 和KNN 算法进行了比较工作。在人脸面部表情图像中提取人脸面部表情图像中的局部敏感质量分布图(LSH)光照不变特征和双编码局部二值模式(DCLBP)提取人脸面部表情的边缘局部细节纹理特征后并进行两者特征融合,之后采取不同的分类算法都以LSH 光照不变特征与DCLBP 边缘局部细节纹理特征的融合特征为输入,分别在JAFFE 人脸面部表情数据库和维吾尔族人脸面部表情数据库上进行表情面部识别,对比实验结果如表3 所示。
表3 基于LSH+DCLBP 融合特征不同分类算法识别率 单位:%
由表3 可知,当分别以LSH+DCLBP 为融合特征信息,并分别输人进SVM、KNN 和DBN 分类算法时,该DBN 模型对于人脸面部表情识别在不同的人脸面部表情数据库中识别准确率均高于传统的学习算法SVM 和KNN。DBN 模型将无监督的训练学习和有监督的微调结合,能够自主从高维度低层次的图像特征中学习到高层次的特征信息,最终学习到适合表情识别的特征,在人脸面部表情识别中取得了良好的效果。
为了验证本文所提出的LSH+DCLBP 融合特征和深度置信网络DBN 模型结合的人脸面部表情算法的优越性,将本文所提出的算法与其他算法Log-Gabor[11]、Gabor +LBP[12]、Gabor +Gist[13]、LBP +DCT[14]四种算法分别在JAFFE 人脸面部表情数据库和维吾尔族人脸面部表情数据库上进行对比验证实验,结果如表4 和表5 所示。
表4 不同算法在JAFFE 人脸面部表情数据库实验对比 单位:%
表5 不同算法在维吾尔族人脸面部表情数据库实验对比 单位:%
由表4 和表5 可以看到,本文所提出的算法无论是在JAFFE 人脸面部表情数据库还是在维吾尔族人脸面部表情数据库上的人脸面部表情识别率为最高。其中在JAFFE 人脸面部表情数据库中本文算法与其他四种算法对比,可以看出来人脸面部表情识别率至少提高了2.08%,尤其是与Log-Gabor 算法相比较,识别率提高了10.93%,具有很强的算法优势。在维吾尔族人脸面部表情数据库识别中,五种算法的识别率均高于JAFFE 人脸面部表情数据库中的识别率,尤其是本文算法人脸面部表情识别率在其他四种算法中为最高,至少提高了3.42%,尤其是与Log-Gabor 算法相比较,识别率提高了9.46%。本次实验中可以很好地体现出本文算法的识别率为最高,主要是因为本文算法具有很高的人脸表情特征提取表现力,其他四种算法虽然也是属于两种算法的特征融合,但是本文算法除了两种算法的特征融合之外,还在深度置信网络DBN 模型中进行训练并识别,这就使得人脸面部表情特征更加凸显。其次在对自建的维吾尔族人脸面部表情表情识别中的辨识率均高于JAFFE 人脸面部表情识别率,尤其是本文提出的算法,这主要就是因为JAFFE 人脸面部表情数据库代表的是亚洲女性,其五官不是很明显,而维吾尔族人脸表情面部表情特征明显,表现张力比较大,不易与其他表情混淆,故辨识率高于JAFFE 人脸面部表情数据库。通过实验再次表明本文提出的算法在对人脸面部表情的识别具有很好的特征提取及识别率。
最后,为了验证本文算法的实时性,我们在JAFFE人脸面部表情数据库上对不同算法在不同隐藏节点数上进行了时间消耗的对比,其结果如表6 所示。
由表6 可知,当对JAFFE 人脸面部表情数据库中的人脸图像进行融合特征(LSH+DCLBP)进行初次识别提取时,在深度置信网络DBN 中的训练时间和分类时间都会有不同程度的减少。其中,当隐藏节点数为300 时,本文算法消耗的总时间比单独深度置信网络DBN 消耗的总时间减少了6.27%,当隐藏节点数为500 时,本文算法消耗的总时间比单独深度置信网络DBN 消耗的总时间减少了4.6%,这是因为我们将人脸面部表情图像的局部融合特征(LSH+DCLBP)作为深度置信网络DBN 的输入时,由于局部融合特征(LSH+DCLBP)所提取的非均匀光照下的人脸面部表情纹理信息特征会产生很强的鲁棒性,进而当深度置信网络DBN 在对人脸面部表情图像进行特征学习时能够很好地去除重复多余信息的干扰;其次,深度置信网络DBN 对初次特征信息进行学习时,是对有效的人脸面部表情特征性数据进行学习,而不是无用信息。因此,深度置信网络DBN 通过融合局部融合特征(LSH+DCLBP),能很好地削弱深度置信网络DBN 的学习及分类时间和运行计算量,从而达到预期的实时性要求,提高了人脸面部表情的识别率。
表6 不同算法训练和识别所消耗的时间表
本文提出一种融合局部特征与深度置信网络(DBN)的相结合人脸面部表情辨识算法,该算法通过局部敏感质量分布图(LSH)的非均匀光照不变性特征优势以及双编码局部二值模式(DCLBP)算法的边缘局部细节纹理特征详细信息,通过估算各自特征的基本标准差后将两者提取的各自特征进行自适应融合来构造出更为合理有效的人脸面部表情特征信息,融合特征的提取方法可以对人脸面部表情产生时的面部结构和细节的变化实现更全面的描述,对于人脸面部表情的类别具有更好的表征作用。最后将融合后的合理有效人脸面部表情特征输入到深度置信网络(DBN)模型中进行相关训练,能够有效地将更加深层次的人脸面部表情特征提取出来,进一步提高了人脸面部表情的识别率。无论是在JAFFE 人脸面部表情数据库还是在维吾尔族人脸面部表情数据库上的人脸面部表情识别率为最高,验证了本文算法的优越性。