CN117558050B - 面向边缘计算端的实时人脸表情识别方法及人机交互系统 - Google Patents
面向边缘计算端的实时人脸表情识别方法及人机交互系统 Download PDFInfo
- Publication number
- CN117558050B CN117558050B CN202311539006.1A CN202311539006A CN117558050B CN 117558050 B CN117558050 B CN 117558050B CN 202311539006 A CN202311539006 A CN 202311539006A CN 117558050 B CN117558050 B CN 117558050B
- Authority
- CN
- China
- Prior art keywords
- model
- module
- layer
- facial expression
- real
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000008921 facial expression Effects 0.000 title claims abstract description 42
- 230000003993 interaction Effects 0.000 title abstract description 23
- 230000008451 emotion Effects 0.000 claims abstract description 80
- 238000012549 training Methods 0.000 claims abstract description 31
- 238000012360 testing method Methods 0.000 claims abstract description 30
- 230000007704 transition Effects 0.000 claims description 25
- 238000011176 pooling Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 18
- 238000013507 mapping Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 3
- 230000009471 action Effects 0.000 abstract description 28
- 230000006870 function Effects 0.000 abstract description 7
- 230000014509 gene expression Effects 0.000 abstract description 6
- 238000012545 processing Methods 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 14
- 241000282414 Homo sapiens Species 0.000 description 8
- 238000011161 development Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 6
- 230000008909 emotion recognition Effects 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 238000010606 normalization Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 240000007651 Rubus glaucus Species 0.000 description 2
- 235000011034 Rubus glaucus Nutrition 0.000 description 2
- 235000009122 Rubus idaeus Nutrition 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000005452 bending Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007334 memory performance Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了面向边缘计算端的实时人脸表情识别方法,步骤如下:获取训练集和测试集,提取训练集图片的初始情感类别标签;搭建模型,并将训练集中的图片分别输入该模型,获得训练集中每个图片的预测情感类别;预测情感类别分别与初始情感类别标签进行比较,并将两者之间的损失最小化,更新模型中的网络参数,直至模型在训练集上保持稳定的情感预测性能,保存模型;用测试集对模型测试,直至得到在测试集上性能优秀的模型。本发明的方法引入了MF模块及SE模块,有效地减少了内存访问成本和参数,同时保证了较高的识别准确性。本发明还公开人机交互系统,该系统可以实现基于实时表情状态的动作和语音反馈功能,具有实际应用价值。
Description
技术领域
本发明属于情感计算领域,具体涉及面向边缘计算端的实时人脸表情识方法,本发明还涉及上述识别方法的人机交互系统。
背景技术
情感在人类日常生活中起着至关重要的作用,直接影响人类的感知能力、逻辑推理能力以及言语措辞,进而对人际关系、社会发展等方面产生影响。因此,情感计算引起了越来越多研究者的关注。随着深度学习技术的发展和相关数据集的构建,情感计算在教育培训、医疗健康、商业服务等多个领域得到了广泛应用。面部表情作为人类情感的最直接表现形式之一,常被用于情感识别任务。然而面部表情信号采集也带来了数据安全与隐私保护问题。因此,如何在保护隐私的前提下准确地识别人类情感成为了一个关键问题。
针对这一问题,研究者们提出了边缘计算的概念,具体来说,边缘计算要求在计算资源有限的边缘设备上直接执行计算操作。这种方法无需将包含面部数据的视频流传输到远程云服务器,从而避免了因数据泄露而引起的潜在隐私问题。对于基于边缘计算的面部表情识别,研究人员面临着平衡模型精度和推理速度的挑战。目前主要有两种方法用于基于边缘计算的面部表情识别:一种是基于手工特征的机器学习方法,利用机器学习技术相对较低的计算和内存要求,在边缘设备上实现更高的推理速度。另一种是利用深度学习方法自动学习具有更好泛化性的面部表情特征,并通过限制模型的深度来避免参数量过多,从而保证模型的推理速度。然而,第一种方法依赖于手工特征的质量,导致模型泛化较差,难以达到较高的识别精度。第二种方法,研究人员经常使用深度可分离卷积或密集连接的常规卷积(通常为3×3卷积)的混合来学习面部表情特征。然而,深度可分离卷积的通道扩展操作带来了过高的内存访问成本,并且常规卷积带来的计算复杂度不容忽视,导致模型在资源有限的边缘设备上难以取得较高的推理速度。其次,这些方法往往使用密集连接完成所有先前各层信息的集成,但其过于密集的连接方式可能会学习到任务无关的冗余特征,从而导致计算资源的浪费。
可以看出,目前的研究工作尽管在面向边缘计算的面部表情识别任务中取得了巨大进展。然而,模型的参数量和计算量都会直接影响到模型准确性以及在边缘设备上的推理速度。具体而言,过高的参数量和计算量会导致较低的推理速度,过低的参数量和计算量则无法保证准确性。其次,模型的内存访问量也直接影响了模型的推理速度,过高的内存访问量同样会导致较低的推理速度。如何较好地平衡模型的参数量、计算量以及内存访问量以实现对模型在边缘设备上准确性与推理速度的平衡成为了一个亟待解决的问题。
发明内容
本发明的目的是提供面向边缘计算端的实时人脸表情识方法,解决了现有技术中人脸识别方法在Raspberry Pi 4B等嵌入式设备上推理速度及准确率低的问题。
本发明的另一目的是提供上述识别方法的应用系统。
本发明所采用的技术方案是,面向边缘计算端的实时人脸表情识方法,具体步骤如下:
步骤1、从图片库中获取训练集和测试集,并提取训练集中每个图片的初始情感类别标签;
步骤2、搭建EC-RFERNet模型,并将训练集中的图片分别输入该模型,获得训练集中每个图片的预测情感类别;
步骤3、将每个图片的预测情感类别分别与其初始情感类别标签进行比较,并将两者之间的损失最小化,更新模型中的网络参数,直至模型在训练集上保持稳定的情感预测性能,保存模型;
步骤4、用测试集对模型测试,直至得到在测试集上性能优秀的模型,即人脸表情识别模型。
步骤5、将任一人脸图片输入人脸表情识别模型即可得到该图片对应的人脸表情类别。
本发明的特点还在于,
EC-RFERNet模型从上到下包括通道扩展层、H-MF模块、过渡层及分类器。
步骤2的具体步骤如下:
步骤2.1、将训练集的图像样本依次输入通道扩展层,通过两层3×3卷积以实现对通道的扩展,并采用最大池化操作进行降采样,捕捉每个图像样本的图像模态特征;
步骤2.2、将提取的图像模态特征先后输入H-MF模块与过渡层中,得到包含任务相关语义信息的图像模态特征序列x;
步骤2.3、将图像模态特征序列x送入分类器进行分类,得到每个图像样本的预测情感类别
其中,H-MF模块由采用谐波密集连接方式连接的k层MF模块构成,MF模块是由PConv、Conv与SE模块组成的;
过渡层由卷积层、池化层组成,过渡层的特征输入由k层MF模块的特征输出拼接构成;
H-MF模块的搭建过程如下:第一层MF模块的输入为步骤2.1中捕捉的图像模态特征,输出为基本图像特征,将第一层MF模块的输出作为第二层MF模块的输入,依次构建k层MF模块,并采用谐波密集连接方式连接各层MF模块,进而搭建H-MF模块。
步骤2.3的具体过程如下:将图像模态特征序列x送入分类器进行情感分类,经自适应平均池化得到AdaAvgPool(x),再经过展平得到一维向量Flatten(AdaAvgpool(x)),同时引入Dropout,然后使用线性层将其映射到与类别数一致的维度上实现分类得到情感类别
步骤3的具体过程如下:将每个图像样本的预测情感类别与步骤1提取的初始情感类别标签进行对比,并通过反向传播算法更新通道扩展层、H-MF模块、过渡层、分类器的参数,重复步骤1-步骤2,直至EC-RFERNet模型在训练集上保持稳定的情感预测性能,输出更新后的通道扩展层、H-MF模块、过渡层、分类器,保存模型。
步骤4的具体过程如下:用测试集对模型测试,若模型在测试集上性能优秀,将模型作为最终输出,即为人脸表情识别模型;若模型在测试集上效果不佳,对模型架构、参数进行调整,并重复步骤1到步骤3,直至得到在测试集上性能优秀的模型,即人脸表情识别模型。
本发明所采用的第二个技术方案是,面向边缘计算端的人机交互系统,采用了上述面向边缘计算端的实时人脸表情识方法,包括数据采集模块、数据处理模块、控制系统及动作模块,数据采集模块及数据处理模块均设置于嵌入式开发板上;
数据采集模块用于采集实时视频流并将其传送数据处理模块,数据处理模块对所接收到的实时视频流进行预处理,最终获得人类当前情感状态并将其反馈到控制系统,控制系统接收到图像处理模块发送的人类当前情感状态,同时向动作模块发送相应的触发信号,动作模块生成动作,进而实现与情感状态相呼应的动作反馈。
数据采集模块包括摄像头、麦克风及扬声器,摄像头用于采集实时视频流,麦克风及扬声器用于采集及发出语音信号。
数据处理模块包括图像处理模块和语音交互模块,数据处理模块用于对摄像头采集的实时视频流进行预处理,语音交互模块用于实现语音交互,反馈特定的语音信号;
实时视频流预处理过程为:对摄像头采集的实时视频流进行人脸检测,对包含人脸的视频帧进行裁剪、缩放等处理,以及对处理完的人脸图像进行表情识别。
动作模块采用机器人,动作模块根据接收到的控制机器人的舵机进行特定角度的旋转,根据多个舵机的多组特定组合,实现人形机器人的连续特定动作,进而实现与情感状态相呼应的动作反馈;
摄像头采用树莓派摄像头,型号为PRi Camera V2;动作模块采用SIGMA 2S Pro机器人;嵌入式开发板采用STM32F103VET6。
针对于面向边缘计算袋端的实时人脸表情识别方法,本发明设计了一个基于PConv操作的MF模块,MF模块通过只处理部分输入特征映射和消除不必要的通道扩展操作,有效地减少了内存访问成本和参数。为了提高准确率,在MF模块引入了SE操作,并通过谐波密集连接有选择地连接不同层次的MF模块。利用SE操作完成自适应信道加权,利用谐波密集连接实现不同MF模块之间的信息交换,增强模型特征学习能力。MF模块和谐波密集连接共同构成H-MF模块,是EC-RFERNet的核心部件。该模块实现了准确率和推理速度之间的平衡。
针对面向边缘计算端的人机交互系统,本发明基于以Raspberry Pi 4B嵌入式设备为上位机的人形机器人,构建了人机交互系统。通过对实时场景下的视频流采集,本发明可以实时对包含人脸图像的视频帧进行处理、情感识别,并将对连续7帧人脸图像的识别结果中出现频率最高的情绪状态作为识别得到的情感状态,并根据识别得到的情感状态控制舵机、扬声器,从而实现与情感相呼应的动作反馈、语音反馈,实现与使用者的实时交互。实时实验结果表明,EC-RFERNet可以为实际应用提供有效的解决方案。
本发明的有益效果是:
1)本发明开发了EC-RFERNet模型,并提出了基于PConv的MF块,通过降低MF块的内存访问成本来缓解Raspberry Pi 4B内存访问速度低的限制,从而提高模型的推理速度;
2)本发明引入谐波密集连接有效连接各级特征信息,采用SE块实现自适应信道加权,提高了模型的特征学习能力。结合MF块和谐波密集连接的优点,H-MF模块具有良好的特征学习能力和较高的计算效率,使得EC-RFERNet在保证边缘设备精度的同时,能够获得令人满意的推理速度;
3)本发明的EC-RFERNet模型已被验证可以在Raspberry Pi 4B嵌入式设备平台上执行实时面部表情识别,与现有方法相比,EC-RFERNet在包括RAF-DB、FER2013、CK+、FERPlus和SFEW在内的各种数据集上表现出明显更好的性能;
4)通过实验验证,本发明在准确率、模型参数、FLOPs、模型大小、帧率五个关键标准上取得了令人满意的结果,此外,在Raspberry Pi 4B嵌入式平台上构建了一个人机交互系统,并检验了EC-RFERNet在实时应用中的可行性。
附图说明
图1是本发明的面向边缘计算端的实时人脸表情识别方法流程图;
图2是本发明的面向边缘计算端的实时人脸表情识别方法所采用的模型中的MF模块结构示意图;
图3是本发明的面向边缘计算端的实时人脸表情识别方法所采用的模型中的SE模块结构示意图;
图4是以Raspberry Pi 4B嵌入式设备为上位机的人机交互系统的功能实现流程。
图中,1.数据采集模块,1-1.摄像头,1-2.麦克风,1-3.扬声器,2.数据处理模块,2-1.图形处理模块,2-2语音交互模块,3.控制系统,4.动作模块,5.嵌入式开发板。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明的面向边缘计算端的实时人脸表情识别方法,流程如图1所示,具体步骤如下:
步骤1、从图片库中获取训练集和测试集,并提取训练集中每个图片的初始情感类别标签;
步骤2、搭建EC-RFERNet模型,并将训练集中的图片分别输入该模型,获得训练集中每个图片的预测情感类别;
步骤2的具体过程如下:
步骤2.1、将训练集的图像样本依次输入通道扩展层,通过两层3×3卷积以实现对通道的扩展,并采用最大池化操作进行降采样,捕捉每个图像样本的图像模态特征LayerCE;
图像模态特征LayerCE的计算公式如下:
LayerCE=Maxpooling(Conv(Conv(Image)))(1)
Conv(·)=ReLU6(BN(Conv3×3(·)))(2)
其中,Image代表图像输入,Maxpooling(·)代表最大池化操作,Conv3×3(·)代表3×3卷积操作,BN(·)代表批量归一化操作,ReLU6(·)代表ReLU6激活函数;
同时,由于本文模型的实时推理环境为Raspberry Pi端,若采用ReLU作为激活函数会导致输出范围为[0,+∞],使得模型输出准确性降低,因此本文采用ReLU6代替ReLU作为激活函数,将输出最大值限制为6,具体计算公式如下:
ReLU6=min(6,max(0,x))(3)
其中,max(·)代表选取最大值操作,min(·)代表选取最小值操作;
步骤2.2、将提取的图像模态特征先后输入H-MF模块与过渡层中,得到包含任务相关语义信息的图像模态特征序列x;
其中,EC-RFERNet模型从上到下包括通道扩展层、H-MF模块、过渡层及分类器。
H-MF模块由采用谐波密集连接方式的k个MF模块构成,MF模块是由PConv、Conv与SE模块组成的;
具体而言,假设输入层为第0层MF模块,输出层为第L-1层MF模块,中间层为第k层MF模块,若2n可以整除k,则层k可以与层k-2n相连,其中n为非负整数,k-2n≥0。每一层的MF模块的输入都由谐波密集连接方式按特定方式连接先前层次的MF模块输出拼接构成。
过渡层由卷积层、池化层组成,过渡层的特征输入由k层MF模块的特征输出拼接构成;
H-MF模块的搭建过程如下:将LayerCE作为第一层MF模块的输入,输入特征依次经过PConv、PWConv操作和SE模块,如图2所示。其中,SE模块内依次得到全局池化XC、卷积X′、ReLU、卷积X″,再由Sigmoid归一化后与输入X进行点积操作得到如图3所示:
SE模块中的计算公式如下:
XC=GlobalAvgpooling(X) (4)
X′=Conv1×1(XC) (5)
X″=Conv1×1(ReLU(XC)) (6)
其中,X代表MF模块PWConv操作的输出特征,XC∈R1×1×C,X″∈R1×1×C,代表MF模块的最终输出,GlobalAvgpooling(·)代表全局平均池化,Conv1×1(·)代表1×1卷积操作,/>代表点积操作。
步骤2.3、将图像模态特征序列x送入分类器进行分类,得到每个图像样本的预测情感类别
情感类别预测具体过程如下:将图像模态特征序列x送入分类器进行情感分类,经自适应平均池化得到AdaAvgPool(x),再经过展平得到一维向量Flatten(AdaAvgpool(x)),同时引入Dropout,然后使用线性层将其映射到与类别数一致的维度上实现分类得到情感类别情感类别/>的计算公式如下:
其中,x代表分类器的输入,代表预测的情感类别,AdaAvgPool(·)代表自适应平均池化操作,Flatten(·)代表展平操作,Dropout(·)代表Dropout操作,Linear(·)代表线性层,完成线性变换;
步骤3、将每个图片的预测情感类别分别与其初始情感类别标签进行比较,并将两者之间的损失最小化,更新模型中的网络参数,直至模型在训练集上保持稳定的情感预测性能,保存模型;
步骤3的具体过程如下:将每个图像样本的预测情感类别与步骤1提取的初始情感类别标签进行对比,并通过反向传播算法更新通道扩展层、H-MF模块、过渡层、分类器的参数,重复步骤1-步骤2,直至EC-RFERNet模型在训练集上保持稳定的情感预测性能,输出更新后的通道扩展层、H-MF模块、过渡层、分类器,保存模型。
步骤4、用测试集对模型测试,若模型在测试集上性能优秀,将模型作为最终输出,即为人脸表情识别模型;若模型在测试集上效果不佳,对模型架构、参数进行调整,并重复步骤1到步骤3,直至得到在测试集上性能优秀的模型,即人脸表情识别模型。
步骤5、将任一人脸图片输入人脸表情识别模型即可得到该图片对应的人脸表情类别。
本发明还涉及上述面向边缘计算端的实时人脸表情识方法的应用系统,即面向边缘计算端的人机交互系统,具体交互过程如图4所示,包括数据采集模块1、数据处理模块2、控制系统3及动作模块4,数据采集模块1及数据处理模块2均设置于嵌入式开发板5上;数据采集模块用于采集实时视频流并将其传送数据处理模块2,数据处理模块2对所接收到的实时视频流进行预处理,最终获得人类当前情感状态并将其反馈到控制系统3,控制系统3接收到图像处理模块2-1发送的人类当前情感状态,同时向动作模块4发送相应的触发信号,动作模块4生成动作,进而实现与情感状态相呼应的动作反馈。数据采集模块1包括摄像头1-1、麦克风1-2及扬声器1-3,摄像头1-1用于采集实时视频流,麦克风1-2及扬声器1-3用于采集及发出语音信号。数据处理模块2包括图像处理模块2-1和语音交互模块2-2,数据处理模块2用于对摄像头1-1采集的实时视频流进行预处理,语音交互模块2-2用于实现语音交互,反馈特定的语音信号;实时视频流预处理过程为:对摄像头1-1采集的实时视频流进行人脸检测,对包含人脸的视频帧进行裁剪、缩放等处理,并对人脸图像进行表情识别。动作模块4采用机器人,动作模块4根据接收到的控制机器人的舵机进行特定角度的旋转,根据多个舵机的多组特定组合,实现人形机器人的连续特定动作,进而实现与情感状态相呼应的动作反馈;摄像头1-1采用树莓派摄像头,型号为PRi Camera V2;动作模块4采用西安缔造者机器人有限责任公司制造的SIGMA 2S Pro机器人;嵌入式开发板5采用STM32F103VET6。
实施例1:
参照图1,为本发明的一种面向边缘计算的实时面部表情识别方法流程图。具体实施步骤如下:
步骤1、从图片库中获取训练集和测试集,并提取训练集中每个图片的初始情感类别标签;
步骤2、搭建EC-RFERNet模型,并将训练集中的图片分别输入该模型,获得训练集中每个图片的预测情感类别;
搭建通道扩展层,将图像样本作为输入,通过两层3×3卷积以实现对通道的扩展,并采用最大池化操作进行降采样,捕捉足够的基本图像特征LayerCE作为下一层的特征输入。
计算公式如下:
LayerCE=Maxpooling(Conv(Conv(Image))) (1)
Conv(·)=ReLU6(BN(Conv3×3(·))) (2)
其中,Image代表图像输入,Maxpooling(·)代表最大池化操作,Conv3×3(·)代表3×3卷积操作,BN(·)代表批量归一化操作,ReLU6(·)代表ReLU6激活函数。
同时,由于本文模型的实时推理环境为Raspberry Pi端,若采用ReLU作为激活函数会导致输出范围为[0,+∞],使得模型输出准确性降低,因此本文采用ReLU6代替ReLU作为激活函数,将输出最大值限制为6,具体计算公式如下:
ReLU6=min(6,max(0,x)) (3)
其中,max(·)代表选取最大值操作,min(·)代表选取最小值操作。
搭建MF模块,将LayerCE作为第一层MF模块的输入,输入特征依次经过PConv、PWConv操作和SE模块,如图2所示。其中,SE模块内依次得到全局池化XC、卷积X′、ReLU、卷积X″,再由Sigmoid归一化后与输入X进行点积操作得到如图3所示。SE模块中的计算公式如下:
XC=GlobalAvgpooling(X) (4)
X′=Conv1×1(XC) (5)
X″=Conv1×1(ReLU(XC)) (6)
其中,X代表MF模块PWConv操作的输出特征,XC∈R1×1×C,X″∈R1×1×C,代表MF模块的最终输出,GlobalAvgpooling(·)代表全局平均池化,Conv1×1(·)代表1×1卷积操作,/>代表点积操作。
采用谐波密集连接方式按特定方式连接各层MF模块,进而搭建4层H-MF模块。
具体而言,假设输入层为第0层MF模块,输出层为第L-1层MF模块,中间层为第k层MF模块,若2n可以整除k,则层k可以与层k-2n相连,其中n为非负整数,j-2n≥0。每一层的MF模块的输入都由谐波密集连接方式按特定方式连接先前层次的MF模块输出拼接构成。
通过谐波密集连接方式,按特定方式选择并拼接先前各层次特征,得到多层次特征X,再将多层次特征作为输入送入过渡层,进行卷积和最大池化操作得到LayerTransition。过渡层通过以下公式实现:
LayerTransition=Maxpooling(Conv1×1(X)) (8)
其中,Maxpooling(·)代表最大池化操作,Conv1×1(·)代表1×1卷积操作,代表通道维度的特征拼接操作,X为输入,X0代表第0层MF模块的输入特征,X1代表第1层MF模块的输入特征,XL代表第L层MF模块的特征输入,即为第L-1层MF模块的特征输入,且L∈{0}∪{2n+1|n∈Z}。
重复H-MF模块、过渡层搭建过程。其中,第一次重复时H-MF模块为8层,其余为4层,重复2次之后得到输出特征x;
将得到的输出特征x送入分类器,经自适应平均池化得到AdaAvgPool(x),再经过展平得到一维向量Flatten(AdaAvgPool(x)),同时引入Dropout,然后使用线性层将其映射到与类别数一致的维度上实现分类得到情感类别分类器通过以下公式实现:
其中,x代表分类器的输入,代表预测的情感类别,AdaAvgPool(·)代表自适应平均池化操作,Flatten(·)代表展平操作,Dropout(·)代表Dropout操作,Linear(·)代表线性层,完成线性变换。
步骤4、将模型预测到的情感类别与步骤1中提取的情感类别标签进行对比,并通过反向传播算法更新通道扩展层、H-MF模块、过渡层、分类器的参数,然后不断重复步骤1-步骤3,直至模型能正确预测出情感类别,输出更新后的通道扩展层、H-MF模块、过渡层、分类器,并保存为模型;
图4为本发明以Raspberry Pi 4B嵌入式设备为上位机的人机交互系统的功能实现流程,具体按照以下步骤实施:
通过摄像头1-1实时捕捉视频帧,通过麦克风1-2获得语音输入,通过扬声器1-3产生语音输出;
基于摄像头1-1所采集得到的视频帧使用OpenCV进行人脸检测,将包含人脸的视频帧进行裁剪、缩放等预处理操作,作为模型输入;调用保存的模型对人脸图像帧进行预测,得到单帧人脸图像的情感识别结果,并重复识别过程七次;统计七次识别结果中出现频率最高的情感状态,并将其作为最终情感识别结果,并根据情感识别结果进行相应的语音信号反馈,同时生成相应控制信号,作为控制系统信号输入;
控制系统3根据上位机生成的控制信号对人形机器人的多个舵机同时、依次发送相应的触发信号;
所有舵机根据触发信号依次做出特定的多组旋转,使得人形机器人可以有效展示特定的动作,从而实现动作信号的反馈。
本发明开展的实验在RAF-DB、FER2013、CK+、FERPlus和SFEW五个数据集上进行,并对本发明的性能进行评估与分析。实验结果对比如下:
针对模型对情感类别的识别,在RAF-DB、FER2013、CK+、FERPlus和SFEW五个数据集上分别对不同的情感识别模型进行准确率、模型参数量和模型所占内存性能对比,在RAF-DB和FER2013数据集上不同网络模型的性能对比结果如表1所示,在CK+数据集上不同网络模型的性能对比如表2所示,在FERPlus和SFEW数据集上不同网络模型的性能对比结果如表3、表4所示,综合性能对比如表5所示:
表1
表2
表3
表4
Methods | Pretrained | Accuracy | Parameters(M) | Model Size(MB) |
DAM-CNN | - | 42.30% | - | - |
CNN-baseline | FER2013 | 46.30% | - | - |
CNN-VA | FER2013 | 48.30% | - | - |
CNN-GAP | FER2013 | 42.80% | - | - |
CNN-MBP | FER2013 | 51.75% | - | - |
LBF-NN | - | 49.31% | - | - |
RAN-ResNet18 | MS_Celeb_1M | 54.19% | 11.00 | 40.00 |
CNNV3 | RAF-DB | 60.74% | 1.47 | 5.70 |
Wu et al. | FER2013 | 56.81% | 1.91 | - |
EC-RFERNet | RAF-DB | 52.20% | 0.55 | 2.25 |
表5
实施例2:
基于已构建的人机交互系统进行性能测试:
S1,启动人机交互系统,测试者正面面部对准摄像头,做出开心的表情;
S2,经过1.5s的识别,人形机器人成功识别测试中面部表情,并做出了摆动双臂的动作,与测试者情感呼应,完成动作反馈;同时,人形机器人通过扬声器播放了“小可爱,什么事让你那么高兴呀”,完成语音信号反馈。
实施例3:
基于已构建的人机交互系统进行性能测试:
S1,启动人机交互系统,测试者正面面部对准摄像头,做出惊讶的表情;
S2,经过1.5s的识别,人形机器人成功识别测试中面部表情,并快速做出了迅速举高手臂并双足微曲的动作,与测试者情感呼应,完成动作反馈;同时,人形机器人通过扬声器播放了“你看到了什么让你如此惊讶”,完成语音信号反馈。
Claims (6)
1.面向边缘计算端的实时人脸表情识别方法,其特征在于,具体步骤如下:
步骤1、从图片库中获取训练集和测试集,并提取训练集中每个图片的初始情感类别标签;
步骤2、搭建EC-RFERNet模型,并将训练集中的图片分别输入该模型,获得训练集中每个图片的预测情感类别;
所述EC-RFERNet模型从上到下包括通道扩展层、H-MF模块、过渡层及分类器;所述H-MF模块由采用谐波密集连接方式连接的k层MF模块构成,MF模块是由PConv、Conv与SE模块组成的;所述过渡层由卷积层、池化层组成,过渡层的特征输入由k层MF模块的特征输出拼接构成;
步骤3、将每个图片的预测情感类别分别与其初始情感类别标签进行比较,并将两者之间的损失最小化,更新模型中的网络参数,直至模型在训练集上保持稳定的情感预测性能,保存模型;
步骤4、用测试集对模型测试,直至得到在测试集上性能优秀的模型;
步骤5、将任一人脸图片输入上述模型即得该图片对应的人脸表情类别。
2.根据权利要求1所述的面向边缘计算端的实时人脸表情识别方法,其特征在于,所述步骤2的具体过程如下:
步骤2.1、将训练集的图像样本依次输入通道扩展层,通过两层3×3卷积以实现对通道的扩展,并采用最大池化操作进行降采样,捕捉每个图像样本的图像模态特征;
步骤2.2、将提取的图像模态特征先后输入H-MF模块与过渡层中,得到包含任务相关语义信息的图像模态特征序列x;
步骤2.3、将图像模态特征序列x送入分类器进行分类,得到每个图像样本的预测情感类别
3.根据权利要求2所述的面向边缘计算端的实时人脸表情识别方法,其特征在于,所述H-MF模块的搭建过程如下:第一层MF模块的输入为步骤2.1中捕捉的图像模态特征,输出为基本图像特征,将第一层MF模块的输出作为第二层MF模块的输入,依次构建k层MF模块,并采用谐波密集连接方式连接各层MF模块,进而搭建H-MF模块。
4.根据权利要求2所述的面向边缘计算端的实时人脸表情识别方法,其特征在于,步骤2.3的具体过程如下:将图像模态特征序列x送入分类器进行情感分类,经自适应平均池化得到AdaAvgpool(x),再经过展平得到一维向量Flatten(AdaAvgpool(x)),同时引入Dropout,然后使用线性层将其映射到与类别数一致的维度上实现分类得到情感类别
5.根据权利要求1所述的面向边缘计算端的实时人脸表情识别方法,其特征在于,所述步骤3的具体过程如下:将每个图像样本的预测情感类别与步骤1提取的初始情感类别标签进行对比,并通过反向传播算法更新通道扩展层、H-MF模块、过渡层、分类器的参数,重复步骤1-步骤2,直至EC-RFERNet模型在训练集上保持稳定的情感预测性能,输出更新后的通道扩展层、H-MF模块、过渡层、分类器,保存模型。
6.根据权利要求5所述的面向边缘计算端的实时人脸表情识别方法,其特征在于,所述步骤4的具体过程如下:用测试集对模型测试,若模型在测试集上性能优秀,将模型作为最终输出,即为人脸表情识别模型;若模型在测试集上效果不佳,对模型架构、参数进行调整,并重复步骤1到步骤3,直至得到在测试集上性能优秀的模型,即人脸表情识别模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311539006.1A CN117558050B (zh) | 2023-11-17 | 2023-11-17 | 面向边缘计算端的实时人脸表情识别方法及人机交互系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311539006.1A CN117558050B (zh) | 2023-11-17 | 2023-11-17 | 面向边缘计算端的实时人脸表情识别方法及人机交互系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117558050A CN117558050A (zh) | 2024-02-13 |
CN117558050B true CN117558050B (zh) | 2024-05-28 |
Family
ID=89820069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311539006.1A Active CN117558050B (zh) | 2023-11-17 | 2023-11-17 | 面向边缘计算端的实时人脸表情识别方法及人机交互系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117558050B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110610138A (zh) * | 2019-08-22 | 2019-12-24 | 西安理工大学 | 一种基于卷积神经网络的面部情感分析方法 |
CN110852214A (zh) * | 2019-10-30 | 2020-02-28 | 华南师范大学 | 面向边缘计算的轻量级面部识别方法 |
CN111414884A (zh) * | 2020-03-27 | 2020-07-14 | 南京工业大学 | 一种基于边缘计算的面部表情识别方法 |
CN113011253A (zh) * | 2021-02-05 | 2021-06-22 | 中国地质大学(武汉) | 基于ResNeXt网络的人脸表情识别方法、装置、设备及存储介质 |
CN113627376A (zh) * | 2021-08-18 | 2021-11-09 | 北京工业大学 | 基于多尺度密集连接深度可分离网络的人脸表情识别方法 |
CN114898446A (zh) * | 2022-06-16 | 2022-08-12 | 平安科技(深圳)有限公司 | 基于人工智能的人脸识别方法、装置、设备及存储介质 |
CN115188055A (zh) * | 2022-07-26 | 2022-10-14 | 重庆科技学院 | 一种针对nnie神经网络加速器的轻量级表情识别方法 |
CN115984937A (zh) * | 2023-01-09 | 2023-04-18 | 江苏科技大学 | 一种基于优化ResNet算法的人脸表情识别方法 |
CN116386102A (zh) * | 2023-02-22 | 2023-07-04 | 河海大学 | 一种基于改进残差卷积网络inception块结构的人脸情绪识别方法 |
CN116884072A (zh) * | 2023-07-21 | 2023-10-13 | 杭州电子科技大学 | 一种基于多层级和多尺度注意机制的面部表情识别方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112183577A (zh) * | 2020-08-31 | 2021-01-05 | 华为技术有限公司 | 一种半监督学习模型的训练方法、图像处理方法及设备 |
US11688200B2 (en) * | 2020-12-28 | 2023-06-27 | Fortinet, Inc. | Joint facial feature extraction and facial image quality estimation using a deep neural network (DNN) trained with a custom-labeled training dataset and having a common DNN backbone |
-
2023
- 2023-11-17 CN CN202311539006.1A patent/CN117558050B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110610138A (zh) * | 2019-08-22 | 2019-12-24 | 西安理工大学 | 一种基于卷积神经网络的面部情感分析方法 |
CN110852214A (zh) * | 2019-10-30 | 2020-02-28 | 华南师范大学 | 面向边缘计算的轻量级面部识别方法 |
CN111414884A (zh) * | 2020-03-27 | 2020-07-14 | 南京工业大学 | 一种基于边缘计算的面部表情识别方法 |
CN113011253A (zh) * | 2021-02-05 | 2021-06-22 | 中国地质大学(武汉) | 基于ResNeXt网络的人脸表情识别方法、装置、设备及存储介质 |
CN113627376A (zh) * | 2021-08-18 | 2021-11-09 | 北京工业大学 | 基于多尺度密集连接深度可分离网络的人脸表情识别方法 |
CN114898446A (zh) * | 2022-06-16 | 2022-08-12 | 平安科技(深圳)有限公司 | 基于人工智能的人脸识别方法、装置、设备及存储介质 |
CN115188055A (zh) * | 2022-07-26 | 2022-10-14 | 重庆科技学院 | 一种针对nnie神经网络加速器的轻量级表情识别方法 |
CN115984937A (zh) * | 2023-01-09 | 2023-04-18 | 江苏科技大学 | 一种基于优化ResNet算法的人脸表情识别方法 |
CN116386102A (zh) * | 2023-02-22 | 2023-07-04 | 河海大学 | 一种基于改进残差卷积网络inception块结构的人脸情绪识别方法 |
CN116884072A (zh) * | 2023-07-21 | 2023-10-13 | 杭州电子科技大学 | 一种基于多层级和多尺度注意机制的面部表情识别方法 |
Non-Patent Citations (4)
Title |
---|
Real-Time Facial Emotion Detection Through the Use of Machine Learning and On-Edge Computing;Ashley Dowd 等;《2022 21st IEEE International Conference on Machine Learning and Applications (ICMLA)》;20230323;第444-448页 * |
基于Adaboost算法的人脸检测及OpenCV实现;丁业兵;《电脑知识与技术》;20180925;第14卷(第27期);第167-169页 * |
基于改进损失函数的轻量级人脸表情识别;李娇 等;《工业控制计算机》;20210625;第34卷(第06期);第13-14页 * |
注意力机制与Involution算子改进的人脸表情识别;郭靖圆 等;《计算机工程与应用》;20221129;第1-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117558050A (zh) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lei et al. | Micro-expression recognition based on facial graph representation learning and facial action unit fusion | |
Gao et al. | MSCFNet: A lightweight network with multi-scale context fusion for real-time semantic segmentation | |
CN108615009B (zh) | 一种基于动态手势识别的手语翻译交流系统 | |
WO2021022521A1 (zh) | 数据处理的方法、训练神经网络模型的方法及设备 | |
CN110619319A (zh) | 一种基于改进的mtcnn模型人脸检测方法和系统 | |
CN112818861A (zh) | 一种基于多模态上下文语义特征的情感分类方法及系统 | |
CN110321805B (zh) | 一种基于时序关系推理的动态表情识别方法 | |
CN113591978B (zh) | 一种基于置信惩罚正则化的自我知识蒸馏的图像分类方法、设备及存储介质 | |
Song et al. | Dynamic facial models for video-based dimensional affect estimation | |
Hu et al. | A two-stage spatiotemporal attention convolution network for continuous dimensional emotion recognition from facial video | |
CN111680550A (zh) | 情感信息识别方法、装置、存储介质及计算机设备 | |
CN113935435A (zh) | 基于时空特征融合的多模态情感识别方法 | |
Chuanjie et al. | Facial expression recognition integrating multiple cnn models | |
CN117576753A (zh) | 基于面部关键点的注意力特征融合的微表情识别方法 | |
CN117558050B (zh) | 面向边缘计算端的实时人脸表情识别方法及人机交互系统 | |
Chen et al. | Talking head generation driven by speech-related facial action units and audio-based on multimodal representation fusion | |
Hu et al. | Speech emotion recognition based on attention mcnn combined with gender information | |
CN116167014A (zh) | 一种基于视觉和语音的多模态关联型情感识别方法及系统 | |
CN116311455A (zh) | 一种基于改进Mobile-former的表情识别方法 | |
CN116167015A (zh) | 一种基于联合交叉注意力机制的维度情感分析方法 | |
CN116246110A (zh) | 基于改进胶囊网络的图像分类方法 | |
WO2022227024A1 (zh) | 神经网络模型的运算方法、训练方法及装置 | |
CN115472182A (zh) | 一种基于注意力特征融合的多通道自编码器的语音情感识别方法及装置 | |
Xu et al. | A facial expression recognition method based on residual separable convolutional neural network | |
CN110826726B (zh) | 目标处理方法、目标处理装置、目标处理设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |