基于人脸识别的直播互动方法、装置、设备及存储介质与流程

文档序号:17430827发布日期:2019-04-17 03:28阅读:291来源:国知局
基于人脸识别的直播互动方法、装置、设备及存储介质与流程

本发明涉及人脸识别技术领域,具体涉及一种基于人脸识别的直播互动方法、装置、设备及存储介质。



背景技术:

人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行识别的一系列相关技术,通常也叫做人像识别、面部识别。

当前在直播平台中主播与观众的互动一般是采用主播发起互动邀请的处理流程,观众则通过打字聊天或送礼物等方式进行主动性互动。由于主播与观众是一对多的关系,主播不可能针对每一个观众都做出相应的响应,这就使得直播中的互动性由主播主导,进而在一定程度上限制了观众互动的主动性,影响主播的关注量。



技术实现要素:

基于此,有必要针对在目前直播平台中,主播不能及时对每一个观众的互动作出反馈,导致的观众在互动过程中的主动性降低、主播的关注量受到影响等问题,提供一种基于人脸识别的直播互动方法、装置、设备及存储介质。

一种基于人脸识别的直播互动方法,其特征在于,所述基于人脸识别的直播互动方法,包括如下步骤:

获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中;

根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情,所述表情库中包括所述脸部表情图片、所述表情包表情和所述脸部表情图片与所述表情包表情之间的映射关系;

将获取到的所述表情包表情输出到直播互动界面中进行展示。

在一个实施例中,所述获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中之前,包括:

获取代表脸部不同表情的脸部表情图片,所述脸部表情图片包括脸部微动作图片组,所述脸部微动作图片组包括完成脸部微小表情动作的连续多帧图片;

根据自定义映射规则建立所述脸部表情图片与表情包表情之间的映射关系,所述表情包表情从网络表情包库中获得;

根据所述脸部表情图片、所述表情包表情和所述映射关系建立表情库。

在一个实施例中,所述获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中,包括:

调用客户端的摄像头拍摄用户的脸部表情,并将拍摄到的脸部表情图片存储于所述图片存储库中。

在一个实施例中,所述根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情之前,包括:

对获取到的所述脸部表情图片进行灰度化处理,获得灰度图像;

对所述灰度图像进行增强处理,具体公式如公式(1)所示:

公式(1)中,x、y分别表示图像中点的横、纵坐标,f(x,y)表示原图的灰度值,g(x,y)表示增强图像的灰度值,h1表示满足时的最大灰度值,h2表示满足时的最小灰度值,hist[]表示当前图像的灰度值直方图,n表示当前图像的总像素数。

在一个实施例中,所述根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情,包括:

识别获取到的所述脸部表情图片中所包含的五官动作;

根据所述脸部表情图片、识别到的所述五官动作和所述映射关系从所述表情库中获取对应的所述表情包表情。

在一个实施例中,所述识别获取到的所述脸部表情图片中所包含的五官动作,包括:

根据mtcnn网络识别所述脸部表情图片,所述mtcnn网络包括pnet网络结构、rnet网络结构和onet网络结构;

获取所述脸部表情图片后,调用所述pnet网络结构对所述脸部表情图片进行非极大值抑制算法nms计算后产生若干个候选框以及每个候选框的置信度;

从所述脸部表情图片的原图像上截取出所述pnet网络结构确定的所有图像片段,并将所有图像片段进行缩放后传送给所述rnet网络结构;

调用所述rnet网络结构对所有图像片段进行所述nms计算后得到每个候选框的置信度和修正值,并将置信度高于阈值的候选框加上修正值进行修正;

从所述脸部表情图片的原图像上截取出所述rnet网络结构确定的所有图像片段,并将所有图像片段传送给所述onet网络结构;

调用所述onet网络结构对所有图像片段的候选框进行所述nms计算后得到每个候选框的置信度和修正值,对置信度高于阈值的候选框进行修正后产生多个关键点坐标;

根据所述关键点坐标识别出所述脸部表情图片中所包含的五官动作。

在一个实施例中,所述将获取到的所述表情包表情输出到直播互动界面中进行展示,包括:

获取根据所述脸部表情图片所选取的对应的所述表情包表情;

将所述表情包表情传送至直播互动界面的对话框中,并从所述对话框中将所述表情包表情发送至直播互动界面中。

