一种人脸检测方法、装置及终端设备与流程

文档序号:14991330发布日期:2018-07-20 22:17阅读:122来源:国知局

本发明涉及信息处理技术领域,特别涉及一种人脸检测方法、装置及终端设备。



背景技术:

人脸检测(facedetection)一直是计算机视觉领域中的一个重要的研究课题,也是人脸识别、人脸对齐和人脸追踪等应用的基础。现有的人脸检测方法一般采用基于神经网络的方案,一般可以分为三大类:基于级联的方法、基于单阶段的方法以及基于两阶段的方法。

其中,基于两阶段的方法的检测精度最高,比如区域完全卷积网络(regionalfullyconvolutionnetwork,rfcn)的方法,具体地,基于两阶段的方法一般先用似物性检测的策略在图片中产生一系列潜在的人脸候选框,然后再用卷积神经网络对人脸候选框提取相应的视觉特征并完成每个人脸候选框的分类的人脸区域的回归。

但是,现有的基于两阶段的方法是一种面向通用目标检测的技术方案,并没有对特定目标物体的针对性措施,由于通用场景下的目标往往变化尺度较小,这样按照现有两阶段的方法选定人脸候选框后得到的检测结果较为准确。有些情况下,比如检测的目标为人脸时,由于人脸的朝向,缩放尺度和表情等会有很多变化,使得通过现有两阶段的方法进行人脸检测时得到的检测结果不是很准确。



技术实现要素:

本发明实施例提供一种人脸检测方法、装置及终端设备,实现了根据对人脸候选框内图像的特征信息进行特征采样后,得到的多个采样特征信息,对人脸候选框内图像进行分类。

本发明实施例第一方面提供一种人脸检测方法,包括:

获取待处理图片中人脸候选框内图像的特征信息;

根据所述获取的特征信息进行特征采样,得到多个采样特征信息;

根据预置的计算函数及所述多个采样特征信息,得到所述人脸候选框内图像的检测分数;

根据所述检测分数对所述待处理图片中的人脸候选框内图像进行分类,得到所述人脸候选框内图像是否为人脸的分类结果。

本发明实施例第二方面提供一种人脸检测装置,包括:

特征获取单元,用于获取待处理图片中人脸候选框内图像的特征信息;

特征采样单元,用于根据所述获取的特征信息进行特征采样,得到多个采样特征信息;

检测分数单元,用于根据预置的计算函数及所述多个采样特征信息,得到所述人脸候选框内图像的检测分数;

分类单元,用于根据所述检测分数对所述待处理图片中的人脸候选框内图像进行分类,得到所述人脸候选框内图像是否为人脸的分类结果。

本发明实施例第三方面提供一种终端设备,包括处理器和存储介质,所述处理器,用于实现各个指令;

所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如本发明实施例第一方面所述的人脸检测方法。

可见,在本实施例的方法中,人脸检测装置会根据待处理图片中人脸候选框内图像的特征信息进行特征采样,得到多个采样特征信息,然后根据预置的计算函数及多个采样特征信息得到检测分数,最后根据检测分数对人脸候选框内图像进行分类,即可得到人脸候选框内图像是否为人脸的分类结果。这样,通过特征采样,可以得到人脸候选框内图像的多个采样特征信息,实现了对人脸候选框中图像的特征进行有选择性地表达,从而根据多个采样特征信息最终得到的分类结果较为准确;而其中,通过预置的计算函数及采样的多个采样特征信息,得到人脸候选框内图像的检测分数,使得通过任一种特征采样方式得到的多个采样特征信息都可以有相同的检测分数,从而提升最终得到的分类结果的精度。

附图说明

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

图1是本发明一个实施例提供的一种人脸检测方法的流程图;

图2是本发明一个实施例提供的一种人脸检测方法的示意图;

图3是本发明一个实施例中训练人脸检测模型的方法流程图;

图4是本发明一个实施例中训练人脸检测模型的示意图;

图5是本发明应用实施例中一种人脸检测方法所应用于的系统的结构示意图;

图6是本发明应用实施例提供的一种人脸检测方法的流程图;

图7是本发明应用实施例中将人脸关键点的第二位置信息转化为相对信息的示意图;

图8是本发明实施例提供的一种人脸检测装置的结构示意图;

图9是本发明实施例提供的另一种人脸检测装置的结构示意图;

图10是本发明实施例提供的一种终端设备的结构示意图。

