掌桥专利:专业的专利平台
掌桥专利
首页

人脸表情识别方法、装置及存储介质

文献发布时间:2023-06-19 10:24:22


人脸表情识别方法、装置及存储介质

技术领域

本申请涉及图像处理技术,尤其涉及一种人脸表情识别方法、装置及存储介质。

背景技术

随着经济技术的不断发展,人们的出行方式越来越多样化,例如通过出租车、网约车等运营车辆出行。然而上述出行方式在给人们带来便捷的同时,也产生了一些新的问题。例如,以网约车为例,车辆在行驶过程中,司机可能在异常状态下驾驶车辆,例如在愤怒状态下驾驶车辆,从而,使乘客在使用网约车日常出行的过程中存在一定的安全隐患。

为了解决上述问题,相关技术中,通常是终端设备采集司机的人脸图像,基于采集的图像进行人脸表情识别。示例性的,以终端设备为司机的手机为例,车辆在行驶过程中,上述手机采集司机的人脸图像,然后基于采集的图像对车辆内司机的表情进行识别,从而,确定司机是否在异常状态下驾驶车辆。

然而,上述以人脸图像进行人脸表情识别,人脸图像中信息较为冗余,导致人脸表情识别准确率较低,从而无法及时发现安全隐患,无法对车辆驾驶中出现的问题进行正确干预。

发明内容

为解决现有技术中存在的问题,本申请提供一种人脸表情识别方法、装置及存储介质。

第一方面,本申请实施例提供一种人脸表情识别方法,所述方法包括:

获取待检测目标的目标人脸图像;

提取所述目标人脸图像的目标人脸关键点;

确定所述目标人脸关键点之间的位置关系;

将所述目标人脸关键点,以及所述位置关系,输入预设人脸表情识别模型,所述预设人脸表情识别模型通过参考人脸关键点,所述参考人脸关键点之间的位置关系,以及所述参考人脸关键点对应的参考人脸表情训练得到;

根据所述预设人脸表情识别模型的输出,获得所述待检测目标的目标人脸表情。

在一种可能的实现方式中,所述提取所述目标人脸图像的目标人脸关键点,包括:

将所述目标人脸图像输入预设人脸关键点提取模型,所述预设人脸关键点提取模型通过参考人脸图像,以及所述参考人脸图像对应的参考人脸关键点训练得到;

根据所述预设人脸关键点提取模型的输出,获得所述目标人脸关键点。

在一种可能的实现方式中,所述目标人脸关键点包括所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点;

所述将所述目标人脸关键点,以及所述位置关系,输入预设人脸表情识别模型,包括:

将所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及所述特征点之间的位置关系,输入所述预设人脸表情识别模型,其中,所述预设人脸表情识别模型通过所述参考人脸关键点,所述参考人脸关键点之间的位置关系,以及所述参考人脸表情训练得到,所述参考人脸关键点包括参考目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。

在一种可能的实现方式中,在所述将所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及所述特征点之间的位置关系,输入所述预设人脸表情识别模型之前,还包括:

计算所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点中每个特征点与其它特征点之间的欧氏距离;

根据所述欧氏距离,确定所述每个特征点与所述其它特征点之间的位置关系。

在一种可能的实现方式中,所述获取待检测目标的目标人脸图像,包括:

对所述待检测目标的至少一个人脸图像进行图像预处理,所述图像预处理包括筛选出正面人脸图像、调整图像大小为预设大小和图像归一化中一个或多个;

根据图像预处理结果,获得所述目标人脸图像。

在一种可能的实现方式中,在所述将所述目标人脸关键点,以及所述位置关系,输入预设人脸表情识别模型之前,还包括:

对所述目标人脸关键点进行归一化处理。

在一种可能的实现方式中,所述预设人脸表情识别模型包括:全连接层和softmax分类器;

所述全连接层,用于对所述目标人脸关键点,以及所述位置关系进行特征融合,以生成融合后的目标人脸特征;

所述softmax分类器,与所述全连接层连接,用于根据所述融合后的目标人脸特征,输出所述目标人脸表情。

在一种可能的实现方式中,所述预设人脸表情识别模型还包括:多个卷积层;

所述多个卷积层,用于对所述目标人脸关键点,以及所述位置关系进行卷积操作,以输出所述待检测目标的目标人脸特征;

所述全连接层,与所述多个卷积层连接,用于获取所述目标人脸特征,并对所述目标人脸特征进行特征融合,以生成所述融合后的目标人脸特征。

在一种可能的实现方式中,在所述对所述待检测目标的至少一个人脸图像进行图像预处理之前,还包括:

接收预设图像采集装置发送的所述至少一个人脸图像。

在一种可能的实现方式中,在所述对所述待检测目标的至少一个人脸图像进行图像预处理之前,还包括:

接收所述待检测目标的终端设备发送的所述至少一个人脸图像。

第二方面,本申请实施例提供一种人脸表情识别装置,所述装置包括:

图像获取模块,用于获取待检测目标的目标人脸图像;

关键点提取模块,用于提取所述目标人脸图像的目标人脸关键点;

关系确定模块,用于确定所述目标人脸关键点之间的位置关系;

