一种基于高斯注意力的人脸检测装置、方法和存储介质与流程

文档序号:26393673发布日期:2021-08-24 16:03阅读:117来源:国知局
一种基于高斯注意力的人脸检测装置、方法和存储介质与流程

本发明属于人脸检测的技术领域,具体涉及一种基于高斯注意力的人脸检测装置、方法和存储介质。



背景技术:

随着人工智能技术的发展,各个领域的技术呈现出一片欣欣向荣的景象,人们对计算机技术的要求也随之变得更高。在目前这个时代里,以人脸作为目标的应用非常多,广泛的用于安防、验证、监控等领域,成为许多学者研究的热门学科之一。人脸检测是计算机视觉技术中较为重要的方向之一,通过人脸检测技术可以非接触式地突出到图像中出现的人脸,减少人力的监控,为后续的应用技术奠定良好的基础,如人脸识别、表情识别等。

人脸检测技术大致分为传统检测技术和基于深度学习的检测技术,因为人脸检测场景变得更加复杂,传统检测技术存在泛化性差、过于依赖人工经验的缺点,使得基于深度学习的检测技术成为主流技术。基于深度学习的检测技术主要分为两阶段算法和单阶段算法,两阶段算法中代表算法有faterr-cnn、mtcnn等,这类算法主要将检测过程分成生成候选区域和基于候选区域检测分类,具有高精度的优势。而单阶段代表算法有yolov3、ssd等,这类算法没有候选区域部分的计算,直接在特征图上定位分类,具有较高的实时性。

目前,大多数人脸检测技术在外界环境良好、没有遮挡的场景下,取得了令人满意的效果。但是如果在人脸检测过程中引入了干扰因素,如遮挡或侧脸角度过大等,都会降低检测效果,造成误检或漏检情况。因此,急需一种简洁、易操作的人脸检测方法,提高人脸检测技术对遮挡和侧脸变化的鲁棒性和稳定性,达到能在实际场景中应用的性能。



技术实现要素:

本发明的目的在于提供一种基于高斯注意力的人脸检测装置、方法和存储介质,旨在解决上述问题。

本发明主要通过以下技术方案实现:

一种基于高斯注意力的人脸检测装置,包括数据处理模块、训练模块、检测模块,所述数据处理模块用于收集人脸数据集并标注形成训练集,且标注的信息包含关键点和人脸位置信息;所述训练模块用于采用训练集训练网络模型得到训练后的网络模型;所述检测模块用于将待测数据输入训练后的网络模型并输出检测结果;

所述网络模型包括关键点检测模型和人脸检测模型,所述训练模块首先利用训练集训练得到关键点检测模型,根据关键点检测模型输出的热力图得到关键点相对坐标,并映射回原图像得到关键点绝对坐标,然后将所有的关键点绘制得到一张关键点坐标图,在关键点坐标图上利用二维高斯核以每个关键点位置为中心展开得到关键点概率分布图,最后分布重合点取最大概率值生成关键点高斯注意力图,然后,将关键点高斯注意力图输入到人脸检测模型中进行训练学习,最终得到训练后的网络模型。

本发明旨在提高遮挡场景下人脸检测方法的精度,如近期为了防控疫情佩戴口罩,人脸检测器材总会检测不到人脸,要求被测人员取下口罩,会造成交叉感染等不良的因素。本发明中所述的关键点高斯注意力图是一种先由用二维高斯核以人脸关键点为中心生成概率分布图,再进行最大概率值选取之后得到的注意力图,可以指导人脸检测模型在训练学习过程中更加关注未被遮挡的人脸特征,从而提高人脸在遮挡情况下的检测精度。