具体实施方式

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

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

本发明实施例提供一种人脸检测方法,主要可以应用于人脸识别、人脸追踪、人脸图像编辑等各种人脸相关的场景中,是人脸识别、人脸追踪、人脸关键点检测等技术的基础。具体地,本发明实施例中由人脸检测装置执行如下步骤,这样能够精确地检测出任一图片(即如下的待处理图片)中的人脸区域,对于光照、遮挡、尺度等变化具有较强的鲁棒性:

获取待处理图片中人脸候选框内图像的特征信息;根据获取的特征信息进行特征采样,得到多个采样特征信息;根据预置的计算函数及多个采样特征信息,得到人脸候选框内图像的检测分数;根据检测分数对待处理图片中的人脸候选框内图像进行分类,得到人脸候选框内图像是否为人脸的分类结果。

这样,通过特征采样,可以得到人脸候选框内图像的多个采样特征信息,实现了对人脸候选框中图像的特征进行有选择性地表达,从而根据多个采样特征信息最终得到的分类结果较为准确;而其中,通过预置的计算函数及采样的多个采样特征信息,得到人脸候选框内图像的检测分数,使得通过任一种特征采样方式得到的多个采样特征信息都可以有相同的检测分数,从而提升最终得到的分类结果的精度。

本发明实施例提供一种人脸检测方法,主要是人脸检测装置所执行的方法,流程图如图1所示,且示意图如图2所示,包括:

步骤101,获取待处理图片中人脸候选框内图像的特征信息。

这里人脸候选框是指待处理图片中可能为人脸的部分图像所在框,具体为矩形框。例如,在待处理图片中右上角100*100像素大小的方形框中的图像。

人脸检测装置具体在执行本步骤时,可以先通过卷积神经网络等特征提取模型,提取待处理图片的特征信息,然后再选取人脸候选框内图像的特征信息。具体地,人脸检测装置在选取特征信息时,可以先通过区域选取模型,比如区域建议网络(regionproposalnetwork,rpn),根据待处理图片的特征信息确定各个人脸候选框的第一位置信息;然后人脸检测装置再根据第一位置信息及待处理图片的特征信息确定人脸候选框内图像的特征信息,即从待处理图片的特征信息中选取出与第一位置信息对应的特征信息,作为人脸候选框内图像的特征信息。

其中,人脸检测装置可以通过卷积神经网络等特征提取模型,提取待处理图片的基于不同尺度的特征信息,并将最高尺度的特征信息作为待处理图片的特征信息。

具体地,特征提取模型可以为残差网络(residualnetwork,resnet),视觉组网络(visualgeometrygroupnetwork,vggnet)或紧缩和激励网络(squeeze-and-excitationnetwork,senet)等;不同尺度是指对待处理图片进行缩放的不同程度,而最高尺度的特征信息是精度最高的待处理图片的特征信息;某一尺度的特征信息可以表示对待处理图片按照某一程度进行缩放后,得到的图像的像素等相关信息。

需要说明的是,本实施例中,人脸检测装置可以针对待处理图片中一个人脸候选框内图像,执行本实施例中的步骤101到104;也可以针对待处理图片中多个人脸候选框,并针对每个人脸候选框内图像,执行本实施例的步骤101到104。

进一步地,在执行本步骤之前,人脸检测装置可以先对待处理图片进行第一预处理,然后再对第一预处理后的待处理图片,执行本实施例的步骤。其中,第一预处理可以包括:将待处理图片进行人脸图像的增强,使得待处理图片中的人脸图像较为清晰,不会模糊,这样在执行本步骤101时,提取特征信息中更为准确。

第一预处理还可以包括:将待处理图片进行归一化处理,比如将该待处理图片缩小或放大到一定范围,然后再对缩放后的待处理图片进行特征信息的提取。这样,可以使得提取特征信息的计算过程得到简化。

可以理解,还可以有其它第一预处理方法,只要是能使得人脸检测装置在执行本实施例的步骤时得到优化的预处理方法都属于第一预处理的范围,在此不一一聚类说明。

步骤102,根据上述步骤101获取的特征信息中进行特征采样,得到多个采样特征信息。

具体地,人脸检测装置可以直接根据上述获取的特征信息进行特征采样,比如,用第一矩阵与采样点矩阵相乘,得到多个采样特征信息。其中,第一矩阵为上述获取的特征信息组成的矩阵,采样点矩阵是用1和0组成的矩阵,采样点矩阵中的“1”用于表示进行采样,“0”用于表示不采样。