关键点输入模块,用于将所述目标人脸关键点,以及所述位置关系,输入预设人脸表情识别模型,所述预设人脸表情识别模型通过参考人脸关键点,所述参考人脸关键点之间的位置关系,以及所述参考人脸关键点对应的参考人脸表情训练得到;

表情获得模块,用于根据所述预设人脸表情识别模型的输出,获得所述待检测目标的目标人脸表情。

在一种可能的实现方式中,所述关键点提取模块,具体用于:

将所述目标人脸图像输入预设人脸关键点提取模型,所述预设人脸关键点提取模型通过参考人脸图像,以及所述参考人脸图像对应的参考人脸关键点训练得到;

根据所述预设人脸关键点提取模型的输出,获得所述目标人脸关键点。

在一种可能的实现方式中,所述目标人脸关键点包括所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点;

所述关键点输入模块,具体用于:

将所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及所述特征点之间的位置关系,输入所述预设人脸表情识别模型,其中,所述预设人脸表情识别模型通过所述参考人脸关键点,所述参考人脸关键点之间的位置关系,以及所述参考人脸表情训练得到,所述参考人脸关键点包括参考目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。

在一种可能的实现方式中,所述关键点输入模块,具体用于:

计算所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点中每个特征点与其它特征点之间的欧氏距离;

根据所述欧氏距离,确定所述每个特征点与所述其它特征点之间的位置关系。

在一种可能的实现方式中,所述图像获取模块,具体用于:

对所述待检测目标的至少一个人脸图像进行图像预处理,所述图像预处理包括筛选出正面人脸图像、调整图像大小为预设大小和图像归一化中一个或多个;

根据图像预处理结果,获得所述目标人脸图像。

在一种可能的实现方式中,所述关键点输入模块,还用于:

对所述目标人脸关键点进行归一化处理。

在一种可能的实现方式中,所述预设人脸表情识别模型包括:全连接层和softmax分类器;

所述全连接层,用于对所述目标人脸关键点,以及所述位置关系进行特征融合,以生成融合后的目标人脸特征;

所述softmax分类器,与所述全连接层连接,用于根据所述融合后的目标人脸特征,输出所述目标人脸表情。

在一种可能的实现方式中,所述预设人脸表情识别模型还包括:多个卷积层;

所述多个卷积层,用于对所述目标人脸关键点,以及所述位置关系进行卷积操作,以输出所述待检测目标的目标人脸特征;

所述全连接层,与所述多个卷积层连接,用于获取所述目标人脸特征,并对所述目标人脸特征进行特征融合,以生成所述融合后的目标人脸特征。

在一种可能的实现方式中,所述图像获取模块,还用于:

接收预设图像采集装置发送的所述至少一个人脸图像。

在一种可能的实现方式中,所述图像获取模块,还用于:

接收所述待检测目标的终端设备发送的所述至少一个人脸图像。

第三方面,本申请实施例提供一种人脸表情识别设备,包括:

处理器;

存储器;以及

计算机程序;

其中,所述计算机程序被存储在所述存储器中,并且被配置为由所述处理器执行,所述计算机程序包括用于执行如第一方面所述的方法的指令。

第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得服务器执行第一方面所述的方法。

第五方面,本申请实施例提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行第一方面所述的方法。

本申请实施例提供的人脸表情识别方法、装置及存储介质,该方法通过获取待检测目标的目标人脸图像,然后提取该图像的人脸关键点,确定该人脸关键点之间的位置关系,将该人脸关键点,以及上述位置关系输入人脸表情识别模型,从而利用人脸表情识别模型识别待检测目标的人脸表情。其中,本申请实施例基于人脸关键点进行人脸表情识别,解决了人脸图片的信息冗余问题,提高人脸表情识别准确率。而且,本申请实施例在进行人脸表情识别时,仅需将目标人脸关键点,以及上述位置关系输入人脸表情识别模型,相对输入人脸图像到人脸表情识别模型,数据输入速度快,减少人脸表情识别模型的人脸表情识别时间。另外,本申请实施例不仅将上述特征点输入预设人脸表情识别模型,而且还将上述位置关系输入预设人脸表情识别模型,使得输入预设人脸表情识别模型的待检测目标的信息更丰富,进一步提高了后续对待检测目标的人脸表情识别结果的准确率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的人脸表情识别系统架构示意图;

图2为本申请实施例提供的一种人脸表情识别方法的流程示意图;

图3为本申请实施例提供的一种目标人脸关键点的示意图;

图4为本申请实施例提供的一种预设人脸表情识别模型的示意图;

图5为本申请实施例提供的7类人脸表情的示意图;

图6为本申请实施例提供的另一种预设人脸表情识别模型的示意图;

图7为本申请实施例提供的利用预设人脸表情识别模型进行人脸表情识别的过程示意图;

图8为本申请实施例提供的一种预设人脸关键点提取模型的训练过程示意图;

图9为本申请实施例提供的另一种人脸表情识别方法的流程示意图;

图10为本申请实施例提供的一种人脸表情识别装置的结构示意图;

图11示出了本申请人脸表情识别设备的一种可能的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”及“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