本发明在实现过程中,先由关键点检测模型对人脸样本图像进行检测,得到人脸面部未被遮挡的关键点位置,如佩戴口罩时人脸鼻尖、嘴角以及下巴会被遮挡,这时关键点只会输出其余未被遮挡关键点坐标,而人脸端正且未被遮挡时,模型将输出全部关键点,分别是两个眉中部、两眼、鼻尖、两嘴角、下巴等8个关键部位。关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,在关键点坐标图上采用二维高斯核以每个关键点位置生成关键点概率分布图,最后采用取最大值处理,即选取二维高斯核计算之后最大的概率值生成关键点高斯注意力图。然后将关键点高斯注意力图输入到人脸检测模型进行训练学习,在人脸检测模型中,关键点高斯注意力图与残差模块处理的特征图的分辨率需保持一致。根据人脸检测模型中特征图的分辨率变化更改关键点高斯注意力图的分辨率,保证关键点高斯注意力图的分辨率与中间层特征图的大小一致。

为了更好地实现本发明,进一步地,所述关键点检测模型包括从前至后依次设置的卷积层、批标准化层、激活函数层以及若干个倒残差模块;所述关键点检测模型的网络末端设置有一个卷积层,且卷积层的每个通道输出一个关键点的热力图,且卷积层的通道数与关键点的个数一致,关键点的个数设为8。

为了更好地实现本发明,进一步地,所述倒残差模块包括从前至后依次设置的卷积层、批标准化层、激活函数层、深度可分离卷积层、批标准化层、激活函数层、卷积层、批标准化层、特征相加层。

为了更好地实现本发明,进一步地,所述人脸检测模型包括从前至后依次设置的残差模块、关键点高斯注意力模块、卷积层、批标准化层、激活函数层,且人脸检测模型的网络末端设置有并行的两个全连接层,分别用于位置坐标回归和类别分类。

为了更好地实现本发明,进一步地,所述关键点高斯注意力模块包括并行设置的上采样层、下采样层,根据人脸检测模型当前特征图的分辨率选择上采样层或下采样层,以将关键点高斯注意力图与人脸检测特征图的分辨率保持一致。

所述的关键点高斯注意力模块由关键点高斯注意力图、上采样层、下采样层构成,按照人脸检测模型当前特征图的分辨率选用上采样层或下采样层,将关键点高斯注意力图与人脸检测特征图的分辨率保持一致。其中关键点高斯注意力图利用二维高斯核以每个关键点位置信息为中心展开得到的关键点概率分布图,重复计算的点采用取最大值操作。通过关键点概率分布图可以学习到人脸的全局信息,在人脸遮挡情况下,可以将模型的注意力转移到未被遮挡的地方,从而增加人脸检测性能。

为了更好地实现本发明,进一步地,所述残差模块包括从前至后依次设置的卷积层、批标准化层、激活函数层。

为了更好地实现本发明,进一步地,所述关键点检测模型采用位置回归损失函数进行损失值计算,所述人脸检测模型的损失值计算方式分为类别分类损失函数和位置回归损失函数。

为了更好地实现本发明,进一步地,所述类别分类损失函数采用焦点损失函数,所述的位置回归函数采用平滑l1损失函数。

所述关键点检测模型和人脸检测模型是串行运行的,先由关键点检测模型对人脸样本图像检测生成关键点高斯注意力图,再将关键点高斯注意力图输入到人脸检测模型中指导训练学习,具体工作原理如图4所示。图1展示的是关键点检测模型,在保证提高人脸遮挡检测精度的前提下,不牺牲整体方法的实时性,所以在搭建关键点检测模型时,采用包含深度可分离卷积层的倒残差模型进行堆叠,减少引入的参数量,关键点检测速度可达8ms/帧。图2展示的是人脸检测模型,为了加宽网络且增加特征的语义性,所以在残差模块之后添加一个关键点高斯注意力模块,这部分特征映射关系如下:

公式中x为残差模块输出的特征信息,k为关键点高斯注意力模块,f为处理之后的特征信息,如果直接将原始的x特征变成x×k特征会导致模型表达退化,因此,这样设计可避免模型表达的退化现象。

本发明主要通过以下技术方案实现:

一种基于高斯注意力的人脸检测方法,采用上述的人脸检测装置进行,包括以下步骤:

步骤s100:收集人脸数据集并标注,且标注的信息包含关键点和人脸位置信息,按比例分为测试集和训练集;

步骤s200:采用步骤s100中的训练集对网络模型进行训练,首先训练得到关键点检测模型,其次,按照关键点检测模型的输出结果计算生成关键点高斯注意力图,并输出到人脸检测模型中进行训练学习,获得训练后的网络模型;