人脸检测装置也可以先对上述获取的特征信息进行第二预处理,并根据第二预处理后的特征信息进行特征采样,比如,用第二矩阵与采样点矩阵相乘,得到多个采样特征信息,其中,第二矩阵包括:对上述获取的特征信息进行第二预处理后得到的特征信息。

其中,对于特征信息的第二预处理可以包括:将上述获取的特征信息转化为固定尺寸的特征信息,这样可以简化之后进行特征采样的计算。

需要说明的是,人脸检测装置在执行本步骤中的特征采样时,可以得到一个分支或多个分支的采样特征信息,如图2所示,以n个分支为例说明,具体地:

人脸检测装置可以用第一矩阵或第二矩阵,分别与多个采样点矩阵相乘,得到多个分支的采样特征信息,并针对每个分支的采样特征信息,执行如下步骤103和104,其中,每个分支的采样特征信息包括多个采样特征信息;

或者,人脸检测装置还可以用第一矩阵或第二矩阵,与一个采样点矩阵相乘,得到一个分支的多个采样特征信息,并针对该分支的多个采样特征信息,执行如下步骤103和104。

步骤103,根据预置的计算函数及多个采样特征信息,得到人脸候选框内图像的检测分数。

这里预置的计算函数是指通过采样特征信息计算检测分数的任意计算公式,可以包括但不限于:多个采样特征信息的加权值的平均值,在这种情况下,人脸检测装置在执行本步骤时,具体可以先将多个采样特征信息分别进行加权,得到多个加权值,然后将多个加权值的平均值作为人脸候选框内图像的检测分数。其中,某一加权值为某一采样特征信息与对应权重值的乘积,而各个采样特征信息对应的权重值可以是用户事先预置到人脸检测装置中,或是通过一定的训练方法训练得到。

步骤104,根据上述步骤102得到的检测分数对待处理图片中的人脸候选框内图像进行分类,得到人脸候选框内图像是否为人脸的分类结果。

具体地,人脸检测装置可以通过人脸分类器对人脸候选框内图像进行分类,以得到人脸候选框内图像是人脸或非人脸的分类结果。

可见,在本实施例的方法中,人脸检测装置会根据待处理图片中人脸候选框内图像的特征信息进行特征采样,得到多个采样特征信息,然后根据预置的计算函数及多个采样特征信息得到检测分数,最后根据检测分数对人脸候选框内图像进行分类,即可得到人脸候选框内图像是否为人脸的分类结果。这样,通过特征采样,可以得到人脸候选框内图像的多个采样特征信息,实现了对人脸候选框中图像的特征进行有选择性地表达,从而根据多个采样特征信息最终得到的分类结果较为准确;而其中,通过预置的计算函数及采样的多个采样特征信息,得到人脸候选框内图像的检测分数,使得通过任一种特征采样方式得到的多个采样特征信息都可以有相同的检测分数,从而提升最终得到的分类结果的精度。

参考图2所示,在一个具体的实施例中,人脸检测装置除了执行上述步骤101到104,还可以对人脸候选框内图像进行其它操作,具体包括:人脸检测装置会获取上述人脸候选框在待处理图片中的第一位置信息,然后根据上述步骤103计算得到的检测分数调整第一位置信息,即调整人脸候选框的位置,可以得到调整后的第一位置信息;进一步地,如果人脸候选框内图像为人脸,则人脸检测装置还需要根据检测分数调整人脸候选框内图像中人脸关键点的位置。

这里,人脸候选框的第一位置信息可以是人脸候选框中各点的坐标信息等,而人脸关键点可以为人脸五点关键点,人脸68点关键点或其它定义方式下的人脸关键点。且对人脸候选框的位置的调整,及对人脸关键点的位置的调整都可以由回归器来执行。

其中,为了使得对人脸关键点的位置的调整更为准确,人脸检测装置在调整人脸候选框内图像中人脸关键点的位置时,可以先获取人脸候选框内图像中人脸关键点在待处理图片中的第二位置信息;然后再根据人脸关键点的第二位置信息,确定人脸关键点相对于人脸候选框的相对位置;然后再根据确定的相对位置及检测分数,调整上述人脸候选框内图像中人脸关键点的位置。这里的相对位置是指人脸关键点在人脸候选框中的位置。

