CN113011314B - 一种基于频率域特征和乘积神经网络的人脸表情识别方法 - Google Patents
一种基于频率域特征和乘积神经网络的人脸表情识别方法 Download PDFInfo
- Publication number
- CN113011314B CN113011314B CN202110279160.4A CN202110279160A CN113011314B CN 113011314 B CN113011314 B CN 113011314B CN 202110279160 A CN202110279160 A CN 202110279160A CN 113011314 B CN113011314 B CN 113011314B
- Authority
- CN
- China
- Prior art keywords
- face
- neural network
- product
- frequency domain
- layer
- 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
- 230000008921 facial expression Effects 0.000 title claims abstract description 61
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 57
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 41
- 238000012360 testing method Methods 0.000 claims abstract description 32
- 230000014509 gene expression Effects 0.000 claims abstract description 31
- 238000007781 pre-processing Methods 0.000 claims abstract description 9
- 239000013598 vector Substances 0.000 claims description 20
- 210000001508 eye Anatomy 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 14
- 206010063659 Aversion Diseases 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 7
- 230000001815 facial effect Effects 0.000 claims description 7
- 238000012937 correction Methods 0.000 claims description 6
- 230000004927 fusion Effects 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000002093 peripheral effect Effects 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 2
- 239000000047 product Substances 0.000 abstract 5
- 239000007795 chemical reaction product Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 10
- 238000000605 extraction Methods 0.000 description 9
- 210000000088 lip Anatomy 0.000 description 9
- 238000002790 cross-validation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 210000001061 forehead Anatomy 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012706 support-vector machine 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
- G06V40/174—Facial expression recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- 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/161—Detection; Localisation; Normalisation
-
- 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/168—Feature extraction; Face representation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Molecular Biology (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Biodiversity & Conservation Biology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于频率域特征和乘积神经网络的人脸表情识别方法,该方法步骤如下:对人脸表情数据集中的人脸表情进行预处理;对经过预处理的人脸表情提取人脸的全局频率域特征和局部频率域特征;将人脸表情数据集分为训练集和测试集;构建和初始化乘积神经网络,使用划分完成的训练集和测试集对乘积神经网络训练和测试;评估乘积神经网络,采集人脸表情测试样本输入经过训练的乘积神经网络,得到最终的表情分类。本发明设计了一种新型的端到端的乘积神经网络,综合了人脸的全局特征和局部特征,提供了一种高效的人脸表情识别方法。
Description
技术领域
本发明涉及模式识别和神经网络技术领域,具体涉及一种基于频率域特征和乘积神经网络的人脸表情识别方法。
背景技术
人脸表情是人类的情感的外在表现,是人类交流的重要部分。人脸表情识别是计算机视觉领域的重要课题,主要目的是将图像或者视频中的人脸表情分类成为不同的类别。常见的类别有高兴,悲伤,愤怒,厌恶,惊讶,恐惧等等。人脸表情识别被广泛应用于游戏、医疗、安全以及人机交互等等。
人脸表情识别通常分为几个阶段:人脸检测阶段、人脸预处理阶段、特征提取阶段、特征分类阶段。其中,特征提取阶段负责从输入中获取人脸表情相关的特征,是正确地识别和分类的前提。
传统的特征提取方式主要依赖于手工特征提取技术,例如HoG特征,SIFT特征,LBP特征等等,再将这些特征使用决策树、SVM等传统的分类方法进行分类,以识别出人脸表情。
随着神经网络的发展,基于神经网络的深度学习技术成为了近年来学术界与工业界的热点。深度学习的方法能够提取出人脸更高层次的抽象特征。目前已有的文献中,使用卷积神经网络进行人脸表情识别的做法比较普遍,但是目前的卷积神经网络主要使用的是空间域的特征,使用的网络通常比较复杂、难以拟合,基于频率域的人脸特征的深度学习方法较少。本发明设计一种频率域表情特征的提取方法和乘积神经网络。
根据人脸表情的心理学和生理学特性(见文献:M.H.Siddiqi,R.Ali,A.M.Khan,Y.T.Park,S.Lee,Human facial expression recognition using stepwise lineardiscriminant analysis and hidden conditional random fields),人脸表情可以主要由眼部、嘴唇周围的关键区域特征表征。例如,相关研究表明,高兴、悲伤主要是基于唇部关键特征,惊讶和厌恶主要基于唇部和眼部关键特征,愤怒和恐惧主要由唇部,眼部和前额的区域特征表征。人脸的其他部位对于表征表情的贡献相对较小。因此,本发明提取眼部与唇部的区域关键信息,并结合人脸整体的信息,构建一种双分支的乘积神经网络,以帮助人脸表情的识别。
发明内容
本发明的目的是为了解决现有技术中的上述缺陷,提供一种基于频率域特征和乘积神经网络的人脸表情识别方法。
本发明的目的可以通过采取如下技术方案达到:
一种基于频率域特征和乘积神经网络的人脸表情识别方法,所述人脸表情识别方法包括以下步骤:
S1、对人脸表情数据集中的人脸表情进行预处理,包括人脸检测、人脸校正和人脸裁剪;
S2、对经过预处理的人脸表情提取人脸的全局频率域特征和局部频率域特征;
S3、将人脸表情数据集分为训练集和测试集;
S4、构建和初始化乘积神经网络,包括处理全局频率域特征的分支A、处理局部频率域特征的分支B、处理特征融合和分类的分类部分,使用划分完成的训练集和测试集对乘积神经网络训练和测试;
S5、采集人脸表情输入经过训练的乘积神经网络,识别得到表情类型。
进一步地,所述步骤S1过程如下:
S101、人脸检测,采用dlib工具包检测和识别人脸表情数据集中每张图片的人脸,如果图片中检测到人脸,则继续进行下面的步骤,否则提示未检测到人脸;
S102、人脸校正,对于检测出来的人脸,使用dlib工具包提取多个特征点并得到左眼中心点(xl,yl)和右眼中心点(xr,yr),根据左眼中心点(xl,yl)和右眼中心点(xr,yr)计算出人脸倾斜的角度θ如下:
将图片向相反方向旋转θ角度即得到校正后的人脸图片;
S103、人脸裁剪,根据特征点的位置,将人脸表情数据集中每张图片的图像裁剪到合适的大小以降低特征的维度,由最左边的特征点横坐标和最右边的特征点横坐标得到人脸宽度w,由最上面的特征点纵坐标和嘴唇下部和下颚的中点纵坐标得到人脸高度h,将裁剪后的图片重新调整大小到128×128的分辨率,得到重新调整尺寸后的人脸图片S。
进一步地,所述步骤S2过程如下:
S201、对经过预处理的人脸表情提取人脸的全局频率域特征,即直接将处理后的人脸图像做离散余弦变换后取频谱图的左上角低频部分作为全局频率域特征,离散余弦变换的公式如下:
其中,S(i,j)是人脸图片S位于时域坐标(i,j)处的值,F(x,y)是经过离散余弦变换后的频谱图F位于频域坐标(x,y)处的值,M、N是人脸图片S和频谱图F的高度和宽度;
如前所述F的尺寸是128×128,对F取左上角低频部分得到32×32的全局频率域特征F1。
S202、对经过预处理的人脸表情提取人脸的局部频率域特征,取左眼的6个特征点、右眼的6个特征点以及唇部的12个特征点,以这些点为中心,取8×8的正方形框,再将这些正方形区域元素做离散余弦变换,公式和上一节相同。得到24个8×8的局部特征图,将它们展平,得到一个1536维的特征向量,记作F2。
进一步地,所述的步骤S3过程如下:
将人脸表情数据集分为训练集和测试集,训练集的样本用于网络模型的训练,测试集的样本用于评估样本的识别效果。特别地,对于CK+数据集,使用十折交叉验证的方式。即将数据集中的数据平均分为10份,每次将其中的9份作为训练集,将另外的1份作测试集,取十折交叉验证的平均准确率作为测试的最终准确率。
进一步地,所述的步骤S4过程如下:
S401、构建和初始化乘积神经网络,包括处理全局频率域特征的分支A、处理局部频率域特征的分支B和处理特征融合和分类的分类部分。
卷积操作相当于一种空间域的滤波,类似地,矩阵中元素的点乘可以看作是一种频率域的滤波。受此启示,类似于卷积神经网络中的卷积核,设计一种乘积核,输入特征与乘积核的参数相乘加上偏置,可以得到输出的特征矩阵。对于尺寸为M×N的输入特征图,可以设计尺寸为M×N的乘积核K(x,y),其中0≤x≤M-1,0≤y≤N-1。乘积核的每个元素均为可学习的参数,在网络初始化阶段随机初始化,在神经网络训练的反向传播阶段可以不断优化。一个特征输入可与k个乘积核相乘,再与偏置值相加,得到最终的输出特征。
二维乘积层的计算公式如下:
Op(u,v)=I(u,v)*Kp(u,v)+bp
0≤u≤H-1,0≤v≤W-1,1≤p≤k 公式(3)
其中,H、W是输入特征图的高度和宽度,I(u,v)是输入特征图I位于坐标(u,v)处的值,Kp(u,v)是第p个乘积核Kp位于坐标(u,v)处的值,OP(x,y)是第p个输出特征图O位于坐标(x,y)处的值,bp是当前层的偏置值,k是扩充系数,即一个输入的特征图对应k个乘积核和k个输出的特征图。例如,对于输入为32×32的输入图片,k取20,则该层有20个32×32的乘积核。
一维乘积层的计算公式如下:
O′q(t)=I′(t)*K′q(t)+b′q
0≤t≤L-1,1≤q≤n 公式(4)
其中,L输入特征向量的长度,I′(t)是输入特征向量I′第t个元素的值,K′q(t)是第q个乘积核K′q第t个元素的值,O′q(t)是第q个输出特征向量O′q第t个元素的值,b′q是当前层的偏置值,n是扩充系数,即一个输入的特征向量对应n个乘积核和n个输出的特征向量。例如,对于输入为1536维的输入特征向量,k取20,则该层有20个1536维的乘积核。
乘积层之间可以相互连接,即上一层乘积层的输出特征图或特征向量作为下一层乘积层的输入特征图或特征向量。通过多层乘积层堆叠可以学习到更深层次的特征。
乘积神经网络具体结构如下:
包括处理全局频率域特征的分支A、处理局部频率域特征的分支B和处理特征融合和分类的分类部分,其中:
分支A从输入到输出依次连接为:二维乘积层mult2d_1、二维乘积层mult2d_2、二维乘积层mult2d_3、二维乘积层mult2d_4、二维乘积层mult2d_5、卷积层conv2d、池化层max_pooling、全连接层fc_1;
分支B从输入到输出依次连接为:一维乘积层mult1d_1、一维乘积层mult1d_2、一维乘积层mult1d_3、乘积层mult1d_4、全连接层fc_2;
分类部分的输入由全连接层fc_1和全连接层fc_2相加得到,从输入到输出依次连接为:全连接层fc_3、全连接层fc_4、全连接层fc_cls。
其中,分支A中二维乘积层mult2d_1的扩充系数取20,之后的每一层乘积层扩充系数都取1;分支B中一维乘积层mult1d_1的扩充系数取20,之后的每一层乘积层扩充系数都取1;
S402、使用划分完成的训练集和测试集对乘积神经网络训练和测试。
使用softmax作为分类部分最后一层fc_cls的激活函数如下:
其中x_inr为输入向量x_in的第r个分量,c为分类的总类别数,Pr为第r类的激活值。对于6分类的表情,c取6,r从1到6分别对应高兴,悲伤,愤怒,厌恶,惊讶,恐惧6类表情。P1~P6都在0到1之间,并且它们的和为1。
使用交叉熵损失函数作为乘积神经网络训练的目标函数如下:
其中,Pr为第r类的激活值,c为分类的总类别数,r从1到6分别对应愤怒,惊讶,厌恶,恐惧、高兴和悲伤6类表情。Y(r)为训练样本的真实标签,当r和表情真实标签相同时Y(r)取1,否则取0。对目标函数求权重的偏导数,可以得到权重的更新值。
如上述步骤S3所述,对于十折交叉验证,将数据集分为了10份,每组实验依次取其中的一组作为测试集,取10组实验的平均准确率作为模型最终的准确率:
其中,表示10组数据中第a组的数据总量,/>表示以第a组为测试集时预测正确的样本数。
使用Adam算法对网络进行批量训练,使得目标函数最小化。设定初始学习率为0.0001,批量训练样本量为30,在训练过程中,Adam算法可以根据网络训练的进度逐渐减少学习率,使得网络尽快收敛。训练完成后,保存乘积神经网络模型。
进一步地,所述步骤S5过程如下:
采集人脸表情经过输入经过训练的乘积神经网络,识别得到表情类型。可以使用数据集中的图片或者摄像头拍摄的图片,经过所述步骤S1的预处理和所述步骤S2的频率域特征提取,输入步骤S4中保存的神经网络模型中,得到输出的表情类型。根据识别率和各个表情类的识别混淆情况,可以利用混淆矩阵来检验和评估乘积神经网络。
本发明相对于现有技术具有如下的优点及效果:
(1)本发明实现了一种从输入图片到神经网络输出的端到端的神经网络,无需预训练,无需手工提取特征,方法较为简单。
(2)本发明利用了频率域处理的优势,实现了一种轻量化的乘积神经网络,运算速度快,消耗资源较少。
(3)本发明根据表情的生理学和心理学特点,综合了人脸的局部特征和全局特征,特别是利用了人脸表征表情的关键部位作为输入信息,有利于表情的识别效果。
附图说明
图1是本发明实施例中基于频率域特征和乘积神经网络的人脸表情识别方法流程图;
图2是本发明实施例中CK+数据集中的表情样例图;
图3是本发明实施例中dlib工具包检测出的68个人脸关键特征点位置及编号图;
图4是本发明实施例中局部特征点的选取图;
图5是本发明实施例中输入特征为二维时的乘积层图;
图6是本发明实施例中输入特征为一维时的乘积层图;
图7是本发明实施例中神经网络结构图;
图8是本发明实施例在CK+数据集上的识别混淆矩阵图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
本实施例公开了一种基于频率域特征和神经网络的人脸表情识别的方法,如图1所示,具体步骤如下:
步骤S1、对CK+人脸表情数据集中的人脸表情进行预处理,包括人脸检测,人脸校正和人脸裁剪。
CK+人脸表情数据集(见文献:P.Lucey,J.F.Cohn,T.Kanade,J.Saragih,Z.Ambadar,and I.Matthews,“The extended cohn-kanade dataset(ck+):A completedataset for action unit and emotionspecified expression,”in 2010ieee computersociety conference on computer vision and pattern recognitionworkshops.IEEE,2010,pp.94–101.)的表情样例如图2所示。从中提取出高兴,悲伤,愤怒,厌恶,惊讶,恐惧等六种表情图像,以进一步对其进行预处理。预处理过程包括:
S101、人脸检测,采用dlib工具包检测和识别人脸表情数据集中每张图片的人脸,如果图片中检测到人脸,则继续进行下面的步骤,否则提示未检测到人脸;
S102、人脸校正,对于检测出来的人脸,使用dlib工具包提取相应的68个特征点,如图3所示。对于眼部周围的特征点,通过计算可以得到眼部的几何坐标中心。由序号为37-42号的左眼周围特征点的坐标值平均数即可得到左眼中心点坐标(xl,yl),序号43-48号的右眼周围特征点的坐标值平均数即可得到右眼中心点坐标(xr,yr)。计算出人脸倾斜的角度θ如下:
将图片向相反方向旋转θ角度即得到校正后的人脸图片;
S103、人脸裁剪,根据特征点的位置,将原始数据中的图像裁剪到合适的大小以降低特征的维度。由最左边的特征点横坐标(18号到68号特征点的横坐标最小值)和最右边的特征点横坐标(18号到68号特征点横坐标的最大值)可以得到人脸宽度w,由最上面的特征点纵坐标(18号到68号特征点纵坐标的最大值)和嘴唇下部和下颚的中点纵坐标(58号和9号特征点的纵坐标平均值)得到人脸高度h。再将图片调整到适当大小。合理的人脸裁剪可以去除大量与表情无关的信息,以尽可能多地保留表情信息,利于进一步的特征提取和学习。对于CK+数据集,将裁剪后的图片重新调整大小到128×128的分辨率,得到重新调整尺寸后的人脸图片S。
S2、对经过预处理的人脸表情提取人脸的全局频率域特征和局部频率域特征。使用离散余弦变换将空间域图像转换到频率域,全局频率域特征从整张脸获取,局部频率域特征从人脸关键点获取。
S201、对经过预处理的人脸表情提取人脸的全局频率域特征,即直接将处理后的人脸图像做离散余弦变换后取频谱图的左上角低频部分作为全局频率域特征。离散余弦变换(Discrete Cosine Transform,DCT)是傅立叶变换的相关变换,由于它具有很强的能量压缩特性,常常用于图像的特征提取。低频区域通常包括图像的主体信息,高频区域通常包括图像的边缘、外形和噪声信息。离散余弦变换的公式如下:
其中,S(i,j)是人脸图片S位于时域坐标(i,j)处的值,F(x,y)是经过离散余弦变换后的频谱图F位于频域坐标(x,y)处的值,M、N是人脸图片S和频谱图F的高度和宽度;
S202、对经过预处理的人脸表情提取人脸的局部频率域特征,利用前面检测出来的68人脸关键点的相对应部分,即左眼的第36-41号,右眼的42-47号特征点,以及唇部的第48-59号特征点共计24个点,如图4所示。以这些点为中心,取8×8的正方形框,再将这些正方形区域元素做离散余弦变换,公式和上一节相同。得到24个8×8的局部特征图,将它们展平,得到一个1536维的特征向量,记作F2。
步骤S3、将CK+人脸表情数据集分为训练集和测试集。将人脸表情数据集分为训练集和测试集,训练集的样本用于网络模型的训练,测试集的样本用于评估样本的识别效果。对于CK+数据集,使用十折交叉验证的方式。即将数据集中的数据平均分为10份,每次将其中的9份作为训练集,将另外的1份作测试集,取十折交叉验证的平均准确率作为测试的最终准确率。
步骤S4、构建和初始化乘积神经网络,使用划分完成的训练集和测试集对乘积神经网络训练和测试。
S401、构建和初始化乘积神经网络,包括处理全局频率域特征的分支A、处理局部频率域特征的分支B和处理特征融合和分类的分类部分。
卷积操作相当于一种空间域的滤波,类似地,矩阵中元素的点乘可以看作是一种频率域的滤波。受此启示,类似于卷积神经网络中的卷积核,设计一种乘积核,输入特征与乘积核的参数相乘加上偏置,可以得到输出的特征矩阵。对于尺寸为M×N的输入特征图,可以设计尺寸为M×N的乘积核K(x,y),其中0≤x≤M-1,0≤y≤N-1。乘积核的每个元素均为可学习的参数,在网络初始化阶段随机初始化,在神经网络训练的反向传播阶段可以不断优化。一个特征输入可与k个乘积核相乘,再与偏置值相加,得到最终的输出特征。
二维乘积层的计算公式如下:
Op(u,v)=I(u,v)*Kp(u,v)+bp
0≤u≤H-1,0≤v≤W-1,1≤p≤k 公式(3)其中,H、W是输入特征图的高度和宽度,I(u,v)是输入特征图I位于坐标(u,v)处的值,Kp(u,v)是第p个乘积核Kp位于坐标(u,v)处的值,OP(x,y)是第p个输出特征图O位于坐标(x,y)处的值,bp是当前层的偏置值,k是扩充系数,即一个输入的特征图对应k个乘积核和k个输出的特征图,如图5所示。例如,对于输入为32×32的输入图片,k取20,则该层有20个32×32的乘积核。
一维乘积层的计算公式如下:
O′q(t)=I′(t)*K′q(t)+b′q
0≤t≤L-1,1≤q≤n 公式(4)
其中,L输入特征向量的长度,I′(t)是输入特征向量I′第t个元素的值,K′q(t)是第q个乘积核K′q第t个元素的值,O′q(t)是第q个输出特征向量O′q第t个元素的值,b′q是当前层的偏置值,n是扩充系数,即一个输入的特征向量对应n个乘积核和n个输出的特征向量,如图6所示。例如,对于输入为1536维的输入特征向量,k取20,则该层有20个1536维的乘积核。
乘积层之间可以相互连接,即上一层乘积层的输出特征图或特征向量作为下一层乘积层的输入特征图或特征向量。通过多层乘积层堆叠可以学习到更深层次的特征。
乘积神经网络具体结构如下:
包括处理全局频率域特征的分支A、处理局部频率域特征的分支B和处理特征融合和分类的分类部分,如图7所示,其中:
分支A从输入到输出依次连接为:二维乘积层mult2d_1、二维乘积层mult2d_2、二维乘积层mult2d_3、二维乘积层mult2d_4、二维乘积层mult2d_5、卷积层conv2d、池化层max_pooling、全连接层fc_1;
分支B从输入到输出依次连接为:一维乘积层mult1d_1、一维乘积层mult1d_2、一维乘积层mult1d_3、乘积层mult1d_4、全连接层fc_2;
分类部分的输入由fc_1和fc_2相加得到fc_3,从输入到输出依次连接为:fc_3,fc_4,fc_cls。
其中,分支A中二维乘积层mult2d_1的扩充系数取20,之后的每一层乘积层扩充系数都取1;分支B中一维乘积层mult1d_1的扩充系数取20,之后的每一层乘积层扩充系数都取1;
S402、使用划分完成的训练集和测试集对乘积神经网络训练和测试。使用softmax作为分类部分最后一层fc_cls的激活函数如下:
其中x_inr为输入向量x_in的第r个分量,c为分类的总类别数,Pr为第r类的激活值。对于6分类的表情,c取6,r从1到6分别对应高兴,悲伤,愤怒,厌恶,惊讶,恐惧6类表情。P1~P6都在0到1之间,并且它们的和为1。
使用交叉熵损失函数作为乘积神经网络训练的目标函数如下:
其中,Pr为第r类的激活值,c为分类的总类别数,r从1到6分别对应愤怒,惊讶,厌恶,恐惧、高兴和悲伤6类表情。Y(r)为训练样本的真实标签,当r和表情真实标签相同时Y(r)取1,否则取0。
对目标函数求权重的偏导数,可以得到权重的更新值。
如上述步骤S3所述,对于十折交叉验证,将数据集分为了10份,每组实验依次取其中的一组作为测试集,取10组实验的平均准确率作为模型最终的准确率:
其中,表示10组数据中第a组的数据总量,/>表示以第a组为测试集时预测正确的样本数。
使用Adam算法对网络进行批量训练,使得目标函数最小化。设定初始学习率为0.0001,批量训练样本量为30,在训练过程中,Adam算法可以根据网络训练的进度逐渐减少学习率,使得网络尽快收敛。训练完成后,保存乘积神经网络模型。
S5、评估乘积神经网络。对于CK+数据集,可以使用所述步骤S402中的十折交叉验证的方法,对于实验结果绘制混淆矩阵,如图8所示,其中。混淆矩阵的行和列都为表情的类别。每一列代表预测值,每一行代表实际类别。把各个类别的预测概率绘制成二维矩阵的形式,所有正确预测的类别在对角线上,通过观察行列的交点可以看出不正确的预测,即将某类样本错误地预测成了另一类的预测值。
从所有的测试样本来看,在CK+数据集上模型的识别率达到了98.3%,从混淆矩阵看,在厌恶(Di)、高兴(Ha)和悲伤(Sa)上识别效果最好,另外三种表情存在少量混淆的可能。总体来说,本发明所用的方法取得了非常不错的效果。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (4)
1.一种基于频率域特征和乘积神经网络的人脸表情识别方法,其特征在于,所述人脸表情识别方法包括以下步骤:
S1、对人脸表情数据集中的人脸表情进行预处理,包括人脸检测、人脸校正和人脸裁剪;
S2、对经过预处理的人脸表情提取人脸的全局频率域特征和局部频率域特征;
S3、将人脸表情数据集分为训练集和测试集;
S4、构建和初始化乘积神经网络,包括处理全局频率域特征的分支A、处理局部频率域特征的分支B、处理特征融合和分类的分类部分,使用划分完成的训练集和测试集对乘积神经网络训练和测试;所述乘积神经网络中,分支A从输入到输出依次连接为:二维乘积层mult2d_1、二维乘积层mult2d_2、二维乘积层mult2d_3、二维乘积层mult2d_4、二维乘积层mult2d_5、卷积层conv2d、池化层max_pooling、全连接层fc_1;
分支B从输入到输出依次连接为:一维乘积层mult1d_1、一维乘积层mult1d_2、一维乘积层mult1d_3、乘积层mult1d_4、全连接层fc_2;
分类部分的输入由全连接层fc_1和全连接层fc_2相加得到,从输入到输出依次连接为:全连接层fc_3、全连接层fc_4、全连接层fc_cls;
所述乘积神经网络中二维乘积层的计算公式如下:
Op(u,v)=I(u,v)*Kp(u,v)+bp
0≤u≤H-1,0≤v≤W-1,1≤p≤k 公式(c)
其中,H、W是输入特征图的高度和宽度,I(u,v)是输入特征图I位于坐标(u,v)处的值,Kp(u,v)是第p个乘积核Kp位于坐标(u,v)处的值,Op(x,y)是第p个输出特征图O位于坐标(u,v)处的值,bp是当前层的偏置值,k是扩充系数,即一个输入的特征图对应k个乘积核和k个输出的特征图;
所述乘积神经网络中一维乘积层的计算公式如下:
Q′q(t)=I′(t)*K′q(t)+b′q
0≤t≤L-1,1≤q≤n 公式(d)
其中,L输入特征向量的长度,I′(t)是输入特征向量I′第t个元素的值,K′q(t)是第q个乘积核K′q第t个元素的值,O′q(t)是第q个输出特征向量O′q第t个元素的值,b′q是该层的偏置值,n是扩充系数,即一个输入的特征向量对应n个乘积核和n个输出的特征向量;
所述全连接层fc_cls的激活函数如下:
其中r=1,...,c 公式(e)
其中x_inr为输入向量x_in的第r个分量,c为分类的总类别数,Pr为第r类的激活值,对于6分类的表情,c取6,r从1到6分别对应愤怒、惊讶、厌恶、恐惧、高兴和悲伤6类表情,P1~P6都在0到1之间,并且它们的和为1;
S5、采集人脸表情输入经过训练的乘积神经网络,识别得到表情类型。
2.根据权利要求1所述的一种基于频率域特征和乘积神经网络的人脸表情识别方法,其特征在于,所述步骤S1过程如下:
S101、人脸检测,采用dlib工具包检测和识别人脸表情数据集中每张图片的人脸,如果图片中检测到人脸,则继续进行下面的步骤,否则提示未检测到人脸;
S102、人脸校正,对于检测出来的人脸,使用dlib工具包提取多个特征点并得到左眼中心点(xl,yl)和右眼中心点(xr,yr),根据左眼中心点(xl,yl)和右眼中心点(xr,yr)计算出人脸倾斜的角度θ如下:
将图片向相反方向旋转θ角度即得到校正后的人脸图片,其中,xl、yl分别为左眼中心点的横坐标和纵坐标,xr、yr分别为右眼中心点的横坐标和纵坐标;
S103、人脸裁剪,根据特征点的位置,将人脸表情数据集中每张图片的图像裁剪到合适的大小以降低特征的维度,由最左边的特征点横坐标和最右边的特征点横坐标得到人脸宽度w,由最上面的特征点纵坐标和嘴唇下部和下颚的中点纵坐标得到人脸高度h,将裁剪后的图片重新调整大小到128×128的分辨率,得到重新调整尺寸后的人脸图片S。
3.根据权利要求1所述的一种基于频率域特征和乘积神经网络的人脸表情识别方法,其特征在于,所述步骤S2过程如下:
S201、对经过预处理的人脸表情提取人脸的全局频率域特征,即直接将处理后的人脸图像做离散余弦变换后取频谱图的左上角低频部分作为全局频率域特征,离散余弦变换的公式如下:
其中,S(i,j)是人脸图片S位于时域坐标(i,j)处的值,F(x,y)是经过离散余弦变换后的频谱图F位于频域坐标(x,y)处的值,M、N是人脸图片S和频谱图F的高度和宽度;
对频谱图F取左上角低频部分得到32×32的全局频率域特征F1;
S202、对经过预处理的人脸表情提取人脸的局部频率域特征,即根据人脸图像中人脸眼部和唇部指定特征点的周边正方形区域做离散余弦变换后取构建特征向量作为局部频率域特征F2。
4.根据权利要求1所述的一种基于频率域特征和乘积神经网络的人脸表情识别方法,其特征在于,
使用交叉熵损失函数作为乘积神经网络训练的目标函数如下:
其中,Pr为第r类的激活值,c为分类的总类别数,r从1到6分别对应愤怒、惊讶、厌恶、恐惧、高兴和悲伤6类表情,Y(r)为训练样本的真实标签,当r和表情真实标签相同时Y(r)取1,否则取0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110279160.4A CN113011314B (zh) | 2021-03-16 | 2021-03-16 | 一种基于频率域特征和乘积神经网络的人脸表情识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110279160.4A CN113011314B (zh) | 2021-03-16 | 2021-03-16 | 一种基于频率域特征和乘积神经网络的人脸表情识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113011314A CN113011314A (zh) | 2021-06-22 |
CN113011314B true CN113011314B (zh) | 2023-07-18 |
Family
ID=76407766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110279160.4A Active CN113011314B (zh) | 2021-03-16 | 2021-03-16 | 一种基于频率域特征和乘积神经网络的人脸表情识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113011314B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109325589A (zh) * | 2017-07-31 | 2019-02-12 | 华为技术有限公司 | 卷积计算方法及装置 |
CN109376692A (zh) * | 2018-11-22 | 2019-02-22 | 河海大学常州校区 | 面向人脸表情识别的迁移卷积神经网络方法 |
CN109492529A (zh) * | 2018-10-08 | 2019-03-19 | 中国矿业大学 | 一种多尺度特征提取及全局特征融合的人脸表情识别方法 |
CN111182491A (zh) * | 2019-12-31 | 2020-05-19 | 淮安中科晶上智能网联研究院有限公司 | 一种基于射频层析成像的无设备目标定位的方法及装置 |
-
2021
- 2021-03-16 CN CN202110279160.4A patent/CN113011314B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109325589A (zh) * | 2017-07-31 | 2019-02-12 | 华为技术有限公司 | 卷积计算方法及装置 |
CN109492529A (zh) * | 2018-10-08 | 2019-03-19 | 中国矿业大学 | 一种多尺度特征提取及全局特征融合的人脸表情识别方法 |
CN109376692A (zh) * | 2018-11-22 | 2019-02-22 | 河海大学常州校区 | 面向人脸表情识别的迁移卷积神经网络方法 |
CN111182491A (zh) * | 2019-12-31 | 2020-05-19 | 淮安中科晶上智能网联研究院有限公司 | 一种基于射频层析成像的无设备目标定位的方法及装置 |
Non-Patent Citations (2)
Title |
---|
一种基于改进的卷积神经网络的人脸表情识别方法;邹建成;曹秀玲;;北方工业大学学报(第02期);第1-4页 * |
卷积神经网络在雷达自动目标识别中的研究进展;贺丰收;何友;刘准钆;徐从安;;电子与信息学报(第01期);第1-3页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113011314A (zh) | 2021-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108615010B (zh) | 基于平行卷积神经网络特征图融合的人脸表情识别方法 | |
De Rezende et al. | Exposing computer generated images by using deep convolutional neural networks | |
CN109409222B (zh) | 一种基于移动端的多视角人脸表情识别方法 | |
CN107506761B (zh) | 基于显著性学习卷积神经网络的脑部图像分割方法及系统 | |
CN106372581B (zh) | 构建及训练人脸识别特征提取网络的方法 | |
CN107609541B (zh) | 一种基于可变形卷积神经网络的人体姿态估计方法 | |
Zhang et al. | Multimodal learning for facial expression recognition | |
CN112464865A (zh) | 一种基于像素和几何混合特征的人脸表情识别方法 | |
Chuang et al. | Deep-learning based joint iris and sclera recognition with yolo network for identity identification | |
Tereikovskyi et al. | The method of semantic image segmentation using neural networks | |
Zhan et al. | Semi-supervised classification of hyperspectral data based on generative adversarial networks and neighborhood majority voting | |
CN109165698A (zh) | 一种面向智慧交通的图像分类识别方法及其存储介质 | |
CN108229432A (zh) | 人脸标定方法及装置 | |
CN110852292B (zh) | 一种基于跨模态多任务深度度量学习的草图人脸识别方法 | |
Agbo-Ajala et al. | A lightweight convolutional neural network for real and apparent age estimation in unconstrained face images | |
Hussein | Robust iris recognition framework using computer vision algorithms | |
CN109948662B (zh) | 一种基于K-means和MMD的人脸图像深度聚类方法 | |
Sajid et al. | Parallel scale-wise attention network for effective scene text recognition | |
CN109165551B (zh) | 一种自适应加权融合显著性结构张量和lbp特征的表情识别方法 | |
CN113361589A (zh) | 基于迁移学习与知识蒸馏的珍稀濒危植物叶片识别方法 | |
CN111144469B (zh) | 基于多维关联时序分类神经网络的端到端多序列文本识别方法 | |
CN117275048A (zh) | 一种基于全局特征和局部细节点特征融合的指纹识别方法 | |
Parameshachari et al. | Plant Disease Detection and Classification Using Transfer Learning Inception Technique | |
CN113011314B (zh) | 一种基于频率域特征和乘积神经网络的人脸表情识别方法 | |
CN116884072A (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 |