现有用户在通过出租车、网约车等运营车辆出行时,存在一些问题,例如,以网约车为例,车辆在行驶过程中,司机可能在异常状态下驾驶车辆,例如在愤怒状态下驾驶车辆。这样会使乘客在使用网约车日常出行的过程中存在一定的安全隐患。为了解决上述问题,相关技术中,通常是终端设备采集司机的人脸图像,基于采集的图像进行人脸表情识别。示例性的,以终端设备为司机的手机为例,车辆在行驶过程中,上述手机采集司机的人脸图像,然后基于采集的图像对车辆内司机的表情进行识别,从而,确定司机是否在异常状态下驾驶车辆。

然而,上述终端设备采集的图像可能包含较多冗余信息,例如上述终端设备在采集图像时采集到车辆内部的其它信息,如车内座椅、装饰等。这些冗余信息在终端设备基于上述图像进行人脸表情识别过程中产生干扰,导致终端设备基于上述图像进行人脸表情识别的误差率较高,从而,无法确定司机是否在异常状态下驾驶车辆,无法及时发现安全隐患。

因此,本申请实施例提出一种人脸表情识别方法,通过提取待检测目标的人脸图像的人脸关键点,例如车辆内司机的人脸图像的人脸关键点,从而利用人脸关键点识别司机的人脸表情,确定司机是否在异常状态下驾驶车辆,例如司机是否在愤怒状态下驾驶车辆。其中,本申请实施例基于人脸关键点进行人脸表情识别,解决了人脸图片的信息冗余问题,提高人脸表情识别准确率。

在本申请实施例中,以网约车为例,上述待检测目标可以为网约车内司机。该网约车内司机的人脸图像可以通过网约车上搭载的预设图像采集装置,例如摄像头采集得到。这里,以预设图像采集装置为上述摄像头为例,上述摄像头的数量、位置和类型等信息可以由网约车管理服务器统一规定。其中,网约车管理服务器用于对各个网约车进行管理,例如审核网约车和网约车司机等的资质,以及监管网约车接单情况等。网约车管理服务器可以根据上述摄像头的规定,检查网约车中摄像头的安装是否符合要求,例如通过网约车司机上传的网约车内摄像头的安装图像,检查网约车中摄像头安装是否符合要求。如果符合要求,网约车管理服务器可以与网约车中的摄像头建立连接。在确定网约车接单后,网约车管理服务器可以控制网约车中的摄像头启动,采集车内司机的人脸图像,直至网约车完成该单任务,停止采集。

除上述外,上述人脸图像还可以通过待检测目标的终端设备采集得到,例如通过司机的手机采集得到。示例性的,上述网约车管理服务器在审核网约车和网约车司机等的资质后,如果审核符合要求,可以与网约车司机的手机建立连接,通过该连接监管网约车接单情况等。网约车管理服务器可以在确定网约车接单后,发送摄像开启提示信息至网约车司机的手机。网约车司机根据该提示开启手机摄像头,采集车内司机的人脸图像。这里,网约车司机根据上述提示开启摄像头后,可以反馈摄像头开启信息至网约车管理服务器,以使网约车管理服务器及时了解网约车司机的手机状态。

另外,上述人脸图像还可以通过其它设备采集得到,例如行车记录仪、行车路线上的摄像头等。示例性的,网约车管理服务器可以与网约车中的行车记录仪建立连接,在确定网约车接单后,可以通过网约车中的行车记录仪采集车内司机的人脸图像。对于行车路线比较固定的网约车,网约车管理服务器还可以通过行车路线上的摄像头,采集网约车内司机的人脸图像。

这里,本申请实施例在获取网约车内司机的人脸图像后,可以提取该人脸图像的人脸关键点,从而利用人脸关键点识别网约车内司机的人脸表情,确定司机是否在异常状态下驾驶车辆,例如司机是否在愤怒状态下驾驶车辆。

其中,上述人脸关键点提取、人脸表情识别等可以由上述网约车管理服务器执行。以上述人脸图像通过网约车上搭载的预设图像采集装置采集得到为例。上述预设图像采集装置在采集得到上述人脸图像后,可以把上述人脸图像发送至上述网约车管理服务器。上述网约车管理服务器在获取上述人脸图像后,提取上述人脸图像的人脸关键点,利用人脸关键点识别网约车内司机的人脸表情,从而,确定司机是否在异常状态下驾驶车辆,例如司机是否在愤怒状态下驾驶车辆。示例性的,如果上述网约车管理服务器识别司机的人脸表情为愤怒表情,可以把人脸表情识别结果发送给相关监管人员,以使监管人员及时对车辆驾驶中出现的问题进行正确干预,例如停止派单给上述司机。

可选地,图1为本申请实施例提供的一种人脸表情识别系统架构示意图。在图1中,以待检测目标为网约车中的司机为例。上述架构包括网约车管理服务器11和预设图像采集装置12。

可以理解的是,本申请实施例示意的结构并不构成对人脸表情识别架构的具体限定。在本申请另一些可行的实施方式中,上述架构可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置,具体可根据实际应用场景确定,在此不做限制。图1所示的部件可以以硬件,软件,或软件与硬件的组合实现。