需要说明的是,人脸检测装置在执行上述任一步骤时,都可以通过相应的机器学习模型执行,而这些机器学习模型都可以由人脸检测装置事先通过一定的方法训练得到。具体地,这些机器学习模型可以包括:

执行上述步骤101的特征提取模型和区域选取模型;执行上述步骤102中特征采样,及执行上述步骤103中得到检测分数的子采样层;执行上述步骤104中进行人脸分类的人脸分类器;及执行上述对人脸候选框的位置进行调整,及对人脸候选框内图像中人脸关键点的位置进行调整的回归器等。这些机器学习模型可以通过如下的方法一同进行训练,流程图如图3所示,包括:

步骤201,确定第一训练样本及确定人脸检测模型,在第一训练样本中包括:多个图像样本,各个图像样本中多个矩形框的位置信息,及标记各个矩形框内图像是否为人脸的信息,及第一矩形框内图像中人脸关键点的位置信息,该第一矩形框内图像属于人脸类别;且人脸检测模型中包括人脸分类器和回归器,还可以包括上述子采样层,区域选取模型及特征提取模型等上述的机器学习模型。

其中,人脸检测装置在确定人脸检测模型时,具体包括:确定人脸检测模型的结构及固定参数的初始值。这里固定参数是指在人脸检测模型在执行上述人脸检测方法的过程中所用到的不需要随时赋值的参数,比如权重,角度等参数。

具体地,在本实施例中,人脸检测装置确定的人脸检测模型的结构可以如图4所示,包括:特征提取模型的输出连接区域候选模型,及连接特征选取模型;区域选取模型的输出连接特征选取模型;特征选取模型的输出连接子采样层;且子采样层的输出分别连接回归器和人脸分类器。

其中,特征选取模型用于从特征提取模型得到的图像样本的特征信息中,选取出与区域选取模型得到的人脸候选框的第一位置信息对应的特征信息,作为人脸候选框内图像的特征信息。

步骤202,根据上述确定的人脸检测模型对第一训练样本中各个图像样本进行检测得到初始检测结果。

其中,初始检测结果中可以包括:人脸分类器得到的结果,即人脸分类器最终得到的各个图像样本中的人脸候选框内图像是否为人脸的类别;及回归器得到的结果,即回归器得到的各个图像样本中的人脸候选框的第一位置信息。进一步地,对于人脸分类器确定为人脸类别的人脸候选框内图像,在初始检测结果中还包括:各个图像样本中属于人脸类别的人脸候选框内图像中人脸关键点的第二位置信息(通过回归器调整后的)。

如图4所示,人脸检测模型对每个图像样本进行的检测主要可以包括上述实施例中步骤101到104的方法,包括对各个图像样本中人脸候选框内图像进行人脸分类;还包括对各个图像样本中人脸候选框的位置调整,及人脸候选框内图像中人脸关键点的位置调整。

步骤203,根据上述初始检测结果计算与回归器相应的第一损失函数值,及与人脸分类器相应的第二损失函数值。

其中,第一损失函数值具体可以包括:回归器调整各个图像样本中人脸候选框位置的第一调整损失函数值,及回归器调整第一人脸候选框内图像中人脸关键点位置的第二调整损失函数值;其中,第一人脸候选框内图像是人脸分类器确定为人脸类别的人脸候选框内图像。

这里,第一调整损失函数值用于表示回归器调整的图像样本中人脸候选框的位置,与图像样本这些人脸候选框的实际位置(根据第一训练样本中包括的各个图像样本中多个矩形框的位置信息得到)之间的差别。具体可以为交l1平滑损失函数的函数值。

第二调整损失函数值用于表示回归器调整的第一人脸候选框内图像中人脸关键点位置的第二调整损失函数值,与第一人脸候选框内图像中人脸关键点的实际位置(根据第一训练样本中包括的第一矩形框内图像中人脸关键点的位置信息得到)之间的差别。具体可以为l1平滑损失函数的函数值。

且上述第二损失函数值用于表示人脸分类器得到的各个图像样本中的人脸候选框内图像是否为人脸的类别,与这些人脸候选框内图像的实际类别(根据第一训练样本中包括的标记各个矩形框内图像是否为人脸的信息得到)之间的差别。具体可以为交l1平滑损失函数的函数值。

