一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种人脸特征点定位方法及装置与流程

2022-07-31 06:01:38 来源:中国专利 TAG:


1.本发明涉及图像处理技术领域,尤其涉及一种人脸特征点定位方法及装置。


背景技术:

2.目前,人脸识别技术应用十分广泛,譬如可用于机场、高铁站、银行等场所的身份核验,以及手机等智能设备解锁等。人脸特征点定位作为人脸识别技术中重要的步骤之一,用于在给定的人脸图像上定位出人脸面部的重要器官,例如眼睛、鼻子和嘴巴等。但是,在现实场景的应用中,人脸图像通常会受到姿态、光线和遮挡等因素的影响,给准确的人脸特征点定位造带来了巨大的挑战。
3.现有技术中常用的人脸特征点定位方法可分为以下几种:
4.(1)基于参数化模型的方法,例如asm、aam以及clm。这类方法用于提取图像的形状特征、纹理特征等信息,通过直接或间接地约束人脸轮廓形状来得到人脸特征点位置。
5.(2)基于级联形状回归的方法,例如cpr、rcpr以及etr。这类方法用于提取形状相关特征,利用回归分析技术,建立从输入图像到输出坐标点的映射关系,从而得到人脸特征点位置。
6.(3)基于深度神经网络回归的方法,这类方法充分利用了多层深度神经网络对复杂模型的模拟和逼近能力,自动从图像中提取有用特征,用于回归坐标值,以获取人脸特征点位置。
7.其中,基于参数化模型的方法和基于级联形状回归的方法均需要人工设计特征,模型对困难样本的拟合能力有限,并且,基于级联形状回归的方法还存在误差传递和资源文件过大的问题。
8.基于深度神经网络回归的方法相较于传统机器学习方法,定位精度更高,根据回归方式的不同,可分为坐标回归和热图回归两种方式。其中,坐标回归方式的优点是速度快,可以端对端的训练,但是缺乏空间泛化能力,定位精度较低,且全连接层的使用会导致模型过大;热图回归的方式是输出特征点的热图,优点是包含了空间信息,精度高,但计算速度慢,内存消耗大。
9.因此,如何解决现有技术中人脸特征点定位准确度低、计算速度慢且无法知道人脸特征点的定位是否准确的技术问题,是图像处理技术领域亟待解决的重要课题。


技术实现要素:

10.本发明提供一种人脸特征点定位方法及装置,用以解决现有技术中人脸特征点定位准确度低且计算速度慢的缺陷,实现人脸特征点的快速准确定位。
11.本发明提供一种人脸特征点定位方法,包括:获取目标图像;对所述目标图像进行预处理,得到预处理图像;将所述预处理图像输入至预先训练的人脸特征点定位模型中,获取所述目标图像的人脸判别结果、特征点坐标值以及置信度;若所述人脸判别结果为所述目标图像为人脸图像,则根据所述特征点坐标值和相应的置信度,得到所述目标图像的目
标特征点坐标值和目标置信度。
12.进一步地,所述对目标图像进行预处理,得到预处理图像,包括:根据预设裁剪方式对所述目标图像进行裁剪,得到第一处理图像:对所述第一处理图像进行归一化处理,并将归一化处理后的图像缩放至预设的大小,得到所述预处理图像。
13.进一步地,所述将预处理图像输入至预先训练的人脸特征点定位模型中,获取目标图像的人脸判别结果、特征点坐标值以及置信度,包括:将所述预处理图像依次输入至所述人脸特征点定位模型的深度可分离卷积层、relu网络层、batchnorm网络层以及下采样网络层,得到第一特征图;将所述第一特征图依次输入至深度可分离卷积层、relu网络层、batchnorm网络层以及上采样网络层,得到第二特征图;将所述第二特征图输入至卷积网络层,获取所述目标图像的特征点热图;使用预设激活函数对所述特征点热图进行处理,得到所述特征点坐标值;将所述特征点热图依次输入至全局最大池化层和第一全连接层,得到与所述特征点坐标值相对应的置信度。
14.进一步地,所述将预处理图像输入至预先训练的人脸特征点定位模型中,获取目标图像的人脸判别结果、特征点坐标值以及置信度,还包括:所述人脸特征点定位模型包括人脸分类网络;将所述第一特征图输入至所述人脸分类网络,获取所述人脸判别结果。
15.进一步地,所述将所述第一特征图输入至所述人脸分类网络,获取所述人脸判别结果,包括:所述人脸分类网络根据预设阈值判断所述目标图像是否为人脸图像。
16.进一步地,所述人脸分类网络根据预设阈值判断所述目标图像是否为人脸图像,包括:若所述人脸分类网络输出的人脸分数大于所述预设阈值,则所述目标图像为人脸图像;若所述人脸分类网络得到的人脸分数小于所述预设阈值,则所述目标图像为非人脸图像。
17.进一步地,所述将所述第一特征图输入至所述人脸分类网络,获取所述人脸判别结果,包括:将所述第一特征图依次输入至所述人脸分类网络中的普通卷积网络层、全局平均池化层以及第二全连接层,利用激活函数对第二全连接层的输出结果进行处理,得到所述人脸判别结果。
18.进一步地,所述人脸特征点定位方法还包括:对所述人脸特征点定位模型进行训练,训练过程中使用的损失函数为kl散度和交叉熵损失函数;其中,kl散度的公式如下:
[0019][0020]
其中,α为预测方差,y为特征点的真实值,为特征点的预测值。
[0021]
第二方面,本发明还提供一种人脸特征点定位装置,包括:目标图像获取模块,用于获取目标图像;目标图像处理模块,用于对所述目标图像进行预处理,得到预处理图像;第一结果获取模块,用于将所述预处理图像输入至预先训练的人脸特征点定位模型中,获取所述目标图像的人脸判别结果、特征点坐标值以及置信度;第二结果获取模块,用于若所述人脸判别结果为所述目标图像为人脸图像,则根据所述特征点坐标值和相应的置信度,得到所述目标图像的目标特征点坐标值和目标置信度。
[0022]
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述人脸特征点定位方法的步骤。
[0023]
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述人脸特征点定位方法的步骤。
[0024]
第五方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述人脸特征点定位方法的步骤。
[0025]
本发明提供的人脸特征点定位方法,通过对获取的目标图像进行预处理,得到预处理图像,并将预处理图像输入至预先训练好的人脸特征点定位模型中,以获取目标图像的人脸判别结果、特征点坐标值以及置信度,并且,当人脸判别结果为目标图像为人脸时,根据特征点坐标值和相应的置信度,进一步获取目标图像的目标特征点坐标值和目标置信度。该方法能够快速准确地定位出目标图像的特征点坐标值,并获取与每一个特征点坐标值相对应的置信度,以此判断定位到的每一个特征点坐标值是否准确,并且,该方法还能判断目标图像是否为人脸图像,解决了人脸检测的误检问题。
附图说明
[0026]
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027]
图1为本发明所提供的人脸特征点定位方法的流程示意图;
[0028]
图2为本发明所提供的裁剪方式示意图;
[0029]
图3为本发明所提供的人脸分类网络的人脸判别示意图;
[0030]
图4为本发明所提供的人脸特征点定位模型的训练流程示意图;
[0031]
图5为本发明提供的人脸特征点定位模型的整体结构示意图;
[0032]
图6为本发明提供的人脸特征点定位装置的结构示意图;
[0033]
图7为本发明提供的电子设备的结构示意图。
具体实施方式
[0034]
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0035]
图1示出了本发明所提供的人脸特征点定位方法的流程示意图。如图1所示,该人脸特征点定位方法包括:
[0036]
s101获取目标图像;
[0037]
目标图像是指需要进行特征点定位的图像,具体地,该目标图像可以是人脸图像,也可以是非人脸图像。
[0038]
s102对目标图像进行预处理,得到预处理图像。
[0039]
在上一步骤获取目标图像的基础上,对获取的目标图像进行预处理,以得到预处理图像。
[0040]
预处理是人脸特征点定位过程中的一个重要环节,目标图像的预处理是为了消除
目标图像中无关的信息、恢复有关信息的可检测性以及增强有关信息的可检测性,从而提高目标图像特征提取的可靠性。
[0041]
常见的图像预处理方法包括灰度化、几何变换、图像增强以及归一化处理。其中,灰度化是指在rgb(r:red,g:green,b:blue)模型中,设置构成目标图像的像素点矩阵中每一个像素点都满足:r=g=b,此时r=g=b的这个值为灰度值。几何变换是指在不改变目标图像的像素值的情况下,对目标图像进行平移、翻转、旋转或中心裁剪。图像增强是指增强目标图像中的有用信息,改善目标图像的视觉效果,将原本不清晰的目标图像变得清晰,以加强目标图像判读和识别的效果。归一化处理则是为了使在不同成像条件下得到的目标图像具有一致性,包括几何归一化和灰度归一化。
[0042]
在本步骤中,对目标图像进行预处理的方式可以包括前述方法中的一种或多种,在此不作具体限定。
[0043]
s103将预处理图像输入至预先训练的人脸特征点定位模型中,获取目标图像的人脸判别结果、特征点坐标值以及置信度。
[0044]
可以理解的是,在上一步骤对目标图像进行预处理,得到预处理图像的基础上,将该预处理图像输入到预先训练好的人脸特征点定位模型中,由人脸特征点定位模型对预处理图像进行处理,并输出目标图像的人脸判别结果、特征点坐标值以及与特征点坐标值相对应的置信度。其中,人脸特征点定位模型是预先训练好的,以保证根据预处理图像的输入,能够得到准确的人脸判别结果、特征点坐标值以及置信度。
[0045]
目标图像的人脸判别结果,可以为目标图像为人脸图像,也可以为目标图像为非人脸图像。目标图像的特征点包括目标图像中人脸的眉毛、眼睛、鼻子、嘴巴以及脸部轮廓,目标图像的特征点坐标值,即是与目标图像的特征点相对应的坐标值。在得到目标图像的特征点坐标值的基础上,知道定位得到的特征点坐标值是否准确也十分重要,因此,在本步骤中,通过与特征点坐标值相对应的置信度来描述对目标图像的特征点定位是否准确,即每一个特征点坐标值的准确度都可以通过与其相对应的置信度进行判断。
[0046]
s104若人脸判别结果为目标图像为人脸图像,则根据特征点坐标值和相应的置信度,得到目标图像的目标特征点坐标值和目标置信度。
[0047]
在上一步骤根据人脸特征点定位模型获取目标图像的人脸判别结果、特征点坐标值及其置信度的基础上,还根据人脸判别结果,对目标图像的特征点坐标值进行处理。
[0048]
具体地,若人脸判别结果为目标图像为人脸,则根据上一步骤获取得到的特征点坐标值和相应的置信度,进一步得到目标图像的目标特征点坐标值和相应的目标置信度。
[0049]
可以理解的是,人脸特征点定位模型处理的对象是预处理图像,即经过预处理的目标图像,故人脸特征点定位模型输出的特征点坐标值及其置信度,并不是目标图像的最终目标特征点坐标值和置信度。进一步地,需要根据目标图像的特征点坐标值及其置信度,将特征点坐标值还原为目标图像的目标特征点坐标值,并得到相应的置信度。
[0050]
将特征点坐标值还原为目标图像的目标特征点坐标值,与目标图像的预处理方式相关,即根据与预处理相反的方式,对特征点坐标值进行还原,即可得到目标特征点坐标值,并获取相应的目标置信度。
[0051]
需要说明的是,根据特征点坐标值获取目标特征点坐标值的过程,特征点坐标值与目标特征点所对应的置信度是没有发生变化的,只是将特征点坐标值与置信度的对应关
系,转换为了目标特征点坐标值与置信度的对应关系,即目标特征点坐标值与目标置信度的对应关系。
[0052]
若人脸判别结果为目标图像为非人脸图像,则无需对得到的特征点坐标值作进一步的处理。
[0053]
在本实施例中,通过对获取的目标图像进行预处理,得到预处理图像,并将预处理图像输入至预先训练好的人脸特征点定位模型中,以获取目标图像的人脸判别结果、特征点坐标值以及置信度,并且,当人脸判别结果为目标图像为人脸时,根据特征点坐标值和相应的置信度,进一步获取目标图像的目标特征点坐标值和目标置信度。该方法能够快速准确地定位出目标图像的特征点坐标值,并获取与每一个特征点坐标值相对应的置信度,以此判断定位到的每一个特征点坐标值是否准确,并且,该方法还能判断目标图像是否为人脸图像,解决了人脸检测的误检问题。
[0054]
在上述实施例的基础上,进一步地,对目标图像进行预处理,得到预处理图像,包括:根据预设裁剪方式对目标图像进行裁剪,得到第一处理图像:对第一处理图像进行归一化处理,并将归一化处理后的图像缩放至预设的大小,得到预处理图像。
[0055]
可以理解的是,在获取目标图像之后,还需要对目标图像进行预处理,具体地,根据预设的裁剪方式对目标图像进行裁剪,得到第一处理图像,然后对第一图像进行归一化处理,并将归一化处理后的图像缩放至预设的大小,以得到预处理图像。
[0056]
需要说明的是,在获取到目标图像后,可以根据现有的人脸检测模型得到人脸框,图2是示出本发明所提供的裁剪方式的示意图,如图2所示,根据人脸检测模型可得到人脸框的宽度w、高度h以及人脸框左上角坐标x和y。图像的中心点为(center x,center y),其中,
[0057]
center x=x w*0.5;
[0058]
center y=y h*0.5;
[0059]
radius=max(w,h)*0.6;
[0060]
left=center x-radius;
[0061]
right=center x radius;
[0062]
top=center y-radius;
[0063]
down=center y radius;
[0064]
根据计算得到的left、right、top和down的值,即可对目标图像进行裁剪,获取第一处理图像。
[0065]
在得到第一处理图像后,对第一图像进行归一化处理,并将归一化处理后的图像缩放至预设的大小,得到预处理图像。其中,归一化处理是指将图像数据限定在一定的范围内,比如通常限制在区间[0,1],使在不同成像条件下得到的目标图像具有一致性。将归一化处理后的图像缩放至预设的大小,预设的大小可根据实际情况进行设置。例如,在一个具体的实施例中,将归一化处理后的图像缩放为128*128像素的大小。
[0066]
在本实施例中,通过根据预设裁剪方式对目标图像进行裁剪,得到第一处理图像,对第一处理图像进行归一化处理,并将归一化处理后的图像缩放至预设的大小,以得到预处理图像,进一步提高了人脸特征点定位模型对目标图像特征提取的可靠性。
[0067]
在上述实施例的基础上,进一步地,将预处理图像输入至预先训练的人脸特征点
定位模型中,获取目标图像的人脸判别结果、特征点坐标值以及置信度,包括:将预处理图像依次输入至人脸特征点定位模型的深度可分离卷积层、relu网络层、batchnorm网络层以及下采样网络层,得到第一特征图;将第一特征图依次输入至深度可分离卷积层、relu网络层、batchnorm网络层以及上采样网络层,得到第二特征图;将第二特征图输入至卷积网络层,获取目标图像的特征点热图;使用预设激活函数对特征点热图进行处理,得到特征点坐标值;将特征点热图依次输入至全局最大池化层和第一全连接层,得到与特征点坐标值相对应的置信度。
[0068]
可以理解的是,人脸特征点定位模型包括深度可分离卷积层、relu网络层、batchnorm网络层、下采样网络层以及上采样网络层。其中,一个深度可分离卷积层、一个relu网络层以及一个batchnorm网络层构成一个卷积块。
[0069]
具体地,步骤1:将经过预处理得到的预处理图像依次输入至深度可分离卷积层、relu网络层、batchnorm网络层和下采样网络层中,由下采样网络层输出第一特征图。
[0070]
其中,batchnorm网络层是为了对输入网络层中的图像数据进行归一化,并且,经过归一化后还能保留网络学习得来的特征;relu网络层是为了在图像特征提取的过程中加入非线性因素,以提高人脸特征点定位模型的表达能力。下采样网络层不断缩小特征图分辨率,增加通道数量,提取输入图像不同尺度的特征。下采样网络层可以为maxpooling,即最大池化层。
[0071]
步骤2:将下采样网络层输出的第一特征图依次输入至深度可分离卷积层、relu网络层、batchnorm网络层和上采样网络层中,由上采样网络层输出第二特征图。其中,上采样网络层不断增大特征图分辨率,捕获并整合图像所有尺度的信息。
[0072]
步骤1和步骤2实现了第一特征图到第二特征图的融合,这两个步骤可重复多次进行。其中,卷积块和上/下采样网络层的数量可以为1个,也可以为多个;卷积块的数量,与上/下采样网络层的数量可以相同,也可以不相同。
[0073]
例如,在一个具体的实施例中,预处理图像经过1个卷积块和1个下采样网络层,得到第一特征图;然后将第一特征图输入到1个卷积块和1个上采样网络层,得到第二特征图。步骤1和步骤2中卷积块的数量和上/下采样网络层的数量均为1。
[0074]
在另一个具体的实施例中,预处理图像经过3个卷积块和1个下采样层,得到第一特征图;然后将第一特征图输入到3个卷积块和1个上采样层,得到第二特征图。步骤1和步骤2中卷积块的数量为3,上/下采样网络层的数量为1。
[0075]
当步骤2最后一次执行结束,将第二特征图输入到一个卷积网络层,该卷积网络层输出目标图像的特征点热图。特征点热图是指在一定大小的特征图上,特征点坐标所在位置值为1,以此为中心,按一个概率分布逐渐衰减,直至值为0。常用的分布有高斯分布、拉普拉斯分布。
[0076]
基于特征点热图,使用预设激活函数对特征点热图进行处理,即可得到目标图像的特征点坐标值。其中,预设激活函数可以为softargmax函数。
[0077]
基于特征点热图,将特征点热图依次输入至全局最大池化层和第一全连接层,即可得到与特征点坐标值相对应的置信度。
[0078]
在本实施例中,通过将预处理图像输入至预先训练好的人脸特征点定位模型中,得到目标图像的特征点坐标值和相应的置信度,具体地,通过多次的缩小和放大特征图分
辨率,以提取并整合目标图像多个尺度的信息,保证了人脸特征点定位模型的精度,从而使得人脸特征点定位模型能够快速准确地定位出目标图像的特征点坐标值,并获取与每一个特征点坐标值相对应的置信度,以此判断定位到的每一个特征点坐标值是否准确。
[0079]
在上述实施例的基础上,进一步地,将预处理图像输入至预先训练的人脸特征点定位模型中,获取目标图像的人脸判别结果、特征点坐标值以及置信度,还包括:人脸特征点定位模型包括人脸分类网络;将第一特征图输入至人脸分类网络,获取人脸判别结果。
[0080]
可以理解的是,人脸特征点定位模型中包括有人脸分类网络,将下采样网络层的输出结果,即第一特征图,输入至人脸分类网络中,即可得到目标图像的人脸判别结果。
[0081]
人脸分类网络由普通卷积网络层、全局平均池化层以及全连接层构成,相应地,将第一特征图输入到人脸分类网络中,获取人脸判别结果,包括:将第一特征图依次输入到人脸分类网络中的普通卷积网络层、全局平均池化层以及第二全连接层,并利用激活函数对第二全连接层的输出结果进行处理,得到人脸判别结果。
[0082]
其中,普通卷积网络层用于缩小特征图通道数量;全局平均池化层用于整合全局空间信息并减少参数数量,通过全局平均池化层可得到一维特征;第二全连接层与上文中第一全连接层本质上相同,因二者的输入输出并不相同,故以“第一”和“第二”加以区分;激活函数用于给人脸分类网络带来非线性特征,防止人脸分类网络过拟合。
[0083]
将第一特征图输入至人脸分类网络,获取人脸判别结果,还包括:人脸分类网络根据预设阈值判断目标图像是否为人脸图像,具体包括:若人脸分类网络输出的人脸分数大于预设阈值,则目标图像为人脸图像;若人脸分类网络得到的人脸分数小于预设阈值,则目标图像为非人脸图像。
[0084]
图3示出了本发明所提供的人脸分类网络的人脸判别示意图。如图3所示,人脸分类网络以第一特征图为输入,输出为目标图像的人脸分数,根据预设阈值可以判断目标图像是否为人脸图像。具体地,若人脸分类网络输出的人脸分数大于预设阈值,则说明目标图像为人脸图像;若人脸分类网络输出的人脸分数小于预设阈值,则说明目标图像为非人脸图像。
[0085]
其中,人脸分数可以为0到1的数值,也可以转换为百分制进行显示,具体可根据实际情况对人脸分数的显示要求进行设置。同样地,预设阈值也可以根据实际情况进行设置,在此不作具体限定。
[0086]
在一个具体的实施例中,设置人脸分数为0-1的数值,人脸分类网络输出的人脸分数为0.2,小于预设阈值0.8,则说明对应的目标图像为非人脸图像。
[0087]
在本实施例中,通过将下采样层输出的第一特征图输入至人脸特征点定位模型中的人脸分类网络,以获取人脸判别结果,具体地,通过将人脸分类网络输出的人脸分数与预设阈值进行比较,从而准确地判断目标图像是否为人脸图像,解决了人脸检测的误判问题。
[0088]
在上述实施例的基础上,进一步地,该人脸特征点定位方法还包括:对人脸特征点定位模型进行训练,训练过程中使用的损失函数为kl散度和交叉熵损失函数;其中,kl散度的公式如下:
[0089][0090]
其中,α为预测方差,y为特征点的真实值,为特征点的预测值。需要说明的是,预
测方差越大,该特征点对应的置信度就越低,反之亦然。预测方差没有对应的真实值,无需标注。
[0091]
可以理解的是,将预处理图像输入至人脸特征点定位模型中,以获取相应的输出,为了保证输出结果的准确度,需要对人脸特征点定位模型进行训练。
[0092]
具体地,图4示出了本发明所提供的人脸特征点定位模型的训练流程示意图。在图4所示的实施例中:
[0093]
收集人脸图像和非人脸图像,构建用于训练的训练数据集,在一个具体的实施例中,训练数据集包括人脸图像201934张,非人脸图像160369张;
[0094]
将训练数据集中的人脸图像进行人工标注,即在人脸图像上标注出特征点的位置;
[0095]
对训练数据集中的图像进行预处理,并将预处理后的图像集按批次输入到人脸特征点定位模型中,进行人脸特征点定位模型的训练;
[0096]
对人脸特征点定位模型训练完成后,通过预先收集的测试数据集对人脸特征点定位模型进行测试。
[0097]
在一个具体的实施例中,测试数据集包括人脸图像14330张,非人脸图像15000张。将测试数据集中的每张图输入到人脸特征点定位模型中进行测试,最终的测试结果为:是否人脸分类正确率为99.7%,特征点定位nme=4.1%,fr=3.2%,auc=65.7%,cpu耗时18ms,存储大小645kb。cpu型号:intel(r)core(tm)i5-4460t cpu@1.90ghz。
[0098]
其中,nme(normalized mean error,归一化的平均错误),即对每张人脸图像特征点定位错误进行平均值并归一化。归一化因子为两眼瞳间距。fr(failure rate,错误率),即当特征点定位错误大于10%时,认为定位失败,统计定位失败的特征点数量在所有特征点中占的比例。auc(area under the curve),建立累计误差曲线,横坐标为nme,纵坐标是小于该错误的特征点所占比例,计算曲线下方的面积得到auc。
[0099]
对于训练过程或测试过程中特征点定位不准确的图像,收集同类图像对其进行人工标注,加入训练数据集,对人脸特征点定位模型进行增量训练;对于在训练过程或测试过程中人脸分类错误的图像,也收集同类图像将其加入训练数据集,对人脸特征点定位模型进行训练。重复挑选特征点定位不准确或人脸分类错误的图像,并将其加入训练数据集进行训练,直到人脸特征点定位模型达到满意的性能。
[0100]
需要说明的是,在训练过程中,通过kl散度和交叉熵损失函数计算损失,利用梯度下降法寻找最优的人脸特征点定位模型,通过cosine decay with warmup学习率调整策略。具体地,kl散度的公式如下:
[0101][0102]
其中,α为预测方差,y为特征点的真实值,为特征点的预测值。
[0103]
在本实施例中,通过对人脸特征点定位模型进行训练,且在训练过程中使用了kl散度和交叉熵损失函数对模型的训练效果进行监督,有效提高了人脸特征点定位模型的表达能力,保证了人脸特征点定位模型输出的目标图像的人脸判别结果、特征点坐标值以及置信度的准确度。
[0104]
另外,图5示出了本发明提供的人脸特征点定位模型的整体结构示意图。如图5所
示,人脸特征点定位模型分为上采样阶段和下采样阶段,并在下采样结束的阶段,添加了人脸分类网络的分支。其中,下采样阶段由深度可分离卷积层、relu网络层、batchnorm网络层以及下采样网络层构成,上采样阶段由深度可分离卷积层、relu网络层、batchnorm网络层以及上采样网络层构成,人脸分类网络由通卷积网络层、全局平均池化层以及全连接层构成。
[0105]
通过下采样阶段得到目标图像的第一特征图,将第一特征图作为上采样阶段的输入,得到第二特征图,对第二特征图进行处理得到目标图像的特征点热图,基于该特征点热图,可分别得到目标图像的特征点坐标值以及相应的置信度。而人脸分类网络则用于获取目标图像的人脸判别结果。也就是说,人脸特征点定位模型的输出有三:目标图像的人脸判别结果、特征点坐标值以及置信度。
[0106]
图6示出了本发明提供的人脸特征点定位装置的结构示意图。如图6所示,该人脸特征点定位装置包括:目标图像获取模块601,用于获取目标图像;目标图像处理模块602,用于对目标图像进行预处理,得到预处理图像;第一结果获取模块603,用于将预处理图像输入至预先训练的人脸特征点定位模型中,获取目标图像的人脸判别结果、特征点坐标值以及置信度;第二结果获取模块604,用于若人脸判别结果为目标图像为人脸图像,则根据特征点坐标值和相应的置信度,得到目标图像的目标特征点坐标值和目标置信度。
[0107]
本发明所提供的的人脸特征点定位装置,与上文描述的人脸特征点定位方法可相互对应参照,在此不再赘述。
[0108]
在本实施例中,通过目标图像处理模块602对目标图像获取模块601获取的目标图像进行预处理,得到预处理图像,第一结果获取模块603将预处理图像输入至预先训练好的人脸特征点定位模型中,以获取目标图像的人脸判别结果、特征点坐标值以及置信度,并且,当人脸判别结果为目标图像为人脸时,第二结果获取模块604根据特征点坐标值和相应的置信度,进一步获取目标图像的目标特征点坐标值和目标置信度。该装置能够快速准确地定位出目标图像的特征点坐标值,并获取与每一个特征点坐标值相对应的置信度,以此判断定位到的每一个特征点坐标值是否准确,并且,该装置还能判断目标图像是否为人脸图像,解决了人脸检测的误检问题,进一步辅助提高了特征点坐标值的准确度。
[0109]
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(communications interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行人脸特征点定位方法,该方法包括:获取目标图像;对所述目标图像进行预处理,得到预处理图像;将所述预处理图像输入至预先训练的人脸特征点定位模型中,获取所述目标图像的人脸判别结果、特征点坐标值以及置信度;若所述人脸判别结果为所述目标图像为人脸图像,则根据所述特征点坐标值和相应的置信度,得到所述目标图像的目标特征点坐标值和目标置信度。
[0110]
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施
例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0111]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的人脸特征点定位方法,该方法包括:获取目标图像;对所述目标图像进行预处理,得到预处理图像;将所述预处理图像输入至预先训练的人脸特征点定位模型中,获取所述目标图像的人脸判别结果、特征点坐标值以及置信度;若所述人脸判别结果为所述目标图像为人脸图像,则根据所述特征点坐标值和相应的置信度,得到所述目标图像的目标特征点坐标值和目标置信度。
[0112]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的人脸特征点定位方法,该方法包括:获取目标图像;对所述目标图像进行预处理,得到预处理图像;将所述预处理图像输入至预先训练的人脸特征点定位模型中,获取所述目标图像的人脸判别结果、特征点坐标值以及置信度;若所述人脸判别结果为所述目标图像为人脸图像,则根据所述特征点坐标值和相应的置信度,得到所述目标图像的目标特征点坐标值和目标置信度。
[0113]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0114]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0115]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献