基于融合深度特征的微表情识别方法与流程

文档序号:24411683发布日期:2021-03-26 19:37阅读:123来源:国知局
基于融合深度特征的微表情识别方法与流程

1.本申请涉及图像识别处理领域,尤其涉及基于融合深度特征的微表情识别方法。


背景技术:

2.面部表情是人们在交流过程中信息传递的主要方式之一。相对于宏表情,微表情持续时间短,面部肌肉变化幅度小,其往往是在高压环境下试图隐藏自己情感而无意识流露出来的真实情感。因此微表情具有很大的应用价值,比如警方审讯、医疗辅助、国防安全等领域,但是即使经过专业训练的人员,也无法达到很好的识别效果,相关文献表明只有47%的准确率。随着计算机技术的发展,利用计算机对微表情进行识别的优势得以体现,理论上,无论变化多迅速只要能被摄像机捕获,就能存储下来不断分析,此外,只要得到稳定的微表情识别模型,就能大大的降低人工成本。
3.现有的微表情识别技术有传统手工特征和深度学习两种,传统手工特征包括lbp

top、mdmo等,这些方法需要依靠个人经验设计特征提取算子,且得到是浅层特征,使得结果往往不是最优的。随着深度学习在宏表情上取得了成功,神经网络也被引用到微表情识别中,因此本专利结合神经网络对微表情进行识别。
4.申请公布号cn 111652159 a开公开了基于多层次特征联合的微表情识别方法及系统,包括:获取待识别的微表情视频,从待识别的微表情视频中提取起始帧和峰值帧;对起始帧和峰值帧分别提取面部区域图像;基于起始帧和峰值帧各自对应的面部区域图像,利用光流法提取峰值帧相对起始帧的光流分量;将峰值帧相对起始帧的光流分量,输入到预先训练好的多层次特征联合网络中,依次进行多层次特征提取和多层次特征融合,最后输出当前关联所对应的微表情分类结果。
5.申请公布号cn 111738160 a公开了视频微表情识别方法、装置、计算机设备及存储介质,涉及人工智能的生物识别,包括获取用户视频数据中包含微表情的图像帧;在包含微表情的图像帧中获取与经验帧数值相等张数的连续多帧图像,以组成微表情序列;调用权重计算层计算微表情序列中每一帧图像的结合权重值的图像特征向量;将每一帧图像的结合权重值的图像特征向量进行求和,得到对应的综合图像特征向量;将其输入至卷积神经网络得到微表情识别结果;调用事项处理微表情策略,获取对应的事项处理流程信息。实现了采用神经网络在进行微表情分类时充分考虑到微表情在多个连续图像帧之间的时序关系,学习到微表情在图像视频序列中的时域信息,从而更准确获取微表情识别结果。


技术实现要素:

6.为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种基于融合深度特征的微表情识别方法,包括:s1:输入微表情视频文件,得到仅包含人脸的微表情帧序列;s2:对所述微表情帧序列归一化和灰度化,得到微表情预处理序列;s3:掩盖微表情预处理序列中不活跃的区域,得到微表情活跃帧序列;
s4:使用光流法对微表情活跃帧序列的相邻帧提取光流,得到光流序列;s5:构建能够提取微表情活跃帧序列特征和光流序列特征的深度神经网络模型,将所述微表情活跃帧序列特征和光流序列特征融合得到用于识别微表情的特征;将微表情活跃帧序列以及光流序列作为深度神经网络模型的输入,对深度神经网络模型进行学习优化,得到学习优化后的深度神经网络模型;s6:将待测试的视频文件经过步骤s1、s2、s3和s4后,送入所述学习优化后的深度神经网络模型提取特征进行微表情识别。
7.优选地,所述得到仅包含人脸的微表情帧序列的具体方法包括:s11:利用opencv对微表情视频文件分帧处理,得到微表情帧序列;s12:利用开源包dlib对微表情帧序列中人脸识别定位,裁剪出人脸。
8.优选地,所述对微表情帧序列归一化和灰度化的具体方法包括:s21:对微表情帧序列帧长以及序列中帧的大小归一化,使得微表情帧序列帧长以及序列中帧的大小一致;s22:对归一化后的微表情帧序列进行灰度化。
9.优选地,所述得到微表情活跃帧序列的具体方法为,对微表情预处理序列中的每一帧进行分块处理,选取微表情活跃区域所对应的块,排除不活跃区域。
10.优选地,构建能够提取微表情活跃帧序列特征和光流序列特征的深度神经网络模型为双流网络,具体结构为:s51:微表情活跃帧序列流、光流序列流、融合层、全连接层和softmax层;所述微表情活跃帧序列流和所述光流序列流分别与所述融合层连接,所述融合层与所述全连接层连接,所述全连接层与所述softmax层连接;对深度神经网络模型进行学习优化的具体方法为:s52:将预先标注好的微表情活跃帧序列集合和光流序列集合作为训练集送入构建好的双流网路中,对所述双流网路进行迭代更新,得到学习优化后的深度神经网络模型。
11.优选地,所述微表情活跃帧序列流和所述光流序列流结构相同,包括:三维卷积层、激活层、池化层和注意力层;所述三维卷积层与所述激活层连接,所述激活层与所述池化层连接,所述池化层与所述注意力层连接。
12.优选地,所述激活层采用relu函数:;所述融合层有两个输入,设微表情活跃帧序列特征为w,光流序列特征为v,则融合层的输出a为:a=w+v。
13.优选地,提取微表情活跃帧序列特征和光流序列特征的具体方法包括:s511:以光流序列和微表情序列作为输入,然后依次重复通过三维卷积神、最大池化层、激活层2次,得到微表情活跃帧序列的深度特征和光流序列的深度特征;s512:得到微表情活跃帧序列的深度特征和光流序列的深度特征分别送入注意力模块,得到微表情活跃帧序列的注意力特征和光流序列的注意力特征;所述微表情活跃帧序列的注意力特征即为微表情活跃帧序列特征,所述光流序列的注意力特征即为光流序列
特征;得到用于识别微表情的特征的具体方法包括:s513:将所述微表情活跃帧序列特征和所述光流序列特征通过所述融合层得到融合特征,并依次通过两层全连接层和softmax层。
14.优选地,所述步骤s52还包括以下步骤:s521:将预先标注好的微表情活跃帧序列集合和光流序列集合按照4:1分成测试集和训练集;s522:利用训练集对深度神经网络模型进行训练,优化深度神经网络模型参数直至收敛,得到微表情识别模型。
15.优选地,对深度神经网络模型进行训练时采用的损失函数为交叉熵损失函数:其中是一个概率分布,每个元素p
i
表示样本属于第i类的概率;是样本标签的onehot表示,当样本属于第类别i时y
i
=1,否则y
i
=0;c是样本标签。
16.本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,对微表情面部序列及光流序列提取深度特征后,对深度特征的时间维度加以注意力机制,考虑时间维度之间的全局关联信息,最后融合两个网络分支的输出得到融合特征,更好的提升微表情识别鲁棒性及识别结果。
附图说明
17.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
19.图1为本申请实施例提供的基于融合深度特征的微表情识别方法流程图。
20.图2是根据一示例性实施例示出的微表情面部分块及活跃区域选择示意图;图3是根据一示例性实施例示出的能够提取微表情活跃帧序列特征和光流序列特征的深度神经网络模型结构框图;图4是根据一示例性实施例示出的注意力层结构框图。
21.图中,1

微表情活跃帧序列流,2

光流序列流,3

融合层,4

全连接层,5