步骤204,根据第一损失函数值和第二损失函数值,调整上述人脸检测模型中的固定参数值。

具体地,人脸检测装置可以先计算第一调整损失函数值,第二调整损失函数值及第二损失函数值的加权和值,即第一调整损失函数值,第二调整损失函数值及第二损失函数值分别与对应的权重值相乘后,再相加得到的值;然后再根据加权和值调整固定参数值。其中,调整的固定参数值可以包括上述人脸分类器,回归器,特征提取模型,区域选取模型,子采样层等这些机器学习模型在相应计算过程中用到的固定参数的值。

具体地,如果计算的加权和值较大,比如大于预置的值,则需要改变固定参数值,使得人脸检测模型按照调整后的固定参数值执行人脸检测操作后,计算的加权和值减小。

另外,需要说明的是,上述步骤202到204是针对上述步骤201确定人脸检测模型,分别对第一训练样本中的各个图像样本进行检测处理后,由人脸检测装置调整固定参数值的过程。而在实际应用中,需要通过不断地循环执行上述步骤202到204,直到对固定参数值的调整满足一定的停止条件为止。

因此,人脸检测装置在执行了上述实施例步骤202到204之后,还需要判断当前对固定参数值的调整是否满足预置的停止条件,如果满足,则结束流程;如果不满足,则针对调整固定参数值后的人脸检测模型,返回执行上述步骤202到204的步骤。

其中,预置的停止条件包括但不限于如下条件中的任何一个:对固定参数值的调整次数达到预置次数;及当前调整后的固定参数值与上一次调整后的固定参数值的差值小于预置值,即调整的固定参数值达到收敛。

另外,需要说明的是,上述步骤201到204是对人脸检测装置在进行人脸操作的过程中用到的机器学习模型进行一同训练的过程,而在其它实施例中,上述机器学习模型中的区域候选模型,比如rpn网络,可以与其它机器学习模型分开训练。

具体地,人脸检测装置会确定第二训练样本,在第二训练样本中可以包括多个图像样本,及各个图像样本中人脸框的标注信息;然后再根据第二训练样本训练得到上述区域候选模型。

以下以一个具体的实施例来说明本实施例的方法,本实施例的方法所应用于的系统包括如下结构,示意图如图5所示,包括:

基础网络,主要是由卷积神经网络构建而成,一般由一系列的卷积层(convolution)和池化层(pooling)连接构成,比如resnet、vggnet或senet等。该基础网络主要用于对输入的待处理图片,提取不同尺度的待处理图片的特征信息,得到不同层次的特征信息,并输出最高层次的特征信息。

rpn网络,主要是全卷积结构的网络,用于根据基础网络输出的特征信息得到多个人脸候选框的第一位置信息并输出给roi池化层,及输出给损失分支中的回归器(图5中未示出)。

敏感区域(regionofinterest,roi)池化层,主要可以包括卷积层和位置敏感roi池化层,其中,卷积层用于将基础网络输出的特征信息,结合rpn网络产生的多个人脸候选框的位置信息,分别生成多个人脸候选框内图像的特征信息;位置敏感roi池化层用于分别将多个人脸候选框内图像的特征信息,转化为固定尺寸的特征信息,且将每个人脸候选框对应的固定尺寸的特征信息分别输出给多个分支的子采样层。图5中只示出了某一人脸候选框(人脸候选框1)内图像的特征信息的走向,其它人脸候选框内图像的特征信息的走向类似,不在图5中一一示出。

各个分支的子采样层,其中每个分支的子采样层都主要特征采样,加权和平均池化的操作层。每个分支的子采样层用于对roi池化层输出的固定尺寸的特征信息进行特征采样,得到多个采样特征信息,并根据多个采样特征信息及预置的计算函数,计算对应人脸候选框内图像的检测分数,并分别输出给人脸分类器和回归器。本实施例中,预置的计算函数为:将多个采样特征信息的加权和值,作为对应人脸候选框内图像的检测分数。

各个损失(loss)分支,每个损失分支对应一个分支的子采样层,都可以包括人脸分类器和回归器,其中:

人脸分类器用于根据子采样层得到的检测分数对该分支对应的人脸候选框内图像进行人脸分类,得到是否为人脸的结果。

回归器用于根据子采样层得到的检测分数,调整该分支对应的人脸候选框的位置,即调整上述rpn网络得到的对应人脸候选框在待处理图片中的第一位置信息;如果该分支对应的人脸分类器确定对应人脸候选框内图像为人脸,回归器还需要调整该分支对应的人脸候选框内图像中人脸关键点的位置。

