2019-TOM-STRCN for Recognizing Spontaneous Micro-expressions

spatiotemporal recurrent convolutional networks
时空递归卷积神经网络(STRCN)
abstract
几个循环卷积层用于提取视觉特征+一个分类层用来识别
端到端:避免手工特性设计
为了处理连续数据,采用两种方法来扩展卷积神经网络的时间域连续性,其中时空变形建模方式以人脸和几何图形方式来实现(facial appearance and geometry separately.)
为了克服样本有限和不均衡的缺点,我们的深度网络采用了两种时间数据增强(augmentation)策略和均衡损失策略
使用现有的三个自发微表情数据集,验证了STRCN与现有方法的有效性

Introduction
模拟微表情在时空域的细微变化的方法:
1、 面向微表情识别任务的人脸视频片段的视觉特征提取
2、 用分类器提取特征

Svm、random forest等传统分类器已经被用于提取特征,所以特征设计(feature designing)是解决mer问题的关键

过去已有很多handcrafted feature 或者new designed feature被开发出来
例如:LBP_TOP首次用于mer,但任然面临全球变化的敏感问题
还有LBP_TOP LBP_SIP 等,提出了提高鲁棒性的视觉描述符【以上handcrafted feature】
准确率50%,但是任然不足以很好的捕捉细微变化

最新Cnns:深度学习方法能够避免手工特性设计,允许自动将特定任务和特性联系起来
问题:视频(序列)样本有限,少有深入的模型用于mer
解决方法:
将经过训练的CNN进行微调,每个图像(视频帧)都被分配了一个微表情类别。通过单独使用视频帧而不是整个视频序列来获得训练样本。
为了在基于CNN的深度模型中利用有限的基于视频的样本,考虑空间和时间变化的CNNs的时间连通性对于MER问题至关重要。
关键:
1、STRCN,解决样本有限和不平衡的问题,利用循环卷积来学习表现细微的变化,循环连接的卷积层用来自动学习视觉特征,分类层识别微表情,用两种跨时间域的连接关系作为网络输入。
2、简化深度模型的学习过程,用两种增强策略来丰富深度模型的训练样本,利用平衡损失来平衡不平衡类。

主要工作:
1、 提出了STRCN模型,考虑时空形变来探索实现微表情识别的更好的能力,作者觉得这是第一次 deep model 从0开始训练 ,而且超越现有的算法
2、 为了在基于CNN的深度模型中利用有限的基于视频的样本,考虑空间和时间变化的CNNs的时间连通性对于MER问题至关重要。我们提出了两种方法来扩展基于视频的微表情的跨时间域连接,不仅考虑空间信息,还考虑时间变化
3、 简化深度模型的学习过程,用两种增强策略来丰富深度模型的训练样本,利用平衡损失来平衡不平衡类。我们设计了两种时间扩展策略,极大地丰富了深度框架有限的训练样本,并利用平衡损失来促进不平衡训练。

其余部分:第二节简要回顾了相关工作,第三节介绍了我们为识别微表情提出的深层框架。第四部分讨论了算法评价的实验结果。第五部分对本文的工作进行了总结

Related work

A、 Me analysis
公开的数据集:通过观看特别的视频诱导使用者作出微表情,casme2是casme的扩展版本,casme2是同时关注微表情和宏表情的长视频
两个任务:检测和识别
检测,是后续的识别任务的基础,是基于分割良好的包含微表情的视频序列,在视频中根据几何特征和局部纹理来捕捉me
识别,目的是分辨出不同微表情的细微差别,几种方法(综述7)使用的几种特征和分类器

