文章:A learnable end-edge-cloud cooperative network for driving emotion sensing
引言:
驾驶员的情绪状态直接影响安全驾驶。在“车-人-路-云”一体化控制框架下,我们提出了一种端-边-云协同情感感知网络模型(EEC-Net)。端侧提取司机人脸视频流的关键帧,并进行批量压缩;边缘侧提取重建图像的感兴趣区域 (ROI) 作为情感识别模型 (tiny_Xception) 的输入进行分类;云控端接收到异常的 ROI 图像数据,进行在线训练,动态调整边缘模型的运行参数。最后,我们在开放和自建的数据集上进行了测试,结果表明tiny_Xception的准确率与 mini_Xception 相比显著提高了 2.45%;EEC-Net 模型能够可靠地感知负面情绪周期,整体系统内存消耗降低约 5%,网络传输数据量和情绪识别的计算时间分别降低 95%、60%。
1.介绍
驾驶员情绪分析在安全驾驶中起着至关重要的作用。由于其在人机交互中的潜在应用,它引起了越来越多的关注,人机交互能够识别主要驾驶员的情绪并根据他们的面部情绪调整他们的行为。研究表明,在现有的交通事故原因分析中,驾驶员的人为因素占 90% 以上 [1]。在驾驶员的人为因素中,“路怒症”是根本原因之一。大约 60% 的机动车司机因在交通拥堵中驾驶的压力和挫败感而患上“路怒症”,这带来了越来越严重的交通安全问题。由“路怒症”引起的攻击性驾驶行为已成为影响交通秩序和安全驾驶的重要因素。因此,识别驾驶员情绪的研究对于维护交通安全具有重要意义。
为了解决大数据量下驾驶员情绪识别的准确性和实时性问题,研究人员利用不同的电子设备来捕捉通过外部信号传达的情绪。随着硬件技术的发展,它变得更容易获得反映人类情绪的信号,例如面部视频序列、声波和脑电图 (EEG) 信号 [2]。其中,面部表情最能直观地反映人的情绪状态和心理活动,是表达情绪必不可少的 [3]。面部表情在情绪识别任务中非常可靠;此外,使用计算机识别表达式具有独特的优势。无论动作有多快,在相机客观捕捉的情况下,计算机都能获取相应的信息并进行处理。通过将面部感知数据与高效稳定的模型相结合,计算机可以低成本处理大规模的情绪识别任务,远超专业人士人工识别情绪的效率。驾驶员的面部识别会自动与驾驶员的身份证件 (ID) 账户网站相匹配。检索上一阶段设置的自动座椅调节、中控显示样式等个性化设置。在驾驶过程中,当检测到驾驶员的路怒表情时,系统可以主动警告驾驶员。长时间自动驾驶识别驾驶员的疲劳状态。结合行程推荐可行的服务区域和停车场信息,确保全程安全驾驶。
在驾驶汽车的相关技术中,感知信息是辅助驾驶做出各种行为决策和运动控制的基础。通过获取充分、准确、可靠的感知信息,辅助驾驶可以做出安全合理的驾驶决策。智能网联汽车依靠各种传感器进行信息感知。通过分析感知数据,可以及早发现驾驶员的异常活动,从而显著提高驾驶安全性。传统上,车载摄像头捕获的视频流会完整上传到远程数据中心,事实证明,远程数据中心在配置资源以进行进一步处理方面非常灵活高效 [4]。但是,这将使网络承担从移动用户到远程数据中心的数据聚合的负担,从而通过分析感知数据显著增加任务处理的响应时间。响应时间对于分析驾驶过程中的感知数据非常重要。在智能网联交通新架构下,将智能计算从车载终端转移到边缘节点,可以有效降低车载终端的计算压力和能耗,促进智能网联汽车的高效决策、协同管理和安全控制。
与其他感知信息相比,相机拍摄数据中的感知信息往往更加丰富和直观,在信息感知中起着至关重要的作用。因此,视频数据是智能网联汽车在进行驾驶员面部情感识别时感知的主要数据类型。在实际应用中,车载摄像头通常具有固定的安装位置、稳定的车载电源和稳定的拍摄角度。它们非常适合作为智能网联汽车中驾驶员的面部信息感知节点 [5]。但是,随着摄像机分辨率的提高,摄像机每秒生成的视频数据会急剧增加。汽车中的单个高清摄像头生成的数据量可以达到每秒数十兆字节。实时视频数据处理对车载情感识别终端提出了巨大的计算和存储要求。无线网络可以连接来自许多车辆的并行视频数据,因此上行链路造成了传输瓶颈。此外,车辆的高速运动会导致无线链路信道环境的动态变化。海量数据的视频传输也会增加无线传输失败的概率,影响情绪识别系统的运行稳定性。
基于上述问题,本文旨在整合边缘计算架构,提高单车和多车场景下驾驶员情绪的识别准确率和处理效率,减少网络传输数据量和系统资源消耗,进一步构建智能车辆安全辅助驾驶系统,帮助制定有效的主动安全控制策略。我们提出了一种端边云协作情感感知网络模型 (EEC-Net)。通过对车载摄像头感知的视频流数据进行一系列优化处理,可以准确获取驾驶员的路怒情绪。EEC-Net 模型的性能在开放和自建数据集上进行测试和评估。实验结果表明,EEC-Net模型的性能远优于传统的驾驶员情感识别模型。本文的主要贡献可以总结如下。
- 在智能网联交通和“车-人-路-云”的一体化控制框架下,提出了网络模型EEC-Net,车内驾驶员表情特征采集、边缘平台集中表情识别、云平台学习和训练的一体化设计保证了分布式情感识别的时效性。
- 在端侧,我们提出了一种基于帧间差异的视频流关键帧提取和基于堆排序的改进霍夫曼图像压缩算法,以实现轻量级图像重建和硬件加速。
- 在边缘侧,我们改进了mini_Xception网络的计算模块,使用 swish 函数的简化 h-swish 激活函数代替传统的整流线性单元 (ReLU) 激活函数,并提出了一种基于感兴趣区域的情感识别模型tiny_Xception,该模型在保持少量函数计算的同时保留了更多的特征,以实现对重构信息的高效、高精度识别。
- 在云控侧,接收边缘服务器识别的异常人脸的感兴趣区域 (ROI) 图像数据,进行在线训练,并将训练后的优化参数下发给边缘服务器,确保边缘模型的工作参数能够动态调整。
- 我们在公共数据集 CASME II 、 Fer2013 和自建数据集 Driver2021 上测试了所提出的模型。结果表明,所提出的EEC-Net比传统的情感识别架构性能更好。
本文的其余部分结构如下。第 2 节概述了边缘计算和深度学习的一些研究以及与情绪识别相关的一些方法。第 3 节提供了包括关键帧提取算法、图像压缩算法、ROI 特征提取和情绪感知学习优化建模在内的方法。我们在第 4 节中介绍了实验结果以评估所提出的方法,最后,在第 5 节中,我们总结了本文。
相关工作
更多的研究旨在通过移动边缘计算协作来满足处理感知数据的延迟要求。将深度学习与边缘计算相结合,可以显著降低数据传输过程中的数据传输延迟,提高车联网系统的稳定性。因此,端边云协同计算对于提高智能网联汽车 (ICV) 的驾驶安全性具有重要意义。传统的集中管理平台建设方案主要是通过网络将所有数据上传到云计算中心,并利用云计算中心的超算能力集中解决应用的计算需求 [6]。然而,传统的集中式处理模式在万物互联的背景下存在许多不足。首先,随着边缘设备数量的增加,生成的数据量也激增,导致网络带宽逐渐成为云计算的一部分。其次,随着用户应用数量的增加,未来大型数据中心的能耗需求将难以满足。随着车-路-云协同技术的发展,越来越多的研究集中在通过 MEC 协同满足处理感知数据的时延需求上。将深度学习与边缘计算相结合可以显著减少传输数据所需的时间。因此,可以提高车联网系统的安全性 [7]。一些研究人员对国内外的边缘计算和深度学习进行了详细的研究。Guill ́en 等人 [8] 使用深度学习来评估边缘计算平台的性能,该平台用于预测农业低温,从而为物联网基础设施提供计算资源,而无需添加任何计算资源。Chen 等 [9] 利用全球定位系统 (GPS) 数据集建立了堆栈去噪自编码器的深度模型,提取并利用人员的移动性来预测交通事故风险,并有效集成边缘计算和深度学习,提供交通事故风险的早期预警。
关于情绪识别和分类的研究已经存在一系列。传统的情感识别和分类研究主要包括基于视频图像序列和静态图像的情感识别。Sikka等[10]将视频事件建模为子事件,并应用弱监督学习方法与多个面部特征相结合来预测面部表情、疼痛和意图,以视觉方式表示面部表情的变化。Gao et al. [11] 提出了一种基于开源计算机视觉 (OpenCV) 的面部表情识别方法。该方法通过级联分类器对视频流图像各个位置的各种特征进行窗口检测,得到视频流人脸检测图像,并进行图像预处理。Azman等[12]应用了支持向量机和Viola-jones haar特征算法来监测驾驶员的面部表情。一旦检测到驾驶员持续生气 3 秒,就会发出警报。Breuer 和 Kimmel [13] 使用卷积神经网络 (CNN) 构建了在各种特征提取和缩减 (FER) 数据集上学习的模型,并展示了训练网络进行跨数据集和各种 FER 相关任务的情绪检测的能力。Verma等[14]提出了一种情绪的动态表示,将视频的面部运动信息保存在一帧中,结合横向积累混合网络来捕捉面部表情的微观特征,从而提高模型的准确性。Zhao et al. [15] 提出了一种针对面部特征点的编码策略,利用卷积图网络充分挖掘了不同表情背后面部成分的结构信息,并进一步应用于全脸观察,学习不同表情的全局特征,以推动网络关注信息量最大的面部区域和成分, 在所提出的框架中引入了多级注意力机制,这提高了有效 FER 学习表示的可靠性。Zhang等[16]建议使用大量噪声标记数据来提高在一小组干净标签上训练的FER分类器的性能,提供一种新的姿态建模网络,以自适应地捕获人脸图像深度表示的差异和不同头部下的姿态空间。Jain等[17]提出了一种多角度最优模式深度学习(MAOP-DL)方法,通过使用基于多角度的最优配置来纠正照明变化问题并找到特征集的正确对齐方式;从图像中减去背景和分离前景,然后提取相关关键特征。然后有选择地提取相关特征,并使用长短期记忆卷积神经网络 (LSTM-CNN) 来预测面部表情所需的标签。Chowdary等[18]提出使用一种基于迁移学习的方法,去掉预训练的ConvNet的全连接层,增加一个适合情感识别任务数量的全连接层。Schoneveld等[19]提出了一种模型级融合策略,该策略融合了音频和视觉模式的深度特征表示,然后使用递归神经网络来捕获时间动态以进行情感识别。Said 和 Barr [20] 提出了一种用于人类情感识别的人脸敏感卷积神经网络 (FS-CNN)。FS-CNN 由补丁裁剪和卷积神经网络组成,用于裁剪高分辨率图像人脸并根据特征分析预测面部情绪。
在众多基于深度学习的方法中,一些代表性的作品如表 1 所示。
在智能网联交通系统的新架构下,需要进一步发展该技术体系下的面部表情识别框架,并进行框架建设和技术验证。以上很多研究工作都是对每一帧视频进行检测的,但是当单帧识别率较低时,整体检测会失败。以上部分都依赖于已有的数据集。数据集中的图像序列已经提前进行了分割,因此算法只需要完成模式识别的检测和分类,并不能满足实际任务需求。因此,本文提出了一种端边云协同情感感知网络模型EEC-Net,该模型融合了边缘计算架构,促进了区域多车辆驾驶员表情的分布和高效识别。
3. EEC-Net 模型设计
根据中国智能网联汽车产业联盟发布的车-路-云一体化控制系统框架,路侧单元(RSU)对道路上的智能网联汽车进行无线覆盖,每个RSU都连接到路侧多接入边缘计算(MEC)平台。在此技术体系下,本文提出了一种驱动情感感知的可学习端边云协作网络 EEC-Net。为了指定所提出的 EEC-Net 方法,我们在图 1 中说明了 EEC-Net 的框架。用于驾驶情绪感应的可学习端 edgecloud 协同网络,分为驾驶员人脸感知模块、边缘识别模块、云端在线训练模块。车载摄像头对驾驶员进行人脸感知,进行周期性的人脸视频采集、视频流关键帧提取、图像压缩编码和数据传输;边缘识别接收图像编码数据,并使用集成到 ROI 特征提取中的情感识别模型来识别和分析面部特征。云端接收边缘服务器识别的异常人脸 ROI 图像数据,在线训练,并发布优化后的情绪参数感知学习模型传递给边缘服务器,确保边缘服务器动态调整情感感知学习模型的工作参数。最后,EEC-Net 通过端边云学习模型协同机制,提升车载视频检测和云控制系统的动态服务性能。
3.1. 视频流关键帧提取算法
在实际的驾驶员情绪识别场景中,实时采集驾驶员面部的视频流,转化为连续的图像帧序列,并交付给部署在云平台上的深度学习模型进行集中识别和分类。由于驾驶员的面部表情变化和长期不变的表情循环,视频流中可能存在大量相似的帧。如果将这些相似的帧上传到云端进行识别和分类,会增加网络传输的压力,造成服务器计算、存储、内存占用等资源的浪费。因此,对于情绪识别场景,不需要处理视频流中的每一帧,只需处理变化较大的关键帧即可完成情绪识别任务。本文选取视频流中局部变化较大的关键帧作为网络的输入,并将关键帧的情感分布作为驾驶员路怒情绪识别的判断依据。当驾驶员的面部表情或动作变化较大时,视频流中相邻帧之间的灰度值会存在较大差异,因此提出了一种基于帧间差异的关键帧提取方法;这种方法的主要思想是进行两帧或三帧连续时间的差分运算。将红绿蓝 (RGB) 真彩图像转换为灰度图像后,不同帧的相应像素出现差异,并使用局部最大值选择关键帧,以过滤掉大部分冗余帧。与深度学习算法相比,帧差算法占用资源少,耗时短,精度衰减小。
关键帧提取过程包括以下步骤:1 、输入视频流数据;2、对前后帧图像进行预处理,并进行灰化和高斯滤波;3、计算相邻帧之间的像素差值;4 、引入 smoothing 参数,使峰值更加明显;5、根据 Maximum Local 值提取 DIFFERENCE 值作为关键帧。基于帧间差异的视频流的关键帧提取表现为
3.2. 改进的 Huffman 堆排序图像重建算法
在 EEC-Net 中,边缘侧需要持续接收车载设备长时间传递的驾驶员人脸图像数据,以及大量数据进行情绪识别,这对服务器的内存、计算、存储等性能构成了巨大挑战。因此,在车联网领域,图像无损压缩技术变得必不可少。为了保证压缩和重建的图像不会影响情感识别任务的准确性,需要在不损失图像质量的情况下减小图像数据量。霍夫曼编码作为无损压缩的一种方式,在算法复杂度和压缩效率方面优于其他压缩方法。考虑到情感识别任务场景的实时性要求,进一步提高图像压缩重建的处理速度,该文将传统的霍夫曼图像压缩算法与堆排序算法相结合。我们提出了一种基于堆排序的改进霍夫曼图像压缩算法hs_Huffman,在保证无损压缩的基础上提高了图像压缩的速度。hs_Huffman主要改进了霍夫曼代码生成的霍夫曼树构建中的排序方法,将整个字符串的通用排序算法改为堆排序,采用堆排序选择源符号概率最低的两个节点,并生成新的概率节点添加到序列中进行排序并再次选择。
hs_Huffman算法的过程包括以下步骤:1 ,提取关键帧图像的信息源符号和信息源符号的概率;2,根据概率约束为信息源符号创建一个堆,将堆调整为一个小的根堆,并取出堆顶部的最小数据;3,选择两个概率最小的信息源符号来构建最优霍夫曼树;4,生成一个新的概率节点加法序列,表示两个概率的和;5 ,重复步骤 1 到步骤 4,直到霍夫曼树的构建完成;6、根据原始路径回溯重建图像。改进的 Huffman 堆排序图像压缩如算法 2 所示。
3.3. 驾驶员面部感兴趣区域提取
当使用 EEC-Net 识别驾驶员的情绪时,由于在不同情绪下拍摄的同一个人的面部图像包含相同的特征,如鼻子、耳朵和脸型,这些不相关的特征会减弱关键特征对数据的影响,如嘴巴、眼睛和眉毛,导致 EEC-Net 情绪识别的准确性降低。在本文中,我们考虑将驾驶员面部图像中的感兴趣区域作为输入网络的主体,用于图像识别研究和实验。如果由于驾驶员头部偏移导致无法正确识别人脸的 ROI 特征区域,此类异常的人脸 ROI 图像数据将被传送到云端进行处理。此外,为了避免干扰造成的误检测结果,一些检测到的尺寸较小或长度和宽度不平衡的图像被丢弃。
3.4. 情绪感知学习优化的建模
利用云计算和边缘计算的协同优势,高效识别大规模 ROI 图像数据并反馈路怒症。在云端,接收边缘服务器识别出的异常人脸 ROI 图像数据,在线训练tiny_Xception模型,并将优化后的情绪感知学习模型参数发布到边缘服务器,以便边缘服务器动态调整情绪感知学习模型的运行参数,提高 EEC-Net 情绪识别准确率。CNN 深度学习的持续发展改进了架构,以实现更准确的图像分类技术。同样,tiny_Xception架构是根据几个基本概念开发的,包括卷积层、深度可分离卷积层和初始模块。此外,CNN 架构中的激活函数是必要的,其中 H-Swish 是一种新的激活函数,旨在改进传统的激活函数。本节介绍了 ROI 的深度可分离卷积过程、tiny_Xception架构以及用于驾驶员情绪识别的图像分类模型的 h-swish 激活函数的新修改。
3.4.1. 深度可分离卷积层
tiny_Xception 中的深度可分离卷积结合了深度卷积和点卷积,以减少颜色通道空间和深度维度的计算和建模参数。
这是通过创建与 1 × 1 的卷积核大小来更深入地划分传统卷积过程,将深度卷积与点卷积相关联,从而操作图 3 所示的深度可分离卷积。tiny_Xception的深度可分离卷积,包括相对于 1 × 1 点卷积的 RGB 颜色的每个颜色通道的 3 × 3 个滤镜。深度卷积为输入数据集 M 的每个通道生成一个滤波器,并使用输入通道的一个滤波器生成特征图,该滤波器计算确定 DF × DF × M 和深度卷积。