期刊:IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTA TION SYSTEMS
论文地址
链接:https://pan.baidu.com/s/1l-LybqzJ3YOfs5aM0oxkAQ
提取码:zqdc
A Convolution Bidirectional Long Short-TermMemory Neural Network for Driver Emotion Recognition
用于驾驶员情绪识别的卷积双向长短期记忆神经网络

摘要

实时识别驾驶员情绪可以大大提高交通安全。随着通信技术的快速发展,处理大量视频数据和实时识别驾驶员情绪成为可能。为了有效识别驾驶员的情绪,提出了一种新的深度学习框架——卷积双向长短期记忆神经网络。该方法基于从面部皮肤信息提取的几何特征和从RGB分量的变化提取的心率来预测驾驶员的情绪。使用卷积神经网络获得的面部几何特征是双向长短期记忆(双LSTM)心率分析的中间变量。随后,双LSTM的输出被用作CNN模块的输入,以提取心率特征。CBLNN使用多模态分解双线性池(MFB)来融合提取的信息,并将其分类为五种常见的情绪:快乐、愤怒、悲伤、恐惧和中立。对我们的情感识别方法进行了测试,证明它可以快速稳定地实时识别情感。
索引术语——情绪识别、面部皮肤、心率、双向长短期记忆(双LSTM)、CBLNN。

一 引言

移动通信技术的成熟使得大量数据能够实时上传到远程处理中心,进行繁重的操作,为用户调整神经网络。随着传感器技术和深度学习算法的发展,实时情感识别变得更加准确和适用于现实世界。特别是对于交通领域,实时识别驾驶员的情绪已经成为一个重要的解决方案,它可以潜在地改变驾驶员的行为,从而减少驾驶员在驾驶时的潜在危机。[1],[2]。

为了实时识别情感,考虑了许多特征来提高准确性和可用性,例如语音、文本、面部表情、眼睛注视方向和生物电信号。例如,一些语音和文本特征可以用来识别人的情绪状态[3],[4]。然而,它们比现实世界中驾驶情况下的视觉特征更难获得。

通常,情绪通过面部表情普遍存在。例如,已经提出了基于摄像机的检测方法[5],以使观察者在用户情况下(例如玩游戏、驾驶汽车)的交互过程中更加自然和方便。一般来说,人脸识别方法有两种,即基于几何的[6]方法和基于外观的[5]、[7]方法。面部特征很容易受到外部因素的影响,因此需要非常复杂的数据采集设备。另外,在情感识别领域,五官个体差异较大,五官泛化能力不强。因此,仅使用面部特征不足以准确识别情绪。

与视觉和声音特征不同,生物特征信号如心电图、肌电图等。已经广泛应用于大多数情感检测实验中。例如,最近的实验使用微波、热成像和其他方法来检测心率[8]。然而,这些方法要求受试者穿戴特殊装备并直接接触[9],[10],从而干扰受试者的活动。

在这项工作中,我们的目标是提供一种能够克服这些限制的新方法。

提出了一种新的基于心率和人脸几何的深度学习框架CBLNN。该方法利用CNN进行人脸几何分析,利用CNN获得的人脸特征作为中间变量参与双LSTM心率分析过程。融合面部特征和心率特征,得到情感分类结果。本文的主要贡献是:

1)提出了一种基于人脸几何和心率的驾驶员情绪感知方法。该方法引入通过面部皮肤亮度变化获得的心率来补偿几何特征中缺失的信息。该方法既保留了传统单帧面部结构状态情感识别方法的优点,又增加了对时间变化的考虑。
2)该方法有效地结合了CNN和双LSTM。空间数据的分析参与时间数据的分析,从而更有效地结合空间和时间特征。
论文的其余部分组织如下。第二节介绍了相关工作。第三节简要说明了这一拟议方法的概况。第四节详细介绍了CBLNN模型。第五部分是情感识别方法。然后我们在第六节展示了实验和结果。讨论见第七节。结论载于第八节。

二、相关工作