基于相同的构思,本申请还提供了一种基于人脸识别的直播互动装置,所述基于人脸识别的直播互动装置包括:

获取模块,设置为获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中;

匹配模块,设置为根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情,所述表情库中包括所述脸部表情图片、所述表情包表情和所述脸部表情图片与所述表情包表情之间的映射关系;

输出模块,设置为将获取到的所述表情包表情输出到直播互动界面中进行展示。

基于相同的构思,本申请实施例还提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行上述基于人脸识别的直播互动方法的步骤。

基于相同的技术构思,本申请实施例还提供了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个所述处理器执行如上述基于人脸识别的直播互动方法的步骤。

上述基于人脸识别的直播互动方法、装置、设备及存储介质,通过获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中;根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情,所述表情库中包括所述脸部表情图片、所述表情包表情和所述脸部表情图片与所述表情包表情之间的映射关系;将获取到的所述表情包表情输出到直播互动界面中进行展示。因此,通过人脸识别快速识别出主播在看到观众留言后的第一反应表情,并实时将主播的表情发送至直播界面,提高了主播与观众的互动性,增加直播过程中的趣味性,能有效提高主播的关注量。

附图说明

图1为本申请在一个实施例中的基于人脸识别的直播互动方法的流程图;

图2为本申请在一个实施例中的建立表情库的流程图;

图3为本申请在一个实施例中的获取表情包表情的流程图;

图4为本申请在一个实施例中的基于人脸识别的直播互动装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1为本申请在一个实施例中提供的基于人脸识别的直播互动方法的流程图,如图所示,包括:

s1、获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中;

本步骤中通过调用客户端的摄像头拍摄获取用户的脸部表情,并将拍摄到的所述脸部表情对应的脸部表情图片存储于图片存储库中,用于后续对所述脸部表情图片中包含的五官动作进行识别。

s2、根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情,所述表情库中包括所述脸部表情图片、所述表情包表情和所述脸部表情图片与所述表情包表情之间的映射关系;

本步骤中通过从图片存储库中提取所述脸部表情图片,对所述脸部表情图片进行灰度化处理和增强处理后,通过mtcnn网络识别所述脸部表情图片中包含的五官动作,根据识别后的所述脸部表情图片以及所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情;所述映射关系包括自定义映射关系,比如用户可以拍摄自己的各种脸部表情图片后,将自己的所述脸部表情图片制作成对应的表情包表情,将自定义的表情包表情与所述脸部表情建立映射关系,将自定义的表情包表情与对应的映射关系存储于表情库中。

s3、将获取到的所述表情包表情输出到直播互动界面中进行展示;

本步骤中通过识别所述脸部表情后根据对应的所述映射关系从所述表情库中获取所述表情包,将所述表情包自动发送至直播平台中的对话框中,再将所述表情包从所述对话框中发送至直播界面中,将所述表情包从对话框中发送至直播界面中包括自动发送和手动发送,用户可通过系统设置的方式现在发送模式。

本实施例通过人脸识别的方式快速的识别出主播在直播过程中对于直播界面中弹幕的第一反应表情,并实时的将主播的表情以表情包的形式发送至直播界面中,提高了主播与观众的互动性,增加了直播的趣味性。

图2为本申请在一个实施例中提供的建立表情库的流程图,如图所示,包括:

s101、获取代表脸部不同表情的脸部表情图片,所述脸部表情图片包括脸部微动作图片组,所述脸部微动作图片组包括完成脸部微小表情动作的连续多帧图片;

本步骤中通过调用客户端的摄像头拍摄用户的脸部表情图片,所述脸部表情图片中包含用户在完成某个表情动作短时间内的多帧图片,比如用户在3秒内保持微笑这一个动作,则对应的所述脸部表情图片中的多帧图片均是该用户微笑的图片,若用户在3秒内完成了微笑到大笑再到奸笑的3个表情动作,则对应的所述脸部表情图片中的多帧图片中包含有微笑、大笑和奸笑的图片。

s102、根据自定义映射规则建立所述脸部表情图片与表情包表情之间的映射关系,所述表情包表情从网络表情包库中获得;

