APP下载

改进朴素贝叶斯算法的人脸表情识别

2021-02-04

软件导刊 2021年1期
关键词:朴素关键点贝叶斯

(东华大学信息科学与技术学院,上海 201620)

0 引言

随着人工智能的飞速发展,人机交互和机器视觉成为研究热点。面部表情识别作为一种新兴的生物特征识别技术,在模式识别和人工智能领域受到关注。生物学家Darwin[1]2003 年就已经对表情开始研究。1972 年,两位美国科学家Ekamn[2]创造性提出将高兴、惊讶、恐惧、悲伤、愤怒、厌恶作为人类6 种基本表情。

目前,人脸特征提取方法有Gabor 滤波器[3]、尺度不变特征转换(SIFT)[4]、梯度直方图(HOG)[5]、线性判别分析(LDA)[6]和局部二值模式(LBP)[7]等。文献[8]将SIFT 特征应用到人脸表情识别,取得78.43% 的识别结果;文献[9]将LBP 与Gabor 两种特征相结合,取得98% 的识别结果。虽然这些特征提取方法识别效果较好,但存在特征提取方法维度大、对光照比较敏感等问题。

在点跟踪法中,经典的ASM 和AAM 广泛应用在人脸表情识别中。胡珍珍[10]采用AAM 算法对人脸关键点建模,使用最小距离分类器对人脸表情进行研究;Cristinacce等[11]提出一种AAM 算法与特征相应成对增强算法相结合的方法,检测鼻尖、嘴角和眼眶等局部区域的边缘特征及特征点;Michel 等[12]在面部标记22 个关键点,通过跟踪22点在各个表情中和中性表情中的位移实现人脸识别。但在面部22 个关键点中,眉毛上面只标记了2 个关键点,并且这2 个关键点只存在于眉头,这些关键点并不能完全表示眉毛的动态变化。为弥补关键点分布不均匀问题,本文通过AAM 算法对人脸进行68 个关键点检测,利用关键点提取人脸几何特征。

提取人脸特征点后,还需使用合适的分类器对特征进行分类。李郭宇等[13]将LBP 算法与BP 神经网络相结合实现人脸表情分类;黄忠等[14]将SIFT 算法与SVM 算法相结合实现人脸表情分类;齐兴[15]结合主方向和SVM 算法实现人脸表情分类。本文使用改进的贝叶斯算法用于人脸表情识别,通过实验验证算法的可行性。

1 关键点定位与特征提取

1.1 关键点定位

ASM 算法和AAM 算法是典型的关键点跟踪算法,AAM 算法实现关键点定位,该模型包含模型建立和匹配两个步骤。

首先,建立外观模型和纹理模型,手工标记训练数据中人脸图像的68 个特征点,将关键坐标作为形状的特征向量,表示为xi=(xi1,yi1,…,xi68,yi68),其中xik和yik,k∈1,…,68 为特征点坐标值。对标记好的特征向量使用普氏分析法实现所有训练样本对齐,然后使用PCA 算法进行降维,得到n 个形状的特征向量Pn=[p1,…,pn],则形状模型可表示为:

其中,S0是平均形状模型,bn是形状参数。

然后,对样本形状和平均形状进行三角仿射变换实现纹理归一化,对归一化后的纹理结果进行PCA 降维,得到m 个纹理特征向量Tm=[t1,…,tm],则纹理模型可表示为:

其中是平均纹理模型,am为纹理参数。

其中,W(x;p)是图像与模型T(x)的仿射变换,p是形变参数,迭代更新p使公式(3)的值最小。图1 是图像定位结果。

1.2 特征提取

人脸表情细节主要集中于眼睛、眉毛、嘴巴等局部区域[16],经过统计和实验选择嘴高、嘴宽、眼高、眉毛高度之和、眉毛宽度之和、嘴巴最小外接矩形面积、眉头和眼头距离、眉头距离、唇珠和嘴角高度、两眼睛最小外接矩形面积等10 个几何特征作为图像提取特征。考虑到个体的差异性,本文使用几何特征变化率Gv作为分类样本数据,计算公式如下:

其中,G 是有表情时几何特征,G0对应的是无表情几何特征。

Fig.1 Face positioning图1 人脸定位

Fig.2 Facial expression feature extraction图2 人脸表情特征提取

2 表情识别

2.1 朴素贝叶斯算法

朴素贝叶斯模型(NBC)来自概率论,有着坚实的数学理论基础。贝叶斯分类算法以贝叶斯公式作为理论基础计算每个属性属于某一类别的概率。朴素贝叶斯定理是基于各个属性之间相互独立假设的分类方法,具体如下:

(1)训练样本由n 维特征向量X={X1,X2,…Xn}表示,描述具有n 个属性A 的n 维度,则有A={A1,A2,…An},表示样本n 个属性。

(2)已知有m 个类别,则类别集合C={c1,c2,…cm}。P(Ci)是先验概率,当有一个未知数据样本向量X 时,朴素贝叶斯方法计算在X 条件下后验概率的最大类别。贝叶斯公式如下:

(3)由于P(X) 是常数,所以在计算后验概率时只需计算P(X|Ci)P(Ci)即可。先验概率,其中N 是训练样本数量,是训练样本中类别Ci的数量。

(4)朴素贝叶斯因为属性间独立性假设,所以计算P(X|Ci)公式如下:

当属性是连续属性时,Ai是连续值,则假设属性服从正态分布,即,其中分别是类别Ci中的均值和标准差。

(5)对于未知样本 X 类别,计算每个类别的P(X|Ci)P(Ci),最后概率最大的那个类别则是样本X 的预测类别,即:

2.2 改进的朴素贝叶斯算法

朴素贝叶斯训练简单,分类效果好,但也存在以下不足:①朴素贝叶斯在属性之间的独立性假设在实际数据中往往是不成立的;②对于连续属性值往往使用高斯函数直接估计属性条件密度,但和实际条件密度可能有较大差别,影响分类效果;③贝叶斯算法决策将后验概率最大作为分类类别,主观性太强。根据以上朴素贝叶斯模型缺点,本文将从属性独立性、估计概率密度函数和分类决策3个方面优化算法。

(1)根据不同属性对分类结果的影响赋予不同权重值Wi,将朴素贝叶斯分类器扩展为加权的朴素贝叶斯分类器,根据属性重要度分配不同权值,削弱属性独立性假设。

(2)在估计属性条件密度时,使用高斯函数作为属性条件密度函数,根据不同属性权值直接调节高斯函数,见公式(8)[17]。其中是在类别Ci下的某一属性数量,是类别Ci的数量。

(3)找出后验概率最大的类别,基于KNN 算法对贝叶斯算法进行决策判断,将加权朴素贝叶斯分类器得到的各个类别概率作为训练样本进行二次学习。

3 实验结果与分析

3.1 数据选取与预处理

选择专门用于人脸表情研究的CK+数据集和JAFFE数据集进行建模和实验,对常见的愤怒、轻蔑、厌恶、恐惧、快乐、悲伤、惊喜7 种表情进行研究,不包括中性表情。

图像预处理包括图像灰度化和图像尺寸归一化以及人脸对齐。图像灰度化使用加权灰度化方法。数据集中人脸会倾斜,通过普氏分析法将倾斜的人脸转正并归一化图像大小,图3 为普氏分析法处理后的效果。

3.2 实验步骤

在CK+和JAFFE 数据集中,将80% 的数据作为训练数据,20% 的数据作为测试数据,步骤如下:①对人脸进行灰度化处理后提取关键点坐标;②利用关键点坐标信息提取人脸几何特征,然后利用无表情几何特征计算人脸表情几何特征变化率,变化率即分类样本数据;③利用信息增益算法计算属性重要权值。各属性权值如表1 所示;④利用公式(8)得到表情后验概率,各个表情的后验概率作为二次学习训练样本,利用KNN 算法实现表情最终分类。

Fig.3 Platts analysis treatment effect图3 普氏分析法处理效果

Table 1 Attribute importance表1 属性重要度

3.3 实验结果分析

Kohavi[18]曾对各种常用的分类准确性估计方法进行综合实验与统计分析,认为基于10 折交叉有效性验证是所有验证方法中可靠性最高的。因此,本文分类验证采用10折交叉有效性验证方法。从表2 和表3 可以看出,快乐表情各评价指标均达到90% 以上,这是由于快乐表情在数据集中有较明显的表现形式。在JAFFE 数据集上查准率、召回率、F 值以及准确率达84%、86%、85%、95%。在CK+数据集上查准率、召回率、F 值以及准确率达88%、90%、89%、98%。CK+的识别效果比JAFFE 数据好,这是由于JAFFE 训练比CK+训练数据量少的缘故。

Table 2 JAFFE WNBC -KNN algorithm表2 JAFFE WNBC-KNN 算法

Table 3 CK+WNBC -KNN algorithm表3 CK+WNBC-KNN 算法

Fig.4 Different average index comparison algorithm图4 不同算法平均指标对比

图4 是本文方法提取的特征分别在NBC、WNBC、WN⁃BC-KNN 数据库中表情指标的平均值。从图4 可以看出,在CK+数据中,WNBC 优于NBC,WNBC-KNN 优于WN⁃BC。JAFFE 数据集中,WNBC 和NBC 各个指标持平,在JAFFE 数据集上WNBC 效果不太明显。但是,在JAFFE数据集上WNBC-KNN 分类效果提高30%,这是由于JAFFE 训练比CK+训练数据量少,改进后的算法对小数据影响会更明显的缘故。

4 结语

针对传统的图像特征提取具有较高维度而影响后续分类效率问题,本文使用AAM 算法定位68 个关键点,利用68 个关键点坐标提取人脸几何特征,利用不同表情在几何特征上的差异提取人脸几何特征。针对朴素贝叶斯算法的不足提出WNBC-KNN 算法,利用信息增益率计算人脸几何特征属性权值,利用属性权值直接调节属性概率密度函数,最终在分类决策时利用K 近邻进行二次学习。为进一步提升朴素贝叶斯在人脸表情分类上的性能,后续可在条件概率密度估计方面进行改进与创新。

猜你喜欢

朴素关键点贝叶斯
肉兔育肥抓好七个关键点
隔离朴素
朴素的安慰(组诗)
他是那样“笨拙”和朴素——30多年后,我们为什么还需要读路遥?
最神奇最朴素的两本书
贝叶斯公式及其应用
基于贝叶斯估计的轨道占用识别方法
一种基于贝叶斯压缩感知的说话人识别方法
医联体要把握三个关键点
IIRCT下负二项分布参数多变点的贝叶斯估计