则如图5所示的系统可以按照如下步骤进行人脸检测,流程图如图6所示,包括:

步骤301,基础网络针对输入的待处理图片,获取最高层次的待处理图片的特征信息。

步骤302,rpn网络根据上述获取的待处理图片的特征信息,确定多个人脸候选框的第一位置信息。

步骤303,roi池化层将上述基础网络获取的待处理图片的特征信息,结合rpn网络确定的多个人脸候选框的第一位置信息,分别获取多个人脸候选框内图像的特征信息;然后分别将多个人脸候选框内图像的特征信息,转化为固定尺寸的特征信息。

步骤304,每个人脸候选框对应的多个分支的子采样采层中,每个分支的子采样层会先根据该人脸候选框对应的固定尺寸的特征信息进行特征采样。

其中,每个分支的子采样层会分别采用随机子空间采样的方式进行特征采样,得到多个采样特征信息。具体地,子采样层会事先得到采样点矩阵,比如可以通过如下公式1得到采样点矩阵,并将上述步骤303得到的固定尺寸的特征信息组成的矩阵(即上述的第二矩阵)与采样点矩阵进行点阵相乘得到多个采样特征信息,如公式2所示。

fi=bernoulli(n,p),i=1,2,…,k(1)

yi=x°fi,i=1,2,…,k(2)

其中,n为固定尺寸的特征信息的长度,p为采样概率,i为每个分支的索引,fi是生成的采样点矩阵,x表示固定尺寸的特征信息,yi表示采样得到的多个采样特征信息,°表示点阵相乘。在本实施例中可以设置k为12,采样概率设p为0.7。

在上述公式1中,当采样概率p为1时,每个分支的子采样层得到的采样点矩阵完全相同,不具备相对差异;当概率p接近0时,每个分支的子采样层得到的多个采样特征信息过少,可能无法进行后续的人脸分类计算和回归计算。因此,本实施例中,将采样概率p设置为0.7,这样既保证不同分支的子采样层的差异性,又能保证每个分支的子采样层的性能,这样的融合方式也能提高整个系统的鲁棒性。

步骤305,每个分支的子采样层会分别对上述步骤304中得到的多个采样特征信息进行加权,并进行加权值的平均得到对应人脸候选框内图像的检测分数。

具体地,本实施例中记用于表示多个(即m个)分支的子采样层分别经过特征采样后,得到的采样特征信息的集合;xi={xi,j|j=1,2,…,n2}用于表示第i个分支的子采样层得到的采样特征信息的集合,n2表示第i个分支的子采样层得到的采样特征信息的集合的空间尺寸,则本实施例中,每个分支的子采样层可以通过如下公式3的方法得到对应的检测分数:

其中,wj为第j个位置所对应采样特征的权值,该权值wj可以由人工指定,也可以通过一定的训练方法训练得到。

步骤306,每个loss分支中,人脸分类器根据对应分支的子采样层得到的检测分数确定对应人脸候选框内图像是否为人脸。回归器根据对应分支的子采样层得到的检测分数,调整对应人脸候选框的第一位置信息。

进一步地,如果人脸分类器确定对应人脸候选框内图像为人脸,则回归器还会根据检测分数调整对应人脸候选框内图像中人脸关键点的位置。具体地,回归器会先获取对应人脸候选框内图像中人脸关键点在待处理图片中的第二位置信息;然后再将人脸关键点的第二位置信息转换为人脸关键点在对应人脸候选框中的相对位置;最后再根据相对位置及检测分数调整人脸关键点的位置。

其中,人脸关键点可以为人脸五点关键点,人脸68点关键点或其它定义方式下的人脸关键点。且回归器可以通过如下公式4和5,将人脸的某一关键点p的第二位置信息转化为相对位置,即真值(ground-truth)坐标p=(px,py),其示意图如图7所示:

px=(px_org-cx_org)/w(4)

py=(py_org-cy_org)/h(5)

其中,px_org和py_org分别为人脸关键点p在待处理图片中的x轴和y轴坐标;cx_org、cy_org分别为人脸候选框的中心点c在待处理图片的x轴和y轴坐标;w、h分别为人脸候选框在待处理图片中的宽和高。