在具体实现过程中,网约车管理服务器11可以首先确定是否控制网约车中的预设图像采集装置12启动。示例性的,网约车管理服务器11可以在确定网约车接单后,控制网约车中的预设图像采集装置12启动,采集车内司机的人脸图像,直至网约车完成该单任务,停止采集。或者,网约车管理服务器11可以根据网约车司机的接单评价情况,确定是否控制预设图像采集装置12启动。示例性的,如果网约车司机的接单评价较差,例如最近一个月接到超过两次的投诉,则网约车管理服务器11控制预设图像采集装置12启动,采集车内司机的人脸图像,直至网约车完成该单任务,停止采集。

在预设图像采集装置12启动,并采集到网约车内司机的人脸图像后,预设图像采集装置12可以将采集的图像发送至网约车管理服务器11。网约车管理服务器11在接收到上述图像后,可以提取上述图像的人脸关键点,从而利用人脸关键点识别网约车内司机的人脸表情,确定司机是否在异常状态下驾驶车辆,例如司机是否在愤怒状态下驾驶车辆。其中,上述基于人脸关键点进行人脸表情识别,解决了人脸图片的信息冗余问题,提高人脸表情识别准确率。

另外,当网约车特别多时,上述网约车管理服务器接收到的数据量级较大,所需的计算资源较多,可能导致通过网约车管理服务器对目标进行检测的周期较长。为了解决该问题,在本申请实施例中,上述人脸关键点提取、人脸表情识别等可以先由上述待检测目标的终端设备执行,例如先由司机的手机执行。示例性的,上述预设图像采集装置12可以把采集的网约车内司机的人脸图像发送至上述司机的手机。上述司机可以通过手机提取上述图像的人脸关键点,利用该人脸关键点识别网约车内司机的人脸表情,从而,确定司机是否在异常状态下驾驶车辆,例如司机是否在愤怒状态下驾驶车辆。其中,上述网约车管理服务器11可以对上述司机的手机进行相应设置,例如设置:当上述手机识别网约车内司机的人脸表情为愤怒表情时,立刻上报人脸表情识别结果至网约车管理服务器11。这样,网约车管理服务器11可以把人脸表情识别结果发送给相关监管人员,以使监管人员及时对车辆驾驶中出现的问题进行正确干预。

这里,本申请实施例通过终端设备和网约车管理服务器相结合的方式进行人脸表情识别,既能够充分利用终端设备的计算能力,又减轻了网约车管理服务器的计算压力,提高网约车管理服务器的处理速度。

其中,如果终端设备,例如上述司机的手机无法进行上述人脸关键点提取、人脸表情识别等,可以向上述网约车管理服务器11发送处理请求。上述网约车管理服务器11在接收到该处理请求后,可以发送信息获取请求至上述预设图像采集装置12。从而,上述预设图像采集装置12可以将采集的图像发送至上述网约车管理服务器11。上述网约车管理服务器11基于接收的信息,进行上述人脸关键点提取、人脸表情识别等。

下面以几个实施例为例对本申请的技术方案进行描述,对于相同或相似的概念或过程可能在某些实施例不再赘述。

图2为本申请实施例提供的一种人脸表情识别方法的流程示意图,本申请实施例提供了一种人脸表情识别方法,该方法可以应用于人脸表情识别的处理,且该方法可以由任意执行人脸表情识别方法的装置来执行,该装置可以通过软件和/或硬件实现。如图2所示,在图1所示系统架构的基础上,本申请实施例提供的人脸表情识别方法包括如下步骤:

S201:获取待检测目标的目标人脸图像。

其中,上述待检测目标可以根据实际情况确定,例如以上述车辆行驶过程中,判断司机是否在异常状态下驾驶车辆为例,上述待检测目标可以为车辆内的司机。

在本申请实施例中,以执行主体为上述网约车管理服务器为例。上述目标人脸图像可以为上述网约车管理服务器直接接收的上述预设图像采集装置发送的上述待检测目标的人脸图像,或者,接收的上述待检测目标的终端设备发送的上述待检测目标的人脸图像,例如上述司机的手机发送的人脸图像。

这里,为了提高后续人脸表情识别的准确率,上述网约车管理服务器可以对接收的人脸图像进行图像预处理。示例性的,上述预设图像采集装置可以发送上述待检测目标的至少一个人脸图像至上述网约车管理服务器。同样,上述待检测目标的终端设备也可以发送上述待检测目标的至少一个人脸图像至上述网约车管理服务器。上述网约车管理服务器在接收到上述至少一个人脸图像后,可以对上述至少一个人脸图像进行图像预处理,例如筛选出正面人脸图像、调整图像大小为预设大小和图像归一化等,从而,根据图像预处理结果,获得上述目标人脸图像。示例性的,上述网约车管理服务器可以从上述至少一个人脸图像中,筛选出正面人脸图像,将该人脸图像的大小调整为预设大小,然后再对图像进行归一化处理等,最后将处理后的图像作为上述目标人脸图像。其中,上述预设大小可以根据实际情况确定,本申请实施例对此不做特别限制。

S202:提取上述目标人脸图像的目标人脸关键点。

