本公开涉及计算机微表情识别,具体涉及一种基于自监督对比学习的微表情识别方法。
背景技术:
1、此部分的陈述仅仅提供与本公开有关的背景技术信息,并且这些陈述可能构成现有技术。在实现本发明过程中,发明人发现现有技术中至少存在如下问题。
2、面部表情蕴含着丰富的信息,是人类传递社会信息的主要且直观的手段。通常面部表情分为两类:宏表情和微表情。宏表情是指面部肌肉运动明显、能够被肉眼直接观察到的表情,其持续时间在0.5s与4s之间,容易伪装,难以反应内心的真实想法。微表情起源于心理学,1966年,e.a.haggard和k.s.isaacs首次发现微表情,并揭示它与人的防御机制有密切的关系。微表情是一种自发式的表情,是细微而短暂的面部动作,通常发生在个体受到有效刺激并试图隐藏真实情绪时,持续时间在0.04s与0.2s之间,发生在极少的面部运动单元,运动强度低,难以发现和察觉。随着深度学习在计算机视觉领域的中的发展,微表情识别涌现出新的方法。
3、文献[1](khor h q,see j,phan r c w,et al.enriched long-term recurrentconvolutional network for facial micro-expression recognition[c]//2018 13thieee international conference on automatic face&gesture recognition(fg 2018).ieee,2018:667-674.)首先通过卷积神经网络(convolutional neural network,cnn)模块将每个微表情帧编码成特征向量,然后通过将特征向量通过长短期记忆(long shortterm memory,lstm)模块,将空间学习与时间学习相结合,考虑了时空特征,但是微表情帧与帧之间的差异太小,难以学习到运动特征。
4、文献[2](xie h x,lo l,shuai h h,et al.au-assisted graph attentionconvolutional network for micro-expression recognition[c]//proceedings of the28th acm international conference on multimedia.2020:2871-2880.)首次将面部运动单元(action units,au)与微表情识别任务相结合,不同的情绪激活的面部运动单元不同,该工作使用图卷积神经网络将au的关系信息辅助微表情的识别。
5、文献[3](y.li,x.huang and g.zhao,"joint local and global informationlearning with single apex frame detection for micro-expression recognition,"in ieee transactions on image processing,vol.30,pp.249-263,2021,doi:10.1109/tip.2020.3035042.)联合微表情的全局信息和局部信息进行微表情识别,因为并非所有区域对微表情识别都做出相同的贡献,有些区域甚至不包含任何情感信息,但是单一的顶点帧难以表达微表情的运动信息。
6、文献[4](b.sun,s.cao,d.li,j.he and l.yu,"dynamic micro-expressionrecognition using knowledge distillation,"in ieee transactions on affectivecomputing,vol.13,no.2,pp.1037-1043,1april-june 2022,doi:10.1109/taffc.2020.2986962.)使用知识蒸馏技术进行微表情识别,具体来说,使用预先培训的深层教师网络指导浅层学生网络进行学习,使浅层的学生网络得到不错的效果,该模型的输入不是单帧图像,而是微表情的关键时序序列,减少了信息的冗余,但是该工作忽略了宏表情与微表情运动强度的差异性。
7、文献[5](hong j,lee c,jung h.late fusion-based video transformer forfacial micro-expression recognition[j].applied sciences,2022,12(3):1169.)从视频维度出发,将光流特征和微表情图像作为transformer模型的输入,而transformer模型复杂,需要大量数据。
8、由上可知,现有方法多从光流特征出发,光流特征可以凸显微表情的运动信息,但是由于微表情样本量的限制,难以得到好的识别效果。迁移学习可以缓解小样本问题,但因为微表情的特殊性,很难找到微表情光流特征的源域,故有监督的迁移学习难以实现。
9、即使将上述迁移学习与光流特征相结合,但依然会存在各种问题。如申请号202110464746.8专利名称为“一种基于光流和rgb模态对比学习的微表情识别方法及系统”,利用监督信息和无监督信息对网络同时约束,以此得到更强的特征表达。但由于其采用的是farneback光流算法提取光流特征,且使用不是自监督学习的方法,而是监督学习方法,将光流模态和rgb模态对比。且其使用的是3dcnn,与2dcnn相比,3dcnn需要处理额外的时间维度,导致计算复杂性增加。这增加了模型的训练和推理成本,特别是对于较大规模的数据集或复杂的网络结构,计算资源的需求更高。
10、又如申请号202211563740.7专利名称为“基于多模态自监督对比学习的微表情识别方法及其系统”,其充分利用了大量的无标签数据和不同模态的信息,有效提高了微表情的识别率。但是该发明中的无标签数据和有标签数据是确定的,非是针对微表情的运动特点而设计的。且使用的模态较多(该专利使用了彩图、深度流和光流三种模态),虽然多模态可以提供更丰富的信息,但同时也增加了数据处理的复杂性,需要更多的计算资源和时间成本。
技术实现思路
1、针对上述问题,本发明的目的在于解决现有技术中的一部分问题,或至少缓解这些问题。
2、一种基于自监督对比学习的微表情识别方法,包括如下步骤:
3、收集宏、微表情数据集;
4、对宏、微表情数据集进行数据预处理,提取运动特征,并得到宏表情光流特征和微表情光流特征;
5、根据所述微表情的起始帧和顶点帧之间的光流特征构建有标签数据,并通过双端运动信息提取策略获取无标签数据;
6、将所述无标签数据输入inception-bam结构的编码器,进行上游自监督预训练;
7、通过所述宏表情的起始帧和1/3帧处之间的光流特征和所述微表情的起始帧和顶点帧之间的光流特征计算余弦距离,并利用余弦距离找到与微表情光流特征对应的宏表情运动特征,并将所述宏表情运动特征和有标签数据作为双分支分别输入预训练后的inception-bam结构的编码器进行下游微表情识别,得到分类结果。
8、采用tv-l1光流法进行数据预处理,包括如下步骤:
9、通过tv-l1光流法计算光流特征分量,计算如
10、ixu+iyv=-it
11、其中,u和v分别为光流水平分量、光流垂直分量,ix、iy和it是关于x、y和t的导数;x、y分别为图像像素点的横坐标、纵坐标,t表示时间;
12、采用无穷小应变理论的光学应变捕获光流成分的细微面部运动,得到光学应变特征ε
13、
14、将光流水平分量、光流垂直分量以及光学应变特征在通道维度合并,从而分别得到微表情光流特征和宏表情光流特征。
15、进一步的,所述有标签数据为来自微表情数据集的起始帧和顶点帧组成的图像对的tv-l1光流特征;所述宏表情光流特征为来自宏表情数据集的起始帧和1/3帧处的tv-l1光流特征。
16、通过双端运动信息提取策略获取无标签数据,包括如下步骤:
17、选取起始帧及其后4帧,记为fonset={fonset,fonset+1,fonset+2,fonset+3,fonset+4};顶点帧的前三帧、后三帧,记为fapex={fapex-3,fapex-2,fapex-1,fapex,fapex+1,fapex+2,fapex+3};终止帧及其前5帧,记为foffset={foffset-4,foffset-3,foffset-2,foffset-1,foffset};
18、从fonset中任选一帧与fapex中的每一帧之间提取光流特征(除fonset与fapex之间外),foffset中任选一帧与fapex中的每一帧之间提取光流特征;
19、将提取到的所有的光流特征作为无标签数据。
20、将所述无标签数据输入inception-bam结构的编码器,进行上游自监督预训练,包括如下步骤:
21、对所述无标签数据进行增强,生成一对增强图像xm和xn;
22、将所述增强图像xm和xn构成一个正样本对,并通过编码器inception-bam获取学习到的每个图像的特征表示hm和hn;
23、将每个图像的特征表示hm和hn经过多层感知机得到zm和zn;zm和zn为特征向量;
24、使用余弦相似度计算zm和zn之间的相似度sm,n,并通过对比损失函数l训练以最大化zm和zn之间的相似性
25、
26、
27、其中,τ为温度系数;n为一个批次的大小,t为向量的转置,k为2n中的某一个值,l为一个正样本对的损失,sm,k为zm和zk之间的余弦相似度。
28、进一步的,通过编码器inception-bam获取学习到的每个图像的特征表示hm和hn,包括如下步骤:
29、将增强图像xm和xn首先经过一个5×5大小的卷积,然后经过最大平均池化层,接着通过一个inception block结构提取多尺度特征,得到特征图
30、将特征图输入残差注意力模块(bam模块),沿着通道和空间两个不同路径得到注意力映射并得到特征图f';
31、将特征图f'再经过一个inception block结构和bam模块,获得每个图像的特征表示hm和hn。
32、计算余弦距离包括如下步骤:
33、计算所述宏表情起始帧和1/3帧的光流特征om和微表情起始帧和顶点帧光流特征o的余弦相似度:
34、
35、通过余弦相似度计算余弦距离d:
36、d=1-coso,om。
37、将所述宏表情运动特征和有标签数据作为双分支分别输入预训练后的inception-bam结构的编码器进行下游微表情识别,得到分类结果,包括如下步骤:
38、将所述宏表情运动特征和有标签数据作为双分支的输入,分别经过预训练后的inception-bam结构的编码器,以得到宏表情的特征图和微表情的特征图;
39、将所述宏表情的特征图经过sigmoid函数得到[0,1]范围的权值,并将其与微表情的特征图逐元素相乘,经过全连接层得到分类结果。
40、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的基于自监督对比学习的微表情识别方法的步骤。
41、本发明具有如下有益效果:
42、1、本发明将自监督对比学习的思想用于微表情识别,利用微表情运动幅度低的特点,设计了一种双向运动信息提取的方法(即双端运动信息提取策略),以构建无标签数据集;并配合inception-bam结构的编码器进行特征提取,然后将预训练阶段学习到的参数载入到下游微表情识别任务中,从而在提取丰富特征表示的同时显著降低了标记成本,解决了微表情样本数目少且难以找到其光流特征的对应源域的问题,且更有利于深入挖掘面部变化背后的复杂情绪信息;
43、2、由于无标签数据是通过双端运动信息提取策略获取的,是针对微表情的运动特点设计的,降低了数据处理的复杂性,无需更多的计算资源和时间成本;
44、3、本发明的inception-bam模型,inception结构结合残差注意力模块(bam)可以提取多尺度特征,能够更好的获取到局部和全局特征,从而允许模型学习到不同类型和级别的视觉模式;
45、4、引入宏表情光流特征,增强微表情的运动信息。
1.一种基于自监督对比学习的微表情识别方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于自监督对比学习的微表情识别方法,其特征在于,采用tv-l1光流法进行数据预处理,包括如下步骤:
3.根据权利要求2所述的基于自监督对比学习的微表情识别方法,其特征在于,所述有标签数据为来自微表情数据集的起始帧和顶点帧组成的图像对的tv-l1光流特征;所述宏表情光流特征为来自宏表情数据集的起始帧和1/3帧处的tv-l1光流特征。
4.根据权利要求1所述的基于自监督对比学习的微表情识别方法,其特征在于,通过双端运动信息提取策略获取无标签数据,包括如下步骤:
5.根据权利要求1或4所述的基于自监督对比学习的微表情识别方法,其特征在于,将所述无标签数据输入inception-bam结构的编码器,进行上游自监督预训练,包括如下步骤:
6.根据权利要求5所述的基于自监督对比学习的微表情识别方法,其特征在于,通过编码器inception-bam获取学习到的每个图像的特征表示hm和hn,包括如下步骤:
7.根据权利要求1所述的基于自监督对比学习的微表情识别方法,其特征在于,计算余弦距离包括如下步骤:
8.根据权利要求1或7所述的基于自监督对比学习的微表情识别方法,其特征在于,将所述宏表情运动特征和有标签数据作为双分支分别输入预训练后的inception-bam结构的编码器进行下游微表情识别,得到分类结果,包括如下步骤:
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8任一项所述的基于自监督对比学习的微表情识别方法的步骤。