本实施例中,通过回归器增加对属于人脸的人脸候选框内图像中,人脸关键点的位置的调整,这样,可以提高人脸检测精度。此外,由于本发明实施例中所提供的人脸检测方法可以在检测属于人脸的人脸候选框内图像的同时,获取人脸关键点的第二位置信息,因此本发明实施例中也能够适用于一些人脸关键点相关的应用,如人脸挂件等。

本发明实施例中,基础网络,rpn网络,roi池化层,各分支的子采样层,人脸检测器及回归器等这些机器学习模型,可以事先通过如上述步骤201到204的方法一同训练得到,这些机器学习模型都包括在人脸检测模型中。在训练过程中用到的损失函数可以如下公式6所示:

ltotal=ω1lcls+ω2lbbox+ω3llandmark(6)

其中,ω1、ω2、ω3分别为对应的权重值,lcls为使用人脸分类器进行分类的损失函数,lbbox为使用回归器调整人脸候选框的位置的损失函数,llandmark为使用回归器调整人脸候选框内图像中人脸关键点的位置的损失函数。

本发明实施例还提供一种人脸检测装置,其结构示意图如图8所示,具体可以包括:

特征获取单元10,用于获取待处理图片中人脸候选框内图像的特征信息。

具体地,特征获取单元10,用于提取所述待处理图片的特征信息;通过区域选取模型(比如区域建议网络)根据所述待处理图片的特征信息确定人脸候选框的第一位置信息;根据第一位置信息及所述待处理图片的特征信息,确定所述人脸候选框内图像的特征信息。

特征采样单元11,用于根据所述特征获取单元10获取的特征信息进行特征采样,得到所述人脸候选框内图像对应的多个采样特征信息。

具体地,特征采样单元11,用于用第一矩阵或第二矩阵,与采样点矩阵相乘,得到所述多个采样特征信息;其中,所述第一矩阵包括所述获取的特征信息,所述第二矩阵包括对所述获取的特征信息进行第二预处理后得到的特征信息。所述第二预处理包括:将所述获取的特征信息转化为固定尺寸的特征信息。

其中,特征采样单元11在用第一矩阵或第二矩阵,与采样点矩阵相乘,得到所述多个采样特征信息时,具体用于用第一矩阵或第二矩阵,分别与多个采样点矩阵相乘,得到多个分支的采样特征信息,其中,每个分支的采样特征信息包括多个采样特征信息;或者,用于用第一矩阵或第二矩阵,与一个采样点矩阵相乘,得到多个采样特征信息。

检测分数单元12,用于根据预置的计算函数及所述特征采样单元11得到的多个采样特征信息,得到所述人脸候选框内图像的检测分数。

具体地,检测分数单元12,用于将所述多个采样特征信息分别进行加权,得到多个加权值;将所述多个加权值的平均值作为所述人脸候选框内图像的检测分数。

分类单元13,用于根据所述检测分数单元12得到的检测分数对所述待处理图片中的人脸候选框内图像进行分类,得到所述人脸候选框内图像是否为人脸的分类结果。该分类单元13,具体用于由人脸分类器根据所述检测分数对所述人脸候选框内图像进行分类。

可见,在本实施例的人脸装置中,特征采样单元11会根据待处理图片中人脸候选框内图像的特征信息进行特征采样,得到多个采样特征信息,然后检测分数单元12根据预置的计算函数及多个采样特征信息得到检测分数,最后分类单元13根据检测分数对人脸候选框内图像进行分类,即可得到人脸候选框内图像是否为人脸的分类结果。这样,通过特征采样,可以得到人脸候选框内图像的多个采样特征信息,实现了对人脸候选框中图像的特征进行有选择性地表达,从而根据多个采样特征信息最终得到的分类结果较为准确;而其中,通过预置的计算函数及采样的多个采样特征信息,得到人脸候选框内图像的检测分数,使得通过任一种特征采样方式得到的多个采样特征信息都可以有相同的检测分数,从而提升最终得到的分类结果的精度。

参考图9所示,在一个具体的实施例中,人脸检测装置除了可以包括如图8所示的结构外,还可以包括回归单元15,第一训练单元14及第二训练单元16,其中:

回归单元15,用于获取所述人脸候选框在所述待处理图片中的第一位置信息,根据所述检测分数单元12得到的检测分数调整所述第一位置信息。