本步骤中根据自定义映射规则建立所述脸部表情图片与所述表情包表情之间的映射关系,比如脸部表情图片a中包含的多帧图片均为微笑的表情,即默认脸部表情图片a为静态图片,与其对应的表情包表情为静态表情,若脸部表情图片b中包含的多帧图片有微笑、大笑和奸笑的表情,即默认脸部表情图片b为动态图片,与其对应的表情包表情为动态表情;根据自定义的映射关系,从所述表情库中获取对应的静态表情或者动态表情,用户可选择网络表情包表情作为映射表情,也可将自己的表情做成表情包再与自己的表情建立映射关系。

s103、根据所述脸部表情图片、所述表情包表情和所述映射关系建立表情库;

本步骤中根据已经获取的所述脸部表情图片、从网络下载的所述表情包表情以及所述脸部表情图片与所述表情包表情的映射关系建立表情库。

本实施例中通过预先设立的所述表情库以及所述映射关系,为后续根据用户的脸部表情快速的从所述表情库中获取对应的所述表情包表情提供了基础。

在一个实施例中,所述获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中,包括:

调用客户端的摄像头拍摄用户的脸部表情,并将拍摄到的脸部表情图片存储于所述图片存储库中;

本步骤中通过调用各客户端的摄像头通过拍摄的方式获取用户的脸部表情,其中客户端包括电脑客户端、平板客户端和手机客户端,并将所述脸部表情以脸部表情图片的形式存储于所述图片存储库中,所述脸部表情图片中包含多帧图片。

本实施例通过拍摄的方式获取用户的脸部表情,并将所述脸部表情以脸部表情图片的形式存储于所述图片存储库中,为后续识别所述脸部表情图片中包含的五官动作提供了基础。

在一个实施例中,所述根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情之前,包括:

对获取到的所述脸部表情图片进行灰度化处理,获得灰度图像;对所述灰度图像进行增强处理,具体公式如公式(1)所示:

公式(1)中,x、y分别表示图像中点的横、纵坐标,f(x,y)表示原图的灰度值,g(x,y)表示增强图像的灰度值,h1表示满足时的最大灰度值,h2表示满足时的最小灰度值,hist[]表示当前图像的灰度值直方图,n表示当前图像的总像素数;

本步骤中通过对所述脸部表情图片进行灰度化处理后得到所述脸部表情图片对应的灰度图像,再根据公式(1)对所述脸部表情图片对应的灰度图像进行增强处理。

本实施例中通过对所述脸部表情图片进行灰度处理和增强处理后,为后续快速且准确的识别出所述脸部表情图片中的五官表情提供了依据。

图3为本申请在一个实施例中提供的获取表情包表情的流程图,如图所示,包括:

s201、识别获取到的所述脸部表情图片中所包含的五官动作;

本步骤中通过mtcnn网络识别方法识别所述脸部表情图片中包含的五官动作,所述mtcnn网络包括pnet网络结构、rnet网络结构和onet网络结构;首先调用所述pnet网络结构对所述脸部表情图片进行非极大值抑制算法nms计算后产生若干个候选框以及每个候选框的置信度,从所述脸部表情图片中截取出所述pnet网络结构确定的图像片段,将其传送至rnet网络结构,所述rnet网络结构同样对图像片段进行nms计算后得到每个候选框的置信度和修正值,并对置信度高于阈值的候选框进行修正,从所述脸部表情图片中截取出所述rnet确定的图像片段,将其传送至onet网络结构,所述onet网络结构对图像片段进行nms计算后得到每个候选框的置信度和修正值,对置信度高于阈值的候选框进行修正后产生多个关键点坐标,最后根据多个关键点坐标识别出五官动作。

s202、根据所述脸部表情图片、识别到的所述五官动作和所述映射关系从所述表情库中获取对应的所述表情包表情;

本步骤中根据mtcnn网络方法识别到的五官动作以及所述映射关系从所述表情库中获取对应的所述表情包表情,比如识别出的所述五官动作c包含微笑到大笑到奸笑,而c对应的表情包表情d为猴子的微笑都大笑到奸笑的表情,则根据所述脸部表情图片识别出的五官动作c,从所述表情库中获取表情包为表情包表情d。

本实施例中通过mtcnn网络识别方法识别出所述脸部表情图片中的五官动作后,再从所述表情库中获取对应的所述表情包表情,可快速且准确的识别出图片中所包含的五官动作,提高了主播与观众进行互动的频率。

