情绪识别方法、装置、计算机设备及存储介质与流程

文档序号:17725444发布日期:2019-05-22 02:28阅读:189来源:国知局
情绪识别方法、装置、计算机设备及存储介质与流程
本发明涉及生物识别
技术领域
,尤其涉及一种情绪识别方法、装置、计算机设备及存储介质。
背景技术
:情绪是一种综合了人的感觉、思想和行为的状态,它包括人对外界或自身刺激的心理反应,情绪识别是人工智能领域的关键技术,情绪识别的研究对于人机交互有着重要的现实应用价值,目前传统的情绪识别方法一般使用随机森林算法或者svm(supportvectormachine,支持向量机)分类器进行情绪分类,但是由于人物面部的表情具有多样性和复杂性的特点,使得目前传统的情绪识别方法对人物情绪的识别准确率不高。技术实现要素:本发明实施例中提供一种情绪识别方法、装置、计算机设备及存储介质,以解决目前人物情绪识别的准确率低的问题。一种情绪识别方法,包括:获取样本数据集,其中,所述样本数据集包括人脸样本图片和每个所述人脸样本图片的情绪状态;按照预设的处理方式对所述样本数据集的所述人脸样本图片进行预处理,得到统一规格的训练样本;对预设的稠密卷积神经网络模型的模型参数进行初始化,其中,所述稠密卷积神经网络模型包括n个压缩卷积层和全连接层,n为正整数;将所述训练样本输入所述稠密卷积神经网络模型,采用n个所述压缩卷积层对所述训练样本进行卷积计算,提取所述训练样本的人脸特征数据;根据所述人脸特征数据,使用反向传播算法对所述稠密卷积神经网络模型进行模型训练,得到情绪识别模型;获取待识别的人脸图片,并将所述待识别的人脸图片输入所述情绪识别模型中进行识别,得到所述待识别的人脸图片的识别结果,其中,所述识别结果包括所述待识别的人脸图片中人脸的所述情绪状态。一种情绪识别装置,包括:图片获取模块,用于获取样本数据集,其中,所述样本数据集包括人脸样本图片和每个所述人脸样本图片的情绪状态;预处理模块,用于按照预设的处理方式对所述样本数据集的所述人脸样本图片进行预处理,得到统一规格的训练样本;初始化模块,用于对预设的稠密卷积神经网络模型的模型参数进行初始化,其中,所述稠密卷积神经网络模型包括n个压缩卷积层和全连接层,n为正整数;卷积操作模块,用于将所述训练样本输入所述稠密卷积神经网络模型,采用n个所述压缩卷积层对所述训练样本进行卷积计算,提取所述训练样本的人脸特征数据;参数训练模块,用于根据所述人脸特征数据,使用反向传播算法对所述稠密卷积神经网络模型进行模型训练,得到情绪识别模型;图片识别模块,用于获取待识别的人脸图片,并将所述待识别的人脸图片输入所述情绪识别模型中进行识别,得到所述待识别的人脸图片的识别结果,其中,所述识别结果包括所述待识别的人脸图片中人脸的所述情绪状态。一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述情绪识别方法。一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述情绪识别方法。上述情绪识别方法、装置、计算机设备及存储介质,通过对样本数据集的人脸样本图片进行预处理,得到统一规格的训练样本,提高用于模型训练的样本图片的质量,使得模型训练的效率更快,同时,对预设的稠密卷积神经网络模型的模型参数进行初始化,将训练样本输入预设的稠密卷积神经网络模型中,采用压缩卷积层对训练样本进行卷积操作,得到训练样本的人脸特征数据,再根据人脸特征数据,使用反向传播算法对所述稠密卷积神经网络模型进行模型训练,得到情绪识别模型,最后将待识别的人脸图片输入情绪识别模型中进行识别,从而识别得到待识别的人脸图片中人脸的情绪状态。通过使用训练样本对稠密卷积神经网络模型进行训练,调整稠密卷积神经网络模型的模型参数,使得通过神经网络结构训练得到的情绪识别模型的精确度更高,提高情绪识别模型对人物情绪的识别准确率。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本发明一实施例中情绪识别方法的一应用环境示意图;图2是本发明一实施例中情绪识别方法的一流程图;图3是图2中步骤s20的一具体流程图;图4是图2中步骤s40的一具体流程图;图5是图2中步骤s50的一具体流程图;图6是图2中步骤s60的一具体流程图;图7是本发明一实施例中情绪识别装置的一原理框图;图8是本发明一实施例中计算机设备的一示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本申请实施例提供的情绪识别方法,可应用在如图1的应用环境中,该应用环境包括服务端和客户端,其中,服务端和客户端之间通过网络进行连接,服务端通过获取样本数据集,并对预设的稠密卷积神经网络模型进行模型训练,得到情绪识别模型,用户通过客户端输入待识别的人脸图片,服务端通过网络接收客户端发送的待识别的人脸图片,并使用情绪识别模型对待识别的人脸图片进行识别。客户端具体可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务端具体可以用独立的服务器或者多个服务器组成的服务器集群实现。本发明实施例提供的情绪识别方法应用于服务端。在一实施例中,图2示出本实施例中情绪识别方法的一流程图,该方法应用在图1中的服务端,用于训练情绪识别模型,并对待识别图片中的人物情绪进行识别。如图2所示,该情绪识别方法包括步骤s10至步骤s60,详述如下:s10:获取样本数据集,其中,该样本数据集包括人脸样本图片和每个人脸样本图片的情绪状态。在本实施例中,服务端具体可以从预设的样本库中获取样本数据集,该预设的样本库是指用于存储标准的人脸样本图片的数据库,标准的人脸样本图片具体可以从网上的公开数据集中下载人脸图片,并对人脸图片进行整理和标注,为每张人脸图片分配与其对应的情绪状态,得到标准的人脸样本图片,并将人脸样本图片存储于预设的样本库中,人脸样本图片的格式包括但不限于jpg、png和jpeg等格式,此处不做限制。具体地,样本数据集中的每张人脸样本图片携带的情绪状态表示该人脸样本图片中人物的情绪,其中,每张人脸样本图片对应一类情绪,人物的情绪包括开心、悲伤、恐惧、生气、惊讶、厌恶和平静等情绪,但并不限于此,具体可以根据实际应用的需要设置情绪的类别。s20:按照预设的处理方式对样本数据集的人脸样本图片进行预处理,得到统一规格的训练样本。其中,统一规格是指针对人脸样本图片的尺寸、灰度和形状进行处理得到的预设规格,预设的处理方式是指预先设置对人脸样本图片的尺寸、灰度和形状等进行变换处理的方式,形成统一规格的图片,以便后续的图片处理更加高效,提高图片的数据处理效率。具体地,服务端先使用预设的人脸检测算法获取人脸样本图片中的人脸区域,该预设的人脸检测算法可以根据图片中的人脸五官检测得到人脸区域,从人脸样本图片中裁剪出人脸所在的区域,得到裁剪后的人脸样本图片,再将裁剪得到的人脸样本图片的像素的尺寸转换为预设尺寸的图片,得到统一尺寸的图片,再对转换后的图片进行灰度化、二值化和去噪等处理,消除人脸样本图片中的噪声信息,增强与人脸相关的信息的可检测性和简化图像数据,并将预处理之后的人脸样本图片作为训练样本,实现对人脸样本图片的预处理。例如,可以预先将用于训练的人脸样本图片的像素尺寸设置为168*168,对一尺寸为[640,720]的人脸样本图片,通过预设的人脸检测算法检测出人脸样本图片中人脸的区域,并从人脸样本图片中裁剪出人脸所在的区域,再将裁剪得到的人脸样本图片的尺寸转换为[168,168]尺寸的图片,通过对转换后的图片进行灰度化、二值化和去噪等处理,从而得到统一规格的训练样本。s30:对预设的稠密卷积神经网络模型的模型参数进行初始化,其中,该稠密卷积神经网络模型包括n个压缩卷积层和全连接层,n为正整数。在本实施例中,预设的稠密卷积神经网络模型是基于densnet(denseconvolutionalnetwork,稠密卷积神经网络)构建的神经网络模型,densnet是一种深度学习的神经网络,能够加强训练样本的特征信息在densnet中的各个网络层之间的传递,更有效地利用了特征信息,提高神经网络模型的识别准确率。具体地,该稠密卷积神经网络模型包括n个压缩卷积层和全连接层,压缩卷积层是用于对图片的特征信息进行提取的网络层,全连接层是用于将提取到的特征信息进行综合分析的网络层,其中,n为正整数,可以根据实际应用的需要进行设置,此处不做限制。优选地,n可以设置为48,将传统的densnet中的64个卷积层缩减为48个压缩卷积层,使得神经网络模型的模型大小减小,并且训练得到的模型的识别准确率没有降低。进一步地,服务端对预设的稠密卷积神经网络模型的模型参数进行初始化处理,为预设的稠密卷积神经网络模型中的各个网络层的权值和偏置均赋予一个初始参数,使得预设的稠密卷积神经网络模型能够根据初始参数对训练样本进行特征的提取和计算,其中,权值和偏置是用于对输入的数据在网络中进行的折射变换计算的模型参数,使得网络经过计算输出的结果能够与实际情况相符。可以理解地,以人接收信息为例,当人在接收信息后,经过人脑神经元的判断、传递后,人会得到某个结果或者认知,即从信息中获取认知的过程,而对神经网络模型的训练过程就是优化网络中的神经元连接的权值和偏置,使得训练后的神经网络模型对待识别的数据的识别结果,能够达到与真实情况相符的识别效果。可选地,服务端可以在[-0.30,+0.30]的区间内,任意获取一个权值作为初始参数,将初始参数设置在一个均值为0并且较小的区间内,能够提高模型的收敛速度,以提高模型的构建效率。s40:将训练样本输入稠密卷积神经网络模型,采用n个压缩卷积层对训练样本进行卷积计算,提取训练样本的人脸特征数据。在本实施例中,预设的稠密卷积神经网络模型包括n个压缩卷积层,该n个压缩卷积层按照预设的顺序排列,服务端将训练样本输入稠密卷积神经网络模型,并使用稠密卷积神经网络模型的压缩卷积层对训练样本进行卷积计算,卷积计算是用于提取表示训练样本的特征信息的卷积操作,第一层卷积层是用于提取训练样本中的一些低层次的特征信息,例如,图像的边缘、线条和角等低层次的特征信息,越深层级的压缩卷积层能从低层次的特征信息中迭代计算获取训练样本中更复杂的特征信息。其中,采用n个压缩卷积层对训练样本进行卷积计算,得到训练样本的人脸特征数据的模型运算过程为:在每个压缩卷积层中,将训练样本和排列于该压缩卷积层之前的所有压缩卷积层的输出数据,共同作为该压缩卷积层的输入数据,并对该压缩卷积层的输入数据进行卷积计算的操作,以便提取训练样本的特征信息。例如,先将训练样本作为第一个压缩卷积层的输入数据,然后在第一个压缩卷积层中,根据预设的初始参数,对训练样本进行卷积计算处理,得到第一个压缩卷积层的输出数据;再将训练样本和第一个压缩卷积层的输出数据,共同作为第二个压缩卷积层的输入数据,然后在第二个压缩卷积层中,根据预设的初始参数,对第二个压缩卷积层的输入数据进行卷积计算处理,得到第二个压缩卷积层输出数据。可以理解的是,在第n个压缩卷积层中,将训练样本和第一个到第n-1个压缩卷积层的输出数据,共同作为第n个压缩卷积层的输入数据,并根据预设的初始参数,对第n个压缩卷积层的输入数据进行卷积计算,得到第n个压缩卷积层输出数据。获取第n个压缩卷积层的输出数据作为训练样本的人脸特征数据。s50:根据人脸特征数据,使用反向传播算法对稠密卷积神经网络模型进行模型训练,得到情绪识别模型。在本实施例中,反向传播算法具体指的是bp(backpropagationalgorithm,反向传播算法)算法,bp算法是一种有监督的算法,若人脸特征数据与期望的输出值不同,则将人脸特征数据与期望的输出值的误差的平方和作为目标函数,在预设的稠密卷积神经网络模型中反向传播,逐层求出目标函数在每个网络层中对各个神经元的权值的偏导数,构成目标函数对权值的向量的梯度向量,并根据梯度向量对稠密卷积神经网络模型法的模型参数进行调整。需要说明的是,梯度向量的方向指明了误差扩大的方向,因此对模型参数调整的时候,需要对权值和偏置进行反方向的调整,从而减小初始参数的设置引起的误差,模型参数的优化调整过程即为使用训练样本对模型的训练过程。可以理解的是,期望的输出值是训练样本对应的情绪状态,每个训练样本已经预先标注好对应的情绪状态,而初始参数只是为了方便预设的稠密卷积神经网络模型的运算预设的参数,根据该预设的初始参数对训练样本进行识别预测,得到的训练样本的人脸特征数据与期望的输出值之间必然会存在误差,因此,需要通过将误差信息逐层回传给稠密卷积神经网络模型中的各层网络结构,让每一层网络结构对预设的初始参数进行调整,使得训练样本的前向输出结果与期望的输出值靠近,从而完成对稠密卷积神经网络模型的模型训练。将训练好稠密卷积神经网络模型作为情绪识别模型。s60:获取待识别的人脸图片,并将待识别的人脸图片输入情绪识别模型中进行识别,得到该待识别的人脸图片的识别结果,其中,识别结果包括待识别的人脸图片中人脸的情绪状态。具体地,将待识别的人脸图片作为情绪识别模型的输入,并使用情绪识别模型的压缩卷积层对待识别的人脸图片进行卷积计算,提取待识别的人脸图片的特征信息,得到待识别的人脸图片的人脸特征数据,并在情绪识别模型的全连接层中,对人脸特征数据进行综合分析,计算该人脸特征数据与每类情绪状态的相似度,得到该待识别的人脸图片中人脸属于每个情绪状态的概率,并获取概率最大的情绪状态作为待识别图片的识别结果。其中,待识别的人脸图片可以是用户在客户端输入的需要进行情绪识别的图片,也可以是从网络中的公开人脸图片数据集中获取,但并不限于此,待识别的人脸图片具体可以根据实际应用的需要进行获取,此处不做限制。例如,服务端从ck+人脸表情数据库中获取1000张人脸图片,分别使用svm情绪识别模型和本实施例中的情绪识别模型对该1000张人脸图片进行人物情绪识别检测,将每张人脸图片的识别结果与人脸图片中的情绪状态的标签进行对比,统计得到svm情绪识别模型的识别正确率和本实施例中情绪识别模型的识别正确率,如表1所示,表1中列出了传统svm情绪识别模型和本实施例中的情绪识别模型分别对ck+人脸表情数据库中的1000张人脸图片进行识别之后得到的识别正确率。表1.识别正确率对照表ck+人脸表情数据库传统svm情绪识别模型本实施例中的情绪识别模型1000张56.54%95.48%其中,ck+人脸表情数据库是现有的人脸表情评估的测试平台,该平台包含了不同的人脸表情视频帧中的正面人脸表情,并且每张人脸图片都已分配好对应的情绪状态的标签,传统svm情绪识别模型是指使用svm分类器对训练样本进行情绪分类,训练得到的机器学习模型,用于对人脸图片中人物的情绪状态进行分类。因此,通过神经网络结构训练得到的情绪识别模型的精确度更高,能够提高情绪识别模型对人脸图片中人物情绪的识别准确率。在图2对应的实施例中,通过对样本数据集的人脸样本图片进行预处理,得到统一规格的训练样本,提高用于模型训练的样本图片的质量,使得模型训练的效率更快,同时,对预设的稠密卷积神经网络模型的模型参数进行初始化,将训练样本输入预设的稠密卷积神经网络模型中,采用压缩卷积层对训练样本进行卷积操作,得到训练样本的人脸特征数据,再根据人脸特征数据,使用反向传播算法对所述稠密卷积神经网络模型进行模型训练,得到情绪识别模型,最后将待识别的人脸图片输入情绪识别模型中进行识别,从而识别得到待识别的人脸图片中人脸的情绪状态。通过使用训练样本对稠密卷积神经网络模型进行训练,调整稠密卷积神经网络模型的模型参数,使得通过神经网络结构训练得到的情绪识别模型的精确度更高,提高情绪识别模型对人物情绪的识别准确率。在一实施例中,本实施例对步骤s20中所提及的按照预设的处理方式对样本数据集的人脸样本图片进行预处理,得到统一规格的训练样本的具体实现方法进行详细说明。请参阅图3,图3示出了步骤s20的一具体流程图,详述如下:s201:对每个人脸样本图片进行灰度级变换处理,得到第一人脸图片。具体地,按照公式(1)使用预设的灰度值变换函数对每个人脸样本图片进行灰度级变换处理:g(x,y)=t(f(x,y))公式(1)其中,f为人脸样本图片,t为预设的灰度值变换函数,g为第一人脸图片,x和y分别表示人脸样本图片中的横坐标与纵坐标,f(x,y)表示人脸样本图片中坐标点(x,y)对应的像素值,g(x,y)表示第一人脸图片中坐标点(x,y)对应的像素值。s202:对第一人脸图片进行去噪处理,得到第二人脸图片。具体地,图像噪声是指存在于图像数据中的不必要的或多余的干扰信息,例如,高斯噪声、瑞利噪声、伽马噪声和椒盐噪声等,噪声会人脸图片的识别造成影响,因此,可以采用均值滤波、中值滤波或者维纳滤波等方法对第一人脸图片进行噪声去除处理。可选地,服务端可以采用中值滤波对第一人脸图片进行噪声去除处理,中值滤波法是一种非线性的信号处理技术,通过将噪声点的灰度值替换为该噪声点的邻域窗口内的所有像素点的灰度值的中值,使得周围的像素点的灰度值接近的真实值,从而消除孤立的噪声点。s203:对第二人脸图片进行标准化处理,得到统一规格的目标图片,并将该目标图片作为训练样本。具体地,标准化处理是指将图片转换为统一规格的人脸图片的处理方式,该统一规格包括但不限于预设的尺寸、预设的灰度等级和预设的形状等,即将样本数据集中的人脸图片转换成统一的尺寸、统一的灰度等级和统一的形状的目标图片,将第二人脸图片按照预设的尺寸、预设的灰度等级和预设的形状进行转换之后得到统一尺寸的目标图片,并将该目标图片作为训练样本,其中,目标图片的统一规格可以根据实际应用的需要进行设置,此处不做限制,例如,目标图片的像素的尺寸可以设置为168*168,也可以设置为256*256等。在图3对应的实施例中,通过按照公式(1)对每个人脸样本图片进行灰度级变换处理、去噪处理和标准化处理,得到统一规格的训练样本,使得人脸图片更规范化,并且减少人脸图片的复杂度和信息处理量,提高人脸样本图片的质量,人脸图片的细节更加清楚,易于被识别,使得后续的模型训练过程对人脸图片的处理能够更加高效,从而提高机器学习模型的训练速率和识别准确率。在一实施例中,本实施例对步骤s40中所提及的将训练样本输入稠密卷积神经网络模型,采用n个压缩卷积层对训练样本进行卷积计算,提取训练样本的人脸特征数据的具体实现方法进行详细说明。请参阅图4,图4示出了步骤s40的一具体流程图,详述如下:s401:针对稠密卷积神经网络模型中的每个压缩卷积层,按照公式(2)对训练样本进行卷积操作:ki=hi([k0,k1,k2,...,ki-1])公式(2)其中,i为正整数,i∈[1,n],k0表示训练样本,ki表示第i个压缩卷积层的输出参数,hi()表示第i个压缩卷积层的卷积计算函数,[k0,k1,k2,...,ki-1]表示将训练样本和第1个到第i-1个压缩卷积层的输出参数进行合并,作为第i个压缩卷积层的输入参数。具体地,稠密卷积神经网络模型包括n个压缩卷积层,该n个压缩卷积层按照预设的顺序排列,并且每个压缩卷积层中设置不同预设尺度的视觉感知范围的卷积核,例如,卷积核可以设置为1*1、3*3或者5*5等,卷积核的单位为像素,根据每个压缩卷积层中卷积核确定该压缩卷积层的卷积计算函数,用于对每个压缩卷积层中的输入数据进行卷积计算,提取训练样本的不同层次的特征信息,从而将各个网络层提取的特征信息进行综合,充分利用各个网络层提取的特征信息,解决了特征信息在多层次的神经网络模型结果中传递的信息消息的问题,提高模型的机器学习效果。s402:获取第n个压缩卷积层的输出参数作为训练样本的人脸特征数据。具体地,通过对训练样本进行卷积计算,提取训练样本的低层次的特征信息,再对低层次的特征信息进行卷积计算,提取训练样本的深层次的特征信息,最后获取第n个压缩卷积层的输出参数作为训练样本的人脸特征数据,该人脸特征数据即为能够表示该训练样本的情绪状态的特征信息。在图4对应的实施例中,通过建立不同压缩卷积层之间的连接关系,按照公式(2)对训练样本进行卷积计算,将训练样本和排列于该压缩卷积层之前的所有压缩卷积层的输出数据,共同作为该压缩卷积层的输入数据,提取训练样本的特征信息,从而得到训练样本的人脸特征数据,使得稠密卷积神经网络模型能够将各个网络层提取的特征信息进行综合,充分利用各个网络层提取的特征信息,解决了特征信息在多层次的神经网络模型结果中传递的信息消息的问题,从而能够加深神经网络的网络层次,提取图片中更深层次的特征信息,提高模型的识别准确率。在一实施例中,本实施例对步骤s50中所提及的根据人脸特征数据,使用反向传播算法对稠密卷积神经网络模型进行模型训练,得到情绪识别模型的具体实现方法进行详细说明。请参阅图5,图5示出了步骤s50的一具体流程图,详述如下:s501:获取人脸样本图片的情绪状态对应的标准人脸特征,并计算训练样本的人脸特征数据和训练样本对应的标准前向输出之间的预测误差。具体地,每张人脸样本图片的情绪状态对应一类情绪,人物的情绪包括但不限于开心、悲伤、恐惧、生气、惊讶、厌恶和平静等情绪,每类情绪都可以表示用向量的形式表示,该向量即为情绪对应的标准人脸特征,例如,情绪状态为“开心”对应的标准人脸特征为(0,1,1,1,0,0.5,0.5,1)。可以理解的是,在模型中输入一张情绪状态标注为“开心”的训练样本,标准人脸特征(0,1,1,1,0,0.5,0.5,1)即为期望的输出结果,经过模型的模型运算之后,若输出的人脸特征数据为(0,1,1,1,0,0.5,0.5,1),则能够确认该训练样本的情绪状态为开心,然而,实际上,模型对训练样本的预测值与期望的输出结果往往会存在误差,例如,实际上训练样本的人脸特征数据是(0,1,0.3,0.5,0.1,2,2.3,1.75)。按照公式(3)计算训练样本的人脸特征数据和训练样本对应的标准人脸特征之间的预测误差:loss=p-px公式(3)其中,loss为预测误差,p为训练样本的标准人脸特征,px为训练样本的人脸特征数据。s502:按照预设的分摊方式,将预测误差反向分摊到每个压缩卷积层,并根据分摊的结果对每个压缩卷积层进行模型参数的调整。具体地,预设的分摊方式是反向传播算法中将预测误差在稠密卷积神经网络反向传播方式,按照预设的分摊方式进行预测误差的反向传播之后,可以将预测误差反向分摊到每个压缩卷积层,逐层求出目标函数在每个网络层中对各个神经元的权值的偏导数,构成目标函数对权值的向量的梯度向量,从而可以获得预测误差在每个压缩卷积层的误差信号,并根据梯度向量对压缩卷积层的模型参数进行调整。需要说明的是,梯度向量的方向指明了误差扩大的方向,因此对模型参数调整的时候,需要对模型参数进行反方向的调整,以便减小误差。s503:使用调整模型参数后的稠密卷积神经网络模型对训练样本进行预测,根据压缩卷积层的卷积计算得到每个训练样本更新后的人脸特征数据,并在全连接层中根据更新后的人脸特征数据得到训练样本的预测状态。具体地,在每次对稠密卷积神经网络模型的模型参数进行调整之后,使用调整模型参数后的稠密卷积神经网络模型对训练样本进行预测,根据压缩卷积层的卷积计算,得到每个训练样本更新后的人脸特征数据,并且在该调整模型参数后的稠密卷积神经网络模型的全连接层中,对更新后的人脸特征数据进行综合分析,确定训练样本的情绪状态,并将该情绪状态作为训练样本的预测状态。s504:根据每个训练样本的预测状态和情绪状态之间的比对结果,统计预测正确的训练样本的数量,并根据该数量计算预测准确率。具体地,若训练样本的预测状态与该训练样本预先标注的情绪状态相同,则表示该训练样本的人物情绪预测正确,否则,若训练样本的预测状态与该训练样本预先标注的情绪状态不同,则表示该训练样本的人物情绪预测错误,并在样本数据集中,统计预测正确的训练样本的数量。按照公式(4)计算预测准确率:其中,w为样本数据集的预测准确率,t为预测正确的训练样本的数量,d为样本数据集中人脸样本图片的总数。s505:若预测准确率小于预设的精度阈值,则返回计算人脸特征数据和人脸样本图片的情绪状态对应的标准人脸特征之间的预测误差的步骤继续执行。其中,预设的精度阈值是用于表示稠密卷积神经网络模型对人脸图片的情绪的预测准确率,例如,精度阈值可以设置为95%,也可以设置为90%,具体的精度阈值可以根据实际需要进行设置,此处不做限制。具体地,将步骤s504计算得到的预测准确率与预设的精度阈值进行比较,若预测准确率小于预设的精度阈值,则确认调整模型参数后的稠密卷积神经网络模型的训练未完成,需继续对该调整模型参数后的稠密卷积神经网络模型进行模型参数调优。根据步骤s503得到的每个训练样本更新后的人脸特征数据,计算更新后的前向输出结果和人脸样本图片的情绪状态对应的标准人脸特征之间的预测误差,采用与步骤s502相同的训练过程对调整模型参数后的稠密卷积神经网络模型的模型参数进行调整,并在模型参数调整完之后,采用与步骤s503相同的预测过程对训练样本进行预测,并根据预测结果计算预测准确率。若预测准确率仍然小于精度阈值,则继续重复本步骤,反复对稠密卷积神经网络模型进行训练和对训练样本进行预测,直到预测准确率大于或者等于精度阈值时结束训练。s506:若预测准确率大于或者等于预设的精度阈值,则将训练后的稠密卷积神经网络模型作为情绪识别模型。具体地,若步骤s504得到的预测准确率大于或等于预设的精度阈值,或者,经过步骤s505反复训练和预测后得到的预测准确率大于或等于预设的精度阈值,则此时得到的调整模型参数后的稠密卷积神经网络模型,即为训练后的稠密卷积神经网络模型,并将训练后的稠密卷积神经网络模型作为情绪识别模型,用于对人脸图片中的情绪状态进行识别。在图5对应的实施例中,通过计算训练样本的人脸特征数据和训练样本对应的标准人脸特征之间的预测误差,将预测误差反向分摊到每个压缩卷积层,对每个压缩卷积层进行模型参数的调整,并使用调整模型参数后的稠密卷积神经网络模型对训练样本进行预测,根据压缩卷积层的卷积计算得到每个训练样本更新后的人脸特征数据,以及在全连接层中根据更新后的人脸特征数据得到训练样本的预测状态,根据预测正确的训练样本的数量计算预测准确率,根据预测准确率判断调整模型参数后的稠密卷积神经网络模型的预测能力,若预测准确率小于预设的精度阈值,则继续重复执行训练和预测的过程,不断对稠密卷积神经网络模型的模型参数进行优化,直到达到满意的预测准确率,实现了对稠密卷积神经网络模型的训练调优,提高情绪识别模型对人脸图片的情绪的识别准确率。在一实施例中,全连接层包括m个分类器,其中,m为正整数,本实施例对步骤s60中所提及的获取待识别的人脸图片,并将待识别的人脸图片输入情绪识别模型中进行识别,得到该待识别的人脸图片的识别结果具体实现方法进行详细说明。请参阅图6,图6示出了步骤s60的一具体流程图,详述如下:s601:使用情绪识别模型的压缩卷积层对待识别的人脸图片进行卷积操作,得到待识别的人脸图片的人脸特征数据。具体地,将待识别的人脸图片输入步骤s5得到的情绪识别模型中,并按照情绪识别模型的神经网络结构,使用压缩卷积层对待识别的人脸图片进行卷积操作,以提取待识别的人脸图片的特征信息,得到待识别的人脸图片的人脸特征数据。s602:使用情绪识别模型的全连接层的m个分类器对待识别的人脸图片的人脸特征数据进行相似度计算,得到待识别的人脸图片对应的m种情绪状态的概率,其中,每个分类器对应一种情绪状态。具体地,情绪识别模型的全连接层中有m个训练好的分类器,该分类器具体可以是softmax回归分类器,每个分类器对应一种情绪状态和该情绪状态对应的特征数据,根据待识别的人脸图片的人脸特征数据,在m个训练好的分类器中进行相似度计算,得到待识别的人脸图片的人脸特征数据属于该分类器对应的情绪状态的概率,共得到m种情绪状态的概率。s603:从m个概率中,选取概率最大的情绪状态作为待识别的人脸图片中人脸的情绪状态,得到待识别的人脸图片的识别结果。具体地,根据步骤s602得到的待识别的人脸图片中人脸属于每种情绪状态的概率,从m种情绪状态的概率中,选取概率最大的情绪状态作为待识别的人脸图片中人脸的情绪状态,并将该情绪状态输出,作为待识别的人脸图片的识别结果。例如,如表2所示,全连接层一共有7个训练好的分类器,分类器1到分类器7对应的情绪状态分别为开心、悲伤、恐惧、生气、惊讶、厌恶和平静,表2示出了情绪识别模型对一待识别的人脸图片进行预测,得到该待识别的人脸图片中人脸属于每一种情绪状态的概率的预测结果,由于该待识别的人脸图片中人脸属于分类器1对应的情绪状态“开心”的概率最大,因此,可以确定该待识别的人脸图片中人脸的情绪状态为开心。表2.待识别的人脸图片的预测结果在图6对应的实施例中,通过使用情绪识别模型的压缩卷积层对待识别的人脸图片进行卷积操作,得到待识别的人脸图片的人脸特征数据,并使用情绪识别模型的全连接层对待识别的人脸图片的人脸特征数据进行相似度计算,得到待识别的人脸图片属于每种情绪状态的概率,最后,选取概率最大的情绪状态作为待识别的人脸图片片中人脸的情绪状态,从而得到待识别的人脸图片的识别结果,实现对人脸图片的情绪状态的识别。应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。在一实施例中,提供一种情绪识别装置,该情绪识别装置与上述实施例中情绪识别方法一一对应。如图7所示,该情绪识别装置包括:图片获取模块71、预处理模块72、初始化模块73、卷积操作模块74、参数训练模块75和图片识别模块76。各功能模块详细说明如下:图片获取模块71,用于获取样本数据集,其中,样本数据集包括人脸样本图片和每个人脸样本图片的情绪状态;预处理模块72,用于按照预设的处理方式对样本数据集的人脸样本图片进行预处理,得到统一规格的训练样本;初始化模块73,用于对预设的稠密卷积神经网络模型的模型参数进行初始化,其中,稠密卷积神经网络模型包括n个压缩卷积层和全连接层,n为正整数;卷积操作模块74,用于将训练样本输入稠密卷积神经网络模型,采用n个压缩卷积层对训练样本进行卷积计算,提取训练样本的人脸特征数据;参数训练模块75,用于根据人脸特征数据,使用反向传播算法对稠密卷积神经网络模型进行模型训练,得到情绪识别模型;图片识别模块76,用于获取待识别的人脸图片,并将待识别的人脸图片输入情绪识别模型中进行识别,得到待识别的人脸图片的识别结果,其中,识别结果包括待识别的人脸图片中人脸的情绪状态。进一步地,预处理模块72包括:第一处理子模块721,用于对每个人脸样本图片进行灰度级变换处理,得到第一人脸图片;第二处理子模块722,用于对第一人脸图片进行去噪处理,得到第二人脸图片;第三处理子模块723,用于对第二人脸图片进行标准化处理,得到统一规格的目标图片,并将目标图片作为训练样本。进一步地,卷积操作模块74包括:卷积计算子模块741,用于针对稠密卷积神经网络模型中的每个压缩卷积层,按照如下公式对训练样本进行卷积操作:ki=hi([k0,k1,k2,...,ki-1])其中,i为正整数,i∈[1,n],k0表示训练样本,ki表示第i个压缩卷积层的输出参数,hi()表示第i个压缩卷积层的卷积计算函数,[k0,k1,k2,...,ki-1]表示将训练样本和第1个到第i-1个压缩卷积层的输出参数进行合并,作为第i个压缩卷积层的输入参数;结果输出子模块742,用于获取第n个压缩卷积层的输出参数作为训练样本的人脸特征数据。进一步地,参数训练模块75包括:误差计算子模块751,用于获取人脸样本图片的情绪状态对应的标准人脸特征,并计算训练样本的人脸特征数据和训练样本对应的标准人脸特征之间的预测误差;参数调整子模块752,用于按照预设的分摊方式,将预测误差反向分摊到每个压缩卷积层,并根据分摊的结果对每个压缩卷积层进行模型参数的调整;样本预测子模块753,用于使用调整模型参数后的稠密卷积神经网络模型对训练样本进行预测,根据压缩卷积层的卷积计算得到每个训练样本更新后的人脸特征数据,并在全连接层中根据更新后的人脸特征数据得到训练样本的预测状态;准确率统计子模块754,用于根据每个训练样本的预测状态和情绪状态之间的比对结果,统计预测正确的训练样本的数量,并根据该数量计算预测准确率;循环执行子模块755,用于若预测准确率小于预设的精度阈值,则返回计算人脸特征数据和人脸样本图片的情绪状态对应的标准人脸特征之间的预测误差的步骤继续执行;模型获取子模块756,用于若预测准确率大于预设的精度阈值,则将训练后的稠密卷积神经网络模型作为情绪识别模型。进一步地,全连接层包括m个分类器,其中,m为正整数,图片识别模块76包括:识别计算子模块761,用于使用情绪识别模型的压缩卷积层对待识别的人脸图片进行卷积操作,得到待识别的人脸图片的人脸特征数据;概率计算子模块762,用于使用情绪识别模型的全连接层的m个分类器对待识别的人脸图片的人脸特征数据进行相似度计算,得到待识别的人脸图片对应的m种情绪状态的概率,其中,每个分类器对应一种情绪状态;情绪输出子模块763,用于从m个概率中,选取概率最大的情绪状态作为待识别的人脸图片中人脸的情绪状态,得到待识别的人脸图片的识别结果。关于情绪识别装置的具体限定可以参见上文中对于情绪识别方法的限定,在此不再赘述。上述情绪识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种情绪识别方法。在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中情绪识别方法中的步骤,例如图2所示的步骤s10至步骤s60,或者,处理器执行计算机程序时实现上述实施例中情绪识别装置的各模块的功能,例如图7所示模块71至模块76的功能。为避免重复,这里不再赘述。在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中情绪识别方法中的步骤,例如图2所示的步骤s10至步骤s60,或者,处理器执行计算机程序时实现上述实施例中情绪识别装置的各模块的功能,例如图7所示模块71至模块76的功能。为避免重复,这里不再赘述。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1