[论文][表情识别]Region Attention Networks for Pose and Occlusion Robust Facial Expression Recognition

论文基本情况

发表时间及刊物/会议: 2019 TIP

问题背景

遮挡和姿态变化是表情识别需要解决的两大难题,但是目前没有关于姿态变换和遮挡的表情识别数据集。

论文创新点

(1)在现有的表情识别数据集选取了涉及姿态变化和遮挡的图片,并标注了遮挡类型以及姿态变化角度。具体来说,论文选取了RAF-DB,FerPlus,AffectNet三个数据集的测试集,每个数据集分别抽取了部分含遮挡,姿态变化>30度,姿态变化>45度三种类型的图片,分别形成了三种测试集。
image
(2)搭建Region Attention Network (RAN)网络模型,来获取姿态变化或遮挡表情中的重要区域。
(3)提出region biased loss(RB loss)鼓励网络给重要区域更高的权重。

网络结构

image
RAN主要包含三个部分:
(1)裁剪和特征提取模块
(2)自注意力模块
(3)relation-attention模块

裁剪和特征提取模块

通过固定位置裁剪、随机裁剪、基于人脸特征点等方法裁剪出\(K\)张图片,和原图一起共\(K+1\)张图片,一起送入同一个CNN网络进行特征提取。

  1. 对于固定裁剪,RAN共裁剪5张图片。分别以左上角,右上角为顶点,以中心偏下位置为中心,0.75为比例,裁剪出三张图片;以原图中心为中心,分别以0.9, 0.85为比例,裁剪出另外两张图片。
  2. 对于随机裁剪,RAN共裁剪\(K\)个区域,每张图片的裁剪比例为0.7~0.95。
  3. 对于基于landmark的裁剪,RAN使用MTCNN检测每个人脸图像的五个特征点,以特征点中心为中心,以\(r\)为半径,裁剪出\(K\)张图片。

注:本文的默认实验设置为固定裁剪。
原图\(I_0\)以及裁剪后的图片\(I_1, I_2, ...,I_k\)分别送入同一个CNN网络,得到对应的特征,原图\(I_0\)的特征集合为公式中的\(X\)

image

自注意力模块

RAN使用ResNet18作为backbone,并将ResNet18在最后全连接层之前提取到的特征送入 self-attention 模块。公式(2)中的\(F_i\)表示第\(i\)张图片在全连接层之前的特征,\(f,q^0\)分别表示sigmoid激活函数和注意力机制中全连接层的参数 。\(\mu_i\)表示得到的注意力权重。
image
通过子注意力模块,我们让更重要的裁剪区域对应的权重\(\mu_i\)更高。而通过公式(3)我们让同一张图片对应的多个特征根据权重\(\mu_i\)进行加权平均,计算出全局特征\(F_m\)
image

为了进一步增强特征区域的特征,本文应用了region biased loss(RB loss),RB loss希望各种不同的裁剪中,应该至少有一张裁剪图片能够比原图更加凸显表情特征,获取到更高的权重,因此,RB loss中设置阈值,希望注意力权重最高的裁剪图片对应的权重和原图相比超出一定阈值。
image

通过下图,可以看出RB loss的作用
image

Relation-attention module

关系注意力模块进一步增强特征,通过将backbone提出的初始特征\(F_i\)和自注意力模块得到的加权平均特征\(F_m\)进行矩阵拼接,之后再送入关系注意力模块的全连接层\(q^1\)提取特征,最后经过sigmoid激活函数\(f\)得到加强特征\(v_i\)
image

RAN网络最终的输出如下:
image

实验

  1. RAN在含有遮挡,姿态变化的数据集上的测试结果。

image

  1. 不同裁剪区域、不同融合方式对实验结果的影响

image

3.网络结构中不同模块,以及人脸是否对齐对实验结果的影响
image

posted @ 2022-05-10 22:01  柒七同学  阅读(179)  评论(0编辑  收藏  举报