A.虚拟云计算
交通领域有很多关于云计算的研究[11]–[14]。Wan等人[15]提出了一种基于移动云计算的战场监视系统。哈什姆·埃扎等人[16]提出了一种新颖的车载网络系统模型,该模型有助于提供可靠、安全和隐私感知的实时视频报告服务。Sorkhoh等人[17]解决了工作负载卸载以及在边缘可用计算资源上调度计算任务的问题。Aissioui等人【18】引入了跟随我边缘云(FMeC)概念,利用移动边缘计算(MeC)架构来满足汽车系统的需求。陶等人[19]提出了一种支持通信的车载云计算平台,用于提供有效的车载数据云服务。
B.基于语音的识别
Ramakrishnan和El Emary [3]提出了语音情感感知的声学特征,并介绍了10个有趣的语音情感感知应用。Chavhan等人[4]在自动语音情感感知的研究中,使用Support Vector Machine(SVM)作为分类器,对“快乐”、“悲伤”、“中性”、“恐惧”等状态进行分类。测试结果的成功率男性为94.73%,女性为100%。中性病例的正确率为93.75%。
C.基于面部的识别
Monkaresi等人[8]使用了两种主要的面部表情识别方法,一种是基于几何的,另一种是基于外观的。这两种方法各有利弊,它们的结合取得了较好的效果。Mariooryad等人[20]考虑了发音过程和内部情绪对面部表情的影响。徐等人[21]提出了一种称为面部动态图的方法,即使在人连续运动的情况下,也能正确检测人的情绪。胡等人[6]在差分图像计算中,通过使用检测到的人脸标志作为关注区域来提升局部值,从而对MHI进行了改进。吴等人[7]提出了两种将头部姿势和眼睛注视结合到连续情绪识别中的方法。蒋等人[5]提出了一种基于概率和集成学习(PIL)的分类算法,用于解决高级人类情感识别问题。
D.基于生物特征的识别
洛佩斯-吉尔等人[10]提出了一种使用眼睛跟踪、生物测定和脑电图(EEG)测量设备研究基本和复杂情绪的方法。费迪南多等人[22]从心电图推导出心率变异性(HRV ),以确定情感识别中使用的一些标准特征,并将情感转移到觉醒价空间。Katsigiannis等人[23]提出了一个多模态数据库DREAMER,它集成了心电图和脑电图数据。参与者在每次刺激后进行自我评估,以修正数据库。阿伦扎等人[24]描述了HRV短时间序列的非线性复杂性,并在视觉情绪诱导实验中验证了他们的方法。达班鲁等人[9]通过刺激冷色调和暖色调来分析HRV,并将积极情绪和消极情绪联系起来。达班鲁等人[9]提出了一种基于IoMT的情感识别系统。阿佩尔汉斯和吕肯[25]得出结论,HRV是一个可接近的研究工具,可以增加社会和精神病理学的情感理解过程。金塔纳等人[26]证明,HRV增加可以提高一个人识别情绪的能力。
虽然这些方法已经取得了显著的性能,我们总结如下限制:
1)传统方法为了抵抗光照条件的影响,忽略了亮度信息,如LBP [8]或灰度图像。
2)传统的情感识别方法主要集中在单帧上,很少或根本没有考虑信号时间变化中包含的信息[8]–[21]。
3)大多数使用生理信号的方法都是侵入性的,会干扰驾驶员的操作。基于视频的检测方法适用性更强,成本更低。

三.概观

提出了一种新的深度学习框架CBLNN,通过Kinect v2检测人的面部几何形状和心率来估计人的情绪。图1示出了所提出的CBLNN方法的过程图。Kinect v2是用来捕捉面部特征。此外,由于全身血流引起的周期性面部亮度变化可用于确定心率,Kinect v2可检测此类变化以捕捉心率。该方法利用CNN进行人脸几何分析,然后通过CNN获得的人脸特征参与双LSTM的心率分析过程。双LSTM的输出将被输入CNN以获得心率特征。CBLNN使用多模态分解双线性池来融合提取的信息,并将其分为五种常见情绪。
以下部分描述了提议的CBLNN方法的细节。

四.低层特征提取

A.心率特征的提取

