APP下载

基于角度几何特征的人脸表情识别

2020-07-13周梦莹李高阳陈增照何秀玲

计算机应用与软件 2020年7期
关键词:特征向量识别率人脸

吴 珂 周梦莹 李高阳 陈增照 何秀玲

(华中师范大学国家数字化学习工程技术研究中心 湖北 武汉 430079)

0 引 言

随着人工智能的兴起和发展,人类面部表情检测作为其中的一部分得到了广泛的关注和研究,涉及诸如心理学、认知科学、计算机视觉、图形学等学科,具有相当高的综合性。现阶段,优化、组合角度几何特征,对准确体现人脸细致表情极其重要。

当前,表情识别是通过特征提取、识别分类这两个手段来进行的。另外,更深入的研究会将识别的鲁棒性和更精细的表情识别作为方向[1]。以面部特征点为基础来进行特征提取的方式主要包括几何和纹理特征,文献[2]中提到可以提取的面部特征有几何特征和外貌特征,几何特征可以表示面部组件的外形和位置。文献[2]还提到了特征点,由于特征点识别算法比较成熟,直接检测这类特征更加直观、有效。文献[3]采用局部纹理特征、全局几何特征和混合特征,提出局部层-全局层-混合层的三层表情图像分类框架。文献[4]提出基于ASM定位的面部基准点并利用图像差值作为表情特征进行识别。文献[5]提出将人脸图像里面的结构特征和纹理信息进行融合,采用RBF神经网络识别表情,人脸特征点的识别定位使用AAM算法。面部编码识别系统显示情绪变化时的面部肌肉运动状态,由Ekman等[6]在1978年改进,通过划分脸部活动单元,以这些单元的组合为基础,并根据不同表情的特点来描绘出每个表情的变化,至今仍然在被使用。相对来说,在计算机视觉更加成熟、图像处理算法更加精准的情况下,利用面部特征点来构造识别算法更加有效,可组合的特征提取方式更加丰富而且得到的结果更加精准。文献[7]提出一种基于多分辨率Gabor的广义神经网络分类方法,对头部姿态的改变能够保持较高的鲁棒性。

大部分文献提取的几何特征向量均以绝对距离为主,但是不同人的特征点之间的距离变化可能比较大,对识别存在一定影响。例如,在惊讶表情中,不同的人张嘴的程度不同,距离变化相差可能比较大,根据数据来看,距离是图中像素点计算后的绝对差值,变化范围可能比较大。但是,角度则是一定范围内的变化值,变化范围在0到π之间,相对绝对距离来说鲁棒性会更优。

本文首先在面部特征点的基础上,总结出各类表情的相似点和相异点;然后将各个变化特点对应到特征向量上面去,构建角度为主的几何特征向量,同时加入绝对距离进行对比;最终将计算的特征数据归一化,采用支持向量机识别。实验数据说明,以角度特征向量为主的人脸表情识别方法具有比较好的识别率和稳定性,本文方法能在选择不同特征向量时,前后识别率有较明显提升。

1 表情特征分析和提取及特征向量计算

1.1 表情特征分析和提取

人脸各个特征点分布如图1所示。特征点为Ln(n=0,1,…,65),用到的特征点个数为Lm(m=0,1,…,43)共计44个,提取特征向量Vk(k=1,2,…,x)。

图1 特征点分布

Ekman等在提出FACS的同时也将人类的基本表情分为六类,文献[8]采用表格对六种基本表情的面部器官运动状态进行了细致的归纳。根据本文需要,在原有特点基础上,总结出了各类表情在特征点上的变化。这些变化是各类表情最为显著的且能明显区别于其他表情的特征。计算特征点的变化后,提取出特征向量,同时也能得到该特征向量的变化,特征点的变化能直观地通过这些特征向量来体现,如表1所示。

表1 基于特征点的不同表情特征变化

根据表1,在特征点分布图内可以进行特征向量的提取,得到特征向量集合{Vx|x=1,2,…,24}。