初步的研究(引用8):早期,学者们致力于识别动作化的微表情,P某提出的一种描述符descriptors梯度方向直方图识别方法
近年的研究,大致分为基于表情(appearance)和几何的方法
1、 Appearance Based Methods基于表情(appearance)的方法
Wang:将LBPTOP特征扩展到与张量无关的颜色空间中,识别出该子空间中的微表情
然而lbptop描述的局部纹理存在鲁棒性和稀疏采样的问题,所以又出现了很多衍生的方法
LBPSIP:基于LBP-TOP提供了一种轻量级(低权重)的表示方法,并且训练了一个svm分类器
STCLBP和STCLQP:包含更多信息入幅度和方向,在性能上也更好
LSDF:用ROIS来提取LBPTOP特征,并且进一步的计算局部方向特征,把。。
DSLBP:结合一个完整的投影,提取了1D LBP ,并且把形状属性合并到时空纹理中去。

2、 Geometric Based Methods
在局部特征点和面部区域的光流场中获取变化信息,不考虑面部纹理。(引用42),面部特征点被用来识别特定的微表情。
基于提取的特征点的Delaunay三角测量被用来揭示细微的肌肉运动[43]和编码的动态微表情。
基于光流估计,一些方法利用magnitude、方向等其他高阶统计量来模拟微表情的动态。
通过对光流流动向量进行计算,来得到由ROI生成的MDMO光学流动的特征直方图,用这些直方图进行微表情识别。
FDM面部动态图,特征计算了时空长方体的光流方向,并且用来表征一个微表情序列。
BIWOOF,把面部区域的大小和光应变值作为权重,生成人脸的各个区域块的方向直方图。利用加权直方图进一步识别微表情。

与手工特征相比,我们提出的深度神经网络模型能够自动获取细微的时间变化并且能够在同时训练一个分类器,得到很好地结果
与会议版本相比:(论文14)
1、 会议版本中的STRCN-A,我们通过新的降维(将高维图像识别问题转化为特征表达向量的识别问题)方法进行提升,该方法生成掩膜和选择微表情感知区域micro-expression-aware areas
2、 提出新的连接方式STRCN-G,用于me时空变形的建模
3、 提出了两种有效的数据扩充策略和一种样本加权损失函数,以帮助深入模型在有限和不平衡样本挑战下的学习。

B、 Spatiotemporal Deep Learning
CNNs,一种人工神经网络,纯前馈结构,以局部连接和权值共享为特征,传统的CNNs只捕获空间变化不考虑时间信息。对时空变化进行建模,一些深度的方法已经在许多领域利用各种架构来适应基于视频/序列的数据,有[48]~[54]。【52】:3D卷积核,每七帧提取一次时间信息。【49】:与52相似,在早期的融合里,第一层卷积层的卷积核大小被调整成某一些时间范围,eg:11113*10,可以被分为10帧一次。【50】:同样相似50,能够处理一个完整的视频帧。【49】:在后期的融合里,两帧分别经过相同的网络,合并到第一个全连接层。两种方法能够逐步以密集采样的方法来获取时空信息。和密集采样策略不同,稀疏采样策略在TSM时间分割网络中被用来分割长视频,为了能够有效地学习使用整个视频。另外还有很多TSN的高级变体。
神经递归网络RNN的编译码器模型。。。

1、早期用的方法,仍然需要为包含细微变化的任务探索更具体的模型,例如微表情识别
2、CNN:只能在高层次的卷积网络层捕获上下文,高层次接受域大,不能调节在低层次活动的单元。CNN只能捕捉到一个尺度的时间变化
3、最近的方法:循环连接方式有更广的接受域和减少学习的参数,更广的接受域利用低层次的信息,减少学习的参数,适合没有很多样本的任务
4、OURS:STRCN,模拟有限范围视频/序列的细微变化。针对长视频的采样策略不适合有限程度的视频。为了解决这个问题,提出了两种连接方式STRCN-A/G,两种跨时间域的STRCN连接关系来联合建模空间形变和时间形变。

PROPOSED METHOD 提出的方法
A. The Framework
1、 空间处理上,裁剪对齐,去掉非面部区域,时间处理上,增强面部区域的运动变形,增强微表情细微变化。看B和iv-F
2、 提出两种时间联系关系,将时序的输入带入后续的深度模型。STRCN-A、G
3、 利用深度递归卷积网络进行时空建模,对微表情进行识别