心率与面部情绪有很强的相关性。McCraty等人[27]观察到,某些特定的精神状态总是与不同的心理和行为因素相关,并且与特定的心率模式相关。下图是心率转速图。图2显示了特定情绪下的心率变化。
心率由Kinect v2采集。这种设备可以检测到由全身血液流动引起的面部周期性亮度变化。事实上,随着血液的流动,人体皮肤的表面会发生轻微的变化,Kinect设备会通过摄像头快速识别人体皮肤的变化。Kinect的摄像头传感器检测到的亮度与血液通过面部肌肉吸收的光量成反比。血液通过面部肌肉时光线越弱,传感器检测到的光越多。亮度的周期性变化可以描述为可用于确定心率的信号/波。独立分量分析(ICA)用于将亮度变化与心率相匹配。独立分量分析是一种基于信号高阶统计特征的信号分析方法。观察到的随机信号遵循:

其中,X是观测信号矩阵,每个观测信号之间存在统计相关性。在变换矩阵W的变换之后,信号矩阵S的各个信号分量之间的相关性降低。特征矩阵的联合近似对角化(JADE),独立分量分析算法被用来为混合的R,G,B,IR数据提供分离矩阵。采用独立分量分析算法为混合的红、绿、蓝、红外数据提供分离矩阵

JADE算法的目标是计算混合矩阵的逆,它可以用四个步骤来描述[28]:
分离后,使用快速傅里叶变换提取信号[29]。采用带通滤波找到匹配的心率范围。频带范围在0.7赫兹至4赫兹之间,相当于每分钟42至240次心跳[30]。

B.人脸几何特征的提取
Kinect提供的人脸跟踪SDK非常可靠,可以实时跟踪人脸。人脸跟踪SDK可以提供121个三维共享点和100个跟踪点[31]。面的边界框可以由面部特征点决定。由于光线、角度或背景的影响,人脸图像中噪声的存在是固有的,因此不能直接用于人脸特征提取。这些图像必须经过预处理。原始获得的图像经过切割、缩放、滤波、去噪、直方图均衡和灰度均衡后,成为归一化的标准图像,用于后续的特征提取。

将图像切割并缩放为48px × 48px后,使用Gabor小波进行图像处理[32]。在这项工作中,圆形高斯包络Gabor小波常用于人脸识别。其核心函数定义如下:
主成分分析是一种将特征向量投影到低维子空间的线性映射方法。一旦通过Gabor变换提取了面部特征向量,就应用主成分分析来获得低维的特征分析。分离不同滤波器下得到的特征向量,利用主成分分析对每个滤波器下得到的特征向量进行降维。每个样本的最终特征仍然由多个相同维数的向量组成。

V. CBLNN模型的网络结构

CBLNN的网络结构如图4所示。在CBLNN中,CNN用于处理面部几何图形。CNN [34]是一种深度学习方法,广泛用于解决复杂的问题。网络由卷积层和池化层组成。它先进行卷积,然后进行合并,将输出作为输入馈送到下一个卷积层,依此类推。


CNN的特点使其在图像特征提取方面具有显著优势。CNN基于对生物视觉细胞局部感知的理解,使用部分滤波器进行卷积。具体来说,输入项的局部子矩阵和局部滤波器之间的运算是内积。为了更好地表示数据,我们使用卷积层通过滤波器对多个输出矩阵进行处理,每个输出矩阵的大小为(N-m+1),具体操作过程如下

其中x1,j i,l代表l卷积层,I代表I卷积输出矩阵的一个值,j代表对应输出矩阵的个数。从左到右的层的索引对应于从0到N,N是指输出矩阵的卷积数。f是非线性函数,这里用的是sigmoid函数。

CNN的池化层是一个进一步降低矩阵维数,不破坏数据内在联系的过程。汇集层可以选择最大值(最大池化)或取平均值(平均池化)。然而,在这种方法中,我们使用平均池化层,它的输入来自前一个卷积层,其输出用作下一层的输入。

均值池用于通过局部均值来降维。详细操作程序如下,

其中xl,j i表示池化后本地对的输出项。

该方法利用Kinect实时检测人脸皮肤,并通过人脸皮肤数据计算人体的行为特征。在对输入卷积神经网络进行训练和测试之前,需要先对输入数据进行预处理。数据采集处理将大小限制为15×1向量,其中15表示投影到低维子空间后的维数。主成分分析不仅可以降低特征维数,而且可以最大限度地保留原始信息。另外,对不同滤波器下得到的人脸特征进行分离降维。目的是保持特征的空间相关性。这样更适合CNN特征提取。