softmax层。
具体实施方式
22.为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人
员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
23.实施例1:图1,为本申请实施例提供的基于融合深度特征的微表情识别方法,包括:s1:输入微表情视频文件,得到仅包含人脸的微表情帧序列;s2:对所述微表情帧序列归一化和灰度化,得到微表情预处理序列;s3:掩盖微表情预处理序列中不活跃的区域,得到微表情活跃帧序列;s4:使用光流法对微表情活跃帧序列的相邻帧提取光流,得到光流序列;s5:构建能够提取微表情活跃帧序列特征和光流序列特征的深度神经网络模型,将所述微表情活跃帧序列特征和光流序列特征融合得到用于识别微表情的特征;将微表情活跃帧序列以及光流序列作为深度神经网络模型的输入,对深度神经网络模型进行学习优化,得到学习优化后的深度神经网络模型;s6:将待测试的视频文件经过步骤s1、s2、s3和s4后,送入所述学习优化后的深度神经网络模型提取特征进行微表情识别。
24.根据上述方案,进一步,所述得到仅包含人脸的微表情帧序列的具体方法包括:s11:利用opencv对微表情视频文件分帧处理,得到微表情帧序列;s12:利用开源包dlib对微表情帧序列中人脸识别定位,裁剪出人脸。
25.根据上述方案,进一步,所述对微表情帧序列归一化和灰度化的具体方法包括:s21:对微表情帧序列帧长以及序列中帧的大小归一化,使得微表情帧序列帧长以及序列中帧的大小一致;s22:对归一化后的微表情帧序列进行灰度化。
26.根据上述方案,进一步,如图2所示,所述得到微表情活跃帧序列的具体方法为,对微表情预处理序列中的每一帧进行分块处理,选取微表情活跃区域所对应的块,排除不活跃区域。
27.根据上述方案,进一步,如图3所示构建能够提取微表情活跃帧序列特征和光流序列特征的深度神经网络模型为双流网络,具体结构为:s51:微表情活跃帧序列流1、光流序列流2、融合层3、全连接层4和softmax层5;所述微表情活跃帧序列流1和所述光流序列流2分别与所述融合层连接3,所述融合层3与所述全连接层4连接,所述全连接层4与所述softmax层5连接;对深度神经网络模型进行学习优化的具体方法为:s52:将预先标注好的微表情活跃帧序列集合和光流序列集合作为训练集送入构建好的双流网路中,对所述双流网路进行迭代更新,得到学习优化后的深度神经网络模型。
28.根据上述方案,进一步,所述微表情活跃帧序列流和所述光流序列流结构相同,包括:三维卷积层、激活层、池化层和注意力层;所述三维卷积层与所述激活层连接,所述激活层与所述池化层连接,所述池化层与所述注意力层连接。
29.根据上述方案,进一步,所述激活层采用relu函数:;所述融合层有两个输入,设微表情活跃帧序列特征为w,光流序列特征为v,则融合层的输出a为:
a=w+v。
30.根据上述方案,进一步,提取微表情活跃帧序列特征和光流序列特征的具体方法包括:s511:以光流序列和微表情序列作为输入,然后依次重复通过三维卷积神、最大池化层、激活层2次,得到微表情活跃帧序列的深度特征和光流序列的深度特征;s512:得到微表情活跃帧序列的深度特征和光流序列的深度特征分别送入注意力模块,得到微表情活跃帧序列的注意力特征和光流序列的注意力特征;所述微表情活跃帧序列的注意力特征即为微表情活跃帧序列特征,所述光流序列的注意力特征即为光流序列特征;得到用于识别微表情的特征的具体方法包括:s513:将所述微表情活跃帧序列特征和所述光流序列特征通过所述融合层得到融合特征,并依次通过两层全连接层和softmax层。
31.根据上述方案,进一步,所述步骤s52还包括以下步骤:s521:将预先标注好的微表情活跃帧序列集合和光流序列集合按照4:1分成测试集和训练集;s522:利用训练集对深度神经网络模型进行训练,优化深度神经网络模型参数直至收敛,得到微表情识别模型。
32.根据上述方案,进一步,训练深度神经网络模型时采用的损失函数为交叉熵损失函数:其中是一个概率分布,每个元素p
i
表示样本属于第i类的概率;是样本标签的onehot表示,当样本属于第类别i时y
i
=1,否则y
i
=0;c是样本标签。
33.实施例2:步骤1、该采用opencv对微表情文件进行分帧处理得到帧序列,采用开源工具包dlib对序列中的每一帧进行人脸识别定位,裁剪出仅包含人脸的微表情序列;步骤2、对帧序列使用时间插值法让帧长度一致,最终选择32帧作为每个微表情序列的长度,然后将每一帧的大小归一化到84*72像素,最后进行灰度化得到预处理的结果。
34.步骤3、对微表情序列掩盖不活跃的区域,得到包含活跃区域的微表情序列,具体步骤包括:步骤3.1、划分将微表情预处理序列划分称14*12个小块,每个小块的长和宽各为6像素;步骤3.2、生理学研究,微表情的感兴趣区域主要集中在眼睛、眉毛、鼻子、脸颊、嘴巴区域,参照fase标注的人脸运动单元,选择相对应区域的小块,掩盖不活跃区的小块,可以有效的避免非活跃区域带来的噪声干扰,聚焦细节变化的区域,得到微表情活跃帧序列。具体的,如图2所示,按照从左到右,从上到下的顺序活跃区域依次选择第13~17、20~29、32~41、44~60、66~67、73~108、113~116、124~129、136~141、148~153块。
35.步骤4、用光流法对微表情预处理序列提取光流序列,这里使用lucas

