当前位置: 首页 > 专利查询>东北大学专利>正文

一种基于卷积神经网络的面部表情识别方法技术

技术编号:20426067 阅读:18 留言:0更新日期:2019-02-23 08:48
本发明专利技术提供一种基于卷积神经网络的面部表情识别方法,至少包括离线训练过程和在线识别过程;所述离线识别过程,包括:通过采集单元采集输入图像;灰度化处理所述输入图像,并检测灰度化处理后的图像;统一所述灰度化处理后的图像的尺寸;构建基于卷积神经网络的面部表情识别的网络模型;对图像P’进行数据增强及并统一尺寸;对所述网络模型进行训练并对训练后的网络模型进行保存。在线识别过程,至少包括以下步骤:通过采集单元采集输入图像;将所述输入图像输入所述训练后的网络模型;得到在线识别结果。本发明专利技术通过与传统的人工提取表情特征的方法相比,实现了自动对人脸表情特征进行提取,从而进行表情识别,并提高了对表情识别的速度。

【技术实现步骤摘要】
一种基于卷积神经网络的面部表情识别方法
本专利技术涉及基于图像处理及深度学习的面部表情识别
,具体而言,尤其涉及一种基于卷积神经网络的面部表情识别方法。
技术介绍
在现实生活中,通过观察人脸表情可以使我们更好的去沟通交流,从情感理解的角度来看,人脸表情可以从侧面反映研究对象的心理状态。同时对人脸表情进行识别在电子类消费品行业、家庭娱乐、智能终端人机交互、安全领域等都有着极为广泛的应用。传统的基于人工提取表情特征进行分类识别的方法最主要的问题在于特定背景下人脸表情图像的预处理、特征提取以及训练的分类器的泛化能力强弱都会影响最终的分类结果。并且由于现实情况下输入样本和已有样本训练可能存在巨大差异,必须针对特定情形进行图像预处理及特征提取造成识别时间较长不能满足实时的需求。
技术实现思路
根据上述提出现实情况下输入样本和已有样本训练可能存在巨大差异,必须针对特定情形进行图像预处理及特征提取造成识别时间较长不能满足实时的需求的技术问题,而提供一种基于卷积神经网络的面部表情识别方法。本专利技术涉及一种基于卷积神经网络的面部表情识别方法,其特征在于,至少包括离线训练过程和在线识别过程;所述离线识别过程,至少包括以下步骤:S11:通过采集单元采集输入图像P;S12:灰度化处理所述输入图像P,并检测灰度化处理后的图像P’;S13:统一所述灰度化处理后的图像P’的尺寸;S14:构建基于卷积神经网络的面部表情识别的网络模型;S15:对图像P’进行数据增强及并统一尺寸;S16:对所述网络模型进行训练并对训练后的网络模型进行保存;所述在线识别过程,至少包括以下步骤:S21:通过采集单元采集输入图像Pz;S22:将所述输入图像Pz输入所述训练后的网络模型;S23:得到在线识别结果。进一步的,所述步骤S12至少还包括以下步骤:S121:对所述输入图像进行灰度化处理;所述灰度化处理公式为:Gray(i,j)=0.39*R(i,j)+0.5*G(i,j)+0.11*B(i,j);其中,R、G和B分别表示红色、绿色和蓝色通道的值,Gray(i,j)表示转换后的灰度值;S122:通过OpenCV开源库中的人脸检测,OpenCV开源库中的人脸检测对该灰度图像进行人脸检测;所述人脸检测将检测到的人脸位置存储在vector<Rect>类型的一维向量里,令人脸位置变量为faces,其中Rect存储人脸矩阵的左上角坐标和矩阵的长和宽,Rect(inta,intb,intc,intd)其中,(a,b)为矩形的左上角坐标,c,d分别表示矩形的长和宽;S23:得到灰度处理后的图像P’。进一步的,所述步骤S3至少包含:S131:根据所述faces的坐标确定人脸在人脸图像的坐标位置;S132:对检测到的所述人脸图像坐标进行剪裁,保留人脸区域得到opencv检测到的人脸图像;S133:使用插值方式为最近邻插值的方式对剪裁后的人脸图像进行尺寸调整,将剪裁后图像尺寸调整为48*48像素。进一步的,步骤S14还包括:S141:利用tensorflow深度学习框架构建我们的卷积神经网络,首先输入到conv_1层进行卷积操作,通过3*3的卷积核对输入图像进行卷积操作,则特征图为48*48*32;再采用Relu激励函数对卷积层进行非线性操作,则特征图为48*48*32;所述Relu激励函数为:S142:在pool1层对上一层的输出进行池化操作,通过MaxPooling方法进行池化,池化窗口为2*2,则特征图为24*24*32;S143:在conv2层对pool1层进行卷积操作,使用3*3的卷积核对输入图像进行卷积操作,此时特征图为24*24*64;再采用Relu激励函数对卷积层进行非线性操作,则特征图为24*24*64;S144:在pool2层对上一层的输出进行池化操作,通过MaxPooling方法进行池化,池化窗口为2*2,则特征图为12*12*64;S145:在conv3层对所述pool2层进行卷积操作,通过3*3的卷积核对输入图像进行卷积操作,则特征图为12*12*128;再采用Relu激励函数对卷积层进行非线性操作,则特征图为12*12*128;S146:在pool3层对上一层的输出进行池化操作,通过MaxPooling方法进行池化,池化窗口为2*2,则特征图为6*6*128;S147:Fc4全连接层中特征图为1*1*128;S148:Fc5与输出层相连接特征图为1*1*7,通过Softmax分类器最终实现训练出7种表情;所述7种表情为0=中性,1=愤怒,2=厌恶,3=害怕,4=高兴,5=悲伤,6=惊讶,实现对人脸表情的识别。更进一步的,步骤S15至少还包括:S151:定义初始化weight参数的时候conv1,conv2和conv3采用截断的正态分布初始化权重,标准差设置为0.05,则在所述Fc4层定义初始化参数时采用截断的正态分布来初始化权重并给权重添加一个L2的loss;S152:损失函数采用多分类交叉熵损失函数,优化器选择AdamOptimizer,将学习速率设为1e-3,将训练样本进行分批训练,每批15张图片进行训练,epochs设置为20;多分类交叉熵损失函数为:loss=-∑xp(x)log(q(x));其中,P(x)表示实际标签的概率分布,q(x)表示预测标签的概率分布;S153:在每一步的训练中首先获得一个批次图片,然后计算loss损失函数,通过Adam优化器不断跟新训练参数。进一步的,所述步骤S16至少还包括:S161:利用采集单元对人脸进行拍摄;S162:对拍摄的照片进行灰度化处理、opencv库进行人脸检测、剪裁和统一尺寸;S163:将图片输入到我们训练好的expRecognition网络模型中进行检测,最终输出面部表情属于每种表情的概率,选择概率最大值所对应的表情则为输出;所述概率计算公式如下:其中,j表示第j类的分类情况,K表示类别数,P(Cj=j|x)表示样本x属于j类的概率,表示模型参量,是对概率进行归一化,即所有概率相加为1。较现有技术相比,本专利技术具有以下优点:本专利技术提供的基于神经网络的面部表情识别方法,通过与传统的人工提取表情特征的方法相比,实现了自动对人脸表情特征进行提取,从而进行表情识别,并提高了对表情识别的速度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做以简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术整体流程示意图。图2为本专利技术待采集数据集图像的原图。图3为本专利技术待采集数据集图像统一尺寸后的图像。图4为本专利技术expRecognition网络模型示意图具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的本文档来自技高网
...