采用步骤s100中的训练集分步骤训练关键点检测模型和人脸检测模型,预先设定训练所需的相关超参数,并随机初始化关键点检测模型和人脸检测模型中所有的权重参数,使用优化器优化总损失值,直到训练迭代次数达到最大迭代次数时停止训练;

步骤s300:采用步骤s100中的测试集测试步骤s200中训练后的网络模型得到最终的检测网络模型;

步骤s400:将待测数据输入步骤s300中的检测网络模型并输出检测结果。

一种计算机可读存储介质,存储有计算机程序指令,所述程序指令被处理器执行时实现上述人脸检测的方法。

所述训练模块在训练的过程中,首先将训练集输入初始的关键点检测模型中训练得到训练后的关键点检测模型,利用训练后的关键点检测模型输出预测的人脸面部的未被遮挡的关键点,根据预测的人脸面部的未被遮挡的关键点计算得到关键点高斯注意力图。然后将关键点高斯注意力图输入到人脸检测模型进行训练学习,多次迭代计算、优化,直到训练迭代次数达到最大迭代次数时,停止训练,最后,通过测试集测试得到最终的检测网络模型。

本发明旨在解决在人脸检测过程中因引入干扰因素而导致检测效果降低造成的误检或漏检的问题,其中干扰因素如遮挡或侧脸角度过大等。本发明先利用关键点检测模型生成关键点坐标图,然后计算生成关键点高斯注意力图,通过关键点高斯注意力图中关键点的分布使人脸检测模型将关注点偏向未人脸未被遮挡部分,从而提高人脸检测在人脸遮挡场景下的性能和精确度。在计算关键点高斯注意力图时,关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,最后利用二维高斯核以关键点坐标图中每个关键点位置信息为中心展开得到关键点概率分布图。但是,因人脸关键点较为密集,计算过程中会出现二维高斯核重复计算的特征点,在这种情况下,采用取最大值处理,即在关键点概率分布图中,筛取二维高斯核计算之后概率值最大的分布重合点。本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

本发明的有益效果:

(1)本发明解决了人脸检测过程中因引入干扰因素而导致检测效果降低造成的误检或漏检的问题。本发明先利用关键点检测模型生成关键点坐标图,然后计算生成关键点高斯注意力图,通过关键点高斯注意力图中关键点的分布使人脸检测模型将关注点偏向未人脸未被遮挡部分,从而提高人脸检测在人脸遮挡场景下的性能和精确度;

(2)本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能;

(3)本发明利用二维高斯核以每个关键点位置信息为中心展开得到的关键点概率分布图,可以形象、可视化地展示出人脸需重点关注的部分;

(4)本发明通过将关键点高斯注意力图的分布信息添加到模型训练过程中,使模型学习到人脸的全局信息,可以将模型的注意力转移到未被遮挡的地方,从而增加人脸检测性能。

附图说明

图1为关键点检测模型的网络结构示意图;

图2为人脸检测模型的网络结构示意图;

图3为倒残差模块的结构示意图;

图4为本发明网络模型训练的流程图。

具体实施方式

实施例1:

一种基于高斯注意力的人脸检测装置,包括数据处理模块、训练模块、检测模块,所述数据处理模块用于收集人脸数据集并标注形成训练集,且标注的信息包含关键点和人脸位置信息;所述训练模块用于采用训练集训练网络模型得到训练后的网络模型;所述检测模块用于将待测数据输入训练后的网络模型并输出检测结果。

所述网络模型包括关键点检测模型和人脸检测模型,所述训练模块首先利用训练集训练得到关键点检测模型,并根据关键点检测模型的输出结果计算生成关键点高斯注意力图,然后,将关键点高斯注意力图输入到人脸检测模型中进行训练学习,最终得到训练后的网络模型。如图4所示,所述关键点检测模型和人脸检测模型是串行运行的,先由关键点检测模型对人脸样本图像检测生成关键点高斯注意力图,再将关键点高斯注意力图输入到人脸检测模型中指导训练学习。

