CN112766145A - 人工神经网络的人脸动态表情识别方法及装置 - Google Patents
人工神经网络的人脸动态表情识别方法及装置 Download PDFInfo
- Publication number
- CN112766145A CN112766145A CN202110057226.5A CN202110057226A CN112766145A CN 112766145 A CN112766145 A CN 112766145A CN 202110057226 A CN202110057226 A CN 202110057226A CN 112766145 A CN112766145 A CN 112766145A
- Authority
- CN
- China
- Prior art keywords
- dynamic expression
- person
- data
- image data
- group
- 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
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
- 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
- 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)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种基于人工神经网络的人脸动态表情识别方法及装置,所述方法应用于在人员固定场景下的视频中人员表情所属身份和/或表情强度类别预测;所述方法包括:获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;依据所述预设帧数的图像数据生成特征组;利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;获取当前待测人员的当前特征组;通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类。通过分析在某一个固定场景下的面部动态表***,对其表情所属身份及表情强度类别做出预测,因而主要可以应用于单位、工厂、教室等人员固定的场景内。
Description
技术领域
本申请涉及人脸表情检测领域,特别是一种人工神经网络的人脸动态表情识别方法及装置。
背景技术
随着科学技术的发展,人脸识别的领域越来越广,从生活中的刷脸打卡,到刷脸支付的普及,人脸识别一直都是计算机视觉、模式识别领域的研究热点,除身份验证外,在视频监控和网络检索领域也有着广泛的应用。随着深度学习的发展和计算机计算性能的提高,人脸识别技术在最近的研究中取得了重大进展,在多个数据集上取得了相当好的识别率。而如何利用识别得到的人脸数据也成为了近年来的重点。
时下很热门的应用于审讯犯人的表情分析仪便是通过分析人脸特征,对受审讯人的面部表情做出估计,进而推断其语言可信度。通过视频监控***对司机工人等劳动人员进行实时检测,可以分析出其疲劳、压力等精神状态,通过提前预警可以避免事故发生。而在很多公共场所,也可以通过监控***观察分析人的表情,通过分析其是否慌张或表情异常提前对其进行控制调查,从一定程度上可以起到阻止某些破坏公众秩序活动的发生。由此可见,表情识别技术在工业劳动、生活娱乐、人机交互等方面发挥越来越大的作用。
到目前为止,人脸的快速定位、表情的有效识别正处于研究与应用的黄金期。由于其研究涉及深度学习、机器学习、心理学分析、生理学分析等多领域多学科。而由于每个人对于不同的心理与情绪在面部表情上的体现不同,这取决于性格、面部结构等复杂影响的影响。动态表情则通过分析人脸所都具有的特征点的变化情况,相比单一的表情图动态表情具有更强的普适性。
目前对于人脸表情的学习研究是广泛且高质的,但是单一的表情图由于每个人面部结构的不同以及心理反映差异的影响,对于实际应用时单一表情的应用局限较大。
发明内容
鉴于所述问题,提出了本申请以便提供克服所述问题或者至少部分地解决所述问题的一种人工神经网络的人脸动态表情识别方法及装置,包括:
一种基于人工神经网络的人脸动态表情识别方法,所述方法应用于在人员固定场景下的视频中人员表情所属身份和/或表情强度类别预测;
所述方法包括:
获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;
依据所述预设帧数的图像数据生成特征组;
利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;
获取当前待测人员的当前特征组;
通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
进一步地,所述获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据的步骤,包括:
获取所述原始视频数据视频频帧率和视频时长;
依据所述视频帧率和所述视频时长确定所述原始视频数据中预设帧数的图像数据。
进一步地,所述依据所述视频帧率和视频时长确定所述原始视频数据中预设帧数的图像数据的步骤,包括:
依据所述视频帧率和所述视频时长将所述原始视频数据平均分割为预设数量的视频段;
从每个所述视频段提取帧数位置相同的的图像数据作为所述预设帧数的图像数据。
进一步地,所述依据所述预设帧数的图像数据生成特征组的步骤,包括:
依据所述灰度图像数据组中的背景区域和非背景区域,生成增强图像组;
依据相邻视频段对应的所述灰度化图像数据生成包含有待测人员脸部在X轴方向和Y轴方向上运动信息的光流运动信息图像组;
依据所述预设帧数的图像数据生成包含有所述预设帧数的图像数据4个方向的边缘的梯度输出图像组;
依据所述增强图像组、所述光流运动信息图像组和所述梯度输出图像组生成所述特征组。
进一步地,所述建立待测人员对应的特征组与所述待测人员的动态表情分类之间的对应关系的步骤,包括:
获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据;
分析所述特征组的特性及其规律,根据所述特性及其规律,确定所述人工神经网络的网络结构及其网络参数;
使用所述样本数据,对所述网络结构和所述网络参数进行训练和测试,确定所述特征组与所述动态表情分类的所述对应关系。
进一步地,所述获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据的步骤,包括:
收集不同样品的所述特征组与所述动态表情分类;
对所述特征组进行分析、并结合预存的专家经验信息,选取与所述动态表情分类相关的数据作为所述特征组;
将所述动态表情分类、以及选取的所述特征组构成的数据对,作为样本数据。
进一步地,
对所述网络结构和所述网络参数进行训练,包括:
选取所述样本数据中的一部分数据作为训练样本,将所述训练样本中的所述特征组输入到所述网络结构,通过所述网络结构的损失函数,激活函数和所述网络参数进行训练,得到实际训练结果;
确定所述实际训练结果与所述训练样本中的相应动态表情分类之间的实际训练误差是否满足预设训练误差;
当所述实际训练误差满足所述预设训练误差时,确定对所述网络结构和所述网络参数的所述训练完成;
和/或,
对所述网络结构和所述网络参数进行测试,包括:
选取所述样本数据中的另一部分数据作为测试样本,将所述测试样本中的所述特征组输入到所述训练完成的所述网络结构中,以所述损失函数,激活函数和所述训练完成的所述网络参数进行测试,得到实际测试结果;
确定所述实际测试结果与所述测试样本中的相应动态表情分类之间的实际测试误差是否满足设定测试误差;
当所述实际测试误差满足所述设定测试误差时,确定对所述网络结构和所述网络参数的所述测试完成。
进一步地,
对所述网络结构和所述网络参数进行训练,还包括:
当所述实际训练误差不满足所述设定训练误差时,通过所述网络结构的误差损失函数更新所述网络参数;
通过所述网络结构的所述损失函数,激活函数和更新后的所述网络参数进行重新训练,直至所述重新训练后的实际训练误差满足所述设定训练误差;
和/或,
对所述网络结构和所述网络参数进行测试,还包括:
当所述实际测试误差不满足所述设定测试误差时,对所述网络结构和所述网络参数进行重新训练,直至所述重新训练后的实际测试误差满足所述设定测试误差。
一种人工神经网络的人脸动态表情识别装置,所述方法应用于在人员固定场景下的视频中人员表情所属身份和/或表情强度类别预测;
具体包括:
预设帧数的图像数据生成模块,用于获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;
特征组生成模块,用于依据所述预设帧数的图像数据生成特征组;
对应关系建立模块,用于利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;
当前特征组获取模块,用于获取当前待测人员的当前特征组;
当前动态表情分类确定模块,用于通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
一种设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的人工神经网络的人脸动态表情识别方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的人工神经网络的人脸动态表情识别方法的步骤。
本申请具有以下优点:
在本申请的实施例中,通过获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;依据所述预设帧数的图像数据生成特征组;利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;获取当前待测人员的当前特征组;通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。通过分析在某一个固定场景下的面部动态表***,对其表情所属身份及表情强度类别做出预测,因而主要可以应用于单位、工厂、教室等人员固定的场景内;通过先验知识与深度学习自适应的特点,完成对输入动态表情特征的分析与学习;当应用场所内的人员固定时,通过本方法能够对人员的情绪作为较为准确的统计与把控,可及时处理异常情况等。
附图说明
图1是本申请一实施例提供的一种人工神经网络的人脸动态表情识别方法的步骤流程图;
图2是本申请一实施例提供的一种人工神经网络的人脸动态表情识别方法的归一化分割原理示意图;
图3是本申请一具实施例提供的一种人工神经网络的人脸动态表情识别方法的归一化分割方式示意图;
图4是本申请一实施例提供的一种人工神经网络的人脸动态表情识别方法的传统的2DCNN对图像进行卷积原理示意图;
图5是本申请一实施例提供的一种人工神经网络的人脸动态表情识别方法的3DCNN对图像进行卷积原理示意图;
图6是本申请一实施例提供的一种人工神经网络的人脸动态表情识别方法的TP-3DCNN网络整体结构示意图;
图7本申请一实施例提供的一种人工神经网络的人脸动态表情识别装置的结构框图。
具体实施方式
为使本申请的所述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参照图1,示出了本申请一实施例提供的一种基于人工神经网络的人脸动态表情识别方法,所述方法应用于在人员固定场景下的视频中人员表情所属身份和/或表情强度类别预测;
所述方法包括:
S110、获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;
S120、依据所述预设帧数的图像数据生成特征组;
S130、利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;
S140、获取当前待测人员的当前特征组;
S150、通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
在本申请的实施例中,通过获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;依据所述预设帧数的图像数据生成特征组;利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;获取当前待测人员的当前特征组;通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。通过分析在某一个固定场景下的面部动态表***,对其表情所属身份及表情强度类别做出预测,因而主要可以应用于单位、工厂、教室等人员固定的场景内;通过先验知识与深度学习自适应的特点,完成对输入动态表情特征的分析与学习;当应用场所内的人员固定时,通过本方法能够对人员的情绪作为较为准确的统计与把控,可及时处理异常情况等。
下面,将对本示例性实施例中人工神经网络的人脸动态表情识别方法作进一步地说明。
如所述步骤S110所述,获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据。
需要说明的是,所述原始视频数据可以是通过稳定的摄像头获取应用场景内动态表***,如监控,录像等。
在本发明一实施例中,可以结合下列描述进一步说明步骤S110所述“获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据”的具体过程。
如下列步骤所述:获取所述原始视频数据视频频帧率和视频时长;
如下列步骤所述:依据所述视频帧率和所述视频时长确定所述原始视频数据中预设帧数的图像数据。
在本发明一进阶实施例中,可以结合下列描述进一步说明步骤“依据所述视频帧率和视频时长确定所述原始视频数据中预设帧数的图像数据”的具体过程。
如下列步骤所述:依据所述视频帧率和所述视频时长将所述原始视频数据平均分割为预设数量的视频段;
如下列步骤所述:从每个所述视频段提取帧数位置相同的的图像数据作为所述预设帧数的图像数据。
作为一种示例,所述预设帧数的图像数据可以是将原始视频数据按照视频帧率与视频时长的关系进行平均提取的7帧图像的图像像素信息,其中,除获取该7帧图像的图像像素信息外,还获取并暂时保存该输入所用的两个帧图像组对应的所属身份标签与动态表情强度类别标签。
如所述步骤S120所述,依据所述预设帧数的图像数据生成特征组;
在本发明一实施例中,可以结合下列描述进一步说明步骤S120所述“依据所述预设帧数的图像数据生成特征组”的具体过程。
如下列步骤所述:依据所述灰度图像数据组中的背景区域和非背景区域,生成增强图像组;
作为一种示例,所述增强图像组可以通过归一化分割法将每张预设帧数的图像数据组的背景分割出来,将背景的像素值归为0,其余像素值不变需要说明的是,归一化分割(normalized cut)的原理为:
通过摄像机拍摄到的帧图像在灰度化后可以看作是大量像素点组成的图,因此实现图像分割的思路是计算像素点之间的权重图(weighted graph),通过连接的紧密型将图片分割成一些具有相同特征(纹理,颜色,明度等)的区域。
想要理解归一化分割所所设计代码的含义,首先要理解一些基本的概念:图的表示可以用边和顶点的关系来约束,有定义式:
G=(V,E)
式中,V表示顶点(vertex),E表示图片的点与点之间连接所用的边(edge),通过G能够将一张图内的信息完整的反映出来,而进一步引入权重的概念,即连接两点所用的边会带有权重值,以此来表现两点之间关系的紧密程度,如图2所示。通过观察可以很清晰的发现图所示可以分为2个区域,且通过图中的权重反映连接紧密程度来看,左右区域中出现两个明显不同于其他权重的值,即2个权重为0.1的边,分割后的A区域由4个顶点组成,B区域由5个顶点组成。
下面对点与点之间的权重相似度进行定义如下式:
式中,σ为高斯卷积核的方差,dist为定义两个像素点的差距公式,其中,σ主要影响dist对于w的影响程度,这是要在算法设计中进行摸索定义的,而dist在本专利中采用对每个像素点具有的(R,G,B,X,Y)向量进行求熵计算。
如图3所示可以看出虚线为期望的分割方式,从图3中可以很明显的发现切割出去的为两个边缘点,这是因为作为边缘点,与其他点的连接权重最小,因此在切割时只考虑权重的最小是不足够的,由此提出了归一化切割的方式,其判别式如下式:
在原有计算权重的基础上,引入了该点和其他所有点权重的计算值。以A为例说明,在此基础上去计算时,当A点与其他点距离过远导致w(A,V)过小时会引起判别式增大,结合B点同样的影响方式可以发现当点处于边缘位置时权重连接线不会处于最低的值而将该点分割出去,影响最终的区域分割结果。为求解该式的极值,通过数学推导,得到其在图像上的表达式为:
式中,W是之前定义的相似度矩阵,D是对角矩阵,值为W每行的值对应相加,而y为类别判别向量,其形式为[x1,x2,x3...]其维度为像素的个数。求解的目标即为该式极值情况下的y向量,以此对图片中的元素进行区域划分。对该式选择使用拉格朗日分析法,可以将目标函数转换为如下式:
yT(D-W)y+yTDy
对其进行求导可得y的关系式:
(D-W)y=λDy
式中,y为特征向量,λ为特征值,要求解的则是第二小特征值所对应的特征向量,因为最小特征值通解0不是需要的。通过计算在得到特征值后,可以代入原式得到特征向量,根据特征向内的值对每个像素所属类别进行归类完成归一化分割。
如下列步骤所述:依据相邻视频段对应的所述灰度化图像数据生成包含有待测人员脸部在X轴方向和Y轴方向上运动信息的光流运动信息图像组;
需要说明的是,光流是用来描述空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。
因此光流法描述特征指的是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。
在视频中切分帧图像并研究图像的光流运动信息,主要分为两种描述,为稀疏光流法和稠密光流法,二者的区别在于描述图像运动信息时研究用到的特征点的选取原则,前者通过提取具有代表性的点的特征去描述运动,而后者则分析图像中所有像素点的光流运动信息,本方法中由于检测对象为人脸的正视图,人的表情可变化的点并不多,因此选用了LK的光流描述法。
在特征点的选取上,传统的Harris角点不具有光照、尺度等不变性且提取目标仅在边缘变化处较好,而sift特征点虽然在这些方法有很好的特征,但是其提取的特征点往往是目标窗口内的像素值突变点,对于人脸面部提取到的特征点则非常少,且会提取到眼镜等不必要的特征点,因此,专利中的方法采用了Dlib库函数中利用回归树的方法提取面部表情的68特征点作为稀疏光流法所需要的特征点。
稀疏光流法LK的使用有以下三个假设条件:
亮度恒定:场景中目标图像的像素看起来在帧到帧移动是不发生改变。对于灰度图像(对于彩色图像同适用)这意味着像素的灰度值不会随着帧的跟踪改变。
时间持续性(微小移动):图像上相机的移动随时间变化缓慢。实际上,这意味着时间的变化不会引起像素位置的剧烈变化,这样像素的灰度值才能对位置求对应的偏导数。
空间一致性:场景中相同表面的相邻点具有相似的运动,并且其投影到图像平面上的距离也比较近。
而对于二维图像来说,设图像上一点下(x,y)在t时刻的像素值为I(x,y,t)。设在δt的时刻他位置发生了改变,即有:
I(x,y,t)=I(x+δx,y+δy,t+δt)
假设相机拍摄频率很高,相邻帧图像间移动足够小,则对左边I(x,y,t)进行一阶泰勒展开有:
式中,R(x,y,t)为泰勒公式的高阶余项近似为0,联立上两式可以得到:
等价为:
Ixu+Iyv+It=0
由于以上的方程有u和v两个未知数,所以无法求解,那们就要基于第三条假设得到一些其他的方程进行联立求解。可以假设在一个大小为m*m的窗口内,图像的光流是一个恒定值。那么就可以得到以下方程组:
为求解以上过度约束的***可以采用最小二乘法,将以上方程采用矩阵形式进行表示为:
则最终所有求解的光流(速度矢量)为
如下列步骤所述:依据所述预设帧数的图像数据生成包含有所述预设帧数的图像数据4个方向的边缘的梯度输出图像组;
需要说明的是,Gabor滤波器指的是对信号进行Gabor变换。其变换的思路来源是对传统的傅里叶变换作出改进,通过引入能够提取局部时间信息的窗函数来提取时间序列的频率信息,通过这种加窗方式改进的傅里叶变换也被称为Gabor变换。
一维Gabor变换的主要通过将信号划分成许多小时间间隔,并对每个小时间间隔进行分析以确定信号在该时间间隔存在的频率。为了能够提取到信号的小时间间隔因而对信号加一个滑动窗,通过滑动窗的滑动便可实现对信号不同时间段作傅里叶变换。设函数f(t)为原信号,且f∈L2(R),则Gabor变换式可定义为:
式中,ga(t-b)便是对信号所加的滑动窗函数,参数b就用于平行移动窗口,将信号对b积分有以下结果:
对于g(t)函数,时常选取为一个高斯函数,因为高斯函数的傅里叶变换仍为高斯函数,这使得对信号频域进行傅里叶逆变换时还可以使用加该窗函数的方法;其次高斯函数的函数形状是拱形的,这是利用局部信号分析的。
因此分析信号的Gabor变换,下一步要做的就是对核函数进行定义,有如下定义式为:
求g(t)的对偶函数γ(t)为:
则离散Gabor变换可以写为:
当求得g(t)的对偶函数后可以简化运算并求得Gabor变换
将一维Gabor变换扩展到二维空域,实验证明Gabor滤波器的频率和方向接近人类视觉***,因此可以对图像纹理能够有很好的表示。在二维空域用其提取不同方向图像的边缘特征,每一个Gabor滤波器都是一个正弦平面波和高斯核函数的乘积,因此Gabor滤波器是自相似的,即所有Gabor滤波器都可以从一个母小波经过膨胀和旋转产生。因此Gabor滤波器也可以对不同尺度进行检测。
g(x,y)=s(x,y)w(x,y)
式中,x0与y0为图像进行Gabor变换的中心,通过极坐标转化可以对x-x0进行定义即引入了检测的角度θ,K为高斯尺度,定义为:
通过K与θ可对滤波器窗函数进行设定,通过滑动即可完成对图像的纹理特征提取。
如下列步骤所述:依据所述增强图像组、所述光流运动信息图像组和所述梯度输出图像组生成所述特征组。
如所述步骤S130所述,利用人工智能的自学习能力,建立待测人员对应的特征组与所述待测人员的动态表情分类之间的对应关系;其中,所述动态表情分类包括健康、黑斑病、晚疫病和溃疡病。
例如:利用人工神经网络算法来分析不同动态表情分类对应的待测人员的外观状态规律,通过人工神经网络的自学习、自适应特性找到待测人员对应的特征组与所述待测人员的动态表情分类间的映射规律。
例如:可以利用人工神经网络算法,通过对大量不同状况(包括但不限于如下的一种或多种:性别,肤色,年龄等)的待测人员对应的特征组汇总收集,选取若干状况的待测人员对应的特征组及动态表情分类作为样本数据,对神经网络进行学习和训练,通过调整网络结构及网络节点间的权值,使神经网络拟合待测人员对应的特征组及动态表情分类之间的关系,最终使神经网络能准确拟合出不同状况的待测人员对应的特征组及动态表情分类的对应关系。
在一实施例中,所述对应关系,包括:函数关系。
优选地,所述特征组为所述函数关系的输入参数,所述动态表情分类为所述函数关系的输出参数;
确定与所述当前特征组对应的当前动态表情分类,还包括:
当所述对应关系包括函数关系时,将所述当前特征组输入所述函数关系中,确定所述函数关系的输出参数为当前动态表情分类。
由此,通过多种形式的对应关系,可以提升对当前特征组确定的灵活性和便捷性。
需要说明的是,在深度学习领域,采用2DCNN(2-Dimensional ConvolutionalNeural Networks,二维卷积神经网络)对视频进行操作的方式,一般都是对视频的每一帧图像分别利用二维的卷积核进行卷积提取特征来进行识别,这种方式的卷积没有考虑到时间维度的帧间运动信息。传统的2DCNN对图像进行卷积操作的如图4所示。
图4所示操作是用固定模板大小的卷积核与图像做卷积操作,采用平滑移动的方式进行。图示为以3*3的矩阵核为例,通过滑动的模板提取图像的特征,通过层层细致程度不同的特征图像与非线性单元将图像最终与其标签的非线性关系进行描述,而反向传播则通过预测的输出值与标签值之间的损失函数来不断优化网络参数,进而计算出最佳的提取特征的卷积核参数,完成训练。经典的卷积神经网络能够通过模拟神经元传递信息分析图像的方式搭建出无法用语言描述的图像与其输出的非线性关系以解决问题,但是2DCNN的卷积方式是对单张图像进行的,无法对图像与图像之间的关系进行描述,故而在解决视频分类回归等问题上无法有很好的效果,3DCNN(3-Dimensional Convolutional NeuralNetworks,三维卷积神经网络)正是为解决这一问题应运而生的。
3DCNN主要解决的目标是2DCNN无法解决的时刻特征提取问题。其原理为通过卷积核对多张图片同时进行卷积,能够通过训练优化学习到视频中的连续帧图像之间像素值变化的时空特征,其卷积原理如图5所示。
3DCNN在处理空间中输入的多帧图像时,是将堆叠的多个连续帧图像视为一个立方体,然后在立方体中通过卷积模板进行卷积。故而其卷积核在卷积的过程中在三个方向进行移动。分别为帧图像与帧图像之间的时空方向、每一帧图像的x方向和每一帧图像的y方向。在前后的结构分析中,可以看到卷积层中每一个特征图像都会与上一层中多个邻近的连续帧图像相连,因此可以提取到图像上的时空运动信息。如上实原理图,该卷积图像每一位置的值是通过卷积上一层三个连续的帧图像的同一个位置的局部像素信息得到的。3DCNN还有一个很重要的特性是,在提取学习帧图像之间的时空特性时每次只能从上述所说的立方体中提取一种类型的特征。如图所示,在选取的立方体(3*h*w)在整个大立方体(4*h*w)中移动卷积的过程中都使用的是同一个卷积核,因为是共享权值,所通过一个卷积核只能学习到该整个大立方体的一个特征,可以通过设置多组卷积核通过大量的输入去学习更多的特征。
在动态表情分类领域中,使用3DCNN虽然能够通过分析输入视频中帧图像之间的变化,对输入视频做出特征分类。但是当输入一段人脸视频进入网络的时候,不光希望判断出其现在的情绪如何,更希望判断出该动态视频所属的身份,因为只有保留获取的输入视频的身份,才能使得识别到的表情有更多的应用领域。因而在本专利提出了一种能够同时输出身份与动态表情类别的网络TP-3DCNN(双路三维卷积神经网络)。
TP-3DCNN原理是同时将两个视频输入3DCNN网络,在训练过程中进行双通道并行训练并共享卷积神经网络的网络参数θ,包括包括权重值、偏置、卷积模板值。同时网络内的损失回传方式不再是以往的单一损失函数回传,网络整体总共有四个损失函数,分别起到身份对比、动态表情对比、身份判别、动态表情判别。其网络整体结构如图6所示。
如上述网络结构所描述,在方法进行时,会同时将两个带有标签的动态表情数据传入网络,每次训练需要对四个损失函数进行反向传播与优化,通过大量的训练集视频后可以得到一个理想的网络模型,在之后的测试时只需要一个3DCNN网络即可,通过如图所示最后一个全连接层直接输出最后的两个分类结果。
每个3DCNN网络结构单元为输入层、预处理特征提取层、3D卷积层、2d池化层、3D卷积层、3d池化层、两个全连接层、输出层。下面分别对这些层的原理进行解释。
输入层:输入一组7帧图像的动态表情数据,且在输入前将其图像规格大小归一化为112*112。
预处理特征提取层:在输入层,最开始得到的只有帧图像层,以图中所示为例,每组动态表情由7帧组成。通过实验发现,通过一定的先验知识对输入图像进行预处理特征提取,将得到的粗略且有针对性可以概括图像整体特征的图像输入网络可以得到更全面的学习效果。因此对一组图像主要提取了其3组特征:归一化切割去背景后的人脸彩色图、利用Gabor滤波器对灰度化后组图提取的4个方向的梯度特征图、对原图像人脸特征点的x、y方向的稀疏光流图。这三部分在图中分别由橙色、蓝色、绿色的图像组代表。而由于身份信息与动态表情信息关注的点不同,前者更关注的是归一化分割后去除背景影响后的人脸本身的整体特征,后者关注的是对于人脸特征点的运动信息,显然后者关注的是人脸所具有的共同特征,因此在之后的训练时,将前两个特征图像组作为身份信息的输入,而将特征点的光流信息作为动态表情分类的输入。由于前2组特征在得到时候都是对单帧图像进行处理得到的,而最后1组光流特征是对两两图像之间展开计算的,故而最终输出的图像组的大小为47=1*7+4*7+2*6。
第一层3d卷积层:选取3个模板大小为3*5*5的卷积核对输入的3组特征,共计47张图像进行滑动卷积。选取3个卷积模板是希望能够在第一次卷积时提取到三组粗略的图像特征,5*5则是针对112*112的输入所设计的模板大小,在卷积后,图像变为5*3*5*108*108和2*3*4*108*108。对第一组参数进行分析,其中的3指的是3组卷积核,第一个5指的是前2组特征中对应的总计5个通道,第二个5指的是卷积之后每个通道的图像数量,之后的108*108则是卷积之后的图像的大小,在卷积时,还需要对一个参数进行严格的设置,卷积步长即卷积时卷积模板每次的移动值。鉴于输入图像组的大小,设置卷积步长在小立方体中都为1。此时的卷积的计算公式为:
Output=(input-kernel)+1
Input指的是每一通道的图像数量、图像高宽等参数,而output则是指输出的相应参数,kernel指的则是卷积的模板大小,通过此式,便可以计算出第二个5=7-3+1以及图像大小108=112-5+1。对两组参数进行分析,2指的是光流特征信息的x、y方向的2个通道,4则是因为其输入数量为6计算而来。
第二层2d池化层:该层主要目标为减少网络中的参数量,提高训练与测试速度,因而选取2dmaxpool对上一层得到的卷积输出层进行处理,此处使用的模板大小为2*2,即在卷积输出图像上以2*2面积为4的运动窗口进行遍历,取窗口内四个值中的最大值作为输出值去建立新图像,故而新图像的高与宽(h、w)都变为原来的一半,希望达成的目标则是通过较小的损失来换取较大的工作效率。通过该层后,输出变为5*3*5*54*54和2*3*4*54*54。
第三层3d卷积层:选取3个模板大小为3*3*3的卷积核对输入进行卷积。选取3个卷积模板是希望能够在第一次卷积的基础上提取更加精细的图像时空与空间特征,3*3则是针对输入的54*54所设计的模板大小,此时输出变为5*3*3*3*52*52与2*3*3*2*52*52。
对第一组参数进行分析,其卷积原理与第一次的原理是相似的,只是对应的输入数量从第一次卷积时的5*7变为了之前用3个卷积核卷积输出后的3*5*5,其中前两个参数分别表示第一次卷积的3个卷积核得到的结果,与前2组特征对应的总计5个通道,5则是每个通道对应的第一次卷积后的输出数。因此在本层的卷积时,计算方法不变,结果变为了3*3*5*3是因为又多了3个卷积模板所以总数量要再乘3,而最后一个3则是在时空上由原来的每通道5张图像通过卷积变为了3,同理可分析第二组输出参数。
第四层3d池化层:该层选取3d而非2d的主要原因是由于之后将连接全连接层,将打平参数进行输出,因而在此次池化后可以更好的保存时空特性同时减少网络参数,在该层选用2*2*2的池化核,则输出变为5*3*3*2*26*26与2*3*3*1*26*26
第五层全连接层:将之前得到的输出分别打平为单维向量,输入变为了长度为3*3*5*2*26*26向量与3*3*2*1*26*26,通过全连接层输出长度分别为1024和204的向量
第六层全连接层:将长度为1024和204的向量通过全连接的方式输出为长度为128和32的向量
输出层:在固定环境中应用时,通过最后一个全连接层,输出为身份数与动态表情强度分类数,在本专利的方法中将其预设为20与5。
分析完网络结构后,对反向传播与优化所需的损失函数作出解释,损失函数由四部分组成,第一部分为身份识别损失函数,用softmax函数度量:
式中,yi表示输入动态表情的归属真实身份,即其属于具体的身份名字标签,ypi表示神经网络输出层中对于身份的预测值,N为输入的batch大小。通过该softmax损失函数进行损失计算回传优化网络参数。
第二部分为动态表情分类损失函数,在本方法中采用softmax函数度量:
式中,ye表示输入的动态表情强度所属的真实类别,即其属于具体的身份名字标签,ype表示神经网络输出层中对于该动态表情的预测类别,N为输入的batch大小。通过该softmax损失函数进行损失计算回传优化网络参数。
第三部分为身份对比损失函数,通过实验发现采用欧式距离去计算两个网络的相似性可以取得较好的效果值。因而定义上下两路的输出中关于身份的部分的欧式距离如下:
d(i1,i2)=||ypi1,ypi2||2
式中,i1和i2分别为两路输入的动态表情所属的身份,而ypi1和ypi2则是上下两路对于两路动态表情身份的预测值,以此预测值的欧式距离来衡量其身份差距,为了将身份标签值相同和不同情况的损失进行区分,定义最终的关于身份的损失函数如下:
式中,N为每次训练时输入的batch大小,yi*为预先设定的标签对比值,当两个动态表情属于同一个人,即具有相同的身份时该值为1,否则为0,thres为提前设定的阈值,通过对于训练集的多次训练,将其设定为2.5。
第三部分为动态表情类别损失函数,与上式一样通过欧式距离来分析两个网络输出关于动态表情类别的相似性:
d(e1,e2)=||ype1,ype2||2
式中,e1为第一路输入的动态表情强度所属的类别;e2为第二路输入的动态表情强度所属的类别;ype1是上路对于两路动态表情强度所属类别的预测值;ype2是下路对于两路动态表情强度所属类别的预测值;以此预测值的欧式距离来衡量其所属类别的差距,为了将动态表情强度类别相同和不同情况的损失进行区分,定义最终的关于动态表情强度类别的损失函数如下:
式中,ye*为预先设定的标签对比值,当两个动态表情强度属于同类时该值为1,否则为0,thres为提前设定的阈值,通过对于训练集的多次训练,将其设定为1.5。
最终定义在每个batch训练时的总损失函数为:
Lo=λiLi+λe·Le+λi12·Li12+λe12·Le12
式中,λ为调整其中每个损失函数影响力的正则化系数。
在本发明一实施例中,可以结合下列描述进一步说明步骤S110所述“利用人工智能的自学习能力,建立待测人员对应的特征组与所述待测人员的动态表情分类之间的对应关系;其中,所述动态表情分类包括健康、黑斑病、晚疫病和溃疡病”的具体过程。
如下列步骤所述:获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据;
在一进阶实施例中,可以结合下列描述进一步说明“获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据”的具体过程。
如下列步骤所述:收集不同样品的所述特征组与所述动态表情分类;
例如:数据搜集:搜集不同颜色的待测人员对应的特征组及对应的动态表情分类;以及,搜集不同尺寸的待测人员对应的特征组及对应的动态表情分类;以及,搜集不同透明度的待测人员对应的特征组及对应的动态表情分类。
由此,通过多种途径收集运行数据,有利于增加运行数据的量,提升人工神经网络的学习能力,进而提升确定的对应关系的精准性和可靠性。
如下列步骤所述:对所述特征组进行分析、并结合预存的专家经验信息,选取与所述动态表情分类相关的数据作为所述特征组(例如:选取对动态表情分类有影响的特征组作为输入参数,将指定参数作为输出参数);
例如:通过将已确定了动态表情分类后的待测人员的相关数据中的特征组作为输入参数,将其相关数据中的动态表情分类作为输出参数。
如下列步骤所述:将所述动态表情分类、以及选取的所述特征组构成的数据对,作为样本数据。
例如:将得到的输入、输出参数对,一部分用作训练本样数据,一部分用作测试样本数据。
由此,通过对收集到的特征组进行分析及处理,进而得到样本数据,操作过程简单,操作结果可靠性高。
如下列步骤所述:分析所述特征组的特性及其规律,根据所述特性及其规律,确定所述人工神经网络的网络结构及其网络参数;
例如:分析待测人员对应的特征组与所述待测人员的动态表情分类,可初步确定网络的基本结构、网络的输入、输出节点数、网络隐层数、隐节点数、网络初始权值等。
可选地,可以结合下列描述进一步说明步骤“使用所述样本数据,对所述网络结构和所述网络参数进行训练和测试,确定所述特征组与所述动态表情分类的所述对应关系”中对所述网络结构和所述网络参数进行训练的具体过程。
如下列步骤所述:选取所述样本数据中的一部分数据作为训练样本,将所述训练样本中的所述特征组输入到所述网络结构,通过所述网络结构的损失函数,激活函数和所述网络参数进行训练,得到实际训练结果;
具体地,通过梯度下降算法最小化损失函数,更新网络参数,训练当前神经网络模型,得到实际训练结果;
确定所述实际训练结果与所述训练样本中的相应动态表情分类之间的实际训练误差是否满足预设训练误差;当所述实际训练误差满足所述预设训练误差时,确定对所述网络结构和所述网络参数的所述训练完成;
具体地,当所述实际训练误差满足所述预设训练误差时,且在当前训练的模型收敛,确定对所述网络结构和所述网络参数的所述训练完成。
更可选地,对所述网络结构和所述网络参数进行训练,还包括:
当所述实际训练误差不满足所述设定训练误差时,通过所述网络结构的误差损失函数更新所述网络参数;通过所述网络结构的所述损失函数,激活函数和更新后的所述网络参数进行重新训练,直至所述重新训练后的实际训练误差满足所述设定训练误差;
例如:若测试误差满足要求,则网络训练测试完成。
由此,通过将测试样本用于训练得到的网络结构和网络参数进行测试,以进一步验证网络结构及网络参数的可靠性。
可选地,可以结合下列描述进一步说明步骤“使用所述样本数据,对所述网络结构和所述网络参数进行训练和测试,确定所述特征组与所述动态表情分类的所述对应关系”中对所述网络结构和所述网络参数进行测试的具体过程。
如下列步骤所述:选取所述样本数据中的另一部分数据作为测试样本,将所述测试样本中的所述特征组输入到所述训练完成的所述网络结构中,以所述损失函数,激活函数和所述训练完成的所述网络参数进行测试,得到实际测试结果;确定所述实际测试结果与所述测试样本中的相应动态表情分类之间的实际测试误差是否满足设定测试误差;当所述实际测试误差满足所述设定测试误差时,确定对所述网络结构和所述网络参数的所述测试完成。
如所述步骤S140所述,获取当前待测人员的当前特征组。
如所述步骤S150所述,通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
在一具体实现中,本专利所采用的方案由于需要大量且清晰度较好的样本,所以在使用训练网络时,需要提前确定使用场景,对场景的要求是使用清晰度较好且较为稳定的摄像头。且由于方法的原理,其适用于场景内的人员固定的情况,如果有新的人员加入应用场景则需要重新训练。
步骤1:通过稳定的摄像头获取应用场景内一定数量的动态表***。
步骤2:将得到的动态表***进行筛选,将出现遮挡,非正脸、且背光性严重的视频进行剔除,并利用先验知识对每个视频打上身份、表情强度类别的标签。
步骤3:将获取到的动态表***进行数据集随机切分,以4:1的比例划分训练集与测试集。
步骤4:对训练集再一次以4:1的比例进行划分以得到训练集与验证集。
步骤5:将数据集中的每个视频都切分为7帧图像,并以此图像组来代表动态表情。
步骤6:设置批数量为32,即每次输入网络的都是32个图像组,将图像组中的每帧图像进行resize大小调整为112*112,由此设置输入为[32,3,7,112,112],其中的3代表了每帧图像的3个彩色通道。
步骤7:将输入图像组进行灰度化,得到[32,1,7,112,112]
步骤8:将灰度化后的图像组进行特征提取,分别通过归一化分割法、Gabor滤波器、特征点提取与光流x、y方向描述,得到[32,1,7,112,112]、[32,4,7,112,112]、[32,2,6,112,112]
步骤9:由于pytorch网络的特性要求,在输入时,对步骤8所得到的三组输出进行维度调整拼接得到[32,47,112,112]
步骤10:将步骤9得到的多维向量输入第一层3D卷积层,该层使用3个kernel为3*5*5的模板,由于特征组对应的特征数量不同,因此进行分别卷积,得到5个[32,3,5,108,108]和2个[32,3,4,108,108]的输出。
步骤11:将步骤10得到的输出分别进行2d最大值池化,池化kernel大小为2*2,得到5个[32,3,5,54,54]和2个[32,3,4,54,54]的输出
步骤12:将步骤11得到的输出输入第二层3D卷积层,由于pytorch框架对输入的向量结构限制,在该层需要提取步骤11中得到的向量中第1维,即值为3的向量,将输入改为15个[32,5,54,54]和6个[32,4,54,54]。此时再将其输入第二层卷积层,且该层使用3个kernel为3*3*3的模板,因此得到的输出为15个[32,3,3,54,54]和6个[32,3,2,52,52]
步骤13:将步骤12得到的结果输入3d最大值池化层,池化kernel大小为2*2*2,得到结果为15个[32,3,2,26,26]和6个[32,3,1,26,26]
步骤14:将步骤13得到的结果进行维度转换,将其都转化为单位向量即得到[32,15*3*2*26*26]和[32,6*3*1*26*26]
步骤15:将步骤得到的结果输入第一层全连接层,得到[32,1024]和[32,204]
步骤16:将步骤15得到的结果输入第二层全连接层,得到[32,128]和[32,24]
步骤17:通过步骤16得到32个长度为128的向量和24的向量,将其按照随机抽取的规则划分为2类,则变为[16,2,128]与[16,2,24],分别计算身份对比损失函数Li12与动态表情类别损失函数Le12
步骤18:将步骤16得到的结果通过真实的标签值分别计算身份识别损失函数Li与动态表情分类损失函数Le。
步骤19:以批为单位将步骤17与步骤18得到的损失函数进行加和为Lo,将Lo进行反向传播优化网络参数。
步骤20:设获取到的视频数为12832个,通过N=32的批处理可知,对每一个训练集需要重复步骤1-19的过程401次
步骤21:当完成一次训练集的遍历训练时,利用最初划分得到的验证集输入神经网络进行验证,并计算身份识别损失函数Li与动态表情分类损失函数Le保存。
步骤22:通过迭代的思想对每一次训练集遍历训练后的损失函数值进行保存对比,当损失值发生增加时停止训练并输出网络参数。
步骤23:利用步骤22得到的网络对输入测试集进行测试判断。。
本发明在对动态表情识别的过程中,当确定了应用场景的时候,通过预先准备测试环境与训练数据的采集,可以得到网络所需要的环境与数据集,而后通过预先训练,可以对给定的大量测试动态表情进行分类与时间排序,在保证处理效果的同时还可以提升处理效率,为动态表情进一步的数据分析作了很好的准备工作。并且3D卷积网络可以通过对输入视频的时空与空间特征进行学习优化,并且整体参数量不大,运行速度较快,在保证较高效率的同时能得到较好的分类效果。本专利方案通过本申请的方案通过将提取到的多组图像特征通过TP-3DCNN网络进行学习,在兼顾效率与准确率的条件下完成对动态表情强度所属身份以及类别的判断,由于网络的可视化与可操作性,故在很多人员固定装有摄像头的公共场景有很强的应用前景。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图7,示出了本申请一实施例提供的一种人工神经网络的人脸动态表情识别装置,所述装置应用于通过检测待测人员的实时图像区分所述待测人员的动态表情分类;其中,所述动态表情分类包括健康、黑斑病、晚疫病和溃疡病;
具体包括:
预设帧数的图像数据生成模块710,用于获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;
特征组生成模块720,用于依据所述预设帧数的图像数据生成特征组;
对应关系建立模块730,用于利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;
当前特征组获取模块740,用于获取当前待测人员的当前特征组;
当前动态表情分类确定模块750,用于通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
在本发明一实施例中,所述预设帧数的图像数据生成模块710,包括:
频频帧率和视频时长获取子模块,用于获取所述原始视频数据视频频帧率和视频时长;
预设帧数的图像数据确定子模块,用于依据所述视频帧率和所述视频时长确定所述原始视频数据中预设帧数的图像数据。
在本发明一实施例中,所述预设帧数的图像数据确定子模块,包括:
视频段分割子模块,用于依据所述视频帧率和所述视频时长将所述原始视频数据平均分割为预设数量的视频段;
预设帧数的图像数据提取子模块,用于从每个所述视频段提取帧数位置相同的的图像数据作为所述预设帧数的图像数据。
在本发明一实施例中,所述第一特征组生成子模块,包括:
灰度化图像数据生成子模块,用于将所述预设帧数的图像数据进行灰度化处理生成与所述所述预设帧数的图像数据对应的灰度化图像数据组;其中,所述灰度化图像数据组包含数量与所述预设帧数相同的灰度化图像数据;
增强图像组生成子模块,用于依据所述灰度图像数据组中的背景区域和非背景区域,生成增强图像组;
光流运动信息图像组生成子模块,用于依据相邻视频段对应的所述灰度化图像数据生成包含有待测人员脸部在X轴方向和Y轴方向上运动信息的光流运动信息图像组;
梯度输出图像组生成子模块,用于依据所述灰度化图像数据组生成包含有所述灰度化图像数据4个方向的边缘的梯度输出图像组;
特征组生成子模块,用于依据所述增强图像组、所述光流运动信息图像组和所述梯度输出图像组生成所述特征组。
在本发明一实施例中,所述对应关系建立模块730,包括:
获取子模块,用于获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据;
分析子模块,用于分析所述特征组的特性及其规律,根据所述特性及其规律,确定所述人工神经网络的网络结构及其网络参数;
训练子模块,用于使用所述样本数据,对所述网络结构和所述网络参数进行训练和测试,确定所述特征组与所述动态表情分类的所述对应关系。
在本发明一实施例中,所述获取子模块,包括:
收集子模块,用于收集不同样品的所述特征组与所述动态表情分类;
分析子模块,用于对所述特征组进行分析、并结合预存的专家经验信息,选取与所述动态表情分类相关的数据作为所述特征组;
样本数据生成子模块,用于将所述动态表情分类、以及选取的所述特征组构成的数据对,作为样本数据。
在本发明一实施例中,
所述训练子模块,包括:
训练结果生成子模块,用于选取所述样本数据中的一部分数据作为训练样本,将所述训练样本中的所述特征组输入到所述网络结构,通过所述网络结构的损失函数,激活函数和所述网络参数进行训练,得到实际训练结果;
训练结果误差判断子模块,用于确定所述实际训练结果与所述训练样本中的相应动态表情分类之间的实际训练误差是否满足预设训练误差;
训练完成判定子模块,用于当所述实际训练误差满足所述预设训练误差时,确定对所述网络结构和所述网络参数的所述训练完成;
和/或,
测试子模块,用于对所述网络结构和所述网络参数进行测试,包括:
测试结果生成子模块,用于选取所述样本数据中的另一部分数据作为测试样本,将所述测试样本中的所述特征组输入到所述训练完成的所述网络结构中,以所述损失函数,激活函数和所述训练完成的所述网络参数进行测试,得到实际测试结果;
测试结果误差判断子模块,用于确定所述实际测试结果与所述测试样本中的相应动态表情分类之间的实际测试误差是否满足设定测试误差;
测试完成判定子模块,用于当所述实际测试误差满足所述设定测试误差时,确定对所述网络结构和所述网络参数的所述测试完成。
在本发明一实施例中,
所述训练子模块,还包括:
网络参数更新子模块,用于当所述实际训练误差不满足所述设定训练误差时,通过所述网络结构的误差损失函数更新所述网络参数;
第一重训练子模块,用于通过所述网络结构的所述损失函数,激活函数和更新后的所述网络参数进行重新训练,直至所述重新训练后的实际训练误差满足所述设定训练误差;
和/或,
所述测试子模块,还包括:
第二重训练子模块,用于当所述实际测试误差不满足所述设定测试误差时,对所述网络结构和所述网络参数进行重新训练,直至所述重新训练后的实际测试误差满足所述设定测试误差。
在本发明实施例中,本发明还提供一种设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的人工神经网络的人脸动态表情识别方法的步骤。
在本发明实施例中,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的人工神经网络的人脸动态表情识别方法的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的人工神经网络的人脸动态表情识别方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种基于人工神经网络的人脸动态表情识别方法,其特征在于,所述方法应用于在人员固定场景下的视频中人员表情所属身份和/或表情强度类别预测;
所述方法包括:
获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;
依据所述预设帧数的图像数据生成特征组;
利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;
获取当前待测人员的当前特征组;
通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
2.根据权利要求1所述的方法,其特征在于,所述获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据的步骤,包括:
获取所述原始视频数据视频频帧率和视频时长;
依据所述视频帧率和所述视频时长确定所述原始视频数据中预设帧数的图像数据。
3.根据权利要求2所述的方法,其特征在于,所述依据所述视频帧率和视频时长确定所述原始视频数据中预设帧数的图像数据的步骤,包括:
依据所述视频帧率和所述视频时长将所述原始视频数据平均分割为预设数量的视频段;
从每个所述视频段提取帧数位置相同的的图像数据作为所述预设帧数的图像数据。
4.根据权利要求1所述的方法,其特征在于,所述依据所述预设帧数的图像数据生成特征组的步骤,包括:
将所述预设帧数的图像数据进行灰度化处理生成与所述所述预设帧数的图像数据对应的灰度化图像数据组;其中,所述灰度化图像数据组包含数量与所述预设帧数相同的灰度化图像数据;
依据所述灰度图像数据组中的背景区域和非背景区域,生成增强图像组;
依据相邻视频段对应的所述灰度化图像数据生成包含有待测人员脸部在X轴方向和Y轴方向上运动信息的光流运动信息图像组;
依据所述灰度化图像数据组生成包含有所述灰度化图像数据4个方向的边缘的梯度输出图像组;
依据所述增强图像组、所述光流运动信息图像组和所述梯度输出图像组生成所述特征组。
5.根据权利要求1所述的方法,其特征在于,所述建立待测人员对应的特征组与所述待测人员的动态表情分类之间的对应关系的步骤,包括:
获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据;
分析所述特征组的特性及其规律,根据所述特性及其规律,确定所述人工神经网络的网络结构及其网络参数;
使用所述样本数据,对所述网络结构和所述网络参数进行训练和测试,确定所述特征组与所述动态表情分类的所述对应关系。
6.根据权利要求5所述的方法,其特征在于,所述获取用于建立所述特征组与所述动态表情分类之间的对应关系的样本数据的步骤,包括:
收集不同样品的所述特征组与所述动态表情分类;
对所述特征组进行分析、并结合预存的专家经验信息,选取与所述动态表情分类相关的数据作为所述特征组;
将所述动态表情分类、以及选取的所述特征组构成的数据对,作为样本数据。
7.根据权利要求5-6任一项所述的方法,其特征在于,
对所述网络结构和所述网络参数进行训练,包括:
选取所述样本数据中的一部分数据作为训练样本,将所述训练样本中的所述特征组输入到所述网络结构,通过所述网络结构的损失函数,激活函数和所述网络参数进行训练,得到实际训练结果;
确定所述实际训练结果与所述训练样本中的相应动态表情分类之间的实际训练误差是否满足预设训练误差;
当所述实际训练误差满足所述预设训练误差时,确定对所述网络结构和所述网络参数的所述训练完成;
和/或,
对所述网络结构和所述网络参数进行测试,包括:
选取所述样本数据中的另一部分数据作为测试样本,将所述测试样本中的所述特征组输入到所述训练完成的所述网络结构中,以所述损失函数,激活函数和所述训练完成的所述网络参数进行测试,得到实际测试结果;
确定所述实际测试结果与所述测试样本中的相应动态表情分类之间的实际测试误差是否满足设定测试误差;
当所述实际测试误差满足所述设定测试误差时,确定对所述网络结构和所述网络参数的所述测试完成。
8.一种人工神经网络的人脸动态表情识别装置,其特征在于,所述方法应用于在人员固定场景下的视频中人员表情所属身份和/或表情强度类别预测;
具体包括:
预设帧数的图像数据生成模块,用于获取待测人员的原始视频数据,并确定所述原始视频数据中预设帧数的图像数据;
特征组生成模块,用于依据所述预设帧数的图像数据生成特征组;
对应关系建立模块,用于利用人工智能的自学习能力,建立所述待测人员的特征组与所述待测人员的动态表情分类之间的对应关系;
当前特征组获取模块,用于获取当前待测人员的当前特征组;
当前动态表情分类确定模块,用于通过所述对应关系,确定与所述当前特征组所对应的当前动态表情分类;具体地,确定与所述当前特征组对应的当前动态表情分类,包括:将所述对应关系中与所述当前特征组相同的特征组所对应的动态表情分类,确定为所述当前动态表情分类。
9.一种设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110057226.5A CN112766145B (zh) | 2021-01-15 | 2021-01-15 | 人工神经网络的人脸动态表情识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110057226.5A CN112766145B (zh) | 2021-01-15 | 2021-01-15 | 人工神经网络的人脸动态表情识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112766145A true CN112766145A (zh) | 2021-05-07 |
CN112766145B CN112766145B (zh) | 2021-11-26 |
Family
ID=75701992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110057226.5A Active CN112766145B (zh) | 2021-01-15 | 2021-01-15 | 人工神经网络的人脸动态表情识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112766145B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113408389A (zh) * | 2021-06-10 | 2021-09-17 | 西华大学 | 一种智能识别司机睡意动作的方法 |
CN113642429A (zh) * | 2021-07-29 | 2021-11-12 | 海南大学 | 一种基于tpp-tccnn的海洋鱼类识别方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764207A (zh) * | 2018-06-07 | 2018-11-06 | 厦门大学 | 一种基于多任务卷积神经网络的人脸表情识别方法 |
CN109753950A (zh) * | 2019-02-11 | 2019-05-14 | 河北工业大学 | 动态人脸表情识别方法 |
CN109766766A (zh) * | 2018-12-18 | 2019-05-17 | 深圳壹账通智能科技有限公司 | 员工工作状况监控方法、装置、计算机设备和存储介质 |
CN111931630A (zh) * | 2020-08-05 | 2020-11-13 | 重庆邮电大学 | 一种基于人脸特征点数据增强的动态表情识别方法 |
CN112084944A (zh) * | 2020-09-09 | 2020-12-15 | 清华大学 | 一种动态演化表情的识别方法与*** |
-
2021
- 2021-01-15 CN CN202110057226.5A patent/CN112766145B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764207A (zh) * | 2018-06-07 | 2018-11-06 | 厦门大学 | 一种基于多任务卷积神经网络的人脸表情识别方法 |
CN109766766A (zh) * | 2018-12-18 | 2019-05-17 | 深圳壹账通智能科技有限公司 | 员工工作状况监控方法、装置、计算机设备和存储介质 |
CN109753950A (zh) * | 2019-02-11 | 2019-05-14 | 河北工业大学 | 动态人脸表情识别方法 |
CN111931630A (zh) * | 2020-08-05 | 2020-11-13 | 重庆邮电大学 | 一种基于人脸特征点数据增强的动态表情识别方法 |
CN112084944A (zh) * | 2020-09-09 | 2020-12-15 | 清华大学 | 一种动态演化表情的识别方法与*** |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113408389A (zh) * | 2021-06-10 | 2021-09-17 | 西华大学 | 一种智能识别司机睡意动作的方法 |
CN113642429A (zh) * | 2021-07-29 | 2021-11-12 | 海南大学 | 一种基于tpp-tccnn的海洋鱼类识别方法 |
CN113642429B (zh) * | 2021-07-29 | 2023-07-14 | 海南大学 | 一种基于tpp-tccnn的海洋鱼类识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112766145B (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Automatic laser profile recognition and fast tracking for structured light measurement using deep learning and template matching | |
Lin et al. | Estimation of number of people in crowded scenes using perspective transformation | |
CN107016357B (zh) | 一种基于时间域卷积神经网络的视频行人检测方法 | |
CN108447078B (zh) | 基于视觉显著性的干扰感知跟踪算法 | |
CN111914664A (zh) | 基于重识别的车辆多目标检测和轨迹跟踪方法 | |
CN108062525B (zh) | 一种基于手部区域预测的深度学习手部检测方法 | |
Hu | Design and implementation of abnormal behavior detection based on deep intelligent analysis algorithms in massive video surveillance | |
CN108171112A (zh) | 基于卷积神经网络的车辆识别与跟踪方法 | |
CN111611874B (zh) | 基于ResNet和Canny的人脸口罩佩戴检测方法 | |
CN107330371A (zh) | 3d脸部模型的脸部表情的获取方法、装置和存储装置 | |
CN107977661B (zh) | 基于fcn与低秩稀疏分解的感兴趣区域检测方法 | |
CN106951870A (zh) | 主动视觉注意的监控视频显著事件智能检测预警方法 | |
CN110929593A (zh) | 一种基于细节辨别区别的实时显著性行人检测方法 | |
CN112001241B (zh) | 基于通道注意力机制的微表情识别方法及*** | |
CN110298297A (zh) | 火焰识别方法和装置 | |
Wang et al. | GKFC-CNN: Modified Gaussian kernel fuzzy C-means and convolutional neural network for apple segmentation and recognition | |
CN107909081A (zh) | 一种深度学习中图像数据集的快速获取和快速标定方法 | |
CN112766145B (zh) | 人工神经网络的人脸动态表情识别方法及装置 | |
Avula et al. | A novel forest fire detection system using fuzzy entropy optimized thresholding and STN-based CNN | |
CN106127812A (zh) | 一种基于视频监控的客运站非出入口区域的客流统计方法 | |
CN116343330A (zh) | 一种红外-可见光图像融合的异常行为识别方法 | |
CN107590427A (zh) | 基于时空兴趣点降噪的监控视频异常事件检测方法 | |
CN106570490A (zh) | 一种基于快速聚类的行人实时跟踪方法 | |
CN106909883A (zh) | 一种基于ros的模块化手部区域检测方法和装置 | |
CN112329784A (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 |