B. Spatial and Temporal Processing时空处理
1、 Spatial Processing空间处理:
避免在微表情识别的时候受到面部其他区域的影响,面部区域需要做个裁剪对齐的处理,在这种情况下,会优先检测人脸特征点,然后再裁剪对齐。
eye dectector & ASM:检测脸部特征点。Eye detector 准确的定位眼睛区域的两个中心点,并且决定由ASM描述的面部形状的起始位置。通过ASM进行迭代拟合准确的面部形状位置。使用69个面部特征点来裁剪面部区域,坐标系i为眼睛的中心,Xi,Yi,面部区域的裁剪坐标计算公式如下:。。
基于68个特征点,对任意帧序列i的局部加权平均(LWM)变换[9]用于对齐裁剪后的面部区域。将任意点的转换值设置为如下公式:。。通过LWM变换,一个序列内的所有图像能够逐帧对齐
2、 Temporal Processing
上面裁剪对齐后的面部区域的时间变化是细微变化,几乎不可能用肉眼观察到。很难自动的在机器学习技术的嘈杂环境中学习表现这些细微的变化。所以我们利用motion magnification technique运动放大技术来放大相邻帧的隐藏运动信息。
方法:EVM【61】来放大时间运动;IIR作为时间滤波器,用来放大面部序列的细微变化,我们只使用一个时间过滤器δ(t)和带通滤波器(k = 1),每个通带的图片都被放大ak倍,最后所有的拉普拉斯金字塔波段被用来重建运动放大的面部序列

C. Temporal Connectivity
1、 STRCN-A,通过将通道向量化为一个矩阵来连接一个序列中的所有图像,时空变化被保存在一个复合的矩阵,然后面部特征就能够被STRCN学习。

  1. 为了得到合适的输入,将整个图像的所有的像素点量化到一个矩阵,减少矩阵的长度,在STRCN-A中我们用一个更好的办法在矩阵来存储时空信息,因为并不是面部区域的所有像素点都是能够帮助我们学习表征微表情的,微表情只是正常表情的一个片段,而且仅发生在特定的区域,只选择micro-expression-aware areas感知区域连接到矩阵。
  2. 因为微表情不涉及大范围的面部变化,所以我们选择消除非感知区域的影响并且选择感知区域。
  3. 选择对微表情敏感的部分区域,而不是整个图像,将其连接到一个矩阵中。我们提出一个mask generation method掩码生成方式,并且只选择这些被mask的感知区域,该掩码方法是通过阈值化一个差分热图来累积的。该热图是通过累积整个数据集上的视频帧的时间差异来计算的。在下一段中,我们将介绍如何计算热图和阈值
  4. 使用二进制mask掩码,能够选择到微表情的感知区域,再压缩成一个张量,

2、 STRCN-G,几何运动用光流场来表示,再用STRCN来学习时空特征

  1. 用光流方法在整个视频序列中提取运动信息来研究
  2. 密集抽样法[52], [49], [50]的不足:效率低,而且需要进步融合密集抽样
  3. ME的剪辑和视频剪辑的多场景不同,通常只有一个场景。
  4. 使用稀疏采样[62][13]:只需要apex顶点和onset起始帧来计算光流图像,将光流图像输入到STRCN中进行几何变形建模。起始帧就是包含微表情的视频序列的第一帧,apex定点就是含有最强烈的表情,有很明显的变化。为了获得这个最明显的变化,我们提出用差值偏差来粗略定位apex顶点框架,公式。。
  5. 对于稀疏采样帧,我们采用精确光流法[63]进行光流近似。为了提高计算效率,采用改进模型的洛伦兹罚函数作为估计方法。序列i的(x,y)的估计位移向量表示为(Ux,y , Vx,y),所以完整的视频在STRCN-G可以被认为是一个张量

