一种基于空间位置信息的人脸特征点定位方法及系统与流程

文档序号:22797444发布日期:2020-11-04 03:51阅读:183来源:国知局

本发明涉及人脸识别技术领域,特别涉及一种基于空间位置信息的人脸特征点定位方法及系统。



背景技术:

人脸特征点定位是指在人脸图像上,通过机器视觉技术精确的定位出脸部的关键特征点位置,关键特征点包括嘴角、眼角、鼻尖等器官位置以及脸部轮廓等位置。人脸特征点定位是人脸识别系统、表情识别系统和人脸属性分析系统等应用领域的技术基础,人脸特征点定位的质量好坏会直接影响到后续工作的可靠性和精准度。

近20年来,人脸特征点定位算法一直是机器视觉领域的研究热点,涌现出很多经典算法,具体算法可以分为以下几类:

(1)基于传统技术的人脸特征点定位算法,该类算法主要基于人脸的统计形状模型方法和级联回归的方法,如经典的算法:asm、aam、sdm、lbf等。该类算法的特点是利用人脸器官的几何位置关系,采用统计方法和级联优化的方法获取最终的人脸特征点位置,由于算法提取人脸特征的表达能力有限,并且对人脸特征点之间的形状约束并没有考虑,该类算法的特征点定位精准度误差较大。

(2)基于深度学习的人脸特征点定位算法,近年来,深度学习技术凭借着可以模拟人类大脑神经网络,能够进行精确的非线性预测,各个领域都得到了广泛的关注和应用,出现了一批经典的人脸特征点定位网络框架,如记忆下降法(mnemonicdescentmethod,mdm)、面部地标探测器(apracticalfaciallandmarkdetectordensenet,pfld),基于深度多任务学习的人脸标志点检测(faciallandmarkdetectionbydeepmulti-tasklearning,tcdcn)等。该类算法的特点是利用卷积神经网络模型抓取人脸的深层语义特征,利用这些深层语义特征,或基于多分支任务训练模式,或基于级联多个神经网络模型迭代优化训练模式,获取最终的人脸特征点位置。该类算法相对于传统技术的人脸特征点定位算法,人脸特征点定位精准度有很大的提升,但是特征点定位主要利用的是人脸的深层语义特征,而深层语义特征对于人脸器官分布的空间位置信息不敏感,导致人脸特征点的定位存在一定的误差。



技术实现要素:

本发明的目的在于克服上述背景技术存在的缺陷,提高人脸特征点定位的精准性。

为实现以上目的,一方面,本发明采用一种基于空间位置信息的人脸特征点定位方法,包括如下步骤:

获取待识别的人脸图像作为人脸特征点定位模型的输入,该人脸图像包括3通道rgb图像和2通道xy图像,该人脸特征点定位模型包括主干网络和特征点预测网络;

利用主干网络对人脸图像进行处理,提取人脸图像的具有空间位置信息的高层语义特征图;

利用特征点预测网络对具有空间位置信息的高层语义特征图进行处理,定位人脸图像上的人脸特征点位置。

进一步地,所述主干网络包括卷积层conv0,卷积运算集合体stage1、stage2、stage3、stage4,两个下采样层组,每个下采样组均包括下采样层downsample0、downsample1、downsample2、downsample3、downsample4,以及拼接层concat0、concat1、concat2、concat3、concat4;

卷积层conv0以及一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输入均为所述3通道rgb图像,另一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输入均为所述2通道xy图像;

卷积层conv0的输出与拼接层concat0连接,拼接层concat0的输出经卷积运算集合体stage1与拼接层concat1连接;拼接层concat1的输出经卷积运算集合体stage2与拼接层concat2连接;拼接层concat2的输出经卷积运算集合体stage3与拼接层concat3连接;拼接层concat3的输出经卷积运算集合体stage4与拼接层concat4连接;

一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输出分别与拼接层concat0、concat1、concat2、concat3、concat4的输入连接;拼接层concat4的输出与所述特征点预测网络输入连接;

另一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输出分别与拼接层concat0、concat1、concat2、concat3、concat4的输入连接。

进一步地,所述特征点预测网络包括全局均值池化层和全连接层,全局均值池化层得到输入与所述拼接层concat4的输出连接、输出与全连接层连接。

进一步地,在所述获取待识别的人脸图像作为人脸特征点定位模型的输入之前,还包括对所述人脸特征点定位模型进行预先训练,以确定人脸特征点定位模型的模型参数,包括:

获取训练样本图像集,该集合包括单个人脸局部图像样本和与单个人脸局部图像对应的xy图像,单个人脸局部图像样本上标注有特征点的位置;

设置所述人脸特征点定位模型的目标损失函数;