在一个实施例中,所述识别获取到的所述脸部表情图片中所包含的五官动作,包括:

根据mtcnn网络识别所述脸部表情图片,所述mtcnn网络包括pnet网络结构、rnet网络结构和onet网络结构;获取所述脸部表情图片后,调用所述pnet网络结构对所述脸部表情图片进行非极大值抑制算法nms计算后产生若干个候选框以及每个候选框的置信度;从所述脸部表情图片的原图像上截取出所述pnet网络结构确定的所有图像片段,并将所有图像片段进行缩放后传送给所述rnet网络结构;

本步骤中首先获取所述脸部表情图片后,由pnet网络结构进行分析,产生若干个候选框,其中包括候选框坐标、候选框中5个关键点坐标,以及每个候选框的置信度,然后将所有候选框进行nms计算,将结果映射到所述脸部表情图片上,并在所述脸部表情图片上截取出pnet网络结构确定的所有图像片段,将其缩放至24x24大小,传送给rnet网络结构。

调用所述rnet网络结构对所有图像片段进行所述nms计算后得到每个候选框的置信度和修正值,并将置信度高于阈值的候选框加上修正值进行修正;从所述脸部表情图片的原图像上截取出所述rnet网络结构确定的所有图像片段,并将所有图像片段传送给所述onet网络结构;

本步骤中rnet网络结构对图像片段经过nms计算,输出每个候选框的置信度和修正值,将置信度高于阈值的候选框加以修正,其修正方法即加上修正值,输出修正后结果,并从所述脸部表情图片中截取出rnetw网络结构确定的图像片段,并就其缩放至48x48大小后传送至onet网络结构。

调用所述onet网络结构对所有图像片段的候选框进行所述nms计算后得到每个候选框的置信度和修正值,对置信度高于阈值的候选框进行修正后产生多个关键点坐标;根据所述关键点坐标识别出所述脸部表情图片中所包含的五官动作;

本步骤中onet网络结构onet网络结构的处理方式和rnet网络结构相似,首先进行nms运算,产生置信度和修正值,已经还会产生5个关键点坐标,将产生的结果进行修正,将置信度大于阈值的候选框进行修正,最后根据修正结果已经5个关键点坐标识别出所述脸部表情图片中包含的五官动作。

本实施例通过mtcnn识别方法对所述脸部表情图片进行人脸识别,识别出所述脸部表情图片中所包含的五官动作,为后续从所述表情库中准确找到对应的所述表情包表情提供了基础。

在一个实施例中,所述将获取到的所述表情包表情输出到直播互动界面中进行展示,包括:

获取根据所述脸部表情图片所选取的对应的所述表情包表情;

本步骤中从所述表情库中获取与所述脸部表情图片具有映射关系的表情包表情,若脸部表情图片e包含微笑的表情,而与脸部表情图片e具有映射关系的表情包表情包含多个时,则随机推荐表情包表情,若检测到每当出现脸部表情图片e时,主播应用的表情包表情f相较于其它具有相同映射关系的表情包表情的次数明显更多的时候,则优先推荐表情包表情f。

将所述表情包表情传送至直播互动界面的对话框中,并从所述对话框中将所述表情包表情发送至直播互动界面中;

本步骤中所述表情包表情通过直播互动界面的对话框中发送至直播互动界面中,从对话框中发送至直播界面的过程中包含手动发送和自动发送,若主播每次均选择自动发送时,则对于每次的脸部表情图片e都会随机推荐一个表情包表情到对话框中,若主播有选择手动发送时,则根据主播的喜好,对于每次的脸部表情图片e,优先推荐主播使用频率较高的表情包表情f。

本实施例中通过对主播的脸部表情进行识别后,选取对应的表情包表情发送至直播互动界面中,有效提供了主播在直播过程中与观众的互动性,增加了直播的趣味性。