最后一个卷积层的输出被用作中间变量,以参与心率的双LSTM [35]分析过程。

双LSTM是一种RNN(递归神经网络)。双LSTM用于将连续动作的心率信号点序列(N个采集点)编码成向量,并将它们记录为hN。与其他算法不同,双LSTM可以跟踪信息,这是处理序列的理想选择。双LSTM将心率信号点向量h0与第二心率图点向量组合,以生成新的向量h1。T h e n继续与下一个心率图点向量结合生成h2,一个n d s o on,直到向量hN。

尽管LSTM能够捕捉长期序列信息,但它只考虑一个方向。这意味着LSTM的当前帧只受当前状态的影响。为了加强这种关系,我们在处理当前帧时也会考虑下一帧。双LSTM适合这种情况。第一层是向前的LSTM,第二层是向后的LSTM。最终产量可根据以下公式计算:

六.实验

A.实验环境

我们进行了两组实验来评估我们的方法。第一组实验由两个子实验组成。第一个分析了心率估计的准确性。第二个实验是与其他模型的对比实验。第二组实验是在仿真环境中验证传输速率。

出于安全考虑,我们选择了模拟驾驶环境来收集数据。邀请了12名有驾驶经验的志愿者收集数据,其中包括3名女性和9名男性。如图5所示,Kinect放置在驾驶员的正前方,允许它捕捉驾驶员的面部。每个视频都被切成1分钟的片段,由志愿者自己标记。

在下一步中,通过CNN获得的面部特征将被用作双LSTM的输入。其目的是参与Bi-LSTM对心率数据的分析。为了对情感进行分类,Softmax在MFB之后连接。Softmax的输出是情感识别分类。最后,递归网络由BPTT [37]训练。具体来说,批次设置为64,动量为0.9。学习率从0.01开始。然后每迭代2万次,学习率除以10。经过50,000次迭代,训练收敛了。测试样本如表一所示,其中包含受试者提供的五种情绪。一部分样本如图6所示。
B.心率估计的分析

实验中的心率是根据面部数据估算的。首先,我们评估这个心率的准确性。我们通过一段时间内的面部数据获得心率。为了量化选定的移动窗口大小对心率准确性的影响,我们测试了三种不同的移动窗口大小。值得注意的是,正常人的心率范围在42 - 240 bpm之间,也就是心跳间隔会是0.7-4秒。基于这个事实,我们选择了0.5s、1s、2s、4s、8s五种不同的移动窗口大小进行分析。地面实况(The ground truth)由BMD 101心电传感器测量。

如表二所示,4秒移动窗口大小具有最高的准确性。在横向实验中,心率测量移动窗口大小设置为4秒。图7清楚地显示了由非接触式测量的心率方法(Kinect v2)与基本事实密切相关。图8显示了误差分布。

C.识别
在这个实验中,不同层次的情感特征被用来评估模型的性能。正如我们在第三节中讨论的,我们分别评估了面部几何形状和心率的表现。然后我们评估了这些情感特征组合的表现。在接下来的两个小节中,我们用没有心率的方法、方法[6]和方法[9]来分析我们的结果。

1)仅通过面部几何图形识别:首先,我们检查面部几何形状对我们的实验数据集的影响,作为比较的基线。我们总共进行了100次测试,并对这些测试的结果进行了排序,选择了从第10次到第90次排序的数据,并计算了平均值。如表三所示,我们的无心率方法在检测“快乐”(86.36%)、“愤怒”(84.00%)、“悲伤”(83.96%)和“中性”(86.43%)方面表现良好,恐惧的准确率相对较低,只有49.09%。我们的方法可以达到与方法[6]和方法[9]相同的精度。可以看出,我们的模型在识别快乐、愤怒、悲伤和中立方面具有相似的准确性。但是恐惧的准确率要低很多。这可能是因为恐惧的情绪过于复杂,这种情绪在脸上的表现与其他情绪过于相似。

2)通过面部几何形状和心率进行识别:

