首页 / 专利库 / 显示技术 / 虚拟现实 / 基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法

基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法

阅读:1040发布:2020-06-26

专利汇可以提供基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种基于双流 卷积神经网络 的虚拟学习环境微表情识别与交互方法,包括以下步骤:S1:微表情数据的预处理:对微表情视频进行欧拉视频放大并 抽取 图像序列 ,对图像序列进行人脸 定位 并裁剪,得到微表情的RGB数据;将欧拉视频放大后的数据提取光流信息,得到微表情的光流图像;S2:将预处理后的数据分为训练集和测试集两部分并使用迁移学习的方法构建双流卷积神经网络,以学习到微表情的空间与时域信息;S3:将双流卷积神经网络的输出进行最大值融合,以增强识别准确率,得到最终的微表情识别模型;S4:使用微表情识别模型创建虚拟学习环境交互系统,并通过Kinect获取用户面部图像序列进行微表情识别任务。,下面是基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法专利的具体信息内容。

1.一种基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,其特征在于:
包括以下步骤:
S1:微表情数据的预处理:对微表情视频进行欧拉视频放大并抽取图像序列,对图像序列进行人脸定位并裁剪,得到微表情的RGB数据;将欧拉视频放大后的数据提取光流信息,得到微表情的光流图像;
S2:将预处理后的数据分为训练集和测试集两部分并使用迁移学习的方法构建双流卷积神经网络,以学习到微表情的空间与时域信息;
S3:将双流卷积神经网络的输出进行最大值融合,以增强识别准确率,得到最终的微表情识别模型;
S4:使用微表情识别模型创建虚拟学习环境交互系统,并通过Kinect获取用户面部图像序列进行微表情识别任务。
2.根据权利要求1所述的基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,其特征在于:步骤S1包括以下步骤:
S11:选取无限脉冲响应滤波器IIR将微表情数据库CASME II进行欧拉视频放大处理,欧拉视频放大技术首先对输入的视频序列进行空间滤波,再对每个空间频率的基带进行时域滤波处理;令I(x,t)表示位置x和时间t的图像强度,用δ(t)表示相对位移函数F(x);运动放大的目的是合成信号: 其中,α表示放大系数;选取无限脉
冲响应滤波器,放大倍数为20,将处理好的视频逐抽取图像,得到微表情的图像序列;
S12:使用主动形状模型ASM对处理后的微表情图像进行人脸检测定位,并裁剪成大小为224*224的人脸图像;
S13:将欧拉放大后的微表情图像序列划分为多段,并使用基于总变分TV和L1范数的光流估计方法TV-L1进行光流分析,得到微表情的光流图像;得到的光流图像数据是和RGB图像尺寸相等的多通道图像,设I(x,y,z)表示时刻t的点(x,y)的图像强度,这个点将在t+Δt时刻移动到(x+Δx,y+Δy),图像强度表示为I(x+Δx,y+Δy,t+Δt),令v=(vx,vy)表示两帧的光流,其中vx和vy是x和y的运动速度分量,则光流的约束方程为:Ixvx+Iyvy+It=0。
3.根据权利要求2所述的基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,其特征在于:步骤S2包括以下步骤:
S21:将预处理后的数据与标签,以7:3的比例划分为训练集和测试集两部分,且数据不交叉出现;
S22:双流卷积神经网络由两个卷积神经网络组成,对应空间神经网络与时间神经网络,分别输入RGB图像与光流图像;两个卷积神经网络模型都采用VGG-16预训练模型构建,所述VGG-16网络模型共有16层,有13个卷积层和3个全连接层,具体包含5组卷积集合,如表
1,第一组与第二组卷积集合包含2个卷积层,其它均包含3个卷积层,所有卷积层的卷积核大小均为3×3,步长为1,每组卷积集合的最后一个卷积层后连接一个最大池化层,所有的最大池化窗口均为2×2;初始卷积核个数为64,每经过一次最大池化后卷积核的个数增加一倍,包含3个全连接层,第一个和第二个全连接层的维度为4096,第三个全连接层维度为
1000,最后由Softmax输出分类结果;
表1
S23:将得到的欧拉放大后的微表情RGB图像输入至空间神经网络,并将得到的光流图像输入至时域神经网络,对时域神经网络的输入进行以下两方面的处理:首先是光流场的叠加,方法是计算每两个连续的帧t和t+1间的光流,然后简单地叠加在一起,假设需要追踪t+1帧,则把光流分解成x,y两个方向的光流,这时有2L个通道,dt(u,v)表示在t帧点(u,v)的位置向量, 和 表示平和垂直分量的向量场,作为图像通道,为了表示一系列的帧序列,堆叠光流通道 则有2L个通道,用w和h代表一个视频的宽和高;一个卷积网络的输入量Iτ∈Rw×h×2L对任意一个帧(t)设置如下:
其中,u=[1;w],v=[1;h],k=[1;L],对于任意一点(u,v),通道编码L序列帧的所有点;
其次是沿轨迹追踪光流叠加,在连续几帧相同的位置上采样,根据采样结果,得到轨迹的运动信息,Iτ为输入向量,采用以下公式来对应于一个帧t:
其中u=[1;w],v=[1;h],k=[1;L]
Pk是沿着轨迹的第K层,从(u,v)开始在帧间存在以下递归关系定义:P1=(u,v),Pk=Pk-1+dτ+k-2(Pk-1),k>1;
光流的叠加存储位移向量(u,v),轨迹叠加存储沿着轨迹的光流向量的叠加向量Pk;
S24:使用迁移学习的方法对VGG-16预训练模型做微调;将前两个全连接层FC的维度由
4096减为2048,以减少模型训练时需要的训练参数从而加快训练速度和降低对计算机性能的要求;由于CASME II数据库的类别为5,所以将最后一个全连接层FC3维度由1000修改
5;
将处理好的RGB图像和光流图像分别输入VGG-16预训练模型进行训练,网络的初始学习率设为10-5,经过1000次迭代学习率降低为10-6,共迭代6000次。
4.根据权利要求3所述的基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,其特征在于:步骤S3包括以下步骤:
S31:损失函数用L(Y,f(x))来表示,其中Y表示其真实值,f(x)是模型输出的预测值,目标函数包括损失函数和正则项,用下式表示:
其中第一项是损失函数,第二项是正则化项,采用L2范数,训练求得使目标函数L更小的参数ω,采用自适应矩估计作为优化器;
对于多分类问题,卷积神经网络采用的是交叉熵损失
当输入样本被判定为真实类别的概率越大,样本的损失值也就越小;Softmax用于归一化,函数表达式为: 对于分类任务,若数据集共有n类,Softmax的输出就是n维向量,向量中的每一维的值代表该输入数据属于某一类的概率值,共n类;Softmax层接在全连接层后,经过Softmax层后得到的输出再输入并最小化损失函数,将误差反向传播来优化网络参数;
S32:将双流卷积神经网络的两个输出进行最大值融合,令xa,xb分别为两个卷积神经网络的输出,H,W和D分别代表特征映射的宽度、高度和通道数量;在t时刻,两个卷积网络的输出分别为 使用 来取得两个特征映
射的最大值;
S33:在测试阶段,将划分好的测试集中的RGB数据与光流数据分别输入至双流卷积神经网络模型,得到五类微表情的最终的识别结果。
5.根据权利要求1所述的基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,其特征在于:步骤S4包括以下步骤:
S41:利用虚拟现实技术在Unity3D平台创建虚拟学习环境,模拟课堂学习环境,对虚拟色进行建模,并创建交互界面;
S42:使用Kinect实时采集用户面部图像序列,并使用OpenCV库中的Haar-cascade分类器将已获取的图像进行人脸检测与面部裁剪,再对裁剪之后的图像序列进行欧拉视频放大并保存为RGB图像;并进行光流分析,得到光流帧;
S43:最后将RGB图像与光流图像输入到微表情识别模型中,经前向传播,模型返回微表情分类结果,并在场景中出现相应交互动画。