本发明根据关键点检测模型输出的热力图得到关键点相对坐标,并映射回原图像得到关键点绝对坐标,然后将所有的关键点绘制得到一张关键点坐标图,在关键点坐标图上利用二维高斯核以每个关键点位置为中心展开得到关键点概率分布图,最后分布重合点取最大概率值生成关键点高斯注意力图。本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

本发明旨在提高遮挡场景下人脸检测方法的精度,如近期为了防控疫情佩戴口罩,人脸检测器材总会检测不到人脸,要求被测人员取下口罩,会造成交叉感染等不良的因素。本发明中所述的关键点高斯注意力图是一种先由用二维高斯核以人脸关键点为中心生成概率分布图,再进行最大概率值选取之后得到的注意力图,可以指导人脸检测模型在训练学习过程中更加关注未被遮挡的人脸特征,从而提高人脸在遮挡情况下的检测精度。

本发明在实现过程中,先由关键点检测模型对人脸样本图像进行检测,得到人脸面部未被遮挡的关键点位置,如佩戴口罩时人脸鼻尖、嘴角以及下巴会被遮挡,这时关键点只会输出其余未被遮挡关键点坐标,而人脸端正且未被遮挡时,模型将输出全部关键点,分别是两个眉中部、两眼、鼻尖、两嘴角、下巴等8个关键部位。关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,在关键点坐标图上采用二维高斯核以每个关键点位置生成关键点概率分布图,最后采用取最大值处理,即选取二维高斯核计算之后最大的概率值生成关键点高斯注意力图。然后将关键点高斯注意力图输入到人脸检测模型进行训练学习,在人脸检测模型中,关键点高斯注意力图与残差模块处理的特征图的分辨率需保持一致。根据人脸检测模型中特征图的分辨率变化更改关键点高斯注意力图的分辨率,保证关键点高斯注意力图的分辨率与中间层特征图的大小一致。

实施例2:

一种基于高斯注意力的人脸检测装置,包括数据处理模块、训练模块、检测模块,所述数据处理模块用于收集人脸数据集并标注形成训练集,且标注的信息包含关键点和人脸位置信息;所述训练模块用于采用训练集训练网络模型得到训练后的网络模型;所述检测模块用于将待测数据输入训练后的网络模型并输出检测结果。

所述训练模块首先利用训练集训练得到关键点检测模型并根据输出结果计算生成关键点高斯注意力图,将关键点高斯注意力图输入到人脸检测模型中训练学习,最终得到训练后的网络模型;所述关键点高斯注意力图利用二维高斯核以关键点坐标图中每个关键点位置信息为中心展开得到关键点概率分布图,且将所有关键点的分布信息融成一张图,分布重合点取最大概率值。所述关键点检测模型采用位置回归损失函数进行损失值计算,所述人脸检测模型的损失值计算方式分为类别分类损失函数和位置回归损失函数。

进一步地,所述类别分类损失函数采用焦点损失函数。

进一步地,所述的位置回归函数采用平滑l1损失函数。

在计算关键点高斯注意力图时,先由关键点检测模型对人脸样本图像进行检测,得到人脸面部未被遮挡的关键点位置,如佩戴口罩时人脸鼻尖、嘴角以及下巴会被遮挡,这时关键点只会输出其余未被遮挡关键点坐标,而人脸端正且未被遮挡时,模型将输出全部关键点,分别是两个眉中部、两眼、鼻尖、两嘴角、下巴等8个关键部位。关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,在关键点坐标图上采用二维高斯核以每个关键点位置生成关键点概率分布图。但是,因人脸关键点较为密集,计算过程中会出现二维高斯核重复计算的特征点,在这种情况下,采用取最大值处理,即在关键点概率分布图中,筛取二维高斯核计算之后概率值最大的分布重合点。本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

实施例3:

本实施例是在实施例1或2的基础上进行优化,如图1所示,所述关键点检测模型包括从前至后依次设置的卷积层、批标准化层、激活函数层以及若干个倒残差模块;所述关键点检测模型的网络末端设置有一个卷积层,且卷积层的每个通道输出一个关键点的热力图,且卷积层的通道数与关键点的个数一致,关键点的个数设为8。本发明中激活函数层采用参数修正线性单元层。