同样,我们总共进行了100次测试,并对这些测试结果的数据进行了排序,选择了从第10次到第90次排序的数据,并计算了平均值。如表四所示,我们的心率方法在检测“快乐”(91.36%)、“愤怒”(90.50%)、“悲伤”(91.51%)和“中性”(89.15%)方面表现良好。将结果与没有心率的结果进行比较,心率分别提高了5.00%、6.50%、7.55%、10.00%和2.71%,证明引入心率可以提高准确率。但是恐惧的准确率还是远远低于其他情绪。这说明面部特征和心率特征的结合并不能很好的区分恐惧。这可能是因为恐惧下的心率特征与其他情绪没有太大区别,不足以帮助面部特征使模型很好的区分恐惧。
如表五所示,我们的方法优于方法[6]和方法[9]。应该注意,方法[9]仅评估“快乐”、“悲伤”和“中性”的准确性。愤怒和恐惧的准确性在这里不适用。最后,总体比较如图9所示。

3)传输效率:
在这部分实验中,我们需要测试所提出的CBLNN方法的响应速度。响应过程包括将视频流发送到处理中心,并在处理中心完成驾驶员的情绪识别后反馈到指挥中心和车辆。假设车辆的传输距离R为500 m,车速恒定在100 km/h,一个不间断稳定的实时传输分辨率为1920×1080(比特率约8 Mbps)的视频流的连接可以达到1.2 Gbps的速度。响应时间不到100 ms,大部分用于数据处理和实时情感识别。

七.讨论

在实验中,快乐、悲伤、愤怒和中立的结果是可以接受的,而恐惧的结果是不令人满意的。同时通过对比分析可以看出,心率的引入确实可以提高准确率。我们怀疑恐惧的低准确率也是由另外两个因素引起的:收集的数据不足,恐惧持续时间短(通常是由突然的路况引起的)使得检测困难,以及我们的数据集中恐惧的面部几何形状不是很明确。如表三所示,相当一部分恐惧样本被认为是中性的。

为了进一步提高准确性,我们计划集成其他特征,如估计眼睛注视方向、评估驾驶员的焦点或集成语音特征。在未来的工作中,我们将尽可能地使模拟环境真实。在我们的实验中,当志愿者面对意想不到的情况时,运动范围更大,也有振动效应。但是在这个实验中,那些样本被忽略了

八.结论

本文提出了一种新的基于人脸特征和心率的驾驶员情绪识别方法。CBLNN使用CNN分析面部几何,通过CNN获得的面部特征将被用作Bi-LSTM的输入,其目的是参与Bi-LSTM对心率数据的分析。CBLNN利用MFB融合提取的特征并进行分类。在实验部分,我们证明了加入估计心率可以弥补亮度信息的缺失,提高准确性。实验结果表明,该方法能够快速、稳定地感知人类情感。

生词短语

data collection equipments 数据采集设备
generalization ability泛化能力
Electrocardiogram (ECG)心电图
Electromyography (EMG)肌电图
a battlefield surveillance system战场监视系统
scheduling of computation tasks调度计算任务
difference image calculation.差分图像计算
a probability and integrated learning (PIL) based classification algorithm基于概率和集成学习(PIL)的分类算法
heart rate variability (HRV)心率变异性(HRV)
is inversely proportional to与…成反比
Independent component analysis (ICA)独立分量分析(ICA)
Joint Approximation Diagonalization of Eigen-matrices (JADE),特征矩阵的联合近似对角化(JADE)
calculate the inverse of the mixing matrix计算混合矩阵的逆矩阵
preprocessed 预处理;预加工(preprocess 的过去式和过去分词)
lateral experiment横向实验

