基于GPU加速的人脸表情识别及互动方法技术

技术编号:11990129 阅读:84 留言:0更新日期:2015-09-02 18:37
本发明专利技术涉及一种基于GPU加速的人脸表情识别及互动方法,属于模式识别领域。构造了一个基于GPU加速的快速识别微表情的方法框架,首先通过普通摄像头或者视频采集用户人脸图像,使用基于Haar特征及AdaBoost的识别方法进行人脸检测以及人脸特征点识别,识别出用户的瞳孔、鼻尖等位置坐标,并将人脸分为若干个关键区域,使用基于GPU加速的Gabor滤波方法,对整张人脸进行5个尺度8个方向的Gabor滤波,并对人脸特征点附近的关键区域进行特征提取。本发明专利技术将CK、CK+、MMI等数据库中提取的特征根据微表情出现与否对标签进行标记,通过将带标签的特征投入SVM支持向量机,获得识别模型。用户通过将提取出的特征投入识别模型,获得微表情的具体信息。

【技术实现步骤摘要】

本专利技术涉及计算机数字多媒体、增强现实及体感交互
,特别涉及一种基于普通摄像头的人脸表情检测及互动方法,尤指一种基于GPU加速的人脸表情识别及互动方法
技术介绍
人脸是非语言交流中最具有表现力的通道之一,人脸表情为研宄情绪、意图、性格提供了线索。准确高效识别人脸表情的能力可以为很多应用提供支撑,想象空间巨大。在过去几十年中,很多计算机系统被构建出来,用来理解人类表情或与之互动。大多数系统都将表情识别为一些原型表情(高兴、惊讶、愤怒、悲伤、恐惧、恶心)。在日常生活中,这些原型表情很少出现,而在人脸特征上通过一两个小变化来交流却有很多,比如说紧闭嘴唇表示愤怒,嘴唇倾斜往下表示悲伤。一些单独特征的改变,特别是在眉毛和眼皮区域的变化,更是一种副语言,如抬起眉毛表示着开心。为了获得这些精细的人类情绪和副语言的交流,对人类表情细微变化的自动检测是非常必要的。面部编码系统(FACS)是使用最广泛的、基于解剖学原理的编码系统,它通过观察面部外观的瞬间轻微变化,将其编码成不同肌肉的运动。使用FACS,研宄者可以将任何在解剖学上可行的面部表情,解码成Act1n Unit。对愉快、悲伤、惊讶、恐惧、愤怒、恶心这六种基本表情,则可以使用AU的组合表示,例如愉快是AU6与AU12的组合。对人脸表情的识别主要分为对原型表情的识别和对人脸Act1n Unit的识别,shan使用LBP对表情原型进行了识别分类。Zhao提出了一种基于LBP的动态纹理识别算法,并通过这个算法对原型表情进行了识别分类。Cohn使用Gabor滤波识别笑脸。Sebe使用了 PBVD模型通过用户指定的方式获得脸部特征点,然后通过模型形变获得表情特征,使用SVM支持向量机对特征进行分类从而获得原型表情。对人脸Act1n Unit进行识别的算法有很多,Lucey使用AAM活动外形模型对人脸的63个特征点进行匹配,通过SVM支持向量机、NN最近邻及LDA对AU进行识别分类。Jiang提出的LPQ-TOP方法是一种基于LBP-TOP和LBQ的改进方法,实现了对9个AU的识别分类,准确率达到了 84.6%。Bartlett和Littlewort使用Gabor滤波对表情原型和AU都进行了识别。Littlewort也使用Gabor滤波对人脸图像进行特征提取,并使用SVM进行AU识别分类。在人脸表情识别的研宄中,很多研宄者关注识别的准确率,而对效率并不是特别在意,因此,开发一种能够实时进行表情交互的系统是十分必要的,一方面这能够更好地让使用者对交互系统进行评判,另一方面,也能够基于此开展更多的互动研宄。实时表情交互系统是一个可以用于实时识别人脸表情AU的软件工具。系统可以通过摄像头处理实时视频,也可以处理视频文件或者单张图片。通过对16个面部AU的识另IJ,系统既可以响应单个AU,也可以通过组合,对愉快、悲伤、惊讶、愤怒、恶心和恐惧这六种原型表情进行识别,或对交互动作进行定制。所有该系统的输出都在图形界面进行显示,直接输出为文件。通过基于socket的进程间通信手段,实时表情交互系统可以为其他应用提供AU识别功能,有助于基于AU的应用开发。
技术实现思路
本专利技术的目的在于提供一种基于GPU加速的人脸表情识别及互动方法,解决了现有技术存在的人脸识别效率低下等问题。基于GPU加速的Gabor滤波识别人脸表情,该方法能够让用户在普通摄像机前,通过表情的变化来与计算机进行交互,在数字家庭、游戏及医学上有着广阔的应用前景。本专利技术的上述目的通过以下技术方案实现: 基于GPU加速的人脸表情识别及互动方法,包括以下步骤: 步骤(I )、通过普通摄像头或者视频获得动态人脸表情: 将普通摄像头连接到计算机,并将普通摄像头放置于演奏者脸部正前方,距离人脸50-60厘米,通过摄像头获得包含正面人脸的图像; 步骤(2)、使用基于Haar特征和AdaBoost级联分类器的识别方法对人脸进行检测,提取出离摄像头最近,即占据画面最大的人脸图像: 步骤(3)、通过提取出的人脸图像,使用基于Haar特征及AdaBoost的识别方法,识别出瞳孔、鼻尖等位置坐标。步骤(4)、将人脸分为若干个关键区域: 通过对人脸微表情的分析,我们将人脸分为若干个区域,其中,以瞳孔位置为中心,向左15像素,向右15像素,向上35像素,向下15像素的区域为眉毛表情区域,用来检测眉毛的细微变化,另外分别还有覆盖眼睛微表情、面颊微表情以及嘴唇微表情的区域; 步骤(5)、对整张人脸实现基于GPU加速的Gabor滤波: Gabor滤波需要大量分别对Gabor核实部和虚部的卷积操作,Gabor核越大,卷积图像越大,耗时越长,我们选用21*21像素大小的Gabor核,卷积图像为150*150。针对卷积算法耗时长的特性,使用了基于FFT的方法,将空间域的卷积操作转化为频率域的相乘操作,每次卷积只需要I次FFT变换,I次相乘和I次逆FFT变换,时间复杂度为nlog(n),可以达到较快的速度,同时使用GPU加速并行处理技术,对FFT变换进行加速,同时将Gabor核的FFT变换结果保存在显存中,减少运算的时间。Gabor滤波之后,每个像素点都拥有40个幅值作为特征。步骤(6)、对人脸特征点附近的关键区域进行特征提取: 通过将步骤(4)中获得的眉毛表情区域ROI以及其他ROI,将每一个ROI中的像素点根据从左到右、从上到下的顺序进行排列,再将40个幅值代入,得到这个ROI的特征; 步骤(7)、如果此时为训练模式,则将提取出的特征根据微表情出现与否打上标签,并通过增量SVM训练的方式生成识别模型:CK、CK+、丽I等人脸表情数据库中,包含表情的图片以及制作者手工标记的微表情信息,通过将对应的图像通过步骤(I)至步骤(6),获得对应的特征,通过根据制作者手工标记的微表情信息,以具体微表情作为分类集合微表情区域特征,通过带惩罚的SVM支持向量机进行训练,其中惩罚参数为10,获得微表情识别模型;共对16个表情进行识别,所以生成了 16个微表情识别模型; 步骤(8)、如果此时为识别模式,则将提取出的特征投入对应的识别模型中,获得微表情的具体信息:通过步骤(7),可以生成16个微表情识别模型,通过将步骤(6)中生成的特征,投入到相应的C-SVM中,可以准确的获得微表情是否出现的信息。所述的步骤(2)中使用基于Haar特征和AdaBoost级联分类器的识别方法对人脸进行检测,提取出离摄像头最近,即占据画面最大的人脸图像,其步骤是: (2.1)、在步骤(I)获得的图像基础上,使用OpenCV自带的基于Haar特征和AdaBoost级联分类器方法进行人脸检测,其中scale参数为1.1,minNeighbors参数为3 ; (2.2)、将所有检测出来的人脸以人脸大小从大到小进行排序,计算出人脸大小的中位数,并删除比中位数大30%和比中位数小30%的人脸,在剩余的人脸中,选择最大的一个并记录其坐标; (2.3)、图像预处理:在表情识别中,源图片在大小、光照、位置方面有很多差异,而理想输入是纯表情区域,所以需要经过如下步骤的预处理: (2.3.1 )、光照归一化,即直方均衡; (2.3.2)、几何归一化,即转换至本文档来自技高网
...
基于GPU加速的人脸表情识别及互动方法