图2-图5分别为这些特征向量示意图。

图2 眉毛处特征向量

图3 眼睛处特征向量

图4 鼻子和嘴部特征向量

图5 嘴部特征向量

其中,带有相同标号的两个向量构成一个角度,该角度即为特征向量Vx。根据表1的描述,能得到表现出各个表情显著特点的特征向量及其变化,如表2所示。

表2 特征向量及其变化

1.2 特征向量计算

角度和距离两类特征向量通过特征点ni(xi,yi)来进行计算。两两特征点之间的欧氏距离为:

(1)

角度有两类:三个特征点n1、n2、n3构成的角度和n1、n2、n3、n4四个特征点构成的角度,公式如下:

(2)

(3)

这几类特征向量易于计算,在表情变化的过程中也能更加直观地进行分辨,特征向量Vx对于表情的影响程度也能直接看出,对于后面进行特征向量的优化有比较好的帮助。

2 SVM识别与特征向量优化

2.1 数据归一化

为了减少不同样本之间可能存在的显著差异对识别结果造成的影响,对数据进行标准化处理,处理后的数据范围在区间[0,1]内。计算公式如下:

(4)

2.2 SVM识别

由于LIBSVM工具中的序列最小优化算法支持分类和回归,因此采用LIBSVM工具对表情进行分类和识别。选取C-SVC支持向量分类,依据特征数量和样本量的差别选择适当的核函数,本文通过选取线性核函数(Linear)和径向基(RBF)核函数并在高斯核函数里面通过交叉验证得到最佳参数伽马γ和惩罚因子c得到最好识别效果。核函数选取径向基(RBF),参数γ为1/k(k是类别数)。线性核函数和高斯核函数公式分别如下:

(5)

K(xi,xj)=e(-γ||xi-xj||2)γ>0

(6)

同时,对RBF核函数进行十折交叉验证,训练得到最佳的惩罚因子c。

2.3 特征向量优化

为精确描述人脸情绪的改变,本文在寻找上述两类特征向量的总个数多达100余个,包含不共线三点组成的面积。例如在特征向量V2处的三个点,在变大或者变小的过程中,该三角形面积的底和高会同时变大或者变小。但在识别过程中,对这100余个特征向量进行识别时,并不是全部的特征向量都对识别有帮助,有的甚至还会出现降低识别率的情况。另外,表情变化时,距离特征和角度特征的变化是同步的,图6-图8分别为嘴部、眼睛和鼻子处的距离特征向量。

图7 眼睛距离特征向量

图8 鼻子距离特征向量

特征向量V25、V26、V27、V28、V29、V30、V31、V32均为距离特征向量。

从变化趋势来说,距离的变化就会带来角度的变化,例如V23,该角度变大,必然会使距离变大,即V27也会变大。这样,距离的变化能够被角度替代。另外,根据实验结果,在特征向量数目为32时的综合识别率反而为83.87%。过高的特征向量数目在SVM识别时产生了更高的维数,同时也带来了更多的干扰和误差。

优化的过程除了降低误差之外,根据表情特点还加入了一些能反映主要变化的特征向量。其中,针对生气和厌恶这两个在变化时具有一定相似度的表情,添加了特征向量V1、V2和V3。实验结果表明,在原有特征向量固定不变的基础上,增加特征向量后能比较明显地提升这两个表情的识别率,而且对其余表情的识别率也没有产生明显影响,说明这三个特征向量的加入能有效地提升识别率。

3 实 验

3.1 实验结果

CK+数据库里面带有标签的样本有327个,表情类型和个数分布如表3所示。其中,本文选取六种基本表情进行识别实验,不包含轻蔑表情。

表3 CK+数据库表情分布

