一种基于Gabor和EOH特征的自动微表情识别方法与流程

文档序号:12041442阅读:344来源:国知局
本发明涉及表情识别和图像识别技术,更具体地,涉及一种自动微表情识别方法。

背景技术:
当今全球政治格局动荡不安、恐怖活动多处频发。世界各国的科学家和工程师都在努力寻找与暴力和极端行为有关的行为线索,并尝试开发能对上述行为进行检测的技术或方法。微表情与人类内在的情感信息加工过程紧密相关,它无法伪造,不受意识控制,反映了人类内心的真实情感与意图。从而,微表情成为了能够进行谎言与危险意图检测的有效线索。美国国防部、中情局、本土安全局、安全管理检查署等甚至已经开始接受Ekman的训练课程,利用微表情进行反恐工作。然而,人们对微表情本质的认识、对微表情的实际应用都还十分有限。这主要是由于作为微表情研究基础的微表情表达的研究才刚刚起步。由于微表情的持续时间非常短,没有受过训练的观察者很难正确识别微表情。虽然研究者推出了微表情训练工具,但Frank、Herbasz、Sinuk、Keller和Nolan的研究发现,即使接受了微表情训练工具(METT)训练,被试识别现实中的微表情的成绩依然很差(准确率只有40%左右)。目前,微表情研究者和相关实践工作者若想对微表情进行准确识别,就必须借助于面部行为编码系统FACS对可能包含微表情的视频进行逐帧编码。但是,不仅FACS编码的训练比较费时,编码者一般需要接受100小时的训练才能达到初步熟练的程度;而且使用FACS进行编码也很费时,编码10分钟的视频至少需要10个小时。在Porter等人的研究中,仅使用低速摄像机(30帧/秒)对被试的面部表情进行短时间记录,研究中需要分析的视频即高达30万帧。而这样的情况下由于捕捉到的微表情的数量太少,对微表情的表达仅能进行描述统计而无法使用推断统计的方法来进行数据分析。若考虑使用高速摄像机,以满足统计分析的需求,则需要手工编码的视频帧数将增长数倍。若考虑长时间记录面部表情(例如在审讯情境下),则需要手工编码的视频数量将更加快速的增长。过于缓慢的编码速度和海量需要人工处理的视频数据,使得微表情的编码成为了费时费力的艰巨工作,使得相关研究和实践都很难进行下去,这是目前微表情研究与微表情应用工作中面临的最大障碍。因此,无论是微表情研究,还是微表情的应用,对于自动化的微表情分析工具,都具有非常大的需求。发展自动化的微表情分析工具,是目前微表情研究者们的第一要务。将计算机视觉(ComputerVision)的技术与方法与心理学的相关研究成果相结合,是有可能开发出自动化的微表情识别系统的。实际上,目前,已经有来自美国和日本的两个独立的研究小组在该问题上进行了探索。Polikovsky,Kameda和Ohta于2009年提出了一种利用3D梯度方向直方图(3Dgradientsorientationhistogram)提取面部运动信息的方法。他们将人脸划分成12个兴趣区(ROI),并通过对视频中相应区域进行追踪来完成提取相应区域的3D梯度方向直方图表征。除此外,他们还收集了一个‘微表情数据库’。他们要求被试以尽可能低的表情强度、尽可能快的速度来做出面部表情,并对被试做出面部表情的过程用高速摄像机进行摄像。K均值聚类(K-means)的结果表明,在该数据库上,3D梯度方向直方图可以有效表征不同面部区域的处在不同相位(phase)的面部表情动作单元(actionunit)。Shreve等于2009到2011年间提出了一种新的表情视频分割方法。他们利用光流(opticalflow)来计算光学应力(opticalstrain)。然后,他们将面部划分成8个兴趣区域,并将眼睛、鼻子和嘴部的图像以一个T型标记予以去除。他们通过将在各个兴趣区域计算得到的光学应力与训练得到的某一阈值进行比较,实现了对宏观表情(即普通表情)和微表情视频的分割。这两项研究距离自动识别微表情的目标尚有较大的距离,仅仅只是初步探索。Polikovsy等提出的方法只能区分不同面部区域的不同AU及其所处的不同相位,而不能直接对表情以及表情的持续时间进行直接的测量。而表情持续时间的测量对于自动微表情识别系统来说是必须能够完成的功能。此外,该研究中诱发微表情的方法也有很大的问题:在该研究中,微表情是要求被试模仿出来的,且要求表情强度要尽可能低。目前,研究者认为微表情是难以被伪造的,微表情与普通表情的差别在于其持续时间很短而与表情的强度无任何关系。Shreve等于2009年提出的方法不能对同时包含微表情和宏观表情的视频进行分割,在2011年他们首次实现了在一个统一的框架内对这两者进行分割,但结果表明,该方法对微表情的捕获率很低(50%),误报率很高(50%)。此外,Shreve等收集的微表情数据集也有很大的问题,是用要求被试模仿的方法收集的。最关键的是,Shreve等的方法只是一个表情视频分割的方法,不能对视频中包含的表情所属类别进行识别。