将训练样本图像集中的样本输入至所述人脸特征点定位模型进行模型训练,学习模型参数。

进一步地,所述获取训练样本图像集包括:

收集各种场景下的人脸图像;

利用人脸检测算法对人脸图像进行处理,获取每个人脸局部区域图像;

生成一幅分辨率与所述人脸图像相同的2通道xy坐标图像,填充xy坐标图像的第一通道灰度图作为x坐标图像,填充xy坐标图像的第二通道灰度图作为y坐标图像:

其中,fx(x,y)、fy(x,y)分别表示x坐标图像和y坐标图像,(x,y)表示x坐标图像和y坐标图像上像素位置坐标,w、h表示x坐标图像和y坐标图像的图像宽度和图像高度。

另一方面,采用一种基于空间位置信息的人脸特征点定位系统,包括:获取模块、特征提取模块和特征点定位模块;

获取模块用于获取待识别的人脸图像作为人脸特征点定位模型的输入,该人脸图像包括3通道rgb图像和2通道xy图像,该人脸特征点定位模型包括主干网络和特征点预测网络;

特征提取模块用于利用主干网络对人脸图像进行处理,提取人脸图像的具有空间位置信息的高层语义特征图;

特征点定位模块用于利用特征点预测网络对具有空间位置信息的高层语义特征图进行处理,定位人脸图像上的人脸特征点位置。

进一步地,所述主干网络包括卷积层conv0,卷积运算集合体stage1、stage2、stage3、stage4,两个下采样层组,每个下采样组均包括下采样层downsample0、downsample1、downsample2、downsample3、downsample4,以及拼接层concat0、concat1、concat2、concat3、concat4;

卷积层conv0以及一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输入均为所述3通道rgb图像,另一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输入均为所述2通道xy图像;

卷积层conv0的输出与拼接层concat0连接,拼接层concat0的输出经卷积运算集合体stage1与拼接层concat1连接;拼接层concat1的输出经卷积运算集合体stage2与拼接层concat2连接;拼接层concat2的输出经卷积运算集合体stage3与拼接层concat3连接;拼接层concat3的输出经卷积运算集合体stage4与拼接层concat4连接;

一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输出分别与拼接层concat0、concat1、concat2、concat3、concat4的输入连接;拼接层concat4的输出与所述特征点预测网络输入连接;

另一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输出分别与拼接层concat0、concat1、concat2、concat3、concat4的输入连接。

进一步地,所述特征点预测网络包括全局均值池化层和全连接层,全局均值池化层得到输入与所述拼接层concat4的输出连接、输出与全连接层连接。

进一步地,还包括模型训练模块,用于对所述人脸特征点定位模型进行预先训练,以确定人脸特征点定位模型的模型参数;

模型训练模块包括训练样本获取单元、目标损失函数设置单元和训练单元,其中:

训练样本获取单元用于获取训练样本图像集,该集合包括单个人脸局部图像样本和与单个人脸局部图像对应的xy图像,单个人脸局部图像样本上标注有特征点的位置;

目标损失函数设置单元用于设置所述人脸特征点定位模型的目标损失函数;

训练单元用于将训练样本图像集中的样本输入至所述人脸特征点定位模型进行模型训练,学习模型参数。

进一步地,所述训练样本获取单元包括收集子单元、检测子单元和图像生成子单元,其中:

收集子单元用于收集各种场景下的人脸图像;

检测子单元用于利用人脸检测算法对人脸图像进行处理,获取每个人脸局部区域图像;

图像生成子单元用于生成一幅分辨率与所述人脸图像相同的2通道xy坐标图像,填充xy坐标图像的第一通道灰度图作为x坐标图像,填充xy坐标图像的第二通道灰度图作为y坐标图像:

其中,fx(x,y)、fy(x,y)分别表示x坐标图像和y坐标图像,(x,y)表示x坐标图像和y坐标图像上像素位置坐标,w、h表示x坐标图像和y坐标图像的图像宽度和图像高度。

与现有技术相比,本发明存在以下技术效果:本发明通过设计深度神经网络模型,综合利用人脸图像的纹理信息、人脸图像的空间位置信息和人脸图像的颜色信息,提取出具有空间位置信息的人脸图像的深层语义特征,精准的计算出人脸特征点位置,人脸特征点定位更加精准,鲁棒性更高。

附图说明

下面结合附图,对本发明的具体实施方式进行详细描述:

图1是一种基于空间位置信息的人脸特征点定位方法的流程图;

图2是本发明整体设计流程图;

图3是人脸特征点定位模型的结构图;

图4是人脸特征点标注示意图;

图5是一种基于空间位置信息的人脸特征点定位系统的结构图。

图中,每个模块图形旁边的字母数字,表示当前模块的输出特征图尺寸,即:特征图高度×特征图宽度×特征图通道数。