示例性的,上述网约车管理服务器可以将上述目标人脸图像输入预设人脸关键点提取模型,根据该预设人脸关键点提取模型的输出,获得上述目标人脸关键点。其中,上述预设人脸关键点提取模型通过参考人脸图像,以及该参考人脸图像对应的参考人脸关键点训练得到。

这里,上述参考人脸图像可以为参考目标的人脸图像,上述参考人脸关键点可以为上述参考人脸图像对应的真实人脸关键点。其中,上述参考目标可以根据实际情况确定,例如一个或多个车辆内的司机。

在本申请实施例中,上述目标人脸关键点可以包括上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。示例性的如图3所示,上述目标人脸关键点可以包括待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的98个特征点(如图3中序号为0-97的特征点)。

S203:确定上述目标人脸关键点之间的位置关系。

示例性的,上述网约车管理服务器计算上述目标人脸关键点中每个关键点与其它关键点之间的欧氏距离,进而,根据该欧式距离,确定上述目标人脸关键点每个关键点与其它关键点之间的位置关系。

S204:将上述目标人脸关键点,以及上述位置关系,输入预设人脸表情识别模型,该预设人脸表情识别模型通过参考人脸关键点,参考人脸关键点之间的位置关系,以及上述参考人脸关键点对应的参考人脸表情训练得到。

其中,上述参考人脸关键点对应的参考人脸表情可以为上述参考人脸关键点对应的真实人脸表情。

这里,上述预设人脸表情识别模型可以包括全连接层和softmax分类器,示例性的,如图4所示。全连接层用于对上述目标人脸关键点,以及上述位置关系进行特征融合,以生成融合后的目标人脸特征。softmax分类器,与上述全连接层连接,用于根据上述融合后的目标人脸特征,输出上述目标人脸表情。

示例性的,以上述目标人脸关键点包括上述98个特征点为例,将该98个关键点按照“横坐标,纵坐标”的形式展开,例如,“x1,y1,x2,y2…x98,y98”。上述网约车管理服务器还可以计算上述98个特征点中每个特征点与其它特征点之间的欧氏距离,进而,根据该欧氏距离,确定上述位置关系。假设人脸表情一共分为7类(例如如图5所示,6类基本表情:高兴、悲伤、惊讶、愤怒、厌恶、恐惧,以及1类中性状态)。那么上述全连接层的维度可以对上述目标人脸关键点以及上述位置关系进行特征融合,以生成7类融合后的目标人脸特征。再连接一个7分类的softmax分类器,根据上述融合后的目标人脸特征,输出上述目标人脸表情。

在本申请实施例中,为了减少全连接层处理的参数,上述预设人脸表情识别模型还可以包括多个卷积层。示例性的,如图6所示,该多个卷积层对上述目标人脸关键点,以及上述位置关系进行卷积操作,以输出上述待检测目标的目标人脸特征。上述全连接层与上述多个卷积层连接,用于获取上述目标人脸特征,并对上述目标人脸特征进行特征融合,以生成上述融合后的目标人脸特征。假设人脸表情一共分为上述7类,上述多个卷积层可以为核大小为1x1的卷积层(共有7个核,与上述人脸表情类别数保持一致)。

另外,在上述将上述目标人脸关键点,以及上述位置关系,输入预设人脸表情识别模型之前,上述网约车管理服务器还可以对上述目标人脸关键点进行预处理,例如归一化处理,以使后续数据收敛,保证后续处理正常进行。

S205:根据上述预设人脸表情识别模型的输出,获得上述待检测目标的目标人脸表情。

示例性的,上述网约车管理服务器利用上述预设人脸表情识别模型进行人脸表情识别的过程可以如图7所示,首先网约车管理服务器获取上述待检测目标的目标人脸图像,提取该目标人脸图像的目标人脸关键点,确定目标人脸关键点之间的位置关系,将上述目标人脸关键点,以及上述位置关系,输入上述预设人脸表情识别模型,进而,获得上述待检测目标的目标人脸表情。

在获得上述待检测目标的目标人脸表情之后,上述网约车管理服务器可以根据该目标人脸表情,确定上述待检测目标,例如车辆内的司机,是否在异常状态下驾驶车辆,例如在愤怒状态下驾驶车辆。示例性的,如果上述网约车管理服务器识别司机的人脸表情为愤怒表情,则确定该司机在异常状态下驾驶车辆。网约车管理服务器可以把人脸表情识别结果发送给相关监管人员,以使监管人员及时对车辆驾驶中出现的问题进行正确干预,例如停止派单给上述司机。

本申请实施例,网约车管理服务器首先获取待检测目标的目标人脸图像,然后提取该图像的人脸关键点,将该人脸关键点输入人脸表情识别模型,从而利用人脸表情识别模型识别待检测目标的人脸表情。其中,本申请实施例基于人脸关键点进行人脸表情识别,解决了人脸图片的信息冗余问题,提高人脸表情识别准确率。而且,本申请实施例在进行人脸表情识别时,仅需将目标人脸关键点输入人脸表情识别模型,相对输入人脸图像到人脸表情识别模型,数据输入速度快,减少人脸表情识别模型的人脸表情识别时间。另外,本申请实施例不仅将上述特征点输入预设人脸表情识别模型,而且还将上述位置关系输入预设人脸表情识别模型,使得输入预设人脸表情识别模型的待检测目标的信息更丰富,进一步提高了后续对待检测目标的人脸表情识别结果的准确率。