技术实现要素:
为克服现有技术中的上述缺陷,本发明提出一种自动微表情识别方法。根据本发明的一个方面,提出了一种自动微表情识别方法,包括:步骤10)、捕获视频的帧图像中的人脸区域,并进行预处理;步骤20)、对相应人脸区域的图像提取Gabor特征和EOH特征;步骤30)、将相应特征进行融合,获取目标视频的最终表征;通过训练所得的分类器,获取每一帧视频图像的表情标签序列;步骤40)、对该表情标签序列进行扫描,判断表情的持续时间,根据获取的微表情,输出表情类别。本申请的方法提高了识别速度和准确性,提高了训练的速度和效率,使得微表情识别进入可应用领域。附图说明图1为根据本发明的微表情识别方法的流程图。如图所示,为了能明确实现本发明的实施例的结构,在图中标注了特定的结构和器件,但这仅为示意需要,并非意图将本发明限定在该特定结构、器件和环境中,根据具体需要,本领域的普通技术人员可以将这些器件和环境进行调整或者修改,所进行的调整或者修改仍然包括在后附的权利要求的范围中。具体实施方式下面结合附图和具体实施例对本发明提供的一种自动微表情识别方法进行详细描述。在以下的描述中,将描述本发明的多个不同的方面,然而,对于本领域内的普通技术人员而言,可以仅仅利用本发明的一些或者全部结构或者流程来实施本发明。为了解释的明确性而言,阐述了特定的数目、配置和顺序,但是很明显,在没有这些特定细节的情况下也可以实施本发明。在其他情况下,为了不混淆本发明,对于一些众所周知的特征将不再进行详细阐述。总的来说,在进行微表情识别时,将综合提取微表情的Gabor特征与EOH特征,在获得了目标的Gabor+EOH的综合表征之后,不直接将所有特征用于训练,而是对特征进行过滤。实验表明,仅针对EOH特征进行过滤才是有效的。过滤的方法为:以初期得到的Gentleboost(MI+DWT)在初始化训练样本权重后,对训练样本进行一轮训练,获得弱分类器在每一维特征上的加权错误率;若该错误率高于某一预先设定的阈值a则将该特征抛弃,反之则将该特征予以保留。在获得过滤的特征后,将用PreAvgGentleboost_EOHfilter行特征选择。该方法将在极大减少算法计算复杂度的同时(减少特征数量约74%),保留分类器的分类精度,使得将Gabor+EOH特征用于微表情识别成为可能。在使用PreAvgGentleboost_EOHfilter进行特征选择时,将综合考虑弱分类器的加权误差和加权平方误差,而不是简单的考虑弱分类器的加权平方误差。PreAvgGentleboost_EOHfilter将根据该综合指标进行排序,将训练循环迭代时得到的弱分类器以该综合指标升序排列。弱分类器的选择将按照该列表,根据之前的选择方法进行。该方法将解决直接采用Gabor+EOH特征时会损害分类器准确率的问题。将SVM与PreAvgGentleboost_EOHfilter进行组合,用于训练以获得新的分类器。基于Gabor特征的自动微表情识别人类视觉系统可近似的看成是一个层状结构,对视觉信息的加工是呈层状递进的,而其中初级视觉皮层为该层状结构的基础,因此,可以从这一结论推得,人类初级视觉皮层对静态表情图片的响应中,应该包含了能将不同表情区分开来的有用信息,即,人类初级视觉皮层对静态表情图片的表征方式是一种识别表情的有效表征方式。若计算机视觉系统能模拟或者模仿人类初级视觉皮层对表情的表征方式,并以某种方式予以分析,则以计算机系统的高速处理速度,最终形成的计算机视觉系统则可能会以一种相当于人类以超高速对表情进行扫描的方式对表情进行识别。这样的系统能对视频的每一帧中每一个人的每一个表情进行识别,将识别的结果予以分析后,计算机系统应该能够以一定的准确率识别到视频中是否包含微表情以及包含的微表情分别是什么表情。小波变换是近十几年来新发展起来的一种数学工具。其中,Gabor小波变换作为一种特征提取和图像表征方法,在模式识别领域中得到了广泛的应用。Gabor小波变换具有能同时在空域和频域同时取得最优局部化的特性,因此能够很好地描述对应于空间频率特征(spatialfrequencycharacteristics,又名尺度scale)、空间位置(spatiallocalization)及方向选择性(orientationselectivity)的局部结构信息。研究者已经证明,哺乳动物(包括人类在内)的大部分初级视觉皮层简单细胞的滤波响应可以由一组自相似的二维Gabor小波来模拟。人脸检测及预处理方法为提高系统自动化程度,采用Kienzle,Bakir,Franz和Scholkopf提出的人脸检测算法对视频中的人脸进行自动的捕获。该算法使用5层的支持向量机(supportvectormachines,SVM)来组成一个级联的(cascaded-based)面孔检测系统。其中,第一层的SVM采用秩亏(rankdeficient)方法进行了改进以改善系统的识别速度。该算法在Pentium42.8Ghz的系统上即可实现实时对视频中的人脸进行检测。其在MIT-CMU人脸数据库上的测试数据表明,该算法的准确性很高(击中率93.1%,误报率0.034%)。采用的图像预处理过程如下:完成自动人脸检测后,捕获到的人脸图像将首先被转化为8位灰度图像;然后,以二次线性插值方法将图像归一化至48×48像素大小。在本申请中,实施例1和实施例2都将采取该方法进行图像预处理。人脸表情的Gabor表征方法采用二维Gabor滤波器组对捕获到的人脸图像进行特征提取,以形成人脸表情的Gabor表征。二维Gabor滤波器是一组具有高斯包络的平面波,能够精确地提取图像的局部特征,且对位移、形变、旋转、尺度变化和光照变化都有一定的鲁棒性。其Gabor核被定义为:其中Kmax是最大频率,f是频域中Gabor核之间的间隔因子。φu∈[0,π),这决定了Gabor滤波器的方向。z=(x,y)表示位置,‖·‖表示取模操作,而参数u和v分别代表控制Gabor滤波器的方向和尺度。式(1)的第一项决定了滤波器的振荡部分,第二项则用于补偿直流分量,以消除滤波器响应对图像全局光照变换的敏感性。参数σ控制包络函数的振荡次数。在提取表情图像的Gabor特征时,一般会选择不同的尺度与方向以形成一组Gabor核,然后将Gabor核与给定图像进行卷积运算产生图像的Gabor特征。Gabor滤波器组的设计取决于参数u,v,Kmax,f,σ的选择。在本申请中,采用9尺度8方向的Gabor过滤器组对捕获到的人脸图像进行特征提取。具体参数选择如下:σ=2π,kmax=π/2,v=0,…,8,u=0,…,7.(2)人脸表情图像I(z)的Gabor表征|o(z)|u,v可以由该图像与Gabor滤波器的卷积运算产生,即:Re(o(z))u,v=I(z)*Re(Ψu,v(z)),Im(o(z))u,v=I(z)*Im(Ψu,v(z)).(3)将|o(z)|u,v转化为列向量Ou,u,然后将Ou,v按尺度与方向依次连接,形成一个列向量G(I),即:G(I)=O=(O0,0O0,1…O8,7).(4)由于有多个方向与尺度,最终形成的Gabor特征维数将高达48×48×9×8=165888维,具有很高的冗余度。实施例一、结合Gabor特征与Gentleboost的人脸表情识别要能对视频中的微表情进行分析,首先要能对静态图片中的普通表情进行识别。实施例一首先在人脸表情数据库(又称CK)上对算法的人脸表情识别性能进行评估。该数据库包含100名大学生(年龄范围:18-30岁)的6种基本表情视频。其中,65%的模特为女性,15%的模特为黑人,3%的模特为亚洲人或拉丁裔。视频拍摄方式为:模特按照要求对规定的表情动作予以表演,摄像机以模拟S端子(S-video)信号对被试正面人脸表情进行记录。视频最终以640×480的8位灰度图像形式予以储存。在实施例一中,选用其中97名模特的374段视频中的中性表情和一张或两张处于顶点相位(peak)的6种基本表情图像来组成数据集。最终选用的表情图片数量为518张。为了测验算法的泛化性能,采用10折交叉检验(10-foldcrossvalidation)对算法性能进行评估。首先采用Gentleboost作为分类器(classifier)。Gentleboost是一种委员会机器,它采用分而治之的原则(principleofdivideandconquer)的方法来解决复杂的学习任务。它模拟了人类群体决策的过程,即寻找一些‘专家’来获得关于问题的知识,并通过让这些专家投票的方式,来形成对问题的最终描述。Gentleboost通过改变样本的分布,将一个弱学习模型(weaklearningmodel)转化为强学习模型(stronglearningmodel)。因此,Gentleboost算法能适用于表情识别这类复杂的分类问题,并拥有出色的性能。由于Gentleboost算法在训练时隐含着特征选择过程,而采用的Gabor表征具有很高的特征维数,因此Gentleboost将会选择很少数量的特征以用于最后的分类,最终形成的分类器应该会拥有很高分类速度和泛化性能。选择Gentleboost而不是更加常用的Adaboost的原因在于,研究者已经证明Gentleboost收敛的速度更快,对于物体识别而言Gentleboost的准确性更高。在实施例一中,采用以互信息(mutualinformation,MI)和动态权重裁剪(dynamicalweighttrimming,DWT)方法改进过的Gentleboost进行表情识别。由于采用的Gabor特征是高度冗余的,因此,这里采用互信息的方法来去除被选择到的弱分类器之间的信息冗余,以剔除无效的弱分类器,提升Gentleboost的性能。互信息是对两个随机变量之间相关性的一种度量。两个随机变量X和Y的互信息可定义为:I(X;Y)=H(X)+H(Y)-H(X,Y)=H(X)-H(X|Y)=H(Y)-H(Y|X).(5)若随机变量为离散的,则熵H(X)可定义为:H(X)=-∑p(x)lg(p(x))(6)假设在训练的T+1轮时,已经有T个弱分类器{hv(1),hv(2),…hv(T)}被选择,则计算备选分类器与已选分类器之间最大MI的函数可定义为:其中MI(hj,hv(t))为随机变量hj和hv(g)之间的MI。通过将R(hj)与某一预先确定的阈值TMI(thresholdofmutualinformation)做比较来判断该弱分类器是否在训练时被摒弃,以保证新训练得到的弱分类器的信息没有被已选弱分类器组成的集合所包含。若R(hj)<TMI则说明该弱分类器有效,并将之加入弱分类器集合之中,反之则予以抛弃,算法将从备选弱分类器集合中选择一个新的弱分类器,直至符合条件的弱分类器被选中为止。若无弱分类器能符合条件,则训练终止。在上述过程中,除了考虑弱分类器的MI,算法还需将弱分类器的性能考虑在内。在每一轮选择时,算法选择的是在训练集上具有最小加权平方误差(weighted-squarederror)且符合MI条件的弱分类器。动态权重裁剪在加入MI后,由于根据MI选择弱分类器会额外增加算法的循环次数,因此算法的训练时间会比未修改前还长,使得训练速度的问题变得更加严重。如前所述,算法训练时间过长,在此将DWT扩展至Gentleboost。该方法依然被称之为DWT。在算法每一轮迭代过程中,训练集中的样本将根据其样本权重进行过滤。若样本权重wi<t(β)则该样本将从当前训练集中予以剔除。t(β)为当前循环当前样本权重分布的βth百分位数。弱分类器与多类分类问题采用regressionstump为Gentleboost的弱分类器,即有:ht(x)=aδ(xf>θ)+b.(8)上式中xf为特征向量x的f’th特征,θ是阈值,δ是指示函数(indicatorfunction),a和b是回归参数。其中θ)Σiwiδ(xf>θ).---(10)]]>式(9)和(10)中y为样本的类别标签(±1)。Gentleboost算法的一对多的方法可看成是一种特定条件下的Adaboost.MH算法。对于表情识别这个多类分类问题,采用一对多的方法予以实现,即将某一类别的样本作为训练中的正类,而其他所有类别的样本作为训练中的负类,最后通过投票确定样本的所属类别,即有:上式中l为样本的类别标签,H(x,l)是二类分类分类器的判别方程,K为要分类的类别的数量。实验对比了分别打开和关闭MI与DWT的各种条件下Gentleboost算法的性能。表1列出了各算法的准确率和训练时间。表1各种Gentleboost算法的表情识别准确率与训练时间在各种Gentleboost算法中,基于MI与DWT的Gentleboost拥有最高的准确率(88.61%),但这样的准确率对于微表情识别而言还不够让人满意。结果显示,MI+DWT的组合提升了Gentleboost的训练速度,训练速度提升到了原始Gentleboost的1.44倍,约可节约近一半的训练时间。这一效果是由DWT带来的。值得注意的是,根据问题的不同,DWT的加速效果应该是不同的。分类界面越简单的问题,DWT的加速效果应该就越好。采用更高的阈值可以带来更快的训练速度,但同时也会降低分类器的准确率。在使用DWT时,研究者需要在速度与准确性直接做出权衡。采用的参数设置为β=0.1,这应该能保证Gentleboost算法在面对绝大多数分类问题时都具有较高的性能和较快的训练速度。实施例二、结合Gabor特征与GentleSVM的人脸表情识别SVM是一种通用的前馈型神经网络,它通过最小化结构风险来建立一个超平面(hyper-plane)作为决策曲面,使得正例和反例之间的间隔(margin)最大化。对于表情识别而言,SVM与Gentleboost的性能相近,均拥有此领域的最高性能。用Gentleboost对Gabor特征进行选择,而SVM则在经过特征选择而形成的新的表征上进行训练以形成最终的分类器。在本研究中,将这种组合称之为GentleSVM。实施例二所采用的数据集与实施例一相同。为了测验算法的泛化性能,采用10折交叉检验对算法性能进行评估。在Gentleboost的训练完成后,将Gentleboost选择出的弱分类器所采用的Gabor特征在去除冗余特征(剔除重复项)后重新连接起来,形成对人脸表情的新的Gabor表征。而SVM将在该新的表征上进行训练。SVM是一种两类分类器,对于表情识别这种多类模式识别问题,可以通过分解为多个两类问题的组合来实现。实施例二中采用一对多方式来实现SVM的多类别分类问题。具体有:上式中i为样本类别标签,w为权重向量,φ(x)是特征向量,K是类别的数量。考虑当采用Adaboost进行特征选择时,线性SVM与非线性SVM的性能非常接近,而线性SVM的分类速度远快于非线性的SVM,在实施例二中采用1范数软间隔线性SVM(1-normsoftmarginlinearSVM)作为分类器。实施例2对比了各种GentleSVM算法组合与原始SVM的表情识别的性能。结果如表2与表3所示。表2各种GentleSVM算法的表情识别准确率与训练时间表3各类表情的识别准确率如表2所示,所有GentleSVM算法组合的准确率均超过了原始的SVM和实施例一中经过改进的Gentleboost的准确率。此外,所有GentleSVM算法组合均在20秒之内就完成了10次的训练,这意味着在完成Gentleboost的训练后,系统只需要付出很少的时间代价就能将性能进一步提高。在所有的GentleSVM算法组合中,MI+DWT组合表情识别的准确率最高(92.66%)。与实施例一的结果结合起来看,上述结果说明MI+DWT组合有效地提升了Gentleboost用于分类与特征选择时的性能。如表3所示,所有GentleSVM算法组合,以及SVM,均能非常准确地识别惊讶、厌恶、快乐以及中性的表情。对于悲伤、愤怒和恐惧,上述算法均较难识别。但是,除了SVM外,所有GentleSVM组合对于上述3种表情识别的准确率均在80%以上。对于一个全自动的表情识别系统而言,这样的准确率处于可接受的范围之内。实施例三、基于Gabor特征的自动微表情识别在实施例二的基础上,在实施例三中构建基于Gabor特征的自动微表情识别。为了提升系统的泛化性能,收集了一个新的训练集来对系统进行训练。该训练集总共包含1135张表情图片。其中,518张图片来选自于前述的CK数据库,146张选自于MMI表情数据库,185张选自于FG-NET数据库,143张选自于JAFEE数据库,63张选自于STOIC数据库,54张选自于POFA数据库,另外26张由网络自行下载。METT中总共包括表达了悲伤、惊讶、愤怒、厌恶、恐惧、快乐、轻蔑等7种基本表情的总共56段微表情视频。选用其中表达了前6种基本表情的共48段微表情视频为测试集对系统性能进行评估。用于系统评估的性能指标包括:微表情捕获准确率,即系统要正确指出视频中有没有微表情,有几个微表情;微表情再认准确率,即系统除了要正确捕获微表情,还要正确识别出微表情的表情类别。为了处理来自不同表情数据库表情图像在光照水平上的差异,在微表情识别系统中加入了额外的预处理过程。除了执行实施例1和2中的预处理过程,还选择对图像的灰度进行一个额外的归一化处理,即图像灰度均值归一化为0,而图像灰度的方差归一化为1。为了对微表情进行识别,首先用实施例2得到的算法对视频中的每一帧图像进行识别,获得对该视频的表情标签的输出。此后,将对该表情标签输出进行扫描,以确认视频中表情变换的转折点。此后,系统将根据获得的转折点和视频的帧率对表情的持续时间进行测量。例如,假设一段视频的帧率为30帧/秒,其表情标签输出为111222,则该视频的表情变换转折点为第一帧、标签1→2的中点以及最后一帧。故在该例中表情1和2的持续时间均为1/10s。此后,系统将根据微表情定义对微表情及其所属标签进行提取。其中,系统将持续时间为1/25s至1/5s间的表情考虑为微表情。持续时间大于1/5s的表情将被认定为普通表情,并予以忽略。目前,考虑轻蔑的表情的普遍性不如其他6种基本表情(Franketal,2009),目前只训练系统识别6种微表情(悲伤、惊讶、愤怒、厌恶、恐惧、快乐)。本实施例对在使用不同训练集和不同预处理方法时的性能进行了比较,若训练集为CK,且不进行额外的预处理,系统在METT上的识别准确率相当低,仅仅只有50%,这甚至低于没有受过训练的人类被试在METT前测上的成绩。当训练集更换为新的训练集时,系统的捕获准确率上升到了91.67%,此时的识别准确率为81.25%。若系统同时还执行前述的额外预处理过程,则系统的捕获准确率会上升到95.83%,而此时的识别准确率可以达到85.42%。这一成绩好于受过训练的人类被试在METT后测上的成绩(约为70%-80%,见Franketal,2009;Russelletal,2006)。上述结果指出了具有代表性的大训练样本对于自动微表情识别的重要性。考虑当系统使用新训练集时额外预处理对系统的贡献度约为4%,上述结果提示,样本的代表性对于微表情识别来说可能更重要,使用复杂的预处理方法可能只会带来有限的性能提升。表4系统对不同人种的微表情的识别成绩基于Gabor+EOH混合特征的自动微表情识别通过上述实施例已经初步得到了一个能对视频中的微表情进行分析的自动微表情识别系统。但从前述结果来看,该系统的准确率还可以进一步得到提高。其中一个重要问题就是小样本的问题。考虑目前自动表情识别领域的研究者大多为西方研究者,他们所用的表情数据库中包含的大多为白人,因此,要想获得足够样本量的具有足够代表性的训练集并不容易。如何在仅拥有小样本的情况下提升算法的准确率?这是所面临的问题。解决这一问题可从改变系统所用的表征着手。好的表征会使得不同概念间的类间距离大,概念内的类内距离小,同时,好的表征对于误差也有更高的容忍程度。简而言之,好的表征能够在小样本情况下也能较好地描述问题的分类界面。EOH(EdgeOrientationHistogram)能够提供这样的特性。EOH提取的是图像中关于图像边缘及其方向的信息,即有关于图像形状的信息,对于图像全局光照变化不敏感,对于小尺度的位移和旋转不敏感。这一特征提取方法也有生理学上的基础。例如,研究者发现,初级视觉皮层下细胞的感受野具有显著的方向敏感性,单个神经元仅对处于其感受野中的刺激做出反应,即单个神经元仅对某一频段的信息呈现较强的反应,如特定方向的边缘、线段、条纹等图像特征。EOH可看成对这一特性的模拟。如前所述,采用具有生物学基础的视觉信息表征方法可帮助研究者更好地构造计算机视觉系统。同时,研究也证明了EOH可以成功提取人脸中区分笑与非笑的特征。更重要的是,研究者发现EOH在训练集的样本量较少的情况下也能提供出色的性能。Gabor+EOH混合特征的提取对于Gabor特征提取,如前所述。对于EOH特征提取与特征融合如下:首先对图像进行边缘提取,在此使用Sobel算子进行边缘提取。其中,图像I在点(x,y)的梯度可以由相应方向的Sobel算子与图像的卷积而得,即有:Gx(x,y)=Sobelx*I(x,y)Gy(x,y)=Sobely*I(x,y)(13)其中:则图像I在点(x,y)的边缘强度为:为了对边缘信息中的噪音进行过滤,我们有图像I在点(x,y)的边缘方向可定义为:若将边缘方向划分为K个区间,则图像I在点(x,y)的边缘方向直方图可计算为:则,图像的边缘积分图可计算为:其中R为图像I中任意区域。由于EOH特征维数很高,在进行EOH特征提取时,选择将捕获到的人脸缩放至24×24像素大小。此外,仅采用比率特征,即有:其中ε为平滑因子。在完成Gabor与EOH特征提取后,即进行特征融合。将EOH特征与Gabor同样的方式转化为一个列向量,此后,将其与Gabor特征联结,形成一个新的列向量,进行特征融合,即有:F={fGabor,fEOH}(21)以下均使用上述方法进行特征提取。实施例四、基于Gabor+EOH混合特征的表情识别实施例4所采用的数据集、人脸检测方法以及预处理方法与实施例1和2相同。为了测验算法的泛化性能,采用10折交叉检验对算法性能进行评估。实施例4中的分类器分别采用实施例1与实施例2中得到的Gentleboost和GentleSVM,以考察采用不同分类器时系统的性能。其中,对算法进行修改,去除了错误率检查条件,即由DWT变成了WT,样本过滤的阈值不会发生变化,且不会由于错误率过高而重新训练。从实验结果看来,当使用Gabor+EOH混合特征时Gentleboost识别的准确率相当低,只有50%左右,甚至低于只使用Gabor特征的情况。这说明在Gabor+EOH混合特征情况下,用Gentleboost进行识别是不适用的。GentleSVM的识别结果受Gentleboost特征选择的影响较小(准确率为85%-88%),这主要是因为GenteSVM对Gentleboost选择出的特征进行了特征融合,将针对不同表情选择出的特征进行了联结,并去除了其中的冗余特征。然而,此时两组GentleSVM的识别准确率均低于只使用Gabor特征时的情况。该结果再次说明Gentleboost在混合Gabor和EOH特征的情况下失效了。实施例五、基于平均误差等级的Gentleboost在实施例5中,采用平均误差等级的方法对Gentleboost进行进一步的改进,将新得到的算法称为AvgGentleboost。该方法将解决在采用Gabor和EOH混合表征,Gentleboost算法会失效的问题。考虑在迭代的第t轮中,Gentleboost在某个训练集合At上了获得了N个弱分类器hi,t,i=1,2,…,N,同时,设hi,t在训练集At上的加权误差为Ei,t,加权平方误差为εi,t,且有Et={Ei,t|i=1,2,…,N},εt={εi,t|i=1,2,…,N},则:r1,i,t=Rank(Et,Ei,t),r2,i,t=Rank(εt,εi,t).(22)上式中函数Rank(x,y)为一排序函数,表示的是将变量x做升序排序后,变量y在该排列中所处的位置。将弱分类器hi,T的平均误差等级定义为:Ri,t=(r1,i,t+r2,i,t)/2.(23)则在第t轮迭代中,Gentleboost选择具有最小平均误差等级的弱分类器。即:ht=hj,t(24)若考虑在训练中使用MI,则Gentleboost选择的是以平均误差等级以升序排序获得的备选弱分类器列表中第一个符合MI过滤条件的弱分类器。实施例5所采用的数据集、人脸检测方法以及预处理方法与实施例4相同。为了测验算法的泛化性能,采用10折交叉检验对算法性能进行评估。实施例5中分别采用Gabor+EOH和Gabor特征,以比较不同特征提取方法下系统的性能。实施例5中的分类器为新得到的AvgGentleboost和AvgGentleSVM,以和实施例4进行比较,并考察采用不同分类器时系统的性能。在采用Gabor表征时,AvgGentleboost和Gentleboost的性能非常接近,两者几乎无差别,只是在采用特征数量较少时,AvgGentleboost表现出了高于Gentleboost的性能。这一结果表明,在Gentleboost算法误差最小化方法还适用的范围内,AvgGentleboost的性能与Gentleboost相近(comparable)。当表征方式改为Gabor+EOH混合表征时,AvgGentleboost的性能要远远高于Gentleboost。这一结果说明了AvgGentleboost的有效性。当分类器为AvgGentleboost时,采用Gabor+EOH表征时的算法性能要好于仅使用Gabor特征时,同时,AvgGentleboost+Gabor+EOH的组合的性能也要好于Gentleboost+Gabor组合的性能,再次说明了新得到的算法对于表情识别问题的有效性。表5.1各种Gentleboost算法组合所获得的最佳表情识别准确率表5.2各种GentleSVM算法组合所获得的最佳表情识别准确率在各种条件下,AvgGentleSVM与GentleSVM的性能都比较接近。其中,在使用Gabor表征时,AvgGentleSVM与GentleSVM的性能几乎完全相同。将AvgGentleSVM使用的表征更换为Gabor+EOH时,算法的准确率最高可以达到94.01%,略高于仅使用Gabor表征时的情况,此时分类器之间的差异主要存在于使用特征较多的情况。当表征方式为Gabor+EOH时,AvgGentleSVM的性能要高于GentleSVM,说明了AvgGentleboost在特征选择上的有效性。综合以上结果,可以得到一个结论:相对于Gentleboost,AvgGentleboost在分类及特征选择上的性能都得到了提高。然而,实验结果表明,相对于实施例2中我们所获得的算法而言,实施例5所获得的算法在准确率上的提升还比较有限制,尚有进一步提升的空间。实施例六、基于特征预过滤的AvgGentleboost在实际应用时,过慢的训练速度会严重限制参数寻优的范围和实际使用的训练集的大小。要想将Gabor和EOH混合表征方法实际用于微表情识别,Gentleboost算法训练速度过慢的问题一定需要得到解决。Gentleboost算法训练速度缓慢的原因是因为在训练弱分类器时Gentleboost需要进行穷举搜索,以选择最优的弱分类器。该算法训练方法的时间复杂度为O(NMTlogN),其中,N为训练集中所包含的样例的数量,M为样本的特征维数,T为训练要获得的弱分类器的数量。可以看到,当N、M或T中任意一个变量的值较大时,算法的训练时间就将变得很长。若其中两者或三者均为较大的值时,则算法训练速度就有可能会变得让人无法接受。由于之前研究者所提出的分解变量M的方法无法和现有的AvgGentleboost进行组合,因此,在本研究中,提出用特征预过滤的方法来对变量M进行分解,以此进一步加速算法的训练过程。将该方法和DWT进行组合,将能同时对变量N和M进行优化,使得算法在大样本高维度的情况下也能进行快速训练。在执行Gentleboost迭代前,对样本特征进行预过滤。使用Gentleboost算法在全部的训练样本上为每一特征训练一个弱分类器。若该弱分类器在训练集上的错误率大于或等于预先设定的阈值α,则将该弱分类器所对应的特征予以抛弃,反之则予以保留。最后,将所有得以保留的特征予以联结,组成新的表征,形成新的训练集。此后AvgGentleboost将在该新的训练集上进行训练。我们将这两者的组合称为PreAvgGentleboost。实施例6所采用的数据集、人脸检测方法以及预处理方法与实施例5相同。为了测验算法的泛化性能,采用10折交叉检验对算法性能进行评估。实施例6中我们采用Gabor+EOH混合特征,但分别采用不同的参数进行特征提取,以考察在不同参数设置下系统的性能。实施例6中的分类器为AvgGentleboost和AvgGentleSVM,以及新得到的PreAvgGentleboost和PreAvgGentleSVM,以检验特征预过滤的有效性。实施例6采用的EOH特征提取参数为:K={4,6,8},θ∈[-π,π)or[-π/2,π/2),T=100,ε=0.01(25)考虑在训练集中,某一类别的表情的正类样本数量要远远小于其负类数量,则对这两类样本分类存在一个最简单的策略,即将所有样本分为负类。若特征预过滤中得到的弱分类器的准确率低于或等于上述准确率,则可能说明该弱分类器所用特征的无法较好的对正类和负类做出区分。因此,在本实施例中,特征预过滤参数为α=m/N。其中,m为某一类表情的正类样本数量,N为训练集中的训练样例的数量。初步实验结果表明,AvgGentleboost的训练速度得到很大改善,在K=4,θ∈[-π,π)条件下,训练时间由原来的近20天缩短到10小时。不同参数下特征预过滤算法所获得的最佳表情识别准确率如表6.1所示:表6.1不同参数下特征预过滤算法所获得的最佳表情识别准确率从上表可以看到,特征预过滤方法可以大幅减少用于训练的特征数量,过滤了约97%的特征,从而极大的降低训练时的计算复杂度。然而,实验结果表明,直接用此方法对Gabor+EOH特征进行过滤,会在降低训练计算复杂度的同时,使得Gentleboost和GentlebSVM两种分类器的分类精度受到不同程度的损害。这两种分类器的准确率均会降低至比没有加入EOH特征之前还要低的水平。其中,采用有符号的边缘梯度的EOH的条件均好于无符号的边缘梯度的EOH的条件。对于Gentleboost来说,采用6个方向的EOH是最佳的参数,8方向和4方向时结果相似。对于GentleSVM而言,EOH特征所具有的方向数量越多,其性能受损害的程度就越高,在采用8方向的EOH时,其性能甚至低于了采用相同参数的Gentleboost。出现这样的结果应该是由于特征预过滤算法去除了太多的特征引起的,这大大降低了特征的冗余程度。众所周知,Boosting算法在处理具有高度冗余的特征的样本时容易具有较高的性能。因此,直接对Gabor+EOH特征进行特征过滤会破坏我们所使用的特征选择算法所需要的工作条件。那么如何保持Gabor+EOH特征高度冗余的特性同时又使得训练能够加速且不损害分类器的性能呢?考虑Gabor特征为16万维,特征维数尚在可接受的范围之内,因而训练时间过长主要是由于EOH特征维数过高导致了维数灾而引起的。结合上表的结果和实例5的结果,我们认为,加入更多更细致的EOH特征并不能大幅提升算法的性能,这很可能是由于很多EOH特征对于表情识别而言是无效的。因此,若保留完整的Gabor特征,仅对EOH特征进行过滤,就有可能实现我们即加速算法训练过程,又保留分类器分类精度的目标。以上表的实验结果为基础,我们选择了部分更加有意义的参数,进行了新的实验,在该实验中,我们选择仅对EOH参数进行过滤,该算法我们称之为PreAvgGentleboost_EOHfilter和PreAvgGentleSVM_EOHfilter。表6.2不同参数下PreAvgGentleboost_EOHfilter所获得的最佳表情识别准确率根据表6.2的结果,我们可以看到在采用6方向有符号的EOH特征时,PreAvgGentleboost_EOHfilter的性能最佳,相对于表6.1中的结果存在较大提升。在表6.2的两种参数条件下,该算法的最高识别准确率均略低于实例5中的PreAvgGentleboost在Gabor+EOH特征条件下所获得最高91.31%的准确率,然而,其计算复杂度却大为降低。表6.3不同参数下PreAvgGentleboost_EOHfilter所获得的最佳表情识别准确率根据表6.3的结果,我们可以看到在采用4方向有符号的EOH特征时,PreAvgGentleSVM_EOHfilter的性能最佳,远好于6方向有符号的条件。在表3的两种参数条件下,PreAvgGentleSVM_EOHfilter的性能均好于PreAvgGentleboost_EOHfilter。至此,在我们的6个实例中,GentleSVM的性能均一致性的高于了Gentleboost。因此我们有理由相信对于表情识别而言,GentleSVM的性能是要好于Gentleboost的。在表6.3中,采用(4,2)参数所获得的最佳结果(94.4%)与实验5中AvgGentleSVM在Gabor+EOH特征条件下所获得的最佳准确率类似(94.01%)。然而,采用相同参数的PreAvgGentleSVM_EOHfilter训练时的计算复杂度相比AvgGentleSVM减少了74.08%,训练时间大大缩短,这使得构造一个基于Gabor+EOH特征的微表情识别系统成为了可能。在实例7中,我们将以此算法实际构造一个基于Gabor+EOH特征的微表情识别系统。实施例七、基于Gabor+EOH混合特征的自动微表情识别在实施例6的基础上,构建基于Gabor+EOH混合特征的自动微表情识别系统。实施例7中将使用两个训练集。其中一个训练集与实施例3中得到的新训练集相同。在本实施例中称之为训练集1。另一训练集为在训练集1的基础上加入从已有人脸表情数据库中提取的977张亚洲人表情图像形成的新训练集,称之为训练集2。通过使用不同的训练集,在实施例7中考察训练集样本大小对于系统性能的影响。实施例7采用的测验集与实施例3相同。实施例7的人脸检测算法与实施例6相同。Gabor特征提取预处理方法与实施例3相同。EOH特征提取预处理方法与实施例6相同。特征提取方法同实施例5。实施例7中的分类器为GentleSVM,AvgGentleSVM,以及新得到的PreAvgGentleSVM_EOHfilter,以考察系统使用不同分类器时的性能。实施例7进行的实验比对结果如下表。表7.1不同算法在不同参数下的微表情捕获性能比较表7.2不同算法在不同参数下的微表情识别性能比较从表7.1上可以看到,对于微表情捕获而言,在使用样本数量较少的训练集1时,AvgGentleSVM-Gabor的微表情捕获准确率要好于GentleSVM-Gabor,而此时PreAvgGentleSVM_EOHfilter在采用较多特征时可以达到最高值100%,好于AvgGentleSVM-Gabor。当训练集更换为拥有更多样本的训练集2时,GentleSVM-Gabor和AvgGentleSVM-Gabor的捕获准确率可以进一步的提升,并在一定参数下均可达到天花板的100%,而此时的PreAvgGentleSVM_EOHfilter在各参数下几乎均达到了100%。该结果说明PreAvgGentleSVM_EOHfilter进行微表情捕获的性能要高于其两种算法,对于微表情捕获而言我们所进行的修改是有效的。从表7.2上可以看到,对于微表情识别而言,在使用样本数量较少的训练集1时,AvgGentleSVM-Gabor的微表情识别准确率基本与GentleSVM-Gabor无差异,仅在采用较多特征时略好于GentleSVM-Gabor。PreAvgGentleSVM_EOHfilter在这种条件下可以达到最高的87.5%的识别准确率,好于AvgGentleSVM-Gabor。当训练集更换为拥有更多样本的训练集2时,GentleSVM-Gabor和AvgGentleSVM-Gabor的识别准确率可以进一步的提升,但提升的幅度有限,均只提升了2%,此时两种算法的性能无差异。然而,在更换了拥有更多样本的训练集后,PreAvgGentleSVM_EOHfilter的识别准确率却可以得到更大幅度的提升,最高可达到91.67%的识别准确率,远好于受过训练的人类被试的平均水平(约80%)。最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方法进行限制,本发明在应用上可以延伸为其他的修改、变化、应用和实施例,并且因此认为所有这样的修改、变化、应用、实施例都在本发明的精神和教导范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1