基于特征值修正的特征点重定位方法

2013-09-08 10:18刘小琴
计算机工程与设计 2013年6期
关键词:特征值人脸定位

刘小琴,赵 晖

(新疆大学 信息科学与工程学院,新疆 乌鲁木齐830046)

0 引 言

人脸特征点定位不仅是人脸识别研究领域中的研究热点,同时也是计算机视觉和图形学领域的一个基本问题。实时的人脸特征定位更为表情分析、姿态估计和三维重建等后续研究工作提供了不可或缺的基础性数据[1]。今年来,许多国内外学者深入研究特征点的重定位问题,虽然已经取得了较为丰硕的成果,但仍然无法达到精确定位,且算法不可避免会耗费相当长的时间,这对实时性要求较高的系统并不适用。人脸活动单元是描述人脸肌肉运动的基本单元,它是埃克曼博士创立的面部活动解密系统(FACS)[2]的重要组成部分。尽管人类的面部动作存在着丰富性、模糊性和动态性,但其各种复杂的表情,都是由单个AU或多个AU组合产生[3]。因此,通过识别AU来达到识别面部表情的目的,不仅判断标准相对准确,而且能从根本上反应面部的肌肉的运动趋势,提高了面部表情识别的准确度。随着表情识别的深入,国内的各种表情库也应运而生,如北京航空航天大学建立的北航人脸表情(BHU)库[4]及中国科学院技术研究所建立的CAS-PEAL人脸数据库[5]。另外,鉴于静态图片的信息有限性,而AU的动态变化过程包含着许多很有实用价值的信息。因此研究工作开始转向动态图像序列[6]。一些动态序列表情库也相继建立起来,如卡内基 .梅隆大学的Cohn-Kanade动态库及CED-WYU (1.0)动态库[7]等。截至目前,对图像序列开展的研究较少主要有:Tian et al.[8]提出对正面图像序列基于唇部跟踪和模板匹配,从图像序列中自动识别15个AU 及其组合的系统;Ramya et al.[9]采用小波滤波、支持向量机和隐尔马科夫模型分析正面图像序列,自动检测3个AU;Pantic et al.针对侧面图像序列,研究20个AU及其组合的检测。为了验证本文提出方法的有效性,采用CMU动态库中的图像序列,针对AU的动态性展开研究,根据序列中某个AU的动态变化过程修正特征值,进而对特征点进行重新定位。实验证明通过此方法不仅可以快速地对特征点进行重新定位,而且达到了提高重定位特征点准确度的目的。

1 手动标定特征点,训练主动表观模型

1.1 特征点的选取与标定

AU识别的方式主要有两种:基于几何特征的和基于纹理特征的[10]。在几何特征的基础上添加纹理特征虽然可以提高识别精确度,但是由于纹理特征的判别是通过像素比来衡量的,即大于某一阈值将其定位为出现,小于该阈值则不出现,其动态性不明显。为了方便说明问题,本文选取对六个基本表情 (惊奇、恐惧、厌恶、愤怒、悲伤、高兴)贡献较大且易于采用几何特征进行识别的AU作为实验对象。为了提高训练模型的精确性,根据需要识别的AU,每幅图片人工手动标定26个特征点,如图1所示。

图1 人脸特征点手工标定示例

因为训练样本的标点情况,会直接影响训练出AAM模型的优劣,进而影响AAM后续的自动定位精确度,最终对AU的识别产生至关重要的影响。所以,在进行手动标定训练样本时,应尽可能的准确。另外,鉴于人体视觉的个体差异性,整个标定过程尽可能由同一人标定。

1.2 预处理

为了减少图像大小及拍摄时头部晃动引起的距离误差,需要对图像序列进行对齐和缩放操作。由于同一个人的两内眼角点基本保持不变,故本文首先根据所标记的两个内眼角点,对图像进行缩放,将同一个序列的两内眼角距离统一,此操作并不直接对图片进行缩放和裁剪,而是对坐标值操作,间接达到图片缩放的效果,具体操作如下:

已知图像序列初始帧的左眼角坐标为 (x10,y10),右眼角坐标为 (x11,y11),左右眼角之间的距离d0可由公式(1)求出,第i帧的左右眼角对应坐标为 (xi10,yi10)和(xi11,yi11),左右眼角之间的距离d可由式 (2)求出,缩放因子α由式 (3)求出

根据上述公式,序列中任一点坐标 (xi,yi)缩放后的坐标均可表示为 (αxi,,αyi)。

另外,在训练AAM时,鉴于张嘴和闭嘴具有较大的区分性,放在一起进行训练,训练出的模型匹配效果不好。因此,对惊奇、高兴及恐惧等嘴部变化剧烈的表情来说,需要针对张嘴和闭嘴各训练一个模型,共训练出9个模型。

2 AAM自动定位特征点

利用训练好的AAM,对实验选定的图像序列进行自动匹配定位,其结果如图2所示。

图2 AAM自动定位特征点

观察自动定位结果,绝大部分序列效果较好,但是当模型的初始位置偏离人脸较大的时候,常常会陷入局部最小,从而导致人脸特征点定位的失败,这是因为基于AAM的人脸特征点定位方法易受初始化位置的影响。针对此问题,叶超等人提出一种基于多分辨率AAM (MR-AAM)的双重拟合方法,快速而准确地获得初始位置。本文采用先移动模板至眼角大致准确的位置,然后再进行匹配。当个别序列的某些特征点明显定位不准确时,则需要进行手动调整。

3 面部特征表示方法

我们将特征提取转换为识别AU的参数集合。首先定义一个人脸的坐标系,由于内眼角的相对位置是不受肌肉收缩影响的,因此可将两个内眼角的连线作为x轴,y轴与x轴垂直且垂直平分两内眼角连线段。

上半脸特征:我们通过11个参数表示上半脸的特征,其中4个用来描述眉毛,6个用来描述眼睛,1个用来描述眉间距,上半脸特征表示见表1。

表1 上半脸特征表示

下半脸特征:我们通过6个参数表示下半脸特征,其中1个表示嘴宽,2个表示嘴角运动,2个表示嘴唇厚度,1个表示嘴高,下半脸特征表示见表2。

表2 下半脸特征表示

每一AU的出现,都对应于一缕肌肉的收缩,都会在面部引起相应的表观变化,本文所研究AU得解释及其引起的表观变化见表3。

4 修正特征值

在对AAM定位结果进行移动模板并匹配、手动调整特征点后,由于人眼观察的不准确性,仍然不可避免地产生较大误差,这给AU识别带来困难,尤其是AU强度较弱时,一个较小的误差就有可能产生相反方向的变化,进而导致某一AU识别的失败。因此,在进行AU识别之前,对特征点进行重定位是十分必要的。然而直接对特征点进行定位,不但操作复杂而且人眼视觉不可避免地会产生误差,本文将通过修正特征值的方法来间接达到特征点重定位的目的,以CMU库中S119-002图像序列为例,进行阐述特征值修正的详细过程。

?

4.1 去孤立帧

人脸活动单元是一个时域信号,某个AU动作不是一蹴而就的,而是一个循序渐进的变化过程,仅仅根据某一时刻的人脸静态图像识别AU的出错率较高,而且性能也不够稳定。充分考虑人脸活动单元的时域信息和表达的上下文关系,是进行鲁棒的AU识别的一种解决方法。由于AAM定位不够准确或手工微调特征点时由于视觉误差造成的手工调整特征点时的不准确性,序列经常会产生孤立帧,如图3所示。所谓孤立帧是指某帧的某些特征点与其相邻的前后两帧坐标变化较为剧烈的帧。然而某个AU动作不可能出现一帧突变的情况,所以这种变化事实上并不存在。出现类似情况,会对AU识别带来障碍,特别是在AU强度较弱时,孤立帧的产生,会在很大程度上影响AU识别的结果。为此在进行AU识别之前,需要首先对所取得的特征值进行去孤立帧操作,减少偶然或人为因素造成的误差,为后续工作做铺垫。

图3 孤立帧

孤立帧的处理方法:计算序列中的某一特征点对应的每一帧 (x2,y2)与前一帧 (x1,y1)的垂直距离dr、与后一帧 (x3,y3)的垂直距离df、点 (x1,y1)及点 (x3,y3)所确定直线L的斜率k和截距b。其中k和b可由式 (4)和式 (5)求出,而dr及df可由式 (6)和式(7)求出

若dr及df均大于某一阈值时,则将点 (x2,y2)变换到直线L上。此阈值的选择是一个经验值,需要通过大量的实验验证阈值的最佳值,过大或过小都将影响识别AU时所选取样本的好坏,进而影响识别结果。本文在卡耐基梅隆大学的Cohn-Kanade数据库 (简称CMU库)上进行了大量实验,得到内眉角的阈值采用0.1为宜。序列处理前后的效果如图4和图5所示。