这里,网约车管理服务器在将上述目标人脸图像输入预设人脸关键点提取模型之前,需要对上述预设人脸关键点提取模型进行训练,以便后续将上述目标人脸图像输入训练好的预设人脸关键点提取模型,根据预设人脸关键点提取模型的输出,获得上述目标人脸关键点。其中,在训练过程中,网约车管理服务器可以将上述参考人脸图像输入预设人脸关键点提取模型,然后,根据预设人脸关键点提取模型输出的人脸关键点,以及上述参考人脸图像对应的参考人脸关键点,确定输出准确率。如果该输出准确率低于预设准确率阈值,网约车管理服务器可以根据上述输出准确率,调整上述预设人脸关键点提取模型,以提高上述输出准确率,将调整后的预设人脸关键点提取模型作为新的预设人脸关键点提取模型,重新执行上述将上述参考人脸图像输入预设人脸关键点提取模型的步骤。

其中,如果还以上述网约车为例,上述参考人脸图像可以通过网约车上搭载的预设图像采集装置,例如摄像头采集得到。或者,上述参考人脸图像通过司机的终端设备采集得到,例如通过司机的手机采集得到。或者,上述参考人脸图像通过行车记录仪、行车路线上的摄像头等采集得到。具体过程可以参照上述目标人脸图像的获取过程,在此不再赘述。

上述参考人脸图像对应的参考人脸关键点可以是网约车管理服务器利用PropagationNet算法得到的。

网约车管理服务器在将上述参考人脸图像输入预设人脸关键点提取模型后,获取预设人脸关键点提取模型输出的人脸关键点,将获取的人脸关键点与上述参考人脸图像对应的参考人脸关键点进行比较。示例性的,比较两者相似度。网约车管理服务器根据比较得到的相似度,确定上述输出准确率。如果上述输出准确率低于预设准确率阈值,说明上述预设人脸关键点提取模型的人脸关键点提取效果较差,需要调整上述预设人脸关键点提取模型,以提高上述输出准确率,并将调整后的预设人脸关键点提取模型作为新的预设人脸关键点提取模型,重新执行上述步骤,直至确定的输出准确率高于或等于上述预设准确率阈值,停止训练。这里,上述预设准确率阈值可以根据实际情况设置,例如90%或95%等,本申请实施例对此不做特别限制。示例性的,上述预设人脸关键点提取模型的训练过程可以如图8所示,首先网约车管理服务器获取训练样本,该训练样本包括上述参考人脸图像。然后网约车管理服务器利用上述训练样本训练预设人脸关键点提取模型,即将上述参考人脸图像输入预设人脸关键点提取模型,根据预设人脸关键点提取模型输出的人脸关键点,以及上述参考人脸图像对应的参考人脸关键点,确定输出准确率,直至该输出准确率大于或等于预设准确率阈值,停止训练,得到训练好的预设人脸关键点提取模型。

另外,上述网约车管理服务器在将上述目标人脸关键点输入预设人脸表情识别模型之前,也需要对上述预设人脸表情识别模型进行训练,以便后续将上述目标人脸关键点,以及目标人脸关键点之间的位置关系,输入训练好的预设人脸表情识别模型,获取预设人脸表情识别模型输出的待检测目标的人脸表情。其中,以上述对车辆内司机的表情进行识别为例,在训练过程中,上述人脸表情识别模型输入参考人脸关键点,以及参考人脸关键点之间的位置关系,输出司机的人脸表情。示例性的,上述网约车管理服务器将上述参考人脸关键点,以及目标人脸关键点之间的位置关系,输入预设人脸表情识别模型,然后,确定预设人脸表情识别模型输出的司机的人脸表情,与上述参考人脸关键点对应的参考人脸表情是否相同。如果不相同,则调整上述预设人脸表情识别模型,以使预设人脸表情识别模型输出的司机的人脸表情为上述参考人脸表情。其中,上述参考人脸表情可以为上述司机的真实人脸表情。

在本申请实施例中,上述目标人脸关键点包括所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。上述网约车管理服务器在将上述目标人脸关键点输入预设人脸表情识别模型时,还考虑上述目标人脸关键点之间的位置关系,从而,将该位置关系和上述目标人脸关键点输入预设人脸表情识别模型。图9为本申请实施例提出的另一种人脸表情识别方法的流程示意图。如图9所示,该方法包括:

S901:获取待检测目标的目标人脸图像。

S902:提取上述目标人脸图像的目标人脸关键点。

其中,步骤S901-S901与上述步骤S201-S202的实现方式相同,此处不再赘述。

S903:确定上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点之间的位置关系。

示例性的,如图3所示,上述目标人脸关键点可以包括待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的98个特征点。

上述网约车管理服务器可以计算上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点中每个特征点与其它特征点之间的欧氏距离,进而,根据该欧氏距离,确定上述位置关系。