进一步地,如图3所示,所述倒残差模块包括从前至后依次设置的卷积层、批标准化层、激活函数层、深度可分离卷积层、批标准化层、激活函数层、卷积层、批标准化层、特征相加层。

如图1所示,在保证提高人脸遮挡检测精度的前提下,不牺牲整体方法的实时性,所以在搭建关键点检测模型时,采用包含深度可分离卷积层的倒残差模型进行堆叠,减少引入的参数量,关键点检测速度可达8ms/帧。

本发明利用训练后的关键点检测模型输出预测的人脸面部的未被遮挡的关键点,并根据预测的人脸面部的未被遮挡的关键点计算得到关键点高斯注意力图。本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

本实施例的其他部分与实施例1或2相同,故不再赘述。

实施例4:

本实施例是在实施例1-3任一个的基础上进行优化,如图2所示,所述人脸检测模型包括从前至后依次设置的残差模块、关键点高斯注意力模块、卷积层、批标准化层、激活函数层,且人脸检测模型的网络末端设置有并行的两个全连接层,分别用于位置坐标回归和类别分类。本发明中激活函数层采用参数修正线性单元层。

进一步地,所述关键点高斯注意力模块包括并行设置的上采样层、下采样层,根据人脸检测模型当前特征图的分辨率选择上采样层或下采样层,以将关键点高斯注意力图与人脸检测特征图的分辨率保持一致。所述关键点高斯注意力模块根据人脸检测模型中特征图的分辨率变化更改关键点高斯注意力图的分辨率,保证关键点高斯注意力图的分辨率与中间层特征图的大小一致。

进一步地,所述残差模块包括从前至后依次设置的卷积层、批标准化层、激活函数层。

如图2所示,为了加宽网络且增加特征的语义性,所以在残差模块之后添加一个关键点高斯注意力模块,这部分特征映射关系如下:

公式中x为残差模块输出的特征信息,k为关键点高斯注意力模块,f为处理之后的特征信息,如果直接将原始的x特征变成x×k特征会导致模型表达退化,因此,这样设计可避免模型表达的退化现象。

本实施例的其他部分与上述实施例1-3任一个相同,故不再赘述。

实施例5:

一种基于高斯注意力的人脸检测装置,包括数据处理模块、训练模块、检测模块,所述数据处理模块用于收集人脸数据集并标注形成训练集,且标注的信息包含关键点和人脸位置信息;所述训练模块用于采用训练集训练网络模型得到训练后的网络模型;所述检测模块用于将待测数据输入训练后的网络模型并输出检测结果。

进一步地,人脸检测装置中的网络模型分为关键点检测模型训练和人脸检测模型。如图4所示,网络模型分两部分训练学习,分为关键点检测模型训练和人脸检测模型训练。所述关键点检测模型和人脸检测模型是串行运行的,先由关键点检测模型对人脸样本图像检测生成关键点高斯注意力图,再将关键点高斯注意力图输入到人脸检测模型中指导训练学习。

进一步地,如图1所示,所述关键点检测模型从前至后按照卷积层、批标准化层、激活函数层、若干个倒残差模块按预先设定的数量和顺序堆叠。如图3所示,其中倒残差模块结构是将卷积层、批标准化层、激活函数层、深度可分离卷积层、批标准化层、激活函数层、卷积层、批标准化层的规则依次堆叠。所述关键点检测模型的网络末端设置有一个卷积层,且卷积层的每个通道输出一个关键点的热力图,且卷积层的通道数与关键点的个数一致,关键点的个数设为8。

如图1所示,在保证提高人脸遮挡检测精度的前提下,不牺牲整体方法的实时性,所以在搭建关键点检测模型时,采用包含深度可分离卷积层的倒残差模型进行堆叠,减少引入的参数量,关键点检测速度可达8ms/帧。