论文翻译(9)---A Convolution Bidirectional Long Short-Term Memory Neural Network for Driver Emotion Recog相关推荐

  1. 【论文翻译】Graph Convolution over Pruned Dependency Trees Improves Relation Extraction

    [论文翻译]Graph Convolution over Pruned Dependency Trees Improves Relation Extraction 摘要 1 引言 2 模型 2.1 依 ...

  2. 有哪些LSTM(Long Short Term Memory)和RNN(Recurrent)网络的教程?

    知乎用户,阿里巴巴数据应用部门长期招聘「算法,分- 500 人赞同 刚好毕设相关,论文写完顺手就答了 先给出一个最快的了解+上手的教程: 直接看theano官网的LSTM教程+代码:LSTM Netw ...

  3. 递归神经网络变形之 (Long Short Term Memory,LSTM)

    1.长短期记忆网络LSTM简介 在RNN 计算中,讲到对于传统RNN水平方向进行长时刻序列依赖时可能会出现梯度消失或者梯度爆炸的问题.LSTM 特别适合解决这种需要长时间依赖的问题. LSTM(Lon ...

  4. Classifying Relations via Long Short Term Memory Networks along Shortest Dependency Paths

    Classifying Relations via Long Short Term Memory Networks along Shortest Dependency Paths 概述 论文提出了一种 ...

  5. Stanford NLP 第六课: Long Short Term Memory

    RNN存在着梯度消失的问题, 难以学习长期的依赖关系.如何解决RNN的梯度消失问题? Long  Short Term Memory (LSTM) 就是解决这个问题的. 上图是LSTM的一个整体结构. ...

  6. 简单聊聊Long Short Term Memory Network (LSTM)和 Gated Recurrent Unit (GRU)两种强大的RNN变体

    上一篇关于RNN的文章最后,我们提到过由于梯度消失和梯度爆炸问题,使得RNN很难处理长距离的依赖.本文我们介绍两种改进后的RNN:LSTM(Long Short Term Memory Network ...

  7. LSTM(long short term memory)长短期记忆网络

    bags of word(WOE) 它的基本思想是假定对于一个文本,忽略其词序和语法.句法,仅仅将其看做是一些词汇的集合,而文本中的每个词汇都是独立的 循环神经网络(recurrent neural ...

  8. 详细讲解RNN+LSTM+Tree_LSTM(Tree-Long Short Term Memory)基于树状长短期记忆网络

    14天阅读挑战赛 详细讲解RNN+LSTM+Tree_LSTM(Tree-Long Short Term Memory)基于树状长短期记忆网络 一.RNN 要讲解Tree_LSTM,这必须得从RNN开 ...

  9. 【深度学习论文翻译】Weakly Supervised Action Localization by Sparse Temporal Pooling Network全文翻译

    Phuc Nguyen(University of California Irvine, CA, USA) Ting Liu,Gautam Prasad(Google Venice, CA, USA) ...

最新文章

  1. 查询增速200倍!看金融业数据库架构如何在蜕变中逆袭
  2. WeightedRandomSampler示例
  3. 面试题:如何编写一个杯子测试用例
  4. 一家互联网公司校园招聘的笔试题以及答题分析
  5. 【NOI2013】快餐店【基环树】【树的直径】【set】
  6. 大数据学习笔记22:MR案例——双MR统计总利润并排序
  7. 2023年辽宁大学原子与分子物理考研上岸前辈备考经验指导
  8. 软件测试工程师必备技能之Java基础
  9. cesium 实现指南针及比例尺效果
  10. 用户/账户/账号的理解
  11. Rokid webhook 五步应用指南 手把手教你做个懒人
  12. Windows进程详解(完整版)
  13. C++ __builtin_系列函数
  14. HBuildX配置夜游神模拟器
  15. 并查集是什么?怎么模拟实现?如何应用?
  16. java对象转xml 高性能_xml与java对象的快速互转
  17. 鼠标悬停 -css如何实现鼠标移至图片上显示遮罩层及文字
  18. 强烈推荐免费在线图片转文字的工具
  19. 盘一盘 Python 特别篇 20 - SciPy 稀疏矩阵
  20. 什么是环境监测?基本概念及相关设备介绍

热门文章

  1. java基础—java内存模型(JMM)CPU架构、缓存一致性、重排序、JMM的实现、JMM保证可见性、有序性问题的详解
  2. PerfDog:app性能测试工具 Android+iOS
  3. 4-20mA变送,电压转电流,PCB和原理图
  4. 2007年高考各地录取分数线-一本分数线-二本分数线
  5. Echarts V5.0版本学习
  6. Mycat读写分离失败(一主一从)尝试解决
  7. 【工程应用接口】多张图片合并(python实现)
  8. java 用json删除注释
  9. 20222023华为OD机试 - 竖直四子棋(Python)
  10. 个人理财第十二课-掌握定投技巧,学会智能定投