说明书全文

基于双流卷积神经网络的虚拟学习环境微表情识别与交互

方法

技术领域

背景技术

[0002] 情绪在日常生活中的作用非常重要,它可以反映出人的情感状态,并可通过面部表情、声音、肢体语言等方式表现。其中,面部表情是情绪表达中最为重要的方式,也能辅助其他表达方式,因此受到广泛关注。然而,在很多情况下,面部表情往往容易被掩盖或抑制,产生持续时间短,动作幅度小的微表情。这是一种快速的面部表情,持续时间仅有0.5s,动作幅度小且不对称。微表情的识别可以有效地帮助人们更加精确的捕捉人类的真实情感,但是,通常需要专业的心理学者经过大量的训练才能识别微表情。因此,微表情的自动识别与研究显得尤为重要,并在测谎、在线教育、商业谈判等领域有广泛的应用前景。
[0003] 由于微表情数据为图像序列,单幅图像的表情识别模型已不能有效地识别,且微表情公开数据集的样本数量较少。所以,目前微表情的识别方法以传统机器学习为主,大致分为以下几类:基于局部二值模式(Local binary patterns,LBP)的三维拓展及相关改进方法的识别,LBP是一种针对二维图像的纹理提取方式,将LBP编码拓展到XY、XT、YT三个正交平面进行微表情的特征提取;基于光流场特征识别,及基于张量识别等,再通过支持向量机、最近邻、随机森林等分类器进行分类。这些识别方法需要在微表情的预处理与特征提取阶段消耗大量人,且识别准确率并未有效提升。
[0004] 近年来,深度学习计算机视觉自然语言处理领域中表现优异,进而成为专家学者广泛研究的对象。深度学习较传统机器学习的主要优点为:特征提取阶段不依赖人工,而是通过构建神经网络让机器自主学习到对象的特征,使得到的训练模型更具泛化能力。然而,由于微表情运动幅度小、持续时间短的特点,常规网络结构不能很好的学习微表情中的时域特征。
[0005] 因此,使用欧拉放大技术将原始数据进行处理,以增强面部运动幅度;并采用一种新型网络结构可用来识别微表情。该结构由两个卷积神经网络组成,基本思想是将图像序列拆分为表现流和运动流两个通道分别处理,达到空间信息和时间信息互补的目的。使用更精确的TV-L1光流估计方法计算两张相邻微表情图像的光流,能够反映出微表情序列中的时域信息。同时,采用迁移学习的方法进行模型训练,可在一定程度上避免由训练样本数量不足而产生的过拟合现象。使用VGG-16预训练模型初始化网络参数,并利用微表情数据库微调,得到目标任务网络模型。VGG-16预训练模型是由ImageNet数据库训练得到的,该数据库有丰富的图像数据,模型能够很好地获取图像中的低级、局部特征,有较强的泛化能力。并将两个网络的Softmax层的输出进行最大值融合,进一步增加了识别准确率。
[0006] 创建实时虚拟学习环境交互系统,可实现微表情的实时检测与分类。Kinect是微软公司推出的一款体感设备,可以提供更加自然的人机交互方式,相比其他设备,提高了对周围环境的理解能力。使用Kinect实时采集用户面部图像序列并进行欧拉视频放大、光流分析等处理,输入至训练好的模型中,系统将快速返回微表情识别结果,如开心、压抑、难过、惊讶和其他,并在场景中出现相应交互动画。根据识别结果,教师可及时调整授课策略,保障并提高学生的学习效率,改善学习效果。
[0007] 综上所述,微表情的应用场景广泛,快速、有较地识别微表情仍是未来一段时间的发展方向。增加微表情的应用场景、优化网络结构并提高模型的识别精确率显得尤为重要。

