CN114882553A - 一种基于深度学习的微表情识别方法及系统 - Google Patents
一种基于深度学习的微表情识别方法及系统 Download PDFInfo
- Publication number
- CN114882553A CN114882553A CN202210422919.4A CN202210422919A CN114882553A CN 114882553 A CN114882553 A CN 114882553A CN 202210422919 A CN202210422919 A CN 202210422919A CN 114882553 A CN114882553 A CN 114882553A
- Authority
- CN
- China
- Prior art keywords
- face
- micro
- expression recognition
- face data
- server
- 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.)
- Granted
Links
- 238000013135 deep learning Methods 0.000 title claims abstract description 24
- 238000000034 method Methods 0.000 title claims abstract description 22
- 230000014509 gene expression Effects 0.000 claims abstract description 107
- 230000002452 interceptive effect Effects 0.000 claims abstract description 50
- 230000003068 static effect Effects 0.000 claims abstract description 38
- 239000000284 extract Substances 0.000 claims abstract description 11
- 230000004044 response Effects 0.000 claims abstract description 7
- 230000003287 optical effect Effects 0.000 claims description 43
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 37
- 239000011159 matrix material Substances 0.000 claims description 31
- 238000011176 pooling Methods 0.000 claims description 22
- 230000008451 emotion Effects 0.000 claims description 16
- 239000013598 vector Substances 0.000 claims description 16
- 238000013075 data extraction Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 8
- 230000009467 reduction Effects 0.000 claims description 8
- 230000002401 inhibitory effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 12
- 238000012549 training Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 210000003205 muscle Anatomy 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 5
- 210000001508 eye Anatomy 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 210000005252 bulbus oculi Anatomy 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 210000000697 sensory organ Anatomy 0.000 description 2
- 208000003443 Unconsciousness Diseases 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 210000001097 facial muscle Anatomy 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004118 muscle contraction Effects 0.000 description 1
Images
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
- G06V40/174—Facial expression recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- 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/045—Combinations of networks
-
- 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
-
- 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/40—Extraction of image or video features
-
- 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/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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/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/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Medical Informatics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Algebra (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了表情识别技术领域的一种基于深度学习的微表情识别方法及系统,方法包括:步骤S10、交互型机器人通过3D摄像头获取图像流;步骤S20、交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;步骤S30、服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;步骤S40、服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;步骤S50、服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。本发明的优点在于:极大的提升了微表情识别的准确率。
Description
技术领域
本发明涉及表情识别技术领域,特别指一种基于深度学习的微表情识别方法及系统。
背景技术
面部表情是一种在情绪状态下,由面部肌肉收缩产生的非语言交流表情流露,不同的肌肉运动模式会产生不同的表情,进而反映出不同类型的情绪。
表情分为宏表情和微表情,宏表情的持续时间通常在0.75秒至2秒之间,微表情的持续时间通常在0.04秒至0.2秒之间。由于宏表情可能由人刻意展现出来,因此可能会误导交互型机器人对人类情感的识别;而微表情大多是在无意识的情况下表达的真实情感,最有可能揭示一个人深层的情绪,因此产生微表情识别的需求应运而生。但是,传统上对于微表情识别的准确率还不尽如人意。
因此,如何提供一种基于深度学习的微表情识别方法及系统,实现提升微表情识别的准确率,成为一个亟待解决的技术问题。
发明内容
本发明要解决的技术问题,在于提供一种基于深度学习的微表情识别方法及系统,实现提升微表情识别的准确率。
第一方面,本发明提供了一种基于深度学习的微表情识别方法,包括如下步骤:
步骤S10、交互型机器人通过3D摄像头获取图像流;
步骤S20、交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;
步骤S30、服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;
步骤S40、服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;
步骤S50、服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。
进一步地,所述步骤S10中,所述交互型机器人设有5G通信模块,所述3D摄像头的拍摄帧数至少为100fps。
进一步地,所述步骤S20具体为:
交互型机器人对所述图像流进行降噪处理后,通过OpenCV中基于Haar特征的人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器。
进一步地,所述步骤S30具体包括:
步骤S31、服务器利用BS-RoIs算法从人脸数据流中提取出顶点帧,将所述顶点帧作为人脸静态数据;
步骤S32、提取所述人脸数据流的起始帧,利用所述起始帧和顶点帧提取横向光流信息u、纵向光流信息v以及光学应变信息ε;利用FlowNet模型从所述人脸数据流中提取光流信息vis,将所述u、v、ε以及vis作为人脸动态数据;
步骤S33、将各所述人脸静态数据以及人脸动态数据缩放到相同尺寸,组成人脸数据组。
进一步地,所述步骤S40中,所述微表情识别模型包括一卷积层、一池化层、一第一残差块、一卷积核、一第二残差块、一拉伸块、三层全连接层、一软编码矩阵以及一软编码输出模块;
所述卷积层、池化层、第一残差块、卷积核、第二残差块、拉伸块、三层全连接层、软编码矩阵以及软编码输出模块依次连接;
所述卷积层以及池化层用于对人脸数据组进行特征提取;所述第一残差块用于对提取的特征进行贡献度分类,并突显有用的特征,抑制无效的特征;所述卷积核用于对提取的特征进行拼接整合;所述第二残差块用于对各特征的权重进行调整;所述拉伸块用于对权重调整后的特征进行拉伸,形成1×N的特征向量;所述三层全连接层用于将1×N的特征向量转换为L个输出值;所述软编码矩阵用于对各输出值进行解码;所述软编码输出模块用于计算解码后的输出值中,最小损失对应的情绪类别,所述情绪类别即微表情信息。
第二方面,本发明提供了一种基于深度学习的微表情识别系统,包括如下模块:
图像流获取模块,用于交互型机器人通过3D摄像头获取图像流;
人脸数据流获取模块,用于交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;
人脸数据组提取模块,用于服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;
微表情识别模型创建模块,用于服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;
微表情识别模块,用于服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。
进一步地,所述图像流获取模块中,所述交互型机器人设有5G通信模块,所述3D摄像头的拍摄帧数至少为100fps。
进一步地,所述人脸数据流获取模块具体为:
交互型机器人对所述图像流进行降噪处理后,通过OpenCV中基于Haar特征的人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器。
进一步地,所述人脸数据组提取模块具体包括:
人脸静态数据提取单元,用于服务器利用BS-RoIs算法从人脸数据流中提取出顶点帧,将所述顶点帧作为人脸静态数据;
人脸动态数据提取单元,用于提取所述人脸数据流的起始帧,利用所述起始帧和顶点帧提取横向光流信息u、纵向光流信息v以及光学应变信息ε;利用FlowNet模型从所述人脸数据流中提取光流信息vis,将所述u、v、ε以及vis作为人脸动态数据;
人脸数据组生成单元,用于将各所述人脸静态数据以及人脸动态数据缩放到相同尺寸,组成人脸数据组。
进一步地,所述微表情识别模型创建模块中,所述微表情识别模型包括一卷积层、一池化层、一第一残差块、一卷积核、一第二残差块、一拉伸块、三层全连接层、一软编码矩阵以及一软编码输出模块;
所述卷积层、池化层、第一残差块、卷积核、第二残差块、拉伸块、三层全连接层、软编码矩阵以及软编码输出模块依次连接;
所述卷积层以及池化层用于对人脸数据组进行特征提取;所述第一残差块用于对提取的特征进行贡献度分类,并突显有用的特征,抑制无效的特征;所述卷积核用于对提取的特征进行拼接整合;所述第二残差块用于对各特征的权重进行调整;所述拉伸块用于对权重调整后的特征进行拉伸,形成1×N的特征向量;所述三层全连接层用于将1×N的特征向量转换为L个输出值;所述软编码矩阵用于对各输出值进行解码;所述软编码输出模块用于计算解码后的输出值中,最小损失对应的情绪类别,所述情绪类别即微表情信息。
本发明的优点在于:
通过人脸识别算法检测图像流中的人脸并进行截取以获取人脸数据流,从人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组,将人脸数据组输入训练后的微表情识别模型得到微表情信息;由于人脸数据组中的光流能够描述物体在运动过程中的速度分布,物体的图片像素随着时间变化产生不同的强度变化,因此能够体现人体脸部肌肉、五官的变化程度,并结合动态特征和静态特征(人脸动态数据和人脸静态数据),能够有效提取脸部微表情特征,微表情识别模型通过软编码输出代替传统的softmax输出层,不仅能对一些错误进行纠错,还能缩小类内输出间距离,扩大类外输出间距离,最终极大的提升了微表情识别的准确率,并极大的提升了微表情识别模型的泛化能力以及鲁棒性。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种基于深度学习的微表情识别方法的流程图。
图2是本发明一种基于深度学习的微表情识别系统的结构示意图。
图3是本发明Haar包含的三种人脸矩阵特征示意图。
图4是本发明人脸动态数据提取示意图。
图5是本发明微表情识别模型的框架图。
图6是本发明微表情识别模型训练的流程示意图。
图7是本发明残差块的框架图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:通过光流来表征表情,并结合人脸的动态特征和静态特征,以有效提取脸部微表情特征,微表情识别模型通过软编码输出代替传统的softmax输出层,以一些错误进行纠错,并缩小类内输出间距离,扩大类外输出间距离,以提升微表情识别的准确率。
请参照图1至图7所示,本发明一种基于深度学习的微表情识别方法的较佳实施例,包括如下步骤:
步骤S10、交互型机器人通过3D摄像头获取图像流;
步骤S20、交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;即针对每一帧图像流中的人脸进行定位和追踪;
步骤S30、服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;
步骤S40、服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;
训练过程如下:首先,为每个类别初始化一个码字,从而构成最初的ECOC矩阵,初始的ECOC矩阵采用Hadamard codematrix,以最大化行之间的Hamming distance;其次,利用训练数据提取出的人脸数据组对微表情识别模型进行训练,微表情识别模型输出结果对比最初的ECOC矩阵,并利用损失函数计算输出整体损失,然后迭代优化微表情识别模型;最后,再次对人脸数据组进行最终预测,将得到的ECOC输出值利用损失最小化对ECOC矩阵元素进行软化。损失函数的公式为:
其中,xi表示第i个包含人脸数据组(5个输入数据)的人脸样本;cq表示第q个微表情类别;F(xi)表示人脸样本经过网络映射后输出的ECOC软编码;EU(*,*)表示欧式距离。
ECOC_loss等式中,分子表示数据经过网络的输出结果与它的目标类别的码字间距离,分母表示输出结果与它非目标类别的平均距离。我们希望分子越小越好,分母越大越好,从而使整体Loss越小越好。基于相同微表情类别具有相近的特征分布的假设前提下,利用软编码输出能够使在有限的微表情训练数据下,表情通过网络后的输出更加的符合实际的输出分布。软编码输出能基于ECOC的纠错机制,单个错误的输出更有可能被其他正确的输出纠正,而不是取决于如Softmax输出一样的单一结果。
步骤S50、服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。
单一输出值往往直接代表着最终的预测结果,而本发明采用多个输出值,每个输出值都代表一部分的预测结果,并利用ECOC软编码输出纠错机制,使得一些错误输出有机会被其他正确的输出纠正,从而提高微表情识别的准确率。同时,输入和输出由一对一变为一对多,即将数据映射到更高维的空间,这样有利于缩放输出值类内和类外的距离。为了放大网络输出层的区分,结合光流法特征提取方式,利用ECOC软编码输出替换原有的深度学习softmax输出层,同时设计一个新的损失计算函数(ECOC_loss),在训练微表情识别模型时缩小类内输出间距离,扩大类外输出间距离,从而提高微表情识别的准确率。
所述步骤S10中,所述交互型机器人设有5G通信模块,以便于稳定快速的连接服务器,所述3D摄像头的拍摄帧数至少为100fps,以便获取清晰的图像流。
所述步骤S20具体为:
交互型机器人对所述图像流进行降噪处理后,通过OpenCV中基于Haar特征的人脸识别算法(人脸识别分类器)检测所述图像流中的人脸并进行截取,获取人脸数据流并通过5G通信模块上传服务器。通过对所述图像流进行降噪处理,去除冗余信息,极大的减轻了后续的计算负担。OpenCV中的人脸识别分类器占用资源小,易于集成到交互型机器人中。
Haar包括边缘特征、线性特征、中心特征和对角线特征,每一种分类器都根据脸部的黑白分布提取对应的特征。例如,眼睛所在的位置通常比脸颊与鼻子更黑,可通过边缘特征来提取眼睛特征;而鼻梁通常比眼球更白,可通过线性特征来提取鼻梁特征。黑色矩形中的像素值减去白色矩形中的像素值之和即为提取出的特征值。然后建立积分图像,积分图像中的点是其左上角的所有像素之和。随后引入Adaboost,对每一个分类器赋权,最终的结果即为这些分类器的加权和。原始的图像流采用少量的特征来排除掉无人脸区域,然后逐渐增加复杂特征来进一步排除干扰区域。如果检测到人脸,则将人脸区域截取出来;反之,则抛弃该图像流。
所述步骤S30具体包括:
步骤S31、服务器利用BS-RoIs算法从人脸数据流中提取出顶点帧,将所述顶点帧作为人脸静态数据;所述顶点帧表示人脸数据流中肌肉活动幅度最大的图像帧,相比其他帧包含了最丰富的表情信息;
BS-RoIs首先利用特征点检测器(Landmark detection),例如DRMF,抽取出人脸数据流中的兴趣区域(RoIs,regions-of-interest),同时计算出人脸数据流每个像素的光学应变强度,然后根据兴趣区域RoIs计算并排序每一帧的光学应变强度,具有最高光学应变强度的图像帧即为顶点帧;
步骤S32、提取所述人脸数据流的起始帧,利用所述起始帧和顶点帧提取横向光流信息u、纵向光流信息v以及光学应变信息ε;利用FlowNet模型从所述人脸数据流中提取光流信息vis,将所述u、v、ε以及vis作为人脸动态数据;
所述横向光流信息u以及纵向光流信息v的计算公式如下:
u=pΔt,v=qΔt;
所述光学应变信息ε是衡量肌肉进行非刚性运动而引起的面部皮肤变形的矢量,计算公式如下:
其中,εxx和εyy表示对角线应变梯度,εxy和εyx表示非对角线应变梯度,因此所述光学应变信息ε的大小计算公式如下:
步骤S33、将各所述人脸静态数据以及人脸动态数据缩放到相同尺寸,组成人脸数据组。
所述步骤S40中,所述微表情识别模型包括一卷积层、一池化层、一第一残差块、一卷积核、一第二残差块、一拉伸块、三层全连接层、一软编码矩阵以及一软编码输出模块;所述卷积层采用大小为7×7,步长为1的卷积核;所述池化层采用最大池化层,卷积核大小为7×7;所述软编码矩阵需要进行预先的训练;所述软编码输出模块的损失函数采用ECOC_loss函数;
所述卷积层、池化层、第一残差块、卷积核、第二残差块、拉伸块、三层全连接层、软编码矩阵以及软编码输出模块依次连接;
所述卷积层以及池化层用于对人脸数据组进行特征提取;所述第一残差块用于对提取的特征进行贡献度分类,并突显有用的特征,抑制无效的特征,得到F={f1,f2,f3,f4,f5};所述卷积核用于对提取的特征进行拼接整合,得到F'=concat(f1,f2,f3,f4,f5);所述第二残差块用于对各特征的权重进行调整;所述拉伸块用于对权重调整后的特征进行拉伸,形成1×N的特征向量;所述三层全连接层用于将1×N的特征向量转换为L个输出值;所述软编码矩阵用于对各输出值进行解码;所述软编码输出模块用于计算解码后的输出值中,最小损失对应的情绪类别,所述情绪类别即微表情信息;输出值与预定义ECOC矩阵各个码字中最短的距离所对应的微表情类别即为预测结果。
本发明一种基于深度学习的微表情识别系统的较佳实施例,包括如下模块:
图像流获取模块,用于交互型机器人通过3D摄像头获取图像流;
人脸数据流获取模块,用于交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;即针对每一帧图像流中的人脸进行定位和追踪;
人脸数据组提取模块,用于服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;
微表情识别模型创建模块,用于服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;
训练过程如下:首先,为每个类别初始化一个码字,从而构成最初的ECOC矩阵,初始的ECOC矩阵采用Hadamard codematrix,以最大化行之间的Hamming distance;其次,利用训练数据提取出的人脸数据组对微表情识别模型进行训练,微表情识别模型输出结果对比最初的ECOC矩阵,并利用损失函数计算输出整体损失,然后迭代优化微表情识别模型;最后,再次对人脸数据组进行最终预测,将得到的ECOC输出值利用损失最小化对ECOC矩阵元素进行软化。损失函数的公式为:
其中,xi表示第i个包含人脸数据组(5个输入数据)的人脸样本;cq表示第q个微表情类别;F(xi)表示人脸样本经过网络映射后输出的ECOC软编码;EU(*,*)表示欧式距离。
ECOC_loss等式中,分子表示数据经过网络的输出结果与它的目标类别的码字间距离,分母表示输出结果与它非目标类别的平均距离。我们希望分子越小越好,分母越大越好,从而使整体Loss越小越好。基于相同微表情类别具有相近的特征分布的假设前提下,利用软编码输出能够使在有限的微表情训练数据下,表情通过网络后的输出更加的符合实际的输出分布。软编码输出能基于ECOC的纠错机制,单个错误的输出更有可能被其他正确的输出纠正,而不是取决于如Softmax输出一样的单一结果。
微表情识别模块,用于服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。
单一输出值往往直接代表着最终的预测结果,而本发明采用多个输出值,每个输出值都代表一部分的预测结果,并利用ECOC软编码输出纠错机制,使得一些错误输出有机会被其他正确的输出纠正,从而提高微表情识别的准确率。同时,输入和输出由一对一变为一对多,即将数据映射到更高维的空间,这样有利于缩放输出值类内和类外的距离。为了放大网络输出层的区分,结合光流法特征提取方式,利用ECOC软编码输出替换原有的深度学习softmax输出层,同时设计一个新的损失计算函数(ECOC_loss),在训练微表情识别模型时缩小类内输出间距离,扩大类外输出间距离,从而提高微表情识别的准确率。
所述图像流获取模块中,所述交互型机器人设有5G通信模块,以便于稳定快速的连接服务器,所述3D摄像头的拍摄帧数至少为100fps,以便获取清晰的图像流。
所述人脸数据流获取模块具体为:
交互型机器人对所述图像流进行降噪处理后,通过OpenCV中基于Haar特征的人脸识别算法人脸识别分类器)检测所述图像流中的人脸并进行截取,获取人脸数据流并通过5G通信模块上传服务器。通过对所述图像流进行降噪处理,去除冗余信息,极大的减轻了后续的计算负担。OpenCV中的人脸识别分类器占用资源小,易于集成到交互型机器人中。
Haar包括边缘特征、线性特征、中心特征和对角线特征,每一种分类器都根据脸部的黑白分布提取对应的特征。例如,眼睛所在的位置通常比脸颊与鼻子更黑,可通过边缘特征来提取眼睛特征;而鼻梁通常比眼球更白,可通过线性特征来提取鼻梁特征。黑色矩形中的像素值减去白色矩形中的像素值之和即为提取出的特征值。然后建立积分图像,积分图像中的点是其左上角的所有像素之和。随后引入Adaboost,对每一个分类器赋权,最终的结果即为这些分类器的加权和。原始的图像流采用少量的特征来排除掉无人脸区域,然后逐渐增加复杂特征来进一步排除干扰区域。如果检测到人脸,则将人脸区域截取出来;反之,则抛弃该图像流。
所述人脸数据组提取模块具体包括:
人脸静态数据提取单元,用于服务器利用BS-RoIs算法从人脸数据流中提取出顶点帧,将所述顶点帧作为人脸静态数据;所述顶点帧表示人脸数据流中肌肉活动幅度最大的图像帧,相比其他帧包含了最丰富的表情信息;
BS-RoIs首先利用特征点检测器(Landmark detection),例如DRMF,抽取出人脸数据流中的兴趣区域(RoIs,regions-of-interest),同时计算出人脸数据流每个像素的光学应变强度,然后根据兴趣区域RoIs计算并排序每一帧的光学应变强度,具有最高光学应变强度的图像帧即为顶点帧;
人脸动态数据提取单元,用于提取所述人脸数据流的起始帧,利用所述起始帧和顶点帧提取横向光流信息u、纵向光流信息v以及光学应变信息ε;利用FlowNet模型从所述人脸数据流中提取光流信息vis,将所述u、v、ε以及vis作为人脸动态数据;
所述横向光流信息u以及纵向光流信息v的计算公式如下:
u=pΔt,v=qΔt;
所述光学应变信息ε是衡量肌肉进行非刚性运动而引起的面部皮肤变形的矢量,计算公式如下:
其中,εxx和εyy表示对角线应变梯度,εxy和εyx表示非对角线应变梯度,因此所述光学应变信息ε的大小计算公式如下:
人脸数据组生成单元,用于将各所述人脸静态数据以及人脸动态数据缩放到相同尺寸,组成人脸数据组。
所述微表情识别模型创建模块中,所述微表情识别模型包括一卷积层、一池化层、一第一残差块、一卷积核、一第二残差块、一拉伸块、三层全连接层、一软编码矩阵以及一软编码输出模块;所述卷积层采用大小为7×7,步长为1的卷积核;所述池化层采用最大池化层,卷积核大小为7×7;所述软编码矩阵需要进行预先的训练;所述软编码输出模块的损失函数采用ECOC_loss函数;
所述卷积层、池化层、第一残差块、卷积核、第二残差块、拉伸块、三层全连接层、软编码矩阵以及软编码输出模块依次连接;
所述卷积层以及池化层用于对人脸数据组进行特征提取;所述第一残差块用于对提取的特征进行贡献度分类,并突显有用的特征,抑制无效的特征,得到F={f1,f2,f3,f4,f5};所述卷积核用于对提取的特征进行拼接整合,得到F'=concat(f1,f2,f3,f4,f5);所述第二残差块用于对各特征的权重进行调整;所述拉伸块用于对权重调整后的特征进行拉伸,形成1×N的特征向量;所述三层全连接层用于将1×N的特征向量转换为L个输出值;所述软编码矩阵用于对各输出值进行解码;所述软编码输出模块用于计算解码后的输出值中,最小损失对应的情绪类别,所述情绪类别即微表情信息;输出值与预定义ECOC矩阵各个码字中最短的距离所对应的微表情类别即为预测结果。
综上所述,本发明的优点在于:
通过人脸识别算法检测图像流中的人脸并进行截取以获取人脸数据流,从人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组,将人脸数据组输入训练后的微表情识别模型得到微表情信息;由于人脸数据组中的光流能够描述物体在运动过程中的速度分布,物体的图片像素随着时间变化产生不同的强度变化,因此能够体现人体脸部肌肉、五官的变化程度,并结合动态特征和静态特征(人脸动态数据和人脸静态数据),能够有效提取脸部微表情特征,微表情识别模型通过软编码输出代替传统的softmax输出层,不仅能对一些错误进行纠错,还能缩小类内输出间距离,扩大类外输出间距离,最终极大的提升了微表情识别的准确率,并极大的提升了微表情识别模型的泛化能力以及鲁棒性。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (10)
1.一种基于深度学习的微表情识别方法,其特征在于:包括如下步骤:
步骤S10、交互型机器人通过3D摄像头获取图像流;
步骤S20、交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;
步骤S30、服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;
步骤S40、服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;
步骤S50、服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。
2.如权利要求1所述的一种基于深度学习的微表情识别方法,其特征在于:所述步骤S10中,所述交互型机器人设有5G通信模块,所述3D摄像头的拍摄帧数至少为100fps。
3.如权利要求1所述的一种基于深度学习的微表情识别方法,其特征在于:所述步骤S20具体为:
交互型机器人对所述图像流进行降噪处理后,通过OpenCV中基于Haar特征的人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器。
4.如权利要求1所述的一种基于深度学习的微表情识别方法,其特征在于:所述步骤S30具体包括:
步骤S31、服务器利用BS-RoIs算法从人脸数据流中提取出顶点帧,将所述顶点帧作为人脸静态数据;
步骤S32、提取所述人脸数据流的起始帧,利用所述起始帧和顶点帧提取横向光流信息u、纵向光流信息v以及光学应变信息ε;利用FlowNet模型从所述人脸数据流中提取光流信息vis,将所述u、v、ε以及vis作为人脸动态数据;
步骤S33、将各所述人脸静态数据以及人脸动态数据缩放到相同尺寸,组成人脸数据组。
5.如权利要求1所述的一种基于深度学习的微表情识别方法,其特征在于:所述步骤S40中,所述微表情识别模型包括一卷积层、一池化层、一第一残差块、一卷积核、一第二残差块、一拉伸块、三层全连接层、一软编码矩阵以及一软编码输出模块;
所述卷积层、池化层、第一残差块、卷积核、第二残差块、拉伸块、三层全连接层、软编码矩阵以及软编码输出模块依次连接;
所述卷积层以及池化层用于对人脸数据组进行特征提取;所述第一残差块用于对提取的特征进行贡献度分类,并突显有用的特征,抑制无效的特征;所述卷积核用于对提取的特征进行拼接整合;所述第二残差块用于对各特征的权重进行调整;所述拉伸块用于对权重调整后的特征进行拉伸,形成1×N的特征向量;所述三层全连接层用于将1×N的特征向量转换为L个输出值;所述软编码矩阵用于对各输出值进行解码;所述软编码输出模块用于计算解码后的输出值中,最小损失对应的情绪类别,所述情绪类别即微表情信息。
6.一种基于深度学习的微表情识别系统,其特征在于:包括如下模块:
图像流获取模块,用于交互型机器人通过3D摄像头获取图像流;
人脸数据流获取模块,用于交互型机器人通过人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器;
人脸数据组提取模块,用于服务器从所述人脸数据流中提取包括人脸动态数据和人脸静态数据的人脸数据组;
微表情识别模型创建模块,用于服务器基于软编码输出创建一微表情识别模型,并对所述微表情识别模型进行训练;
微表情识别模块,用于服务器将所述人脸数据组输入训练后的微表情识别模型得到微表情信息,并将所述微表情信息反馈给交互型机器人,交互型机器人基于接收的所述微表情信息进行互动响应。
7.如权利要求6所述的一种基于深度学习的微表情识别系统,其特征在于:所述图像流获取模块中,所述交互型机器人设有5G通信模块,所述3D摄像头的拍摄帧数至少为100fps。
8.如权利要求6所述的一种基于深度学习的微表情识别系统,其特征在于:所述人脸数据流获取模块具体为:
交互型机器人对所述图像流进行降噪处理后,通过OpenCV中基于Haar特征的人脸识别算法检测所述图像流中的人脸并进行截取,获取人脸数据流并上传服务器。
9.如权利要求6所述的一种基于深度学习的微表情识别系统,其特征在于:所述人脸数据组提取模块具体包括:
人脸静态数据提取单元,用于服务器利用BS-RoIs算法从人脸数据流中提取出顶点帧,将所述顶点帧作为人脸静态数据;
人脸动态数据提取单元,用于提取所述人脸数据流的起始帧,利用所述起始帧和顶点帧提取横向光流信息u、纵向光流信息v以及光学应变信息ε;利用FlowNet模型从所述人脸数据流中提取光流信息vis,将所述u、v、ε以及vis作为人脸动态数据;
人脸数据组生成单元,用于将各所述人脸静态数据以及人脸动态数据缩放到相同尺寸,组成人脸数据组。
10.如权利要求6所述的一种基于深度学习的微表情识别系统,其特征在于:所述微表情识别模型创建模块中,所述微表情识别模型包括一卷积层、一池化层、一第一残差块、一卷积核、一第二残差块、一拉伸块、三层全连接层、一软编码矩阵以及一软编码输出模块;
所述卷积层、池化层、第一残差块、卷积核、第二残差块、拉伸块、三层全连接层、软编码矩阵以及软编码输出模块依次连接;
所述卷积层以及池化层用于对人脸数据组进行特征提取;所述第一残差块用于对提取的特征进行贡献度分类,并突显有用的特征,抑制无效的特征;所述卷积核用于对提取的特征进行拼接整合;所述第二残差块用于对各特征的权重进行调整;所述拉伸块用于对权重调整后的特征进行拉伸,形成1×N的特征向量;所述三层全连接层用于将1×N的特征向量转换为L个输出值;所述软编码矩阵用于对各输出值进行解码;所述软编码输出模块用于计算解码后的输出值中,最小损失对应的情绪类别,所述情绪类别即微表情信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210422919.4A CN114882553B (zh) | 2022-04-21 | 2022-04-21 | 一种基于深度学习的微表情识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210422919.4A CN114882553B (zh) | 2022-04-21 | 2022-04-21 | 一种基于深度学习的微表情识别方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114882553A true CN114882553A (zh) | 2022-08-09 |
CN114882553B CN114882553B (zh) | 2024-07-12 |
Family
ID=82671010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210422919.4A Active CN114882553B (zh) | 2022-04-21 | 2022-04-21 | 一种基于深度学习的微表情识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114882553B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024131400A1 (zh) * | 2022-12-21 | 2024-06-27 | 虹软科技股份有限公司 | 一种基于视觉的早期疲劳检测方法、装置和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150205997A1 (en) * | 2012-06-25 | 2015-07-23 | Nokia Corporation | Method, apparatus and computer program product for human-face features extraction |
KR20160037424A (ko) * | 2014-09-29 | 2016-04-06 | 동명대학교산학협력단 | 개선된 리얼 아다부스트 알고리즘에 근거한 새로운 멀티 뷰 얼굴감지방식 |
US20170134120A1 (en) * | 2014-07-25 | 2017-05-11 | Xieon Networks S.A.R.L. | Cycle slip resilient coded modulation for fiber-optic communications |
CN109961034A (zh) * | 2019-03-18 | 2019-07-02 | 西安电子科技大学 | 基于卷积门控循环神经单元的视频目标检测方法 |
CN110287805A (zh) * | 2019-05-31 | 2019-09-27 | 东南大学 | 基于三流卷积神经网络的微表情识别方法及系统 |
CN111814609A (zh) * | 2020-06-24 | 2020-10-23 | 厦门大学 | 一种基于ecoc和深度学习的微表情识别方法 |
CN111931630A (zh) * | 2020-08-05 | 2020-11-13 | 重庆邮电大学 | 一种基于人脸特征点数据增强的动态表情识别方法 |
CN114333002A (zh) * | 2021-12-27 | 2022-04-12 | 南京邮电大学 | 基于图深度学习和人脸三维重建的微表情识别方法 |
-
2022
- 2022-04-21 CN CN202210422919.4A patent/CN114882553B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150205997A1 (en) * | 2012-06-25 | 2015-07-23 | Nokia Corporation | Method, apparatus and computer program product for human-face features extraction |
US20170134120A1 (en) * | 2014-07-25 | 2017-05-11 | Xieon Networks S.A.R.L. | Cycle slip resilient coded modulation for fiber-optic communications |
KR20160037424A (ko) * | 2014-09-29 | 2016-04-06 | 동명대학교산학협력단 | 개선된 리얼 아다부스트 알고리즘에 근거한 새로운 멀티 뷰 얼굴감지방식 |
CN109961034A (zh) * | 2019-03-18 | 2019-07-02 | 西安电子科技大学 | 基于卷积门控循环神经单元的视频目标检测方法 |
CN110287805A (zh) * | 2019-05-31 | 2019-09-27 | 东南大学 | 基于三流卷积神经网络的微表情识别方法及系统 |
CN111814609A (zh) * | 2020-06-24 | 2020-10-23 | 厦门大学 | 一种基于ecoc和深度学习的微表情识别方法 |
CN111931630A (zh) * | 2020-08-05 | 2020-11-13 | 重庆邮电大学 | 一种基于人脸特征点数据增强的动态表情识别方法 |
CN114333002A (zh) * | 2021-12-27 | 2022-04-12 | 南京邮电大学 | 基于图深度学习和人脸三维重建的微表情识别方法 |
Non-Patent Citations (2)
Title |
---|
KUN-HONG LIU 等: "Block Divison Convolutional Network With Implicit Deep Features Augmentation for Micro-Expression Recognition", IEEE TRANSATIONS ON MULTIMEDIA, 10 January 2022 (2022-01-10), pages 1345 - 1358, XP011938344, DOI: 10.1109/TMM.2022.3141616 * |
马浩原;安高云;阮秋琦;: "平均光流方向直方图描述的微表情识别", 信号处理, no. 03, 25 March 2018 (2018-03-25) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024131400A1 (zh) * | 2022-12-21 | 2024-06-27 | 虹软科技股份有限公司 | 一种基于视觉的早期疲劳检测方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114882553B (zh) | 2024-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022111236A1 (zh) | 一种结合注意力机制的面部表情识别方法及系统 | |
CN112766160A (zh) | 基于多级属性编码器和注意力机制的人脸替换方法 | |
CN106960202B (zh) | 一种基于可见光与红外图像融合的笑脸识别方法 | |
JP4743823B2 (ja) | 画像処理装置、撮像装置、画像処理方法 | |
JP5629803B2 (ja) | 画像処理装置、撮像装置、画像処理方法 | |
US5774591A (en) | Apparatus and method for recognizing facial expressions and facial gestures in a sequence of images | |
US8515136B2 (en) | Image processing device, image device, image processing method | |
Sharma et al. | Vision-based sign language recognition system: A Comprehensive Review | |
CN111783748A (zh) | 人脸识别方法、装置、电子设备及存储介质 | |
CN110390254B (zh) | 基于人脸的性格分析方法、装置、计算机设备及存储介质 | |
Maruyama et al. | Word-level sign language recognition with multi-stream neural networks focusing on local regions | |
CN110378234A (zh) | 基于TensorFlow构建的卷积神经网络热像人脸识别方法及系统 | |
CN111898571A (zh) | 动作识别系统及方法 | |
Rahim et al. | Dynamic hand gesture based sign word recognition using convolutional neural network with feature fusion | |
CN114882553B (zh) | 一种基于深度学习的微表情识别方法及系统 | |
Szankin et al. | Influence of thermal imagery resolution on accuracy of deep learning based face recognition | |
KR101204378B1 (ko) | 모바일 단말기에서 웃음 치료를 위한 웃음표정 인식 시스템 및 방법 | |
CN117237326A (zh) | 证件照缺陷检测及提示方法、装置、介质及设备 | |
CN116311472B (zh) | 基于多层次图卷积网络的微表情识别方法及装置 | |
CN116645717A (zh) | 一种基于PCANet+和LSTM的微表情识别方法及系统 | |
CN113887373B (zh) | 基于城市智慧体育的并行融合网络的姿态识别方法和系统 | |
Mao et al. | Robust facial expression recognition based on RPCA and AdaBoost | |
CN114429659A (zh) | 一种基于自注意力的卒中患者表情识别方法及系统 | |
JP2023092185A (ja) | 画像処理装置、学習方法およびプログラム | |
Gan et al. | Tibetan lip reading based on D3D |
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 |