当前位置: 首页 > 专利查询>复旦大学专利>正文

基于矩阵乘法的快速动作单元识别方法技术

技术编号:12417432 阅读:90 留言:0更新日期:2015-12-02 12:07
本发明专利技术属于计算机视觉技术领域,具体为基于矩阵乘法的快速动作单元识别方法。本发明专利技术通过事先训练,得到针对每个动作单元的模型矩阵;每个矩阵与训练图像的尺寸相同;对于待检测的人脸图像,将其缩放至与训练图像相同尺寸,然后与每个模型矩阵进行点乘,得到的响应对应该动作单元;将得到的所有动作单元对应的响应归一化,然后进行离散化,即得到该动作单元存在与否。本发明专利技术由于只涉及矩阵乘法,因此速度非常快。相比于局部二值模式、离散余弦变换、加伯特征等方法,本发明专利技术只需要做1次矩阵乘法,具体可以分解为L次向量乘法和1次归一化操作。

【技术实现步骤摘要】

本专利技术属于计算机视觉
,具体涉及快速动作单元识别方法。
技术介绍
面部动作编码系统(Facial Action Coding System,简称FACS),FACS理论于 1969 年由心理学家提出,其目的是为了客观刻画人的面部表情。该理论使用一组编码描述表 情,每个编码称为一个动作单元(Action Unit)。FACS把人的面部表情用一系列动作单元 (Action Unit)表示,每个动作单元用一个预先规定的编号表示。例如,一个惊讶的表情包 括眉毛内侧上扬、外侧眉毛上扬、上眼睑上扬、下颚张开,这些动作对应的动作单元编号分 别是1、2、5和26。因此,可以用这组编码描述该惊讶的表情。动作单元识别可以客观描述 人的面部动作,也可以用来分析表情对应的情绪状态。 现有识别算法通常提取通用的计算机视觉特征,对每个动作单元独立建模,并建 立一个二分类器来识别该动作单元是否在图像或图像序列中出现;再将识别的结果组合, 得到完整的动作单元组合。这样的方法忽略了动作单元之间的关系,如某些动作单元是互 斥的,而有些动作单元倾向于同时发生,这在传统框架中都无法对这些现象加以鼓励或者 惩罚。同时,现有方法使用的视觉特征通常涉及非线性操作,比较耗时。 该领域已经有不少前人工作,参见文献:【1】--【7】 其中,在中研究人员使用受限局部模型(Constrained Local Model,简 称CLM)定位人脸的关键点;针对每个动作单元,选择与其高度相关的关键点,在这些关 键点周围选择图像块作为识别依据;具体地,使用非负矩阵分解(Non-negative Matrix Factorization,简称NMF)对每个图像块提取特征;对每个动作编码训练一个支持向量回 归(Support Vector Regression,简称SVR)。该方法可以估计每个动作单元的强度。但是 根据动作单元选择关键点通常需要领域知识,后者在一定程度上取决于选择者的经验。 另一种方法则不需要特定的领域知识。在中研究人员抽取面部图像的加伯 (Gabor)特征,对每个动作单元训练一个二分类的支持向量机(Support Vector Machine, 简称SVM)进行对应动作单元的检测。为了降低加伯特征的维度,该方法针对每个动作单 元,使用Adaboost选择最优特征,并将所有动作单元对应特征的合集作为最后使用的特 征。 另一种方法不使用高维度的加伯特征,如中研究人员使用局部二值模式 (Local Binary Pattern,简称LBP)作为特征,对每个动作单元训练二分类的支持向量机, 用于识别对应的动作单元。 然而使用这些计算机视觉特征并不能对表情提供可解释性;同时,对每个动作单 元单独建模,忽略了动作单元之间的关系:如动作单元24是嘴唇抿紧(lip presser),动作 单元25是嘴唇分开(lip apart),这两个动作单元是互斥的,这在独立建模的框架下可能 被同时误检测到。此外,由于计算特征和使用支持向量机的过程中牵涉到大量非线性操作, 时间性能并不理想。 因此,本专利技术提出一种简洁的识别方法。它仅对面部图像进行矩阵乘法,对得到的 响应进行分析作为检测的依据;同时对所有动作单元协同建模,规避了独立建模的弊端。
技术实现思路
本专利技术的目的在于提出一种识别速度快,准确性高的动作单元识别方法。 本专利技术提出的动作单元识别方法,并不显式提取特征,而是使用一种基于矩阵乘 法的识别方法,兼备特征提取和动作单元识别的作用,能极大提升识别速度。同时,该方法 对所有动作单元统一建模,该模型可以刻画动作单元之间的分布关系。图1为本专利技术识别 方法的流程图示。其过程为: 首先,通过事先训练,可得到针对每个动作单元的模型矩阵: M1, M2,…,Ml,其中 Mi € 臟?1n L是动作单元的数量,m和η分别是训练图像的长和宽。每个矩阵与训练图像的尺 寸是相同的。对于待检测的人脸图像,首先将其缩放至与训练图像相同尺寸,然后与每个模 型矩阵进行点乘,得到的响应对应该动作单元;将得到的所有动作单元对应的响应归一化, 然后进行离散化,即得到该动作单元存在与否。具体地,本专利技术方法的具体步骤为: (1)使用预先训练,得到模型矩阵阵列: (2)对于一幅面部图像,对其进行人脸检测和切割,并缩放成尺寸为mXn的图像, 将人脸图像向量化,得到人脸图像向量:X € HTnrS (3)计算模型M对于人脸图像X的响应: R = XtM (2) (4)计算归一化的响应: 此步骤将所有相应归一化到之间,方便设定有意义的阀值; (5)识别:找出对应R>0. 5的位置,则这些位置对应的动作单元在表情图像X中出 现,其他的动作单元没有出现。 其中,模型训练过程见图2所示,具体步骤为: 对数据集中图像进行人脸检测,得到人脸图像向量:馬€ ?mH:,i=l,2, ··%为 了用M直观地预测动作单元,需进行优化处理: 其中,1^是X ;对应的动作单元组合,U {〇, 1} \ L是动作单元的数量,1表示该 动作单元出现,〇表示不出现。例如,Uit1= 〇表示第^个动作单元在第i个样例中不出 现,Uit2 = 1表示第、个动作单元在第i个样例中出现。N是样本个数。 但是通常一个表情涉及到的动作单元数量非常少,因此U1是非常稀疏的,亦即大 多数情况下Ult= 0,这容易导致正例被错误划分为负例;因此,本专利技术假定数据集中给出的 U(即U1组成的矩阵)是由完整的动作单元标签经由一定的损失得到的,即每个样例的每个 动作单元都有一定概率丢失(无论原先值为0或者1,一律被置为0);并试图用一个扩充矩 阵B对U进行扩充,得到完整的动作单元标签。 然而,由于我们对完整的动作单元标签U并不知道,因此,我们对现有的动作单元 标签进行损失,并通过B将损失后的标签扩充得到现有标签。其公式为: 其中,O1是U1经过一定概率变换得来的,具体地: 即动作单元组合中的每个动作单元以p的概率置为0。 则可以计算重建误差期望: 其中: S = (l-p)UUT (9) T = (l-p2)UUT+p(l_p) δ (UUt) (10)。 由此,得到一个带有两项未知数的优化方程: 其中,α,β,γ是各自对应项的权重,在模型训练时取若干值比较分类效果,得到 合理的权重组合。 优化算法 由于优化方程包含两个变量,无法直接优化。本专利技术使用坐标下降法(coordinate descent),循环地优化两个变量。具体地,给定B的情况下,对M求导数,并令之为0 : M = (BUXt-β ) (ΧΧτ+Να I) (12) 在给定M的情况下,对B求导数,并令之为0 : B = ( γ S+MXUT) ( γ T+UUT) 1 (13) 其中,α,β,γ与(11)式中相同。上述算法并不能保证收敛到全局最优值,因此 B的初值选择很重要。因为它等价于给定了动作单元标签到完整动作单元标签的条件分布, 在对完整标签并不了解的情况下,我们应当不做特殊假设,将B初始化为一个单位阵。 具体地,我们有如下算法: (1)将B初始化为单位阵; (2)求解 M: M = (BUXt- β ) (ΧΧΤ+Ν α I) (3)求解 Β: B = ( γ本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/CN105117703.html" title="基于矩阵乘法的快速动作单元识别方法原文来自X技术">基于矩阵乘法的快速动作单元识别方法</a>

【技术保护点】
一种基于矩阵乘法的快速动作单元识别方法,其特征在于其过程为:通过事先训练,得到针对每个动作单元的模型矩阵:M1,M2,...,ML,其中L是动作单元的数量,m和n分别是训练图像的长和宽;每个矩阵与训练图像的尺寸相同;对于待检测的人脸图像,将其缩放至与训练图像相同尺寸,然后与每个模型矩阵进行点乘,得到的响应对应该动作单元;将得到的所有动作单元对应的响应归一化,然后进行离散化,即得到该动作单元存在与否;具体步骤为:(1)使用预先模型训练,得到模型矩阵阵列:(2)对于一幅面部图像,对其进行人脸检测和切割,并缩放成尺寸为m×n的图像,将人脸图像向量化,得到人脸图像向量:(3)计算模型M对于人脸图像X的响应:R=XTM                (2)(4)计算归一化的响应:Rnorm=R-min(R)max(R)-min(R)---(3)]]>此步骤将所有相应归一化到[0,1]之间;(5)识别:找出对应R>0.5的位置,则这些位置对应的动作单元在表情图像X中出现,其他的动作单元没有出现。

【技术特征摘要】

【专利技术属性】
技术研发人员:徐峰张军平
申请(专利权)人:复旦大学
类型:发明
国别省市:上海;31

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

1