Matlab具体实现如下述程序段所示:

4.2 拐点定位

为了便于后续的归 “0”和归 “一”操作,需要先找出序列中的所有拐点。本文拐点的查找采用Douglas-Peucker算法,该算法是一种递归算法,其基本思想是:先用直线连接曲线段AB的两个端点A和B,然后从曲线上找出到直线AB距离最远的点C,并计算点C到直线AB的距离d,需比较d与预先给定的阈值t的大小,如果小于t,则点C不是关键点,如果大于t,则点C为所找的拐点,依此类推,即可找出所有拐点,具体推导过程如图6所示。

图6 点C为拐点

4.3 寻找初始帧

序列特征值的第一个拐点对应的帧定为某个AU出现的初始帧。

4.4 归 “0”处理

初始帧之前所有帧的特征值归零,这样可以减少强度较弱时的误差影响,提高AU的识别率。

4.5 归 “一”处理

本文采用的CMU库中99%以上的AU都是经历 “起始-高峰-保持”,效率,减少 AAM 的定点误差,可以在AU强度达到最大时 (序列中最后一个拐点),将最大帧之后的所有帧都归一化到最大帧的值。

归 “0”和归 “一”处理后的效果如图7所示。

图7 归 “0”和归 “一”处理后

4.6 平 滑

由于偶然误差等多方面的原因,使得直接用数据进行数据分析存在一定的问题,因此有必要对原始数据进行数据平滑预处理,这是数据预处理的一项重要工作,要想从测量数据中提取有用的信息,必须对其进行平滑以尽量减小偶然误差的影响。常用的数据平滑算法有:加法平滑[11](additive smoothing)、Good-Turing 估 计[12]、折 扣 参 数 平 滑(discounting smoothing)、线性插值平滑 (linear interpolation smoothing)、基于扣留估计的参数平滑技术。有给定最小值平 (clipping with a floor value)和 Katzs式平滑等。

本文根据找到的所有拐点,采用移动窗口拟合多项式平 滑 (Savitzky-Golay 平 滑 )[13]方 法 对 曲 线 进 行 平 滑。Savitzky-Golay平滑滤波器最初由Savitzky A和Golay M于1964年提出,被广泛应用于数据流平滑去噪,是一种在时域内基于多项式,通过滑动窗口利用最小二乘法进行拟合的方法。这是一种直接处理来自时间域内数据平滑问题的方法。该方法的优势是简单快速,且相对于其他的平均方法,更能保留相对极大值、极小值及宽度分布等特性。以序列S119-002右内眉角特征点变化为例,进行S-G平滑后如图8所示。

图8 S-G平滑曲线

5 特征点重定位

在经过特征值修正之后,根据第一帧坐标 {(x0,y0),(x1,y1), … (x25,y25)} 和 修 正 后 的 上 半 脸 特 征 值(m1’,m2’, …m11’)和 下 半 脸 特 征 值 (n1’,n2’,…n6’),对每个特征点进行重新定位,重定位后的坐标为{(x0’,y0’),(x1’,y1’),… (x25’,y25’)}。以右内眉角为例,内眉角初始帧坐标P (x11,y11),内眉角到内眼角连线距离为d0,第i帧坐标为Q (xi11,yi11),则重定位后的坐标需满足以下两个条件:

(1)重定位后的坐标 (x11’,y11’)在射线PQ上;

(2)到内眼角连线距离为m11’d0+d0;

6 结束语

特征点重定位是表情识别的重要环节之一,特征点定位正确与否直接影响AU识别的准确程度。对于表情识别领域,由于肌肉运动相对较为微弱,直接对特征点进行调整,不但繁琐,而且由于视觉误差,会有失准确性,本文提出的通过特征值修正达到调整特征点的方法,操作相对较为简单,且通过实验验证了可以间接达到调整特征点位置的目的。

对于AU动态性分析,CMU库中AU出现的顺序几乎全是是:没有出现—起始—高峰—保持。然而实际情况远比这复杂,例如AU可能从某一高峰状态直接达到另一高峰状态,即出现多峰动态过程。因此,需要在更多的表情库上进一步验证本文提出方法的可行性,面向各种复杂实际情况的AU动态性研究是未来研究的必然趋势。