比如图3中,脸部轮廓有33个点,上述网约车管理服务器计算该33个点中每个点与其他32个点的欧氏距离,共得到528个距离,再加上眉毛区域、眼睛区域、鼻子区域、嘴巴区域计算的欧式距离,一共有1060个距离,从而,根据上述欧氏距离,确定上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点之间的位置关系。

S904:将上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及上述位置关系,输入预设人脸表情识别模型,其中,该预设人脸表情识别模型通过参考人脸关键点,该参考人脸关键点之间的位置关系,以及上述参考人脸表情训练得到,上述参考人脸关键点包括参考目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。

这里,上述网约车管理服务器不仅将上述特征点输入预设人脸表情识别模型,而且还将上述位置关系输入预设人脸表情识别模型,使得输入预设人脸表情识别模型的待检测目标的信息更丰富,进一步提高了后续对待检测目标的人脸表情识别结果的准确率。

其中,上述参考人脸关键点之间的位置关系可以为上述参考人脸关键点之间的真实位置关系。

这里,以上述预设人脸表情识别模型包括全连接层和softmax分类器为例。如果上述目标人脸关键点包括上述98个特征点。上述眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点之间的欧式距离一共有1060个。如果将上述98个关键点按照“横坐标,纵坐标”的形式展开,例如,“x1,y1,x2,y2…x98,y98”。如图5所示,人脸表情一共分为7类。上述全连接层的维度可以为1256x7,对上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及上述位置关系进行特征融合,以生成7类融合后的目标人脸特征。再连接一个7分类的softmax分类器,根据上述融合后的目标人脸特征,输出上述目标人脸表情。

S905:根据上述预设人脸表情识别模型的输出,获得上述待检测目标的目标人脸表情。

其中,步骤S905与上述步骤S204的实现方式相同,此处不再赘述。

本申请实施例不仅将上述特征点输入预设人脸表情识别模型,而且还将上述位置关系输入预设人脸表情识别模型,使得输入预设人脸表情识别模型的待检测目标的信息更丰富,进一步提高了后续对待检测目标的人脸表情识别结果的准确率。另外,本申请实施例基于人脸关键点进行人脸表情识别,解决了人脸图片的信息冗余问题,提高人脸表情识别准确率。而且,本申请实施例在进行人脸表情识别时,仅需将目标人脸关键点输入人脸表情识别模型,相对输入人脸图像到人脸表情识别模型,数据输入速度快,减少人脸表情识别模型的人脸表情识别时间。

这里,网约车管理服务器在将上述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及上述位置关系,输入预设人脸表情识别模型之前,需要对预设人脸表情识别模型进行训练,以便后续将上述特征点和上述位置关系输入训练好的预设人脸表情识别模型,获得预设人脸表情识别模型输出的待检测目标的目标人脸表情。在训练过程中,网约车管理服务器可以将上述参考人脸关键点,上述参考人脸关键点之间的位置关系输入预设人脸表情识别模型,然后,确定预设人脸表情识别模型输出的人脸表情,与上述参考人脸表情是否相同。如果不相同,则调整上述预设人脸表情识别模型,以使预设人脸表情识别模型输出的人脸表情为上述参考人脸表情。

对应于上文实施例的人脸表情识别方法,图10为本申请实施例提供的人脸表情识别装置的结构示意图。为了便于说明,仅示出了与本申请实施例相关的部分。图10为本申请实施例提供的一种人脸表情识别装置的结构示意图,该人脸表情识别装置100包括:图像获取模块1001、关键点提取模块1002、关系确定模块1003、关键点输入模块1004以及表情获得模块1005。这里的人脸表情识别装置可以是上述网约车管理服务器本身,或者是实现网约车管理服务器的功能的芯片或者集成电路。这里需要说明的是,图像获取模块、关键点提取模块、关系确定模块、关键点输入模块以及表情获得模块的划分只是一种逻辑功能的划分,物理上两者可以是集成的,也可以是独立的。

其中,图像获取模块1001,用于获取待检测目标的目标人脸图像。

关键点提取模块1002,用于提取所述目标人脸图像的目标人脸关键点。

关系确定模块1003,用于确定所述目标人脸关键点之间的位置关系。

关键点输入模块1004,用于将所述目标人脸关键点输入预设人脸表情识别模型,所述预设人脸表情识别模型通过参考人脸关键点,所述参考人脸关键点之间的位置关系,以及所述参考人脸关键点对应的参考人脸表情训练得到。

表情获得模块1005,用于根据所述预设人脸表情识别模型的输出,获得所述待检测目标的目标人脸表情。

在一种可能的设计中,所述关键点提取模块1002,具体用于:

将所述目标人脸图像输入预设人脸关键点提取模型,所述预设人脸关键点提取模型通过参考人脸图像,以及所述参考人脸图像对应的参考人脸关键点训练得到;

根据所述预设人脸关键点提取模型的输出,获得所述目标人脸关键点。

在一种可能的实现方式中,所述目标人脸关键点包括所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。

所述关键点输入模块1004,具体用于:

将所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点,以及所述特征点之间的位置关系,输入所述预设人脸表情识别模型,其中,所述预设人脸表情识别模型通过所述参考人脸关键点,所述参考人脸关键点之间的位置关系,以及所述参考人脸表情训练得到,所述参考人脸关键点包括参考目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点。