如图9所示,惊讶样本集中包含一幅不合格表情图像,该图像序列是最后一幅,即该数据库里面描述的表情峰值序列,将该样本移除。最后用到实验中的样本仅为308个,其中75%作为训练集,25%作为测试集。实验硬件环境如下:CPU为Intel酷睿i7,主频2.80 GHz,8 GB RAM,软件平台为MATLAB R2014b。在核函数为RBF时,且进行十折交叉验证后识别率优化前后的对比如表4所示。

图9 标识错误标签表情

表4 识别率前后对比 %

在选取线性核函数进行识别的时候,可以得到相同的识别结果。在线性可分的状况下,线性核函数更加适用,而对于线性不可分,RBF更适用,本文算法提出的特征提取方法在特征向量维数和样本量相比差距不算太大的情况下两种核函数都能得到比较好的结果。在识别速度上,由于需要通过价差验证寻找最佳参数,RBF则不如线性核函数性能好。

3.2 结果对比

为了评估角度几何特征识别人脸表情的效果,将本文方法与近年的表情识别方法和识别率进行对比,如表5所示。文献[9]中用到FACS的AU,同样是在CK+数据库上,采用角度和距离两类几何特征共1 378个特征向量,通过不同的分类算法最后得到了最高95.17%的识别率。相对文献[9],本文用到的特征向量数目不足32个,却能够达到相同的识别率。文献[10]将静态特征点和动态特征点之间的距离作为特征向量,同样在和本文相同的数据库上面得到了91%的综合识别率。文献[11]从面部选取了32个特征向量,主要包括了特征点的线性欧式距离、多边形面积、线段斜率和椭圆特征,在CK+数据库上通过多种方法进行了分类。其中,利用多重SVM得了82.41%的识别率,利用随机森林得到了95.46%。虽然识别率有所提高,但运用了四种类型的几何特征,而本文仅在角度和距离两种特征的基础上,达到较高识别率。文献[3]提取待识别图像与中性表情对应特征点之间的距离比例系数,并将此作为几何特征,将CK数据库作为实验对象,能够正确识别92.33%的数据,该文献中使用特征提取手段,在一定程度上提升了识别率,但是在特征提取的过程中依然存在处理方法比较复杂、计算量过大的问题。

表5 本文方法与其他方法识别结果对比

续表5

支持向量机本是二分类算法,但由于表情共有6类,需要进行多分类,因此本文采用LIBSVM框架,减少用到的特征向量的种类,相比其他方法更加有优势。如表6所示,在特征向量较少的基础上,相比基于几何特征识别率较高的文献,本文不仅达到了较高识别率,而且使用的特征向量种类较少。

表6 几何特征种类

综上,大部分以几何特征向量为基础的表情识别都以距离为基础,而且能得到较好的识别率。有的方法中对图像进行了比较复杂的预处理过程,本文一方面简化了对图像的预处理过程,一方面明显减少特征向量的种类以及数目,且得到比较好的识别率。这说明了本文方法对最后的识别率具有比较明显的提升效果。

4 结 语

本文通过建立基于面部特征点的几何特征向量集合进行表情识别,初步建立的32个基础向量集合是根据直观的面部表情变化特征直接得到的,达到了83%的识别率。第二阶段尝试各种不同的几何特征,以提高识别率为目的,同时结合表情变化特征进行更加细致的特征描绘得到更加有意义的特征向量。基于以上的方法,使用CK+表情库进行测试,使基础识别率从83.87%提升到95.16%。本文方法的优点在于简化了图像处理和特征向量数目。在今后的研究中,会进一步进行特征向量的优化,以找出对各类表情最有效的特征。另外,也会增加表情的实时监测和分割等研究内容。

猜你喜欢

特征向量识别率人脸
克罗内克积的特征向量
高中数学特征值和特征向量解题策略
有特点的人脸
一起学画人脸
玻璃窗上的人脸
三个高阶微分方程的解法研究
档案数字化过程中OCR技术的应用分析
基于PCA与MLP感知器的人脸图像辨识技术
科技文档中数学表达式的结构分析与识别
人工智能现状和发展