一种人脸表情识别模型训练方法、装置及设备
技术领域
本发明涉及人工智能领域,尤其涉及一种人脸表情识别模型训练方法、装置及设备。
背景技术
进入21世纪,随着计算机技术和人工智能技术及其相关学科的迅猛发展,整个社会的自动化程度不断提高,人们对类似于人和人交流方式的人机交互的需求日益强烈。计算机和机器人如果能够像人类那样具有理解和表达情感的能力,将从根本上改变人与计算机之间的关系,使计算机能够更好地为人类服务。表情识别是情感理解的基础,是计算机理解人们情感的前提,也是人们探索和理解智能的有效途径。
人脸表情在人们的交流中起着非常重要的作用,是人们进行非语言交流的一种重要方式。表情含有丰富的人体行为信息,是情感的主载体,包含了丰富的情感信息,通过脸部表情能够表达人的微妙的情绪反应以及人类对应的心理状态,由此可见表情信息在人与人之间交流中的重要性。人脸表情识别技术随着人们对表情信息的日益重视而受到关注,成为目前一个研究的热点。所谓人脸表情识别就是利用计算机对人脸的表情信息进行特征提取并分类的过程,它使计算机能获知人的表情信息,进而推断人的心理状态,从而实现人机之间的智能交互。表情识别技术是情感计算机研究的内容之一,是生物特征识别、人工心理理论、情感计算、生理学、心理学、计算机视觉等多学科交叉的一个极富挑战性的课题。
国际上关于面部表情的分析与识别的研究工作:早在1978年美国心理学家Ekman和Friesen开发了面部动作编码系统FACS(Facial Action coding system)来检测面部表情的细微变化。它采用44个能够独立运动的表情活动单元描述面部动作,这些单元与使用面部表情改变的肌肉结构紧密相连。在这个系统中,将表情分为六个基本类别:愤怒、厌恶、恐惧、高兴、悲伤和惊奇以及33种不同的表情倾向,说明了具有这六种表情的人脸特征与无表情人脸特征相比具有相对独特的肌肉运动规律,后来进一步的研究大多是在FACS系统的基础上构建的人脸表情模型,所以这一系统的提出具有里程碑的意义。
我们已熟知的传统人脸识别方法很大一部分集中在基于传统的图像处理相关技术,主要基于三步进行实现,特征提取、特征选择、分类器构建来完成识别。其中特征提取阶段主要目的是能够提取出能够更好地进行面部表情分析的特征,目前比较成熟的技术包括Gabor小波特征和AAM(Active AppearanceModels,主动表观模型),而特征选择主要集中在高纬度特征向量下降低维度数,可以很大降低存储量与计算量,其中包括PCA(principalcomponentsanalysis,主成分分析技术)降维和AdaBoost算法。最后分类器构建则有着相对多的方法,其中主要运用到了模式识别中相关技术,包括了基于概率模型的方法,基于SVM(Support Vector Machine,支持向量机)的方法。
针对上述现有技术,发明人发现在利用上述方法进行人脸表情识别时,对于特征的提取与选择都需要人为的经验,因此在实现时步骤繁琐并且无法保证识别成功率。
发明内容
本发明的实施例提供了一种人脸表情识别模型训练方法、装置及设备,能够快速高效的建立用于人脸表情识别的人脸表情识别模型,以便利用该人脸表情识别模型完成对人脸表情的识别,提高人脸识别的效率。
为达到上述目的,本发明采用如下技术方案:
第一方面,本发明实施例提供一种人脸表情识别模型训练方法,包括:利用训练图像集中的人脸图像训练人脸表情识别模型;训练图像集中包括N幅具有预设表情的人脸图像,人脸表情识别模型通过卷积神经网络训练生成;在利用训练图像集中的人脸图像训练人脸表情识别模型之后,利用人脸表情识别模型,对验证图像集中的人脸图像的表情进行识别,计算识别准确度;验证图像集中包括M幅具有预设表情的人脸图像;在计算出识别准确度之后,判断识别准确度是否满足预设条件;若识别准确度不满足预设条件,则从验证图像集中选出错误识别的人脸图像以及易分错人脸图像,并将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中;其中,错误识别的人脸图像包含网络输出值小于成功识别所需要的网络输出值的人脸图像,易分错人脸图像包含网络输出值大于等于成功识别所需要的网络输出值,并小于易分错阈值的人脸图像;;在将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,重新利用训练图像集中的人脸图像对人脸表情识别模型进行训练;直至识别准确度满足预设条件,则获取用于待识别图像中的人脸表情识别的人脸表情识别模型。
可选的,在将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,该方法还包括:对训练图像集进行变形处理;变形处理包括:对训练图像集中的人脸图像进行缩放或旋转中的至少一项操作;再次利用训练图像集中的人脸图像对人脸表情识别模型进行训练,具体包括:利用经过变形处理之后的训练图像集中的人脸图像对人脸表情识别模型进行训练。
可选的,在判断识别准确度满足预设条件之后,该方法还包括:利用人脸表情识别模型对测试图像集中的人脸图像进行识别,根据识别结果生成人脸表情识别模型的评估结果;测试图像集中包括K幅具有预设表情的人脸图像。
第二方面,本发明实施例提供一种人脸表情识别模型训练装置,包括:训练单元,用于利用训练图像集中的人脸图像训练人脸表情识别模型;训练图像集中包括N幅具有预设表情的人脸图像,人脸表情识别模型通过卷积神经网络训练生成;验证单元,用于在训练单元利用训练图像集中的人脸图像训练人脸表情识别模型之后,利用人脸表情识别模型,对验证图像集中的人脸图像的表情进行识别,计算识别准确度;验证图像集中包括M幅具有预设表情的人脸图像;判断单元,用于在计算出识别准确度之后,判断识别准确度是否满足预设条件;更新单元,用于在判断单元确定识别准确度不满足预设条件之后,从验证图像集中选出错误识别的人脸图像以及易分错人脸图像,并将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中;其中,错误识别的人脸图像包含网络输出值小于成功识别所需要的网络输出值的人脸图像,易分错人脸图像包含网络输出值大于等于成功识别所需要的网络输出值,并小于易分错阈值的人脸图像;训练单元,还用于在将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,重新利用训练图像集中的人脸图像对人脸表情识别模型进行训练;获取单元,用于识别准确度满足预设条件,获取用于待识别图像中的人脸表情识别的人脸表情识别模型。。
可选的,该人脸表情识别模型训练装置,还包括变形处理单元;变形处理单元,用于在更新单元将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,对训练图像集进行变形处理;变形处理包括:对训练图像集中的人脸图像进行缩放或旋转中的至少一项操作;训练单元,具体用于利用经过变形处理之后的训练图像集中的人脸图像对人脸表情识别模型进行训练。
可选的,人脸表情识别模型训练装置还包括:评估单元,用于在判断单元确定识别准确度满足预设条件之后,利用人脸表情识别模型对测试图像集中的人脸图像进行识别,根据识别结果生成人脸表情识别模型的评估结果;测试图像集中包括K幅具有预设表情的人脸图像。
第三方面,本发明实施例提供一种人脸表情识别模型训练装置,包括:处理器、存储器、总线和通信接口;存储器用于存储计算机执行指令,处理器与存储器通过总线连接,当人脸表情识别模型训练装置运行时,处理器执行存储器存储的计算机执行指令,以使人脸表情识别模型训练装置执行如上述第一方面所提供的人脸表情识别模型训练方法。
第四方面,本发明实施例提供一种计算机存储介质,包括指令,当其在人脸表情识别模型训练装置上运行时,使得人脸表情识别模型训练装置执行如上述第一方面所提供的人脸表情识别模型训练方法。
第五方面,本发明实施例提供一种人脸表情识别设备,包括:如上述第二、三方面所提供的人脸表情识别模型训练装置。
本发明实施例能够快速高效的建立用于人脸表情识别的人脸表情识别模型,以便利用该人脸表情识别模型完成对人脸表情的识别,提高人脸识别的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种人脸表情识别模型训练方法的流程示意图;
图2为本发明实施例提供的一种人脸表情识别模型训练装置的结构示意图;
图3为本发明实施例提供的另一种人脸表情识别模型训练装置的结构示意图;
图4为本发明实施例提供的又一种人脸表情识别模型训练装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如本发明所使用的术语“单元”、“模块”旨在指代计算机相关实体,该计算机相关实体可以是硬件、固件、硬件和软件的结合、软件或者运行中的软件。例如,单元可以是,但不限于是:在处理器上运行的处理对象、处理器、可执行文件、执行中的线程、程序和/或计算机。
首先,对本发明的发明原理进行介绍:现有技术中基于特征提取的人脸表情识别模型的建立方法存在特征的提取选择需要人为的经验,这就导致识别模型建立的步骤复杂并且识别结果受人为经验的影响的问题。针对上述现有技术的问题,在本发明提供的人脸表情识别模型训练方法中利用能够高效识别的卷积神经网络算法来建立人脸表情识别模型。卷积神经网络的权值共享网络结构使之更类似与生物神经网络,降低了网络的复杂度,减少了权值的数量。以二维图像直接作为网络的输入,避免了传统是被算法中复杂的特征提取和数据重建过程。卷积神经网络是为识别二维形状特殊设计的一个多层感知器,这种网络结构对于平移、比例缩放、倾斜和其他形式的变形有着高度的不变形。
另外,本发明中在将样本数据集分为三个部分:训练图像集、验证图像集以及测试图像集。并利用训练图像集中的人脸图像对人脸表情识别模型进行训练,利用验证图像集中的人脸图像测试人脸表情识别模型的识别准确度,当识别准确度不佳时将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中,再次训练人脸表情识别模型,直至识别准确度达到预设条件后获得用于人脸表情识别的人脸表情识别模型。另外还可以利用测试图像集中的人脸图像对最终用于人脸表情识别的人脸表情识别模型进行评估。
实施例一:
基于上述发明原理,本发明实施例提供一种人脸表情识别模型训练方法,如图1所示,该方法包括:
S101、利用训练图像集中的人脸图像训练人脸表情识别模型。
其中,训练图像集中包括N幅具有预设表情的人脸图像。人脸表情识别模型通过卷积神经网络训练生成。
在一种实现方式中,将人脸表情分为六个类别,分别为:愤怒、厌恶、恐惧、高兴、悲伤和惊奇。进而训练图像集中的N幅人脸图像中包括愤怒、厌恶、恐惧、高兴、悲伤和惊奇六种类别的预设表情。
S102、在利用训练图像集中的人脸图像训练人脸表情识别模型之后,则利用人脸表情识别模型,对验证图像集中的人脸图像的表情进行识别,并计算识别准确度。
其中,验证图像集中包括M幅具有预设表情的人脸图像。
具体的,识别准确度可以为识别准确率、网络输出值的平均值等参数,对此本发明可以不作限制。
S103、在计算出识别准确度之后,判断识别准确度是否满足预设条件。
在一种实现方式中,判断识别准确度是否满足预设条件,具体包括:判断识别准确率是否达到准确率阈值。或者,判断识别准确度是否满足预设条件,具体包括:判断网络输出值的平均值是否大于预设输出值等。
S104、若识别准确度不满足预设条件,则从验证图像集中选出错误识别的人脸图像以及易分错人脸图像,并将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中。
其中,错误识别的人脸图像包含网络输出值小于成功识别所需要的网络输出值的人脸图像。
易分错人脸图像包含网络输出值大于等于成功识别所需要的网络输出值,并小于易分错阈值的人脸图像。
本发明实施例中,考虑到错误识别的人脸图像以及虽然正确识别但网络输出值小于易分错阈值的人脸图像,就像人类学习中难以掌握的知识一样,需要通过反复的训练才能得到更好的效果。因此,在识别准确度不满足预设条件后,本发明中通过将验证图像集中的错误识别的人脸图像以及易分错人脸图像更新至训练图像集中的方法,使的人脸表情识别模型能够对这些错误识别的人脸图像以及易分错人脸图像进行反复的训练,提高识别准确度。
S105、对训练图像集进行变形处理。
其中,变形处理可以包括:对训练图像集中的人脸图像进行缩放或者旋转中的至少一项操作。另外还可以修改训练图像集中的人脸图像的分辨率。
另外,本领域技术人员在实施本发明方案时,还可以对训练图像集中的人脸图像进行其他变形方式,对此本发明可不做限制。
在执行S105之后,在下一周期重新执行S101,即再次利用训练图像集中的人脸图像对人脸表情识别模型进行训练。
具体的,在对训练图像集中的人脸图像进行变形处理后,则利用经过变形处理的训练图像集中的人脸图像对人脸表情识别模型进行训练。
需要说明的是,在一种实现方式中,为了实现步骤的简化,减轻系统负荷,本发明所提供的方法中也可不对训练图像集中的人脸图像进行变形处理,进而在将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,直接利用训练图像集中的人脸图像对人脸表情识别模型进行训练。对此本发明可不做限制。
S106、直至识别准确度满足预设条件后,获取用于待识别图像中的人脸表情识别的人脸表情识别模型。
具体的,在步骤S103中判断识别准确度不满足预设条件之后,则会通过上述步骤S104-S105的步骤将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中后,会循环重复执行上述步骤S101-105的内容,直至识别准确度满足预设条件,进而获取到用于待识别图像中的人脸表情识别的人脸表情识别模型。
S107、利用获取到的人脸表情识别模型对待识别图像中的人脸表情进行识别。
在一种实现方式中,为了对获取到的人脸表情识别模型进行评估,了解该人脸表情识别模型的性能参数,本发明实施例所提供的方法还可以包括:
S108、利用人脸表情识别模型对测试图像集中的人脸图像进行识别,根据识别结果生成人脸表情识别模型的评估结果。
其中,测试图像集中包括K幅具有预设表情的人脸图像。
本发明实施例提供的人脸表情识别模型训练方法,能够快速高效的建立用于人脸表情识别的人脸表情识别模型,以便利用该人脸表情识别模型完成对人脸表情的识别,提高人脸识别的效率。
实施例二:本发明实施例提供一种人脸表情识别模型训练装置,该装置用于执行上述人脸表情识别模型训练方法。如图2所示,为本发明实施例提供的人脸表情识别模型训练装置的一种可能的结构示意图。具体的,该人脸表情识别模型训练装置20包括:训练单元201、验证单元202、判断单元203、更新单元204、获取单元205。其中:
训练单元201,用于利用训练图像集中的人脸图像训练人脸表情识别模型;训练图像集中包括N幅具有预设表情的人脸图像,人脸表情识别模型通过卷积神经网络训练生成;
验证单元202,用于在训练单元201利用训练图像集中的人脸图像训练人脸表情识别模型之后,利用人脸表情识别模型,对验证图像集中的人脸图像的表情进行识别,计算识别准确度;验证图像集中包括M幅具有预设表情的人脸图像;
判断单元203,用于在计算出识别准确度之后,判断识别准确度是否满足预设条件;
更新单元204,用于在判断单元203确定识别准确度不满足预设条件之后,从验证图像集中选出错误识别的人脸图像以及易分错人脸图像,并将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中;错误识别的人脸图像包含网络输出值小于成功识别所需要的网络输出值的人脸图像。易分错人脸图像包含网络输出值大于等于成功识别所需要的网络输出值,并小于易分错阈值的人脸图像;
训练单元201,还用于在将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,重新利用训练图像集中的人脸图像对人脸表情识别模型进行训练;
获取单元205,用于识别准确度满足预设条件,获取用于待识别图像中的人脸表情识别的人脸表情识别模型。
可选的,人脸表情识别模型训练装置20,还包括变形处理单元206;
变形处理单元206,用于在更新单元204将错误识别的人脸图像以及易分错人脸图像更新至训练图像集中之后,对训练图像集进行变形处理;变形处理包括:对训练图像集中的人脸图像进行缩放或旋转中的至少一项操作;
训练单元201,具体用于利用经过变形处理之后的训练图像集中的人脸图像对人脸表情识别模型进行训练。
可选的,人脸表情识别模型训练装置20还包括:
评估单元207,用于在判断单元203确定识别准确度满足预设条件之后,利用人脸表情识别模型对测试图像集中的人脸图像进行识别,根据识别结果生成人脸表情识别模型的评估结果;测试图像集中包括K幅具有预设表情的人脸图像。
本发明实施例中提供的人脸表情识别模型训练装置中各模块所的功能以及所产生的效果可以参照上述实施例一人脸表情识别模型训练方法中的对应的描述内容,在此不再赘述。
在采用集成的单元的情况下,图3示出了上述实施例中所涉及的人脸表情识别模型训练装置的一种可能的结构示意图。人脸表情识别模型训练装置30包括:处理模块301、通信模块302和存储模块303。处理模块301用于对人脸表情识别模型训练装置30的动作进行控制管理,例如,处理模块301用于支持人脸表情识别模型训练装置30执行图1中的过程S101-S108。通信模块302用于支持人脸表情识别模型训练装置与其他实体的通信。存储模块303用于存储人脸表情识别模型训练装置的程序代码和数据。
其中,处理模块301可以是处理器或控制器,例如可以是中央处理器(centralprocessing unit,CPU),通用处理器,数字信号处理器(digital signal processor,DSP),专用集成电路(application-specific integrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块302可以是收发器、收发电路或通信接口等。存储模块303可以是存储器。
当处理模块301为如图4所示的处理器,通信模块302为图4的收发器,存储模块303为图4的存储器时,本申请实施例所涉及的人脸表情识别模型训练装置可以为如下的人脸表情识别模型训练装置40。
参照图4所示,该人脸表情识别模型训练装置40包括:处理器401、收发器402、存储器403和总线404。
其中,处理器401、收发器402、存储器403通过总线404相互连接;总线404可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器401可以是一个通用中央处理器(Central Processing Unit,CPU),微处理器,特定应用集成电路(Application-Specific Integrated Circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
存储器403可以是只读存储器(Read-Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器402用于存储执行本申请方案的应用程序代码,并由处理器401来控制执行。收发器402用于接收外部设备输入的内容,处理器401用于执行存储器403中存储的应用程序代码,从而实现本申请实施例中所述人脸表情识别模型训练方法。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
另外,本发明实施例还提供一种人脸表情识别设备,包括上述实施例二所提供的人脸表情识别模型训练装置。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。