【技术保护点】
1.一种基于卷积神经网络的面部表情识别方法,其特征在于,至少包括离线训练过程和在线识别过程;所述离线识别过程,至少包括以下步骤:S11:通过采集单元采集输入图像P;S12:灰度化处理所述输入图像P,并检测灰度化处理后的图像P’;S13:统一所述灰度化处理后的图像P’的尺寸;S14:构建基于卷积神经网络的面部表情识别的网络模型;S15:对图像P’进行数据增强及并统一尺寸;S16:对所述网络模型进行训练并对训练后的网络模型进行保存;所述在线识别过程,至少包括以下步骤:S21:通过采集单元采集输入图像Pz;S22:将所述输入图像Pz输入所述训练后的网络模型;S23:得到在线识别结果。

【技术特征摘要】
1.一种基于卷积神经网络的面部表情识别方法,其特征在于,至少包括离线训练过程和在线识别过程;所述离线识别过程,至少包括以下步骤:S11:通过采集单元采集输入图像P;S12:灰度化处理所述输入图像P,并检测灰度化处理后的图像P’;S13:统一所述灰度化处理后的图像P’的尺寸;S14:构建基于卷积神经网络的面部表情识别的网络模型;S15:对图像P’进行数据增强及并统一尺寸;S16:对所述网络模型进行训练并对训练后的网络模型进行保存;所述在线识别过程,至少包括以下步骤:S21:通过采集单元采集输入图像Pz;S22:将所述输入图像Pz输入所述训练后的网络模型;S23:得到在线识别结果。2.根据权利要求1所述的一种基于卷积神经网络的面部表情识别方法,其特征还在于:所述步骤S12至少还包括以下步骤:S121:对所述输入图像进行灰度化处理;所述灰度化处理公式为:Gray(i,j)=0.39*R(i,j)+0.5*G(i,j)+0.11*B(i,j);其中,R、G和B分别表示红色、绿色和蓝色通道的值,Gray(i,j)表示转换后的灰度值;S122:通过OpenCV开源库中的人脸检测,OpenCV开源库中的人脸检测对该灰度图像进行人脸检测;所述人脸检测将检测到的人脸位置存储在vector<Rect>类型的一维向量里,令人脸位置变量为faces,其中Rect存储人脸矩阵的左上角坐标和矩阵的长和宽,Rect(inta,intb,intc,intd)其中,(a,b)为矩形的左上角坐标,c,d分别表示矩形的长和宽;S23:得到灰度处理后的图像P’。3.根据权利要求1所述的一种基于卷积神经网络的面部表情识别方法,其特征还在于:所述步骤S13至少包含:S131:根据所述faces的坐标确定人脸在人脸图像的坐标位置;S132:对检测到的所述人脸图像坐标进行剪裁,保留人脸区域得到opencv检测到的人脸图像;S133:使用插值方式为最近邻插值的方式对剪裁后的人脸图像进行尺寸调整,将剪裁后图像尺寸调整为48*48像素。4.根据权利要求1所述的一种基于卷积神经网络的面部表情识别方法,其特征还在于:所述步骤S14至少包含S141:利用tensorflow深度学习框架构建我们的卷积神经网络,首先输入到conv_1层进行卷积操作,通过3*3的卷积核对输入图像进行卷积操作,则特征图为48*48*32;再采用Relu激励函数对卷积层进行非线性操作,则特征图为48*48*32;所述Relu激励函数为:S142:在pool1层对上一层的输出进行池化操作,通过MaxPooling方法进行池化,池化窗口为2*2,则特征图为24*...

【专利技术属性】
技术研发人员:殷敬敬王洪峰
申请(专利权)人:东北大学
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1