【技术保护点】
一种基于GPU加速的人脸表情识别及互动方法,其特征在于:包括以下步骤:步骤(1)、通过普通摄像头或者视频获得动态人脸表情:将普通摄像头连接到计算机,并将普通摄像头放置于演奏者脸部正前方,距离人脸50‑60厘米,通过摄像头获得包含正面人脸的图像;步骤(2)、使用基于Haar特征和AdaBoost级联分类器的识别方法对人脸进行检测,提取出离摄像头最近,即占据画面最大的人脸图像:步骤(3)、通过提取出的人脸图像,使用基于Haar特征及AdaBoost的识别方法,识别出瞳孔、鼻尖位置坐标;步骤(4)、将人脸分为若干个关键区域:通过对人脸微表情的分析,我们将人脸分为若干个区域,其中,以瞳孔位置为中心,向左15像素,向右15像素,向上35像素,向下15像素的区域为眉毛表情区域,用来检测眉毛的细微变化,另外分别还有覆盖眼睛微表情、面颊微表情以及嘴唇微表情的区域;步骤(5)、对整张人脸实现基于GPU加速的Gabor滤波:Gabor滤波需要大量分别对Gabor核实部和虚部的卷积操作,Gabor核越大,卷积图像越大,耗时越长,我们选用21*21像素大小的Gabor核,卷积图像为150*150;针对卷积算法耗时长的特性,使用了基于FFT的方法,将空间域的卷积操作转化为频率域的相乘操作,每次卷积只需要1次FFT变换,1次相乘和1次逆FFT变换,时间复杂度为nlog(n),可以达到较快的速度,同时使用GPU加速并行处理技术,对FFT变换进行加速,同时将Gabor核的FFT变换结果保存在显存中,减少运算的时间;Gabor滤波之后,每个像素点都拥有40个幅值作为特征;步骤(6)、对人脸特征点附近的关键区域进行特征提取:       通过将步骤(4)中获得的眉毛表情区域ROI以及其他ROI,将每一个ROI中的像素点根据从左到右、从上到下的顺序进行排列,再将40个幅值代入,得到这个ROI的特征;步骤(7)、如果此时为训练模式,则将提取出的特征根据微表情出现与否打上标签,并通过增量SVM训练的方式生成识别模型:CK、CK+、MMI人脸表情数据库中,包含表情的图片以及制作者手工标记的微表情信息,通过将对应的图像通过步骤(1)至步骤(6),获得对应的特征,通过根据制作者手工标记的微表情信息,以具体微表情作为分类集合微表情区域特征,通过带惩罚的SVM支持向量机进行训练,其中惩罚参数为10,获得微表情识别模型;共对16个表情进行识别,所以生成了16个微表情识别模型;步骤(8)、如果此时为识别模式,则将提取出的特征投入对应的识别模型中,获得微表情的具体信息:通过步骤(7),可以生成16个微表情识别模型,通过将步骤(6)中生成的特征,投入到相应的C‑SVM中,可以准确的获得微表情是否出现的信息。...

【技术特征摘要】

【专利技术属性】
技术研发人员:潘志庚严政张明敏
申请(专利权)人:吉林纪元时空动漫游戏科技股份有限公司
类型:发明
国别省市:吉林;22

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1