进一步地,回归单元15,还用于如果所述分类单元13得到的人脸候选框内图像为人脸,则根据所述检测分数调整所述人脸候选框内图像中人脸关键点的位置。

其中,回归单元15在根据检测分数调整所述人脸候选框内图像中人脸关键点的位置时,具体用于获取所述人脸候选框内图像中人脸关键点在所述待处理图片中的第二位置信息;根据所述人脸关键点的第二位置信息,确定所述人脸关键点相对于所述人脸候选框的相对位置;根据所述相对位置及所述检测分数调整所述人脸关键点的位置。

第一训练单元14,用于确定第一训练样本及确定人脸检测模型,所述第一训练样本中包括:多个图像样本,各个图像样本中多个矩形框的位置信息,及标记各个矩形框内图像是否为人脸的信息,及第一矩形框内图像中人脸关键点的位置信息;所述人脸检测模型中包括人脸分类器和回归器;其中,所述第一矩形框内图像属于人脸类别;所述人脸分类器用于对所述人脸候选框内图像进行人脸分类;所述回归器用于调整上述人脸候选框的位置,及调整所述人脸候选框内图像中人脸关键点的位置;根据所述人脸检测模型对所述第一训练样本中各个图像样本进行检测得到初始检测结果;根据所述初始检测结果计算与所述回归器相应的第一损失函数值,及与所述人脸分类器相应的第二损失函数值;根据所述第一损失函数值和第二损失函数值,调整所述人脸检测模型中的固定参数值。

这样,上述回归单元15会根据通过第一训练单元14训练得到的人脸检测模型中的回归器进行上述调整的操作,而分类单元13会根据通过第一训练单元14训练得到的人脸检测模型中的人脸分类器进行上述人脸分类操作。

其中,所述与回归器相应的第一损失函数值包括:所述回归器调整所述各个图像样本中人脸候选框位置的第一调整损失函数值,及所述回归器调整第一人脸候选框内图像中人脸关键点位置的第二调整损失函数值;其中,所述第一人脸候选框内图像是所述人脸分类器确定为人脸类别的人脸候选框内图像。

其中,第一训练单元14在根据所述第一损失函数值和第二损失函数值,调整所述人脸检测模型中的固定参数值时,具体用于计算所述第一调整损失函数值,第二调整损失函数值及第二损失函数值的加权和值;根据所述加权和值调整所述固定参数值。

进一步地,第一训练单元14,还用于如果对所述固定参数值的调整满足如下任一停止条件时,停止对所述固定参数值的调整:对所述固定参数值的调整次数达到预置次数;及当前调整后的所述固定参数值与上一次调整后的固定参数值的差值小于预置值。

第二训练单元16,用于确定第二训练样本,在第二训练样本中可以包括多个图像样本,及各个图像样本中人脸框的标注信息;然后再根据第二训练样本训练得到上述区域候选模型。这样,特征获取单元10就可以根据第二训练单元16训练得到的区域候选模型确定各个人脸候选框的第一位置信息。

本发明实施例还提供一种终端设备,其结构示意图如图10所示,该终端设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)20(例如,一个或一个以上处理器)和存储器21,一个或一个以上存储应用程序221或数据222的存储介质22(例如一个或一个以上海量存储设备)。其中,存储器21和存储介质22可以是短暂存储或持久存储。存储在存储介质22的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对终端设备中的一系列指令操作。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中的一系列指令操作。

具体地,在存储介质22中储存的应用程序221包括人脸检测的应用程序,且该程序可以包括上述人脸检测装置中的特征获取单元10,特征采样单元11,检测分数单元12,分类单元13,第一训练单元14,回归单元15及第二训练单元16,在此不进行赘述。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中储存的人脸检测的应用程序对应的一系列操作。

终端设备还可以包括一个或一个以上电源23,一个或一个以上有线或无线网络接口24,一个或一个以上输入输出接口25,和/或,一个或一个以上操作系统223,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

上述方法实施例中所述的由人脸检测装置所执行的步骤可以基于该图10所示的终端设备的结构。

本发明实施例还提供一种存储介质,所述存储介质储存多条指令,所述指令适于由处理器加载并执行如上述人脸检测装置所执行的人脸检测方法。

本发明实施例还提供另一种终端设备,包括处理器和存储介质,所述处理器,用于实现各个指令;

所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如上述人脸检测装置所执行的人脸检测方法。

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

以上对本发明实施例所提供的人脸检测方法、装置及终端设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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