D. Spatiotemporal Modeling 时空建模
在本文中,我们使用多尺度接受域(multiple-scale receptive fields)在前向卷积层(feed-forward convolutional layers)中加入循环连接(RCNs[57]),基于两种时间连接方式,RCNs可以进一步的提取序列的时空信息。

一个前馈卷积网络,几个RCLs(RCL2~R),全局池化,分类器

前馈卷积网络CL1:没有循环连接,提高计算效率,输出的特征映射表示为Vc
RCLs:获取视觉特征,每一个卷积层之间有一个最大池化层可以降维和减少计算量,在每个RCL中,隐藏层(深度网络)用来扩展接受域大小,一个RCL可以展开成若干个卷积层。感知野用来获取一致的连接。
隐藏层:扩展接受域的大小。
全局池化:将所有的特征映射连接到一个向量中
分类层:利用带有sortmax函数的分类器来计算连接特征向量的识别概率。

RCN的优点:
1、 首先,它们使每个单元能够将上下文信息合并到当前层中任意大的区域中。在CNN中,接受域是固定的,只有在更高层中才能看到更大的区域
2、 通过权值共享,在
3、 保持可调参数数量不变的情况下,循环连接增加了网络深度。这与现代CNN架构的趋势是一致的:用相对较少的参数进行深入

1、网络输入的张量V,卷积层CL1和池化层输出的特征映射记为Vc。
2、在每个RCL层中,几个隐藏层可以用来扩展接受域的大小,一个RCL层能够被展开成若干个卷积层。在子网的后一层在同一层RCL中有着更大的接受域。对于每一个卷积层来说,固定大小的特征映射能够被用来获取一致的连接。、
总结:第r层RCL能将张量Ur转换为输入张量Vr,K代表在该层RCL中的特征映射数量,经过R层RCL之后,CL1的输出Vc就转换为VR。
3、深度网络的输出使用Softmax函数,根据全局池层的特征向量对c类微表达式进行分类。

公式1:
公式2:
公式3:

Input tensor V—>1.Vc—>2.Ur—>3.Vr—>4.VR
1、 经过CL1,后输出的特征映射
2、 前馈的输入
3、 循环、递归的输入
4、 Strcn的输出

E. Parameter Learning 参数学习
参数学习可以通过使用时间反向传播(BPTT)算法最小化交叉熵损失函数来实现
轻微不平衡的分类和有限的样本。以casme2为例子,分类为other的样本就是happiness的四倍,此外不超过250个原始样本能被用来训练深度RCN递归卷积网络,这样会导致过拟合以及有限的识别效率/能力
鉴于数据量小,且每个类别地微表情训练样本不均衡,会影响到训练效果。所以就采用了两种策略。
1、multiclass balanced loss 多类平衡损失
将binary balanced loss【64】(参考Focal loss for dense object detection)用到多个类别的MER问题
Y:标签向量,在0,1中任意取值
multiclass balanced loss 多类平衡损失函数就是这个
β是样本i的权重,与批处理数据中样本的类比成反比
平衡损失函数,由βi来平衡不平衡类

2、multi-scale data augmentation 多尺度数据扩充
两种多尺度数据增强策略来丰富测试样本和进一步的克服小样本的问题。首先用多尺度放大倍数ak来训练样本。所有的分类都用【5,14】的放大倍数,在不同的factor下,样本被放大了10倍。其次,按照百分比随机抽取视频帧,作者选了五个百分比,100%, 90%, 80%, 70%, and 60%,所以有五个随机选择,数据就能被增强五倍,联合这两种策略,数据就能被增强50倍。
这种做法能够让训练深度结构更加足够的
数据加强就是再放大时采用不同的放大系数,这样数据就会被丰富数十倍,之后再按百分比随机选取图片组成序列,作者选了五个百分比,这样数据就会被加强50倍。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值