Deep Facial Expression Recognition: A Survey 论文笔记

​ 首先是我读这篇论文的目的,我的研究方向是“基于面部表情的情感识别”,是偏向于计算机视觉的一个方向,这篇论文对深度面部表情识别(DFER)做了一个全面的介绍,包括数据集、DFER的基本流程、各个流程中使用的方法等,阅读这篇文章可以对DFER的一些基本情况做一个初步的了解。这是一个笔记,后面会有精简的总结。

摘要

摘要部分主要介绍了三个问题:

  1. 深度神经网络被越来越多的用于FER系统的原因:

    • 面部表情识别系统的使用环境从实验室控制环境向自然环境转变
    • 深度学习技术在各个领域的成功应用
  2. 当前的FER系统专注的两个重要的问题:
    • 由于缺乏足够的训练数据而导致的过拟合现象
    • 表情无关变量(光照、身份偏差、头部姿势等)对系统造成的影响
  3. 这篇论文主要结构(介绍了相关的数据集以及在特定问题下的相关算法):
    1. 可用的数据集及各个数据集的特点
    2. 介绍了FER系统的基本流程
    3. 介绍了当前DFER的研究进展(The State of Art):介绍了几种新颖的深度神经网络以及在静态图片、动态视频中神经网络的训练策略,并对每个训练策略的具体表现进行了测试
    4. 总结了依然存在的挑战和未来的发展机遇
  4. 关键字:Facial Expressions Recognition, Facial expression datasets, Affect, Deep Learning, Survey

一、引言

  1. 面部表情是人类表达自己情感状态、意图打算的最有效、最自然、最普遍的信号之一。

  2. 面部表情识别的应用场景:社交机器人(Sociable robotics)、医学治疗(Medical treatment)、驾驶员疲劳监测(Driver fatigue surveillance)以及其他人机交互场景

  3. 基本面部表情模型(6+1种表情):

    • 早在20世纪初,Ekman and Friesen定义了六种的基本表情,并表示这六种基本表情在人类的各个种族中间具有普遍性。这六种基本表情分别是:生气(anger)、厌恶(disgust)、恐惧(fear)、幸福(happiness)、悲伤(sadness)、惊喜(surprise)。随后,鄙视(contempt)被加入基本表情之中。
    • 但在最近的神经学和心理学研究中称,六种基本表情模型并不是普遍的,而是和具体的文化相关的。
    • 虽然基于基本表情限制了我们对于表情复杂性和细微性的表示能力,也出现了其他的表情模型(the Facial Action Coding System (FACS)、使用影响维度的连续模型等考虑表示更广泛的情绪特征),但由于表情分类模型开拓性的调查以及对面部表情的直接和直观的定义,这种模型在FER中仍然比较受欢迎。
  4. FER系统根据特征表示方面的不同主要分为两种类型:

    • 静态图像的FER(static image FER)

    • 动态序列的FER(dynamic sequence FER)

  5. FER系统数据集和训练方法的描述:

    • 2013年以前:传统的方法主要是手工特征或者浅层学习(如LBP(local binary patterns 局部二值模式)、LBP-Top(在三个正交平面上的LBP)、NMF(non-negative matrix factorization 非负矩阵分解))
    • 2013年以后:随着各种表情识别比赛(如FER2013、Emotion Recognition in the Wild (EmotiW))的举办,面部表情数据收集的越来越多、各种芯片的计算能力大幅增强,FER从实验室应用转向自然图像中的面部表情识别,深度学习系统也开始慢慢被应用到FER中。
  6. 深度学习应用在FER系统中时仍然存在问题:

    • 深度神经网络的训练需要大量的数据,但现存的数据量不能满足深度神经网络的训练;
    • 主体间的差异(如年龄、性别、种族、表情丰富程度等)的影响;
    • 姿势变化、光照强度的变化等也会对训练造成影响;
  7. FER系统数据集以及方法变化

二、面部表情数据库(Facial Expression Databases)

​ 使用足够多的数据进行深度神经网络的训练是非常重要的。

​ 在这一部分,问斩给介绍了一些当前主流的面部表情数据库,现总结如下:

数据库 数据量 实验对象 采集环境 采集方式 表情分配 网址链接 备注
CK+ 593个视频序列 123个 实验室采集 摆拍&自然 6种基本表情和鄙视以及中性表情 http://www.consortium.ri.cmu.edu/ckagree/
MMI 326个视频序列(740 images and 2,900 videos) 32个 实验室采集 摆拍 6种基本表情+中性表情 https://mmifacedb.eu/
JAFFE 213张图片 10个 实验室采集 摆拍 6种基本表情+中性表情 http://www.kasrl.org/jaffe.html(可下载)
TFD 112234张图片 N/A 实验室采集 摆拍 6种基本表情+中性表情 josh@mplab.ucsd.edu
FER2013(比赛) 35,887张图片 N/A 互联网采集 摆拍&自然 6种基本表情+中性表情 https://www.kaggle.com/c/challenges-in-representation-learning-facial-expression-recognition-challenge
AFEW 7.0(比赛) 1809个视频序列 N/A 电影采集 摆拍&自然 6种基本表情+中性表情 https://sites.google.com/site/emotiwchallenge/
SFEW 2.0 1766张图片 N/A 电影采集 摆拍&自然 6种基本表情+中性表情 https://cs.anu.edu.au/few/emotiw2015.html 采集自AFEW数据集
Multi-PIE 755370张图片 337个 实验室采集 摆拍 厌恶、中性、尖叫、微笑、斜视、惊喜(disgust, neutral,scream, smile, squint and surprise) http://www.flintbox.com/public/project/4742/
BU-3DFE 2500张图片 100个 实验室采集 摆拍 6种基本表情+中性表情 http://www.cs.binghamton.edu/~lijun/Research/3DFE/3DFE_Analysis.html 适用于3D面部表情分析
Oulu-CASIA 2880个图像序列 80个 实验室采集 摆拍 6种基本表情 http://www.cse.oulu.fi/CMV/Downloads/Oulu-CASIA
RaFD 1608张图片 67个 实验室采集 摆拍 6种基本表情和鄙视以及中性表情 http://www.socsci.ru.nl:8180/RaFD2/RaFD
KDEF 4900张图片 70个 实验室采集 摆拍 6种基本表情+中性表情 http://www.emotionlab.se/kdef/
EmotioNet 1,000,000张图片 N/A 互联网采集 摆拍&自然 23 种基本表情或复合表情 http://cbcsl.ece.ohio-state.edu/dbform_emotionet.html 规模较大
RAF-DB 29672张图片 N/A 互联网采集 摆拍&自然 6种基本表情+中性表情+12种复合表情 http://www.whdeng.cn/RAF/model1.html
AffectNet 450000张有标记的图片 N/A 互联网采集 摆拍&自然 6种基本表情+中性表情 http://mohammadmahoor.com/databases-codes/ 目前为止最大的提供两种表情模型标签的数据库
ExpW 91793张图片 N/A 互联网采集 摆拍&自然 6种基本表情+中性表情 http://mmlab.ie.cuhk.edu.hk/projects/socialrelation/index.html

​ 每一个数据库都有其本身的特点,在选取训练数据的数据库时,需要注意所需数据的特性

三、面部表情识别的基本流程

​ 这一部分,文章介绍了FER系统的基本流程:预处理->深度特征学习->深度特征分类

1. 预处理(Pre-processing)

​ 由于与表情无关的因素(背景、光照、头部姿势等)会对DFER网络的训练产生影响,因此,在进行网络训练之前,需要对数据进行预处理,以尽可能消除无关因素的影响。包括面部对齐(Face aligned)、数据扩充(Data augmentation)和标准化(Normalize)。

(1)面部对齐

​ 面部对齐是面部识别相关任务的触痛处理步骤,给出一系列的训练数据,第一步就需要去除无关的背景以及没有面部数据的区域。

  1. 面部对齐方法介绍:

    • Viola-Jones(V&J)face detector:是一种比较经典的、在人脸检测方面广泛使用的人脸检测器,具有鲁棒性(指控制系统在一定(结构,大小)的参数摄动下,维持其它某些性能的特性)和计算简单的特点。
    • 利用局部地标坐标对人脸进行对齐(可以减少面部比例和平面内旋转的变化):
      • Holistic(整体的)

        • AAM(The Active Appearance Model)
      • Parted-based(基于局部的)
        • MoT(The mixtures of trees structured models)
        • DRMF(Discriminative response map fitting)
      • Cascaded regression(级联回归)
        • SDM(The supervised decend method)
        • The face alignment 3000 fps
        • Incremental(the incremental face alignment)
      • Deep Learning(深度学习)
        • Cascaded CNN(级联卷积神经网络)
        • MTCNN(多任务卷积神经网络)
    • 使用多个人脸探测器惊醒更精确的地标估计
    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l8594N7W-1595148548193)(E:\学习\论文\论文笔记\Note_DFER_Survey.assets\image-20200712175631014.png)]

(2)数据扩充

​ 深度神经网络的训练需要使用大量的数据来确保训练模型的性能,而现存的数据库中数据相对有限,所以需要使用一些技术对数据库进行数据扩充。

  • 数据扩充方式:

    1. 即时数据扩充:通常,这种数据扩充的方式是直接嵌入在深度学习工具包中的,用来减轻过拟合。
    2. 离线数据扩充:
      • 图像的随机扰动和变换:旋转,移位,偏斜,缩放,噪声,对比度和色彩抖动
      • 基于深度学习的数据扩充技术:3D-CNN

(3)面部标准化

​ 光照强度和头部姿势的变化可能会对图片特征造成重大影响,进而降低FER的性能。

  • 两种典型的面部标准化:

    • 光照标准化

      • Paper[60]:基于各向同性扩散(IS)的标准化、基于离散余弦变换(DCT)的标准化、高斯差(Difference of Gaussian)。
      • Paper[86]:基于同态滤波的标准化(homomorphic filtering based normalization)。
      • 直方图均衡化结合标准化算法(histogram equalization combined with illumination normalization results):在很多的Deep FER系统的研究中,都结合了直方图均衡化来增加图像的整体对比度进行预处理
      • Paper[89]:直接使用直方图均衡化可能会过分的强调局部对比度,因此提出了一种直方图均衡化与线性映射相结合的加权求和方法。
      • Paper[79]:作者比较了三种不同的方法:全局对比度归一化(GCN)、局部归一化和直方图均衡化。在训练和测试步骤中,GCN和直方图均衡化分别达到了最佳的准确率。
    • 姿势标准化
      • Paper[92]:最流行的面部标准化技术是由Hassner等人提出的。具体地说,在对人脸地标进行定位后,生成一种适用于所有人脸的三维纹理参考模型,有效地估计出人脸可见成分。然后,将每个输入人脸图像背投影到参考坐标系中,合成初始的正面的人脸。
      • Paper[93]:Sagonas等人提出一个有效的统计模型,以同时定位地标和转换面部姿态只使用正面脸。
      • Recent:提出了一系列基于gan的正面视图深度模型合成(如FF-GAN[94]、TP-GAN[95]和DR-GAN [96])并报告良好的表现。

2. 特征学习的深度网络

​ 最近,深度学习已经成为一个热门的研究课题,并在各种应用中取得了最先进的性能

(1)卷积神经网络(CNN)–>基本结构

  • CNN相对于多层感知机(MLP)在面部位置以及面部规模变化方面更具有鲁棒性。(文章[98]、[99])。

  • 文章[100]使用CNN解决了面部表情识别中的主体独立性以及平移、旋转和比例不变性的问题。

  • 卷积神经网络的组成:

    • 由三种不同的层(layer)组成:卷积层、池化层、全连接层;
    • 三个Layer的介绍:
      • 卷积层(convolutional layer):

        • 有一组可学习的过滤器,通过卷积整个输入图像,并产生各种特定类型的激活特征映射。
        • 优点:
          • 本地连通性
          • 权值共享:在同一特征图中进行权值共享,极大地减少了需要学习的参数的数量;
          • 物体位置的平移不变性
      • 池化层(pooling layer)
        • 在卷积层之后
        • 作用:减少特征图的空间尺寸和网络的计算量
        • 两种使用最多的池化方式:
          • 平均池化(Average Pooling)
          • 最大池化(Max Pooling)
      • 全连接层(fully connected layer):
        • 通常放在整个网络的最后
        • 作用:
          • 确保当前层的所有神经元都与前一层的激活神经元完全连接
          • 将二维特征图转换为一维特征图,进行进一步的特征表示和分类。
    • 熟知的几个卷积神经网络模型:
      • 几个网络的结构:

      • 其他比较出名的网络:

        • R-CNN(region-based CNN)[103]:
        • Faster R-CNN
        • 3D CNN

(2)深度信任网络(Deep belief network----DBN)–>基本结构

  • DBN由Hinton等人在[113]中提出,是一种学习提取训练数据深层层次表示的图形模型,传统的DBN是由一组受限玻尔兹曼机(RBMs)构建的,是由可见单元层和隐藏单元层组成的双层生成随机模型。

(3)深度自动编码器 (Deep autoencoder -----DAE)

  • DAE首次提出是为了解决降维的有效编码问题的
  • 与前面提到的经过训练可以预测目标值的网络相反,DAE通过最小化重构误差来优化其输入。

(4)递归神经网络(Recurrent neural network----RNN)

  • RNN是一种捕获时间信息的连接主义模型,更适合于具有任意长度的顺序数据预测。除了以单一前馈方式训练深度神经网络外,RNN还包括跨越相邻时间步长并在所有步长上共享相同参数的递归边。经典的时间反向传播(BPTT)[124]用于训练RNN。Hochreiter&Schmidhuber [125]引入的长期短期记忆(LSTM)是传统RNN的一种特殊形式,用于解决训练RNN时常见的梯度消失和爆炸问题。LSTM中的细胞状态由三个门控制和控制:一个输入门允许或阻止输入信号改变细胞状态,一个输出门使细胞状态能够影响其他神经元,或阻止该状态影响其他神经元。 调制单元的自循环连接以累积或忘记其先前状态。 通过组合这三个门,LSTM可以按顺序对长期依赖性进行建模,并且已被广泛用于基于视频的表情识别任务。

(5)生成对抗网络(Generative Adversarial Network----GAN)