kanade光流法提取微表情相邻帧的光流,得到光流序列;步骤5、构建能够提取微表情活跃帧序列特征和光流序列特征的深度神经网络模型,得到用于识别微表情的特征;将微表情活跃帧序列以及光流序列作为深度神经网络模型的输入,对深度神经网络模型进行学习优化,网络结构如图3所示,其步骤主要包括:步骤5.1、微表情活跃帧序列流1、光流序列流2、融合层3、全连接层4和softmax层5;所述微表情活跃帧序列流1和所述光流序列流2分别与所述融合层3连接,所述融合层3与所述全连接层4连接,所述全连接层4与所述softmax层5连接;以光流序列和微表情序列作为输入,然后依次重复通过三维卷积神、最大池化层、激活层2次,得到微表情活跃帧序列的深度特征和光流序列的深度特征;得到微表情活跃帧序列的深度特征和光流序列的深度特征分别送入注意力模块,得到微表情活跃帧序列的注意力特征和光流序列的注意力特征;所述微表情活跃帧序列的注意力特征即为微表情活跃帧序列特征,所述光流序列的注意力特征即为光流序列特征;将所述微表情活跃帧序列特征和所述光流序列特征通过所述融合层得到融合特征,并依次通过两层全连接层和softmax层,得到用于识别微表情的特征。
36.对于输入、三维卷积层、最大池化层、全连接层、softmax具体参数设置如下:输入参数设置:输入样本有三个参数,分别设输入的高为h、宽为w、帧长为t。
37.微表情帧序列的参数为h=84,w=72,、t=32;光流序列的参数为h=84,w=72,、t=31。
38.三维卷积层参数设置:卷积层有4个参数,分别设卷积核的高为h、宽为w、深度为d,卷积核的个数为n。
39.三维卷积层_1的参数为h=5,w=5,d=5,n=16;三维卷积层_2的参数为h=3,w=3,d=3,n=32。
40.最大池化层参数设置:池化层有5个参数,分别设池化的高为h、宽为w、深度为d,空间步长为s_l, 时间步长为t_l。
41.最大池化层_1的参数为h=2,w=2,d=2,s_l=2, t_l=2;最大池化层_2的参数为h=2,w=2,d=1,s_l=2, t_l=1。
42.全连接层参数设置:全连接层有1个参数,即神经元个数n。
43.全连接层_1的参数为n=512;全连接层_2的参数为n=256;softmax层参数设置:softmax层有1个参数,即微表情标签的类别数量。
44.注意力模块设置:如图4所示,其类似senet,不同的是senet是对特征图的通道加以注意力机制,而此注意力模块是对三维特征图的时间维度加以注意力机制,考虑时序的全局关联信息。图4中w、h、t分别表示三维特征图空间维度的宽,高以及时间维度的长度。
45.激活层设置:选取的relu函数:融合层设置:融合层有两个输入,设微表情序列得到的特征为w,光流序列得到的特征为v,则融合层的输出a为:
a=w+v步骤5.2、将预先标注好的微表情活跃帧序列集合和光流序列集合按照4:1分成测试集和训练集;步骤5.3、将具有标签的训练集送入神经网络进行训练,优化网络参数直至收敛,得到微表情识别模型。
46.训练模型时采用的损失函数为交叉熵损失函数:其中是一个概率分布,每个元素p
i
表示样本属于第i类的概率;是样本标签的onehot表示,当样本属于第类别i时y
i
=1,否则y
i
=0;c是样本标签;修正函数选用的是随机梯度下降法;学习率设为0.001;批次大小设置为64;为了防止过拟合,每个全连接层后加了dropout层,丢包率设置为0.5;训练迭代次数为500,当损失函数降低十分缓慢时,提前终止训练。
47.步骤6、将待识别的微表情文件,经过步骤1、2、3、4,得到微表情序列和光流序列,将两者输入到训练好的微表情识别模型,进行微表情识别。
48.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
49.以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1