具体实施方式

为了更进一步说明本发明的特征,请参阅以下有关本发明的详细说明与附图。所附图仅供参考与说明之用,并非用来对本发明的保护范围加以限制。

如图1所示,本实施例公开了一种基于空间位置信息的人脸特征点定位方法,包括如下步骤s1至s3:

s1、获取待识别的人脸图像作为人脸特征点定位模型的输入,该人脸图像包括3通道rgb图像和2通道xy图像,该人脸特征点定位模型包括主干网络和特征点预测网络;

s2、利用主干网络对人脸图像进行处理,提取人脸图像的具有空间位置信息的高层语义特征图;

s3、利用特征点预测网络对具有空间位置信息的高层语义特征图进行处理,定位人脸图像上的人脸特征点位置。

在上述对待识别的人脸图像进行人脸特征点定位之前,还需对人脸特征点定位模型进行构建及训练,然后利用训练好的人脸特征点定位模型进行人脸特征点定位,如图2所示:

(1)设计深度神经网络模型作为人脸特征点定位模型:

本实施例设计深度神经网络模型作为人脸特征点定位模型,模型包括:主干网络和特征点预测网络。本发明采用的是卷积神经网络(cnn),为了方便叙述本发明,定义一些术语:特征图分辨率指的是特征图高度×特征图宽度,特征图尺寸指的是特征图高度×特征图宽度×特征图通道数,核尺寸指的是核宽度×核高度,跨度指的是宽度方向跨度×高度方向跨度,另外,每一个卷积层后面均带有批量归一化层和非线性激活层。人脸特征点定位模型的设计步骤包括:

1-1)设计人脸特征点定位模型的输入图像,输入图像包括一幅图像分辨率为224×224的3通道rgb图像和一幅图像分辨率为224×224的2通道xy图像,xy图像的第1通道表示人脸图像所有位置点的x坐标,第2通道表示人脸图像所有位置点的y坐标。

1-2)设计人脸特征点定位模型的主干网络,该主干网络用于综合利用输入图像的纹理信息、输入图像的空间位置信息和输入图像的颜色信息,快速提取输入图像的具有空间位置信息高层语义特征图,高层语义特征提取的质量直接影响后续人脸特征点定位的准确度。

由本发明采用的输入图像尺寸较大,不利于深度神经网络模型的快速运行,因此,需要一种能够快速提取输入人脸图像特征的高效网络。如图3所示,本实施例采用经典的resnet-18网络结构的改进型网络作为模型主干网络,其中,conv0是一个核尺寸是7×7,跨度是2×2的卷积层,这种大核尺寸大跨度卷积操作可以快速降低特征图分辨率,大大降低后续操作的运算量,同时保留更多图像细节;stage1、stage2、stage3、stage4分别是resnet-18网络的4个阶段的卷积运算集合体,每一个stage内部的卷积层均是核尺寸是3×3的卷积层,除了第一个卷积层的跨度是2×2外,其余卷积层的跨度均是1×1;downsample0、downsample1、downsample2、downsample3、downsample4均是下采样层,其中,downsample0层的下采样率是1/2,downsample1层的下采样率是1/4,downsample2层的下采样率是1/8,downsample3层的下采样率是1/16,downsample4层的下采样率是1/32;concat0、concat1、concat2、concat3、concat4均是拼接层,其功能是把3个输入特征图按照通道维度拼接成一个输出特征图。

1-3)设计人脸特征点定位模型的特征点预测网络,特征点预测网络包括全局均值池化层ave-pool和全连接层fc,全局均值池化层ave-pool输入与拼接层concat4输出连接、输出与全连接层fc连接;fc层是一个输出是2xn维的全连接层,其输出特征向量即是人脸特征点,n表示人脸特征点数目。

本实施例所构建的深度神经网络模型,可综合利用人脸图像的纹理信息、人脸图像的空间位置信息和人脸图像的颜色信息,提取人脸图像的具有空间位置信息深层语义特征,精准的计算出人脸特征点位置。

(2)利用训练样本图像训练人脸特征点定位模型:

模型训练过程主要是通过大量的标注好的训练样本数据,优化深度神经网络模型参数,使得深度神经网络模型能够精确定位出人脸特征点位置,包括如下步骤:

2-1)获取训练样本图像集,集合中包括标注有特征点位置信息的单个人脸局部图像样本和与单个人脸局部图像对应的xy图像:

主要是收集各种场景,各种光线、各种角度下的人脸图像,通过现有的人脸检测算法,获取每个人脸的局部区域图像,然后在每张人脸局部图像上标注n个特征点的位置,并记录特征点位置信息,如图4所示是68个人脸特征点。