基于相同的构思,本申请还提供了一种基于人脸识别的直播互动装置,如图4所示,所述基于人脸识别的直播互动装置包括获取模块、匹配模块和输出模块,其中:获取模块,设置为获取脸部表情,并将所述脸部表情对应的脸部表情图片存储于图片存储库中;匹配模块,设置为根据所述脸部表情图片与表情包表情的映射关系从表情库中获取对应的表情包表情,所述表情库中包括所述脸部表情图片、所述表情包表情和所述脸部表情图片与所述表情包表情之间的映射关系;输出模块,设置为将获取到的所述表情包表情输出到直播互动界面中进行展示。

在一个实施例中,所述基于人脸识别的直播互动装置还包括建立模块,所述建立模块包括:

获取图片单元,设置为获取代表脸部不同表情的脸部表情图片,所述脸部表情图片包括脸部微动作图片组,所述脸部微动作图片组包括完成脸部微小表情动作的连续多帧图片;

获取表情单元,设置为根据自定义映射规则建立所述脸部表情图片与表情包表情之间的映射关系,所述表情包表情从网络表情包库中获得;

建立单元,设置为根据所述脸部表情图片、所述表情包表情和所述映射关系建立表情库。

在一个实施例中,所述建立模块的执行顺序位于所述获取模块之前。

在一个实施例中,所述获取模块包括:

拍摄单元,设置为调用客户端的摄像头拍摄用户的脸部表情,并将拍摄到的脸部表情图片存储于所述图片存储库中。

在一个实施例中,所述基于人脸识别的直播互动装置还包括图像处理模块,所述图像处理模块包括:

灰度处理单元,设置为对获取到的所述脸部表情图片进行灰度化处理,获得灰度图像;

灰度增强单元,设置为对所述灰度图像进行增强处理,具体公式如公式(1)所示:

公式(1)中,x、y分别表示图像中点的横、纵坐标,f(x,y)表示原图的灰度值,g(x,y)表示增强图像的灰度值,h1表示满足时的最大灰度值,h2表示满足时的最小灰度值,hist[]表示当前图像的灰度值直方图,n表示当前图像的总像素数。

在一个实施例中,所述图像处理模块的执行顺序位于所述匹配模块之前。

在一个实施例中,所述匹配模块包括:

识别单元,设置为识别获取到的所述脸部表情图片中所包含的五官动作;

匹配表情单元,设置为根据所述脸部表情图片、识别到的所述五官动作和所述映射关系从所述表情库中获取对应的所述表情包表情。

在一个实施例中,所述识别单元包括:

识别网络单元,设置为根据mtcnn网络识别所述脸部表情图片,所述mtcnn网络包括pnet网络结构、rnet网络结构和onet网络结构;

一层运算单元,设置为获取所述脸部表情图片后,调用所述pnet网络结构对所述脸部表情图片进行非极大值抑制算法nms计算后产生若干个候选框以及每个候选框的置信度;

一层传输单元,设置为从所述脸部表情图片的原图像上截取出所述pnet网络结构确定的所有图像片段,并将所有图像片段进行缩放后传送给所述rnet网络结构;

二层运算单元,设置为调用所述rnet网络结构对所有图像片段进行所述nms计算后得到每个候选框的置信度和修正值,并将置信度高于阈值的候选框加上修正值进行修正;

二层传输单元,设置为从所述脸部表情图片的原图像上截取出所述rnet网络结构确定的所有图像片段,并将所有图像片段传送给所述onet网络结构;

三层运算单元,设置为调用所述onet网络结构对所有图像片段的候选框进行所述nms计算后得到每个候选框的置信度和修正值,对置信度高于阈值的候选框进行修正后产生多个关键点坐标;

结果输出单元,设置为根据所述关键点坐标识别出所述脸部表情图片中所包含的五官动作。

在一个实施例中,所述输出模块包括:

接收表情单元,设置为获取根据所述脸部表情图片所选取的对应的所述表情包表情;

输出表情单元,设置为将所述表情包表情传送至直播互动界面的对话框中,并从所述对话框中将所述表情包表情发送至直播互动界面中。

基于相同的技术构思,本申请实施例还提供一种计算机设备,所述计算机设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时,使得一个或多个所述处理器执行计算机可读指令时实现上述各实施例中的基于人脸识别的直播互动方法的步骤。

基于相同的技术构思,本申请实施例还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个所述处理器执行所述计算机可读指令时实现上述各实施例中的基于人脸识别的直播互动方法的步骤。其中,所述存储介质可以为非易失性存储介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁盘或光盘等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1