发明内容

[0008] 有鉴于此,本发明的目的在于提供一种有效增加网络学习能力,提升实时微表情识别系统的性能,并基于迁移学习的方法创建实时微表情识别的虚拟学习环境交互系统。
[0009] 为达到上述目的,本发明提供如下技术方案:
[0010] 一种基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,包括以下步骤:
[0011] S1:微表情数据的预处理:对微表情视频进行欧拉视频放大并抽取图像序列,对图像序列进行人脸定位并裁剪,得到微表情的RGB数据;将欧拉视频放大后的数据提取光流信息,得到微表情的光流图像;
[0012] S2:将预处理后的数据分为训练集和测试集两部分并使用迁移学习的方法构建双流卷积神经网络,以学习到微表情的空间与时域信息;
[0013] S3:将双流卷积神经网络的输出进行最大值融合,以增强识别准确率,得到最终的微表情识别模型;
[0014] S4:使用微表情识别模型创建虚拟学习环境交互系统,并通过Kinect获取用户面部图像序列进行微表情识别任务。
[0015] 进一步,步骤S1包括以下步骤:
[0016] S11:选取无限脉冲响应滤波器IIR将微表情数据库CASME II进行欧拉视频放大处理,欧拉视频放大技术首先要对输入的视频序列进行空间滤波,再对每个空间频率的基带进行时域滤波处理,可将增强视频中物体的运动幅度。令I(x,t)表示位置x和时间t的图像强度,由于图像经历平移运动,可以用δ(t)表示相对位移函数F(x)。运动放大的目的是合成信号: 其中,α表示放大系数。此处选取无限脉冲响应(Infinite Impulse Response,IIR)滤波器,放大倍数为20,将处理好的视频逐抽取图像,得到微表情的图像序列;
[0017] S12:使用主动形状模型ASM对处理后的微表情图像进行人脸检测定位,并裁剪成大小为224*224的人脸图像;
[0018] S13:将欧拉放大后的微表情图像序列划分为多段,并使用基于总变分(Total Variation,TV)和L1范数的光流估计方法TV-L1进行光流分析,得到微表情的光流图像,光流是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧与当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。得到的光流数据是和RGB图像尺寸相等的多通道图像,设I(x,y,z)表示时刻t的点(x,y)的图像强度,这个点将在t+Δt时刻移动到(x+Δx,y+Δy),图像强度表示为I(x+Δx,y+Δy,t+Δt),令v=(vx,vy)表示两帧的光流,其中vx和vy是x和y的运动速度分量,则光流的约束方程为:Ixvx+Iyvy+It=0。
[0019] 进一步,步骤S2包括以下步骤:
[0020] S21:将预处理后的数据与标签,以7:3的比例划分为训练集和测试集两部分,且数据不交叉出现;
[0021] S22:双流卷积神经网络由两个卷积神经网络组成,对应着空间神经网络与时间神经网络,可分别输入RGB图像与光流图像。两个卷积神经网络模型都采用VGG-16预训练模型构建,VGGNet由津大学的视觉几何组(Visual Geometry Group)提出,是在ImageNet数据库上训练得到的具有1000个分类的深层网络模型,泛化能力较强,VGGNet是从AlexNet发展而来的,与AlexNet框架有很多相似之处。所述VGG-16网络模型共有16层,有13个卷积层和3个全连接层,具体包含5组卷积集合(如表1),第一组与第二组卷积集合包含2个卷积层,其它均包含3个卷积层,所有卷积层的卷积核大小均为3×3,步长也缩小到1,相比其他网络结构能模仿出更大的感受野,每组卷积集合的最后一个卷积层后连接一个最大池化层,所有的最大池化窗口均为2×2;初始卷积核个数为64,每经过一次最大池化后卷积核的个数增加一倍,包含3个全连接层,第一个和第二个全连接层的维度为4096,第三个全连接层维度为1000,最后由Softmax输出分类结果;
[0022] 表1
[0023]
[0024] S23:将得到的欧拉放大后的微表情RGB图像输入至空间神经网络,并将得到的光流图像输入至时域神经网络,对时域神经网络的输入进行以下两方面的处理:首先是光流场的叠加,方法是计算每两个连续的帧t和t+1间的光流,然后简单地叠加在一起,假设需要追踪t+1帧,那么会把光流分解成x,y两个方向的光流,这时会有2L个通道。dt(u,v)表示在t帧点(u,v)的位置向量, 和 表示平和垂直分量的向量场,可以作为图像通道,非常适合使用卷积网络识别,为了表示一系列的帧序列,堆叠光流通道 这时会有2L个通道,用w和h代表一个视频的宽和高;一个卷积网络的输入量Iτ∈Rw×h×2L对任意一个帧(t)设置如下:
[0025]
[0026] 其中,u=[1;w],v=[1;h],k=[1;L].对于任意一点(u,v),通道编码了L序列帧的所有点。
[0027] 其次是沿轨迹追踪光流叠加,在连续几帧相同的位置上采样,根据采样结果,得到轨迹的运动信息。在这种情况下,Iτ为输入向量,采用以下公式来对应于一个帧t:
[0028]
[0029] 其中u=[1;w],v=[1;h],k=[1;L].
[0030] Pk是沿着轨迹的第K层,从(u,v)开始在帧间存在以下递归关系定义:P1=(u,v),[0031] Pk=Pk-1+dτ+k-2(Pk-1),k>1.
[0032] 光流的叠加存储了位移向量(u,v),而轨迹叠加存储了沿着轨迹的光流向量的叠加向量Pk。
[0033] S24:使用迁移学习的方法对VGG-16预训练模型做微调。将前两个全连接层(Fully Connected,FC)的维度由4096减为2048,以减少模型训练时需要的训练参数从而加快训练速度和降低对计算机性能的要求;由于CASME II数据库的类别为5,所以应将最后一个全连接层FC3维度由1000修改为5。
[0034] 将处理好的RGB图像和光流图像分别输入VGG-16预训练模型进行训练,网络的初始学习率设为10-5,经过1000次迭代学习率降低为10-6,共迭代6000次。
[0035] 进一步,步骤S3包括以下步骤:
[0036] S31:损失函数可用L(Y,f(x))来表示。其中Y表示其真实值,f(x)是模型输出的预测值。一般情况下,目标函数包括了损失函数和正则项,用下式表示:其中第一项是损失函数,第二项是正则化项,为了
避免过拟合现象,这里采用L2范数。训练可求得使目标函数L更小的参数ω。为了得到更好的网络模型,采用自适应矩估计作为优化器。
[0037] 对于多分类问题,卷积神经网络采用的是交叉熵损失当输入样本被判定为真实类别的概率越大,样本的损失值也就越小。Softmax相当于一个归一化的作用,函数表达式为: 对于分类任务,若数据集共有n类,那么Softmax的
输出就是n维向量,向量中的每一维的值代表该输入数据属于某一类的概率值,共n类。一般情况下,Softmax层是接在全连接层后的,经过Softmax层后得到的输出再输入并最小化损失函数,将误差反向传播来优化网络参数,从而达到训练与学习的目的。
[0038] S32:由于时间流和空间流的互补性,融合技术能使准确率明显提高。融合方法可用一些集合函数,包括L2范数,均匀平均,最大值等。将双流卷积神经网络的两个输出进行最大值融合。令xa,xb分别为两个卷积神经网络的输出,H,W和D分别代表特征映射的宽度、高度和通道数量。则在t时刻,两个卷积网络的输出分别为 使用 来取得两个特征映射的最大值。
[0039] S33:在测试阶段,将划分好的测试集中的RGB数据与光流数据分别输入至双流卷积神经网络模型,得到五类微表情的最终的识别结果。
[0040] 进一步,步骤S4包括以下步骤:
[0041] S41:利用虚拟现实技术在Unity3D平台创建虚拟学习环境,模拟课堂学习环境,对虚拟色进行建模,并创建交互界面。
[0042] S42:使用Kinect实时采集用户面部图像序列,并使用OpenCV库中的Haar-cascade分类器将已获取的图像进行人脸检测与面部裁剪,再对裁剪之后的图像序列进行欧拉视频放大并保存为RGB图像;并进行光流分析,得到光流帧。
[0043] S43:最后将RGB图像与光流图像输入到微表情识别模型中,经前向传播,模型将会返回微表情分类结果,如开心、压抑、难过、惊讶和其他,并在场景中出现相应交互动画。根据分类结果,教师可及时调整授课策略,转变教学思路,提高学生的学习效率,改善学习效果。
[0044] 本发明的有益效果在于:
[0045] 1、针对微表情运动幅度小的特点,本发明引入欧拉放大技术作为预处理方法,不仅可以增加面部的运动幅度,也可以改变运动区域对应像素的亮度,能够更有效的使模型捕捉到微表情。
[0046] 2、由于微表情现有的公开数据集的样本数比较少,所以目前微表情主要还是依靠传统机器学习的方法来识别。这些方法大多是使用一组人工设计的特征,在一定程度上损失了原有的特征信息,或者假设属性之间互相独立,这往往与实际应用环境不相符。对此本发明使用迁移学习的方法,引入VGG-16预训练模型并利用微表情数据库微调,可在一定程度上避免由训练样本数量不足而产生的过拟合现象,同时使模型有较强的泛化能力。
[0047] 3、使用双流卷积神经网络,分别输入RGB图像与光流图像至空间神经网络与时间神经网络,可使模型同时考虑到微表情的空间信息与时间信息,达到信息互补的目的,对微表情有更强的学习能力。同时,对两个网络的Softmax输出进行最大值融合,进一步增加了识别准确率。
[0048] 4、通过创建虚拟学习环境交互系统,拓宽了微表情的应用领域。使用Kinect实时采集用户面部图像序列并进行相应处理,输入至训练好的模型中,系统将快速返回微表情识别结果,并在场景中出现相应交互动画。虚拟教师可根据识别结果,及时调整授课策略,保障并提高学生的学习效率。
[0049] 本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。附图说明
[0050] 为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
[0051] 图1为本发明所述基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法流程图