进一步地,如图2所示,所述人脸检测模型结构从前至后将卷积层、批标准化层、激活函数层组成残差模块,按照设定的数个残差模块与关键点高斯注意力模块、卷积层、批标准化层、激活函数层依次堆叠,构成网络的主干部分,人脸检测模型的网络末端添加全连接层进行位置坐标回归和类别分类。所述的关键点高斯注意力模块由关键点高斯注意力图、上采样层、下采样层构成,按照人脸检测模型当前特征图的分辨率选用上采样层还是下采样层,将关键点高斯注意力图与人脸检测特征图的分辨率保持一致。

如图2所示,为了加宽网络且增加特征的语义性,所以在残差模块之后添加一个关键点高斯注意力模块,这部分特征映射关系如下:

公式中x为残差模块输出的特征信息,k为关键点高斯注意力模块,f为处理之后的特征信息,如果直接将原始的x特征变成x×k特征会导致模型表达退化,因此,这样设计可避免模型表达的退化现象。

所述训练模块在训练的过程中,首先将训练集输入初始的关键点检测模型中训练得到训练后的关键点检测模型,利用训练后的关键点检测模型输出预测的人脸面部的未被遮挡的关键点,根据预测的人脸面部的未被遮挡的关键点计算得到关键点高斯注意力图。然后将关键点高斯注意力图输入到人脸检测模型进行训练学习,多次迭代计算、优化,直到训练迭代次数达到最大迭代次数时,停止训练,最后,通过测试集测试得到最终的检测网络模型。

在计算关键点高斯注意力图时,关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,在关键点坐标图上采用二维高斯核以每个关键点位置生成关键点概率分布图。但是,因人脸关键点较为密集,计算过程中会出现二维高斯核重复计算的特征点,在这种情况下,采用取最大值处理,即在关键点概率分布图中,筛取二维高斯核计算之后概率值最大的分布重合点。本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

实施例6:

一种基于高斯注意力的人脸检测方法,采用人脸检测装置进行,包括以下步骤:

步骤s100:收集人脸数据集并标注,且标注的信息包含关键点和人脸位置信息,按比例分为测试集和训练集;

步骤s200:采用步骤s100中的训练集对网络模型进行训练,首先训练得到关键点检测模型,其次,按照关键点检测模型的输出结果计算生成关键点高斯注意力图,并输出到人脸检测模型中进行训练学习,获得训练后的网络模型;

采用步骤s100中的训练集分步骤训练关键点检测模型和人脸检测模型,预先设定训练所需的相关超参数,并随机初始化关键点检测模型和人脸检测模型中所有的权重参数,使用优化器优化总损失值,直到训练迭代次数达到最大迭代次数时停止训练;

步骤s300:采用步骤s100中的测试集测试步骤s200中训练后的网络模型得到最终的检测网络模型;

步骤s400:将待测数据输入步骤s300中的检测网络模型并输出检测结果。

所述训练模块在训练的过程中,首先将训练集输入初始的关键点检测模型中训练得到训练后的关键点检测模型,利用训练后的关键点检测模型输出预测的人脸面部的未被遮挡的关键点,根据预测的人脸面部的未被遮挡的关键点计算得到关键点高斯注意力图。然后将关键点高斯注意力图输入到人脸检测模型进行训练学习,多次迭代计算、优化,直到训练迭代次数达到最大迭代次数时,停止训练,最后,通过测试集测试得到最终的检测网络模型。

在计算关键点高斯注意力图时,关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,在关键点坐标图上采用二维高斯核以每个关键点位置生成关键点概率分布图。但是,因人脸关键点较为密集,计算过程中会出现二维高斯核重复计算的特征点,在这种情况下,采用取最大值处理,即在关键点概率分布图中,筛取二维高斯核计算之后概率值最大的分布重合点。本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

实施例7:

一种基于高斯注意力的人脸检测方法,采用上述的人脸检测装置进行,首先收集人脸数据集并标注,且标注的信息包含关键点和人脸位置信息,按比例分为测试集和训练集;

如图4所示,所述关键点检测模型和人脸检测模型是串行运行的,先由关键点检测模型对人脸样本图像检测生成关键点高斯注意力图,再将关键点高斯注意力图输入到人脸检测模型中指导训练学习。