在一种可能的实现方式中,所述关键点输入模块1004,具体用于:

计算所述待检测目标的眉毛区域、眼睛区域、鼻子区域、嘴巴区域和脸部轮廓的特征点中每个特征点与其它特征点之间的欧氏距离;

根据所述欧氏距离,确定所述每个特征点与所述其它特征点之间的位置关系。

在一种可能的实现方式中,所述图像获取模块1001,具体用于:

对所述待检测目标的至少一个人脸图像进行图像预处理,所述图像预处理包括筛选出正面人脸图像、调整图像大小为预设大小和图像归一化中一个或多个;

根据图像预处理结果,获得所述目标人脸图像。

在一种可能的实现方式中,所述关键点输入模块1004,还用于:

对所述目标人脸关键点进行归一化处理。

在一种可能的实现方式中,所述预设人脸表情识别模型包括:全连接层和softmax分类器。

所述全连接层,用于对所述目标人脸关键点,以及所述位置关系进行特征融合,以生成融合后的目标人脸特征。

所述softmax分类器,与所述全连接层连接,用于根据所述融合后的目标人脸特征,输出所述目标人脸表情。

在一种可能的实现方式中,所述预设人脸表情识别模型还包括:多个卷积层。

所述多个卷积层,用于对所述目标人脸关键点,以及所述位置关系进行卷积操作,以输出所述待检测目标的目标人脸特征。

所述全连接层,与所述多个卷积层连接,用于获取所述目标人脸特征,并对所述目标人脸特征进行特征融合,以生成所述融合后的目标人脸特征。

在一种可能的实现方式中,所述图像获取模块1001,还用于:

接收预设图像采集装置发送的所述至少一个人脸图像。

在一种可能的实现方式中,所述图像获取模块1001,还用于:

接收所述待检测目标的终端设备发送的所述至少一个人脸图像。

本申请实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本申请实施例此处不再赘述。

可选地,图11示意性地提供本申请所述人脸表情识别设备的一种可能的基本硬件架构。

参见图11,人脸表情识别设备1100包括至少一个处理器1101以及通信接口1103。进一步可选的,还可以包括存储器1102和总线1104。

其中,人脸表情识别设备1100可以是上述网约车管理服务器,本申请对此不作特别限制。人脸表情识别设备1100中,处理器1101的数量可以是一个或多个,图11仅示意了其中一个处理器1101。可选地,处理器1101,可以是中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)或者数字信号处理(Digital SignalProcess,DSP)。如果人脸表情识别设备1100具有多个处理器1101,多个处理器1101的类型可以不同,或者可以相同。可选地,人脸表情识别设备1100的多个处理器1101还可以集成为多核处理器。

存储器1102存储计算机指令和数据;存储器1102可以存储实现本申请提供的上述人脸表情识别方法所需的计算机指令和数据,例如,存储器1102存储用于实现上述人脸表情识别方法的步骤的指令。存储器1102可以是以下存储介质的任一种或任一种组合:非易失性存储器(例如只读存储器(ROM)、固态硬盘(SSD)、硬盘(HDD)、光盘),易失性存储器。

通信接口1103可以为所述至少一个处理器提供信息输入/输出。也可以包括以下器件的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。

可选的,通信接口1103还可以用于人脸表情识别设备1100与其它计算设备或者终端进行数据通信。

进一步可选的,图11用一条粗线表示总线1104。总线1104可以将处理器1101与存储器1102和通信接口1103连接。这样,通过总线1104,处理器1101可以访问存储器1102,还可以利用通信接口1103与其它计算设备或者终端进行数据交互。

在本申请中,人脸表情识别设备1100执行存储器1102中的计算机指令,使得人脸表情识别设备1100实现本申请提供的上述人脸表情识别方法,或者使得人脸表情识别设备1100部署上述的人脸表情识别装置。

从逻辑功能划分来看,示例性的,如图11所示,存储器1102中可以包括图像获取模块1001、关键点提取模块1002、关系确定模块1003、关键点输入模块1004以及表情获得模块1005。这里的包括仅仅涉及存储器中所存储的指令被执行时可以分别实现图像获取模块、关键点提取模块、关键点输入模块以及表情获得模块的功能,而不限定是物理上的结构。

另外,上述的人脸表情识别设备除了可以像上述图11通过软件实现外,也可以作为硬件模块,或者作为电路单元,通过硬件实现。

本申请提供一种计算机可读存储介质,所述计算机程序产品包括计算机指令,所述计算机指令指示计算设备执行本申请提供的上述人脸表情识别方法。

本申请提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行本申请提供的上述人脸表情识别方法。

本申请提供一种芯片,包括至少一个处理器和通信接口,所述通信接口为所述至少一个处理器提供信息输入和/或输出。进一步,所述芯片还可以包含至少一个存储器,所述存储器用于存储计算机指令。所述至少一个处理器用于调用并运行该计算机指令,以执行本申请提供的上述人脸表情识别方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

相关技术
  • 一种人脸表情识别方法、装置及存储介质
  • 人脸表情识别方法、系统、装置及可读存储介质
技术分类

06120112532140