具体实施方式

[0052] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0053] 其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
[0054] 本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
[0055] 如图1所示,一种基于双流卷积神经网络的虚拟学习环境微表情识别与交互方法,包括以下步骤:
[0056] S1:微表情数据的预处理:对微表情视频进行欧拉视频放大并抽取图像序列,对图像序列进行人脸定位并裁剪,得到微表情的RGB数据;将欧拉视频放大后的数据提取光流信息,得到微表情的光流图像;
[0057] S2:将预处理后的数据分为训练集和测试集两部分并使用迁移学习的方法构建双流卷积神经网络,以学习到微表情的空间与时域信息;
[0058] S3:将双流卷积神经网络的输出进行最大值融合,以增强识别准确率,得到最终的微表情识别模型;
[0059] S4:使用微表情识别模型创建虚拟学习环境交互系统,并通过Kinect获取用户面部图像序列进行微表情识别任务。
[0060] 可选地,步骤S1包括以下步骤:
[0061] S11:选取无限脉冲响应滤波器IIR将微表情数据库CASME II进行欧拉视频放大处理,欧拉视频放大技术首先要对输入的视频序列进行空间滤波,再对每个空间频率的基带进行时域滤波处理,可将增强视频中物体的运动幅度。令I(x,t)表示位置x和时间t的图像强度,由于图像经历平移运动,可以用δ(t)表示相对位移函数F(x)。运动放大的目的是合成信号: 其中,α表示放大系数。此处选取无限脉冲响应(Infinite Impulse Response,IIR)滤波器,放大倍数为20,将处理好的视频逐帧抽取图像,得到微表情的图像序列;
[0062] S12:使用主动形状模型ASM对处理后的微表情图像进行人脸检测定位,并裁剪成大小为224*224的人脸图像;
[0063] S13:将欧拉放大后的微表情图像序列划分为多段,并使用基于总变分(Total Variation,TV)和L1范数的光流估计方法TV-L1进行光流分析,得到微表情的光流图像,光流是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧与当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。得到的光流数据是和RGB图像尺寸相等的多通道图像,设I(x,y,z)表示时刻t的点(x,y)的图像强度,这个点将在t+Δt时刻移动到(x+Δx,y+Δy),图像强度表示为I(x+Δx,y+Δy,t+Δt),令v=(vx,vy)表示两帧的光流,其中vx和vy是x和y的运动速度分量,则光流的约束方程为:Ixvx+Iyvy+It=0。
[0064] 可选地,步骤S2包括以下步骤:
[0065] S21:将预处理后的数据与标签,以7:3的比例划分为训练集和测试集两部分,且数据不交叉出现;
[0066] S22:双流卷积神经网络由两个卷积神经网络组成,对应着空间神经网络与时间神经网络,可分别输入RGB图像与光流图像。两个卷积神经网络模型都采用VGG-16预训练模型构建,VGGNet由牛津大学的视觉几何组(Visual Geometry Group)提出,是在ImageNet数据库上训练得到的具有1000个分类的深层网络模型,泛化能力较强,VGGNet是从AlexNet发展而来的,与AlexNet框架有很多相似之处。所述VGG-16网络模型共有16层,有13个卷积层和3个全连接层,具体包含5组卷积集合(如表1),第一组与第二组卷积集合包含2个卷积层,其它均包含3个卷积层,所有卷积层的卷积核大小均为3×3,步长也缩小到1,相比其他网络结构能模仿出更大的感受野,每组卷积集合的最后一个卷积层后连接一个最大池化层,所有的最大池化窗口均为2×2;初始卷积核个数为64,每经过一次最大池化后卷积核的个数增加一倍,包含3个全连接层,第一个和第二个全连接层的维度为4096,第三个全连接层维度为1000,最后由Softmax输出分类结果;
[0067] 表1
[0068]
[0069]
[0070] S23:将得到的欧拉放大后的微表情RGB图像输入至空间神经网络,并将得到的光流图像输入至时域神经网络,对时域神经网络的输入进行以下两方面的处理:首先是光流场的叠加,方法是计算每两个连续的帧t和t+1间的光流,然后简单地叠加在一起,假设需要追踪t+1帧,那么会把光流分解成x,y两个方向的光流,这时会有2L个通道。dt(u,v)表示在t帧点(u,v)的位置向量, 和 表示水平和垂直分量的向量场,可以作为图像通道,非常适合使用卷积网络识别,为了表示一系列的帧序列,堆叠光流通道 这时会有2L个通道,用w和h代表一个视频的宽和高;一个卷积网络的输入量Iτ∈Rw×h×2L对任意一个帧(t)设置如下:
[0071]
[0072] 其中,u=[1;w],v=[1;h],k=[1;L].对于任意一点(u,v),通道编码了L序列帧的所有点。
[0073] 其次是沿轨迹追踪光流叠加,在连续几帧相同的位置上采样,根据采样结果,得到轨迹的运动信息。在这种情况下,Iτ为输入向量,采用以下公式来对应于一个帧t:
[0074]
[0075] 其中u=[1;w],v=[1;h],k=[1;L].
[0076] Pk是沿着轨迹的第K层,从(u,v)开始在帧间存在以下递归关系定义:P1=(u,v),Pk=Pk-1+dτ+k-2(Pk-1),k>1.
[0077] 光流的叠加存储了位移向量(u,v),而轨迹叠加存储了沿着轨迹的光流向量的叠加向量Pk。
[0078] S24:使用迁移学习的方法对VGG-16预训练模型做微调。将前两个全连接层(Fully Connected,FC)的维度由4096减为2048,以减少模型训练时需要的训练参数从而加快训练速度和降低对计算机性能的要求;由于CASME II数据库的类别为5,所以应将最后一个全连接层FC3维度由1000修改为5。
[0079] 将处理好的RGB图像和光流图像分别输入VGG-16预训练模型进行训练,网络的初始学习率设为10-5,经过1000次迭代学习率降低为10-6,共迭代6000次。
[0080] 可选地,步骤S3包括以下步骤:
[0081] S31:损失函数可用L(Y,f(x))来表示。其中Y表示其真实值,f(x)是模型输出的预测值。一般情况下,目标函数包括了损失函数和正则项,用下式表示:其中第一项是损失函数,第二项是正则化项,为了
避免过拟合现象,这里采用L2范数。训练可求得使目标函数L更小的参数ω。为了得到更好的网络模型,采用自适应矩估计作为优化器。
[0082] 对于多分类问题,卷积神经网络采用的是交叉熵损失当输入样本被判定为真实类别的概率越大,样本的损
失值也就越小。Softmax相当于一个归一化的作用,函数表达式为: 对于分类任
务,若数据集共有n类,那么Softmax的输出就是n维向量,向量中的每一维的值代表该输入数据属于某一类的概率值,共n类。一般情况下,Softmax层是接在全连接层后的,经过Softmax层后得到的输出再输入并最小化损失函数,将误差反向传播来优化网络参数,从而达到训练与学习的目的。
[0083] S32:由于时间流和空间流的互补性,融合技术能使准确率明显提高。融合方法可用一些集合函数,包括L2范数,均匀平均,最大值等。将双流卷积神经网络的两个输出进行最大值融合。令xa,xb分别为两个卷积神经网络的输出,H,W和D分别代表特征映射的宽度、高度和通道数量。则在t时刻,两个卷积网络的输出分别为 使用 来取得两个特征映射的最大值。
[0084] S33:在测试阶段,将划分好的测试集中的RGB数据与光流数据分别输入至双流卷积神经网络模型,得到五类微表情的最终的识别结果。
[0085] 可选地,步骤S4包括以下步骤:
[0086] S41:利用虚拟现实技术在Unity3D平台创建虚拟学习环境,模拟课堂学习环境,对虚拟角色进行建模,并创建交互界面。
[0087] S42:使用Kinect实时采集用户面部图像序列,并使用OpenCV库中的Haar-cascade分类器将已获取的图像进行人脸检测与面部裁剪,再对裁剪之后的图像序列进行欧拉视频放大并保存为RGB图像;并进行光流分析,得到光流帧。
[0088] S43:最后将RGB图像与光流图像输入到微表情识别模型中,经前向传播,模型将会返回微表情分类结果,如开心、压抑、难过、惊讶和其他,并在场景中出现相应交互动画。根据分类结果,教师可及时调整授课策略,转变教学思路,提高学生的学习效率,改善学习效果。
[0089] 最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