获取样本图像的xy坐标图像:首先生成一幅图像分辨率和样本图像分辨率相同的2通道图像,即xy坐标图像,然后基于如下公式填充xy坐标图像的第一通道灰度图作为x坐标图像:

基于如下公式填充xy坐标图像的第二通道灰度图作为y坐标图像:

其中,fx(x,y)、fy(x,y)分别表示x坐标图像和y坐标图像,(x,y)表示x坐标图像和y坐标图像上像素位置坐标,w、h表示x坐标图像和y坐标图像的图像宽度和图像高度。

2-2)设计深度神经网络模型的目标损失函数,本发明目标损失函数采用的是均方差(mse)损失函数。

2-3)训练深度神经网络模型,把标注好的人脸样本图像集合送入定义好的深度神经网络模型,学习相关的模型参数。

(3)利用训练好的人脸特征点定位模型对任意给出的人脸图像进行前向运算后,直接输出人脸特征点位置,具体包括:

3-1)获取待识别的人脸图像作为人脸特征点定位模型的输入,该人脸图像包括3通道rgb图像和2通道xy图像,该人脸特征点定位模型包括主干网络和特征点预测网络;

3-2)利用主干网络对人脸图像进行处理,提取人脸图像的具有空间位置信息的高层语义特征图;

3-3)利用特征点预测网络对具有空间位置信息的高层语义特征图进行处理,定位人脸图像上的人脸特征点位置。

如图5所示,本实施例还公开了一种基于空间位置信息的人脸特征点定位系统,包括:获取模块10、特征提取模块20和特征点定位模块30;

获取模块10用于获取待识别的人脸图像作为人脸特征点定位模型的输入,该人脸图像包括3通道rgb图像和2通道xy图像,该人脸特征点定位模型包括主干网络和特征点预测网络;

特征提取模块20用于利用主干网络对人脸图像进行处理,提取人脸图像的具有空间位置信息的高层语义特征图;

特征点定位模块30用于利用特征点预测网络对具有空间位置信息的高层语义特征图进行处理,定位人脸图像上的人脸特征点位置。

其中,所述主干网络包括卷积层conv0,卷积运算集合体stage1、stage2、stage3、stage4,两个下采样层组,每个下采样组均包括下采样层downsample0、downsample1、downsample2、downsample3、downsample4,以及拼接层concat0、concat1、concat2、concat3、concat4;

卷积层conv0以及一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输入均为所述3通道rgb图像,另一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输入均为所述2通道xy图像;

卷积层conv0的输出与拼接层concat0连接,拼接层concat0的输出经卷积运算集合体stage1与拼接层concat1连接;拼接层concat1的输出经卷积运算集合体stage2与拼接层concat2连接;拼接层concat2的输出经卷积运算集合体stage3与拼接层concat3连接;拼接层concat3的输出经卷积运算集合体stage4与拼接层concat4连接;

一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输出分别与拼接层concat0、concat1、concat2、concat3、concat4的输入连接;拼接层concat4的输出与所述特征点预测网络输入连接;

另一组下采样层组中的下采样层downsample0、downsample1、downsample2、downsample3、downsample4的输出分别与拼接层concat0、concat1、concat2、concat3、concat4的输入连接。

进一步地,所述特征点预测网络包括全局均值池化层和全连接层,全局均值池化层得到输入与所述拼接层concat4的输出连接、输出与全连接层连接。

进一步地,还包括模型训练模块,用于对所述人脸特征点定位模型进行预先训练,以确定人脸特征点定位模型的模型参数。

模型训练模块包括训练样本获取单元、目标损失函数设置单元和训练单元,其中:

训练样本获取单元用于获取训练样本图像集,该集合包括单个人脸局部图像样本和与单个人脸局部图像对应的xy图像,单个人脸局部图像样本上标注有特征点的位置;

目标损失函数设置单元用于设置所述人脸特征点定位模型的目标损失函数;

训练单元用于将训练样本图像集中的样本输入至所述人脸特征点定位模型进行模型训练,学习模型参数。

进一步地,所述训练样本获取单元包括收集子单元、检测子单元和图像生成子单元,其中:

收集子单元用于收集各种场景下的人脸图像;

检测子单元用于利用人脸检测算法对人脸图像进行处理,获取每个人脸局部区域图像;

图像生成子单元用于生成一幅分辨率与所述人脸图像相同的2通道xy坐标图像,填充xy坐标图像的第一通道灰度图作为x坐标图像,填充xy坐标图像的第二通道灰度图作为y坐标图像:

其中,fx(x,y)、fy(x,y)分别表示x坐标图像和y坐标图像,(x,y)表示x坐标图像和y坐标图像上像素位置坐标,w、h表示x坐标图像和y坐标图像的图像宽度和图像高度。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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