首先采用训练集对关键点检测模型进行训练,预先设定训练所需的相关超参数,并随机初始化关键点检测模型中所有的权重参数,使用优化器优化总损失值,直到训练迭代次数达到最大迭代次数时停止训练。

然后,利用训练后的关键点检测模型预测出人脸面部的未被遮挡的关键点,以计算生成关键点高斯热力图。将关键点高斯热力图输入人脸检测模型进行训练,在训练之前预先设定人脸检测模型训练所需的相关超参数,并随机初始化人脸检测模型中所有的权重参数,使用优化器优化总损失值,直到训练迭代次数达到最大迭代次数时停止训练。

最后采用测试集测试训练后的网络模型得到最终的检测网络模型。将待测数据输入的检测网络模型并输出检测结果。

进一步地,如图1所示,所述关键点检测模型包括从前至后依次设置的卷积层、批标准化层、激活函数层以及若干个倒残差模块;所述关键点检测模型的网络末端设置有一个卷积层,且卷积层的每个通道输出一个关键点的热力图,且卷积层的通道数与关键点的个数一致,关键点的个数设为8。本发明中激活函数层采用参数修正线性单元层。

进一步地,如图3所示,所述倒残差模块包括从前至后依次设置的卷积层、批标准化层、激活函数层、深度可分离卷积层、批标准化层、激活函数层、卷积层、批标准化层、特征相加层。

如图1所示,在保证提高人脸遮挡检测精度的前提下,不牺牲整体方法的实时性,所以在搭建关键点检测模型时,采用包含深度可分离卷积层的倒残差模型进行堆叠,减少引入的参数量,关键点检测速度可达8ms/帧。

进一步地,如图2所示,所述人脸检测模型包括从前至后依次设置的残差模块、关键点高斯注意力模块、卷积层、批标准化层、激活函数层,且人脸检测模型的网络末端设置有并行的两个全连接层,分别用于位置坐标回归和类别分类。本发明中激活函数层采用参数修正线性单元层。

进一步地,所述关键点高斯注意力模块包括并行设置的上采样层、下采样层,根据人脸检测模型当前特征图的分辨率选择上采样层或下采样层,以将关键点高斯注意力图与人脸检测特征图的分辨率保持一致。

进一步地,所述残差模块包括从前至后依次设置的卷积层、批标准化层、激活函数层。

如图2所示,为了加宽网络且增加特征的语义性,所以在残差模块之后添加一个关键点高斯注意力模块,这部分特征映射关系如下:

公式中x为残差模块输出的特征信息,k为关键点高斯注意力模块,f为处理之后的特征信息,如果直接将原始的x特征变成x×k特征会导致模型表达退化,因此,这样设计可避免模型表达的退化现象。

进一步地,所述关键点检测模型采用位置回归损失函数进行损失值计算,所述人脸检测模型的损失值计算方式分为类别分类损失函数和位置回归损失函数。所述类别分类损失函数采用焦点损失函数,所述的位置回归函数采用平滑l1损失函数。

本发明在得到关键点模型之后,可以预测出人脸面部的未被遮挡的关键点,关键点检测模型输出的是一张张热力图,每张热力图上概率值最大位置的坐标就为关键点相对坐标,并映射回原图像得到最终的关键点绝对坐标,然后将所有关键点绘制得到一张关键点坐标图,而关键点高斯注意力图是通过利用二维高斯核以关键点坐标图中每个关键点位置信息为中心展开得到的关键点概率分布图,用二维高斯核计算之后的概率值的计算公式如下:

其中σ为标准差,上述公式表示以关键点(x,y)为中心将点(i,j)对应的概率值设置为用二维高斯核计算之后的概率值gxy,其余关键点计算方式一样。但是,因人脸关键点较为密集,计算过程中会出现二维高斯核重复计算的特征点,在这种情况下,采用取最大值处理,即选取二维高斯核计算之后最大的概率值,最后将得到关键点高斯注意力图输送到人脸检测模型训练过程中。

本发明通过关键点高斯注意力图的分布信息,从而获取到人们面部不同部位特征信息的重要程度,将这些信息结合训练人脸检测模型,可以大大提高遮挡情况下人脸的检测精度,增强人脸识别性能。

以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

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