[1]YE Chao,LI Tianrui,GONG Xun.Facial feature point localization based on MR-AAM dual-fitting [J].Journal of Computer Applications,2011,30 (10):2724-2727 (in Chinese). [叶超,李天瑞,龚勋.基于MR-AAM双重拟合的人脸特征点定位方法 [J].计算机应用,2011,30 (10):2724-2727.]

[2]Markin Evgeny,Prakash Edmond C.Tracking facial features with occlusions [J].Journal of Zhejiang University Science A,2006,7 (7):1282-1288.

[3]ZHAO Hui,WANG Zhiliang,LIU Yaofeng.A survey of automatic facial action units recognition [J].Journal of Computer Aided Design & Computer Graphics,2010,22 (5):894-906(in Chinese).[赵晖,王志良,刘遥峰.人脸活动单元自动识别研究综述 [J].计算机辅助设计与图形学报,2010,22 (5):894-906.]

[4]XUE Liyu,MAO Xia,ZHANG Fan.Design and realization of BHU expression database [J].Journal of Beijing University of Aeronautics and Astronautics,2007,33 (2):224-228 (in Chinese).[薛丽雨,毛峡,张帆.BHU人脸表情数据库的设计与实现 [J].北京航空航天学报,2007,33 (2):224-228.]

[5]GAO Lei,LI Xiaodong.Improved LPP algorithm for face recognition [J].Computer Engineering and Applications,2011,47(17):185-187 (in Chinese).[高雷,李晓东.基于改进的有监督保局投影人脸识别算法 [J].计算机工程与应用,2011,47(17):185-187.]

[6]TANG Jinghai,ZHANG Youwei.Method of facial expression recognition based on dynamic sequence feature [J].Computer Engineering and Applications,2008,44 (8):220-222 (in Chinese).[唐京海,张有为.基于动态序列特征的人脸表情识别方法 [J].计算机工程与应用,2008,44 (8):220-222.]

[7]HUANG Yong.Facial expression recognition based on graphoptimized locality preserving projections [J].Computer Engineering and Applications,2011,47 (27):210-215 (in Chinese).[黄勇.基于图像优化局部保留投影的人脸表情识别[J].计算机工程与应用,2011,47 (27):210-215.]

[8]TONG Yan,LIAO Wenhui,JI Qiang.Facial action unit recognition by exploiting their dynamic and semantic relationships[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2007,29 (10):1683-1699.

[9]Ramya R,Anandanataraj R.Application of neuro fuzzy network for the analyzing the pain through facial expression [J].Inter-national Journal of Recent Trends in Engineering,2009,2 (4):8-10.

[10]SONG Yuqing,LIU Bo,XIE Jun.Medical image texture features classification based on gabor wavalet transform [J].Computer Engineering,2010,36 (11):200-202 (in Chinese).[宋余庆,刘博,谢军.基于Gabor小波变换的医学图像 纹 理 特 征 分 类 [J]. 计 算 机 工 程,2010,36 (11):200-202.]

[11]WANG Da,CUI Rui.Data smoothing technology summary[J].Computer Knowledge and Technology,2009,5 (17):4507-4509 (in Chinese).[王达,崔蕊.数据平滑技术综述[J].电脑知识与技术,2009,5 (17):4507-4509.]

[12]ZHANG Jian.English named entity recognition using statistics-based and rules-based method [D].Harbin:Harbin Institute of Technology,2006 (in Chinese).[张剑.统计与规则相结合的英语命名实体识别 [D].哈尔滨:哈尔滨工业大学,2006.]

[13]CAI Tianjing,TANG Han.Summary based on the least squares fitting principle of Savitzky-Golay smoothing filter[J].Digital Communition,2011 (1):63-68 (in Chinese).[蔡天净,唐瀚.Savitzky-Golay平滑滤波器的最小二乘拟合原理综述 [J].数字通信,2011 (1):63-68.]

猜你喜欢
特征值人脸定位
定位的奥秘
一类内部具有不连续性的不定Strum-Liouville算子的非实特征值问题
一类带强制位势的p-Laplace特征值问题
有特点的人脸
一起学画人脸
基于一类特殊特征值集的扩散算子逆谱问题
单圈图关联矩阵的特征值
《导航定位与授时》征稿简则
Smartrail4.0定位和控制
三国漫——人脸解锁