一种基于DETR的人脸检测方法与流程

文档序号:31186551发布日期:2022-08-19 22:10阅读:105来源:国知局
一种基于DETR的人脸检测方法与流程
一种基于detr的人脸检测方法
技术领域
1.本发明涉及计算机视觉技术领域,尤其涉及一种基于detr的人脸检测方法。


背景技术:

2.人脸识别是现今深度学习中的热门领域,应用非常广泛,如门禁,地铁、机场等各出入口;或者,小区安防、超市营销等各种生活场景。人脸检测是指能在图片或视频中检测出人脸的计算机技术,是人脸识别、活体检测、人脸定位等算法的基础。
3.尽管目前简单场景的人脸检测效果已经相当好,但是在复杂场景下的人脸检测仍具有挑战性,而生活中更常见的是复杂的场景,比如密集的人流,受到遮挡,不同光源下的干扰,以及远距离的人脸,这些挑战使得人脸检测难以进一步应用到生活场景中。目前人脸检测算法大多基于一阶段的卷积神经网络,但这些基于一阶段的卷积神经网络的人脸检测算法大多需要依赖人工根据目标设置anchor(锚框),需要研究者有大量的先验知识,清楚目标的尺寸和比例,才能设置相应anchor,而anchor设计直接关系到预测结果,一旦anchor设置存在偏差,则会导致检测效果下降,此外,采用大量anchor进行预测会产生正负样本匹配不均匀的问题,需要根据研究者的大量先验知识进行解决,非网络可以学习,鲁棒性和可移植性差。


技术实现要素:

4.本发明所要解决的技术问题是提供一种基于detr的人脸检测方法,以通过获取模型直接进行人脸检测,减少人工设置,提高检测效果。
5.为解决上述技术问题,本发明的目的是通过以下技术方案实现的:提供一种基于detr的人脸检测方法,包括以下步骤:
6.数据集选择:选择widerface数据集;
7.数据预处理:采用dataanchor sample采样方法对widerface数据集内的图片进行随机裁剪和随机缩放,获取预处理后的图片;
8.图片特征图提取:采用resnet-50作为骨干网络对预处理后的图片进行特征提取,获取图片特征图,选取不同层的图片特征图输入至transformer模型;
9.特征融合:于transformer模型中选用特征金字塔网络(fpn)对输入的不同层的图片特征图进行融合,输出融合特征图至transformer模型中的解码器;
10.模型获取:transformer模型中的解码器对融合特征图进行解码处理,获得优化人脸检测模型;
11.模型训练:采用widerface数据集内的训练集对优化人脸检测模型进行训练,获取最终人脸检测模型;
12.人脸检测:根据获得的最终人脸检测模型进行人脸检测。
13.其进一步技术方案为:所述数据预处理的步骤具体包括:
14.在widerface数据集内的图片上随机选取一个人脸进行裁剪,获取裁剪图片后获
得的人脸的尺寸,获取与人脸的尺寸最接近的anchor;
15.根据获得的与人脸的尺寸最接近的anchor的索引,随机选取一个小于该索引的值作为选取anchor的索引;
16.计算获取选取anchor的尺寸和人脸的尺寸之间的尺寸比值,在尺寸比值缩小一半和尺寸比值放大一倍的范围之间随机选取一个比值作为图片缩放比值,根据图片缩放比值对裁剪人脸前的原图片进行缩放,获得预处理后的图片。
17.其进一步技术方案为:所述图片特征图提取的步骤中选取不同层的图片特征图输入至transformer模型的步骤具体为:选取第3、4和5层的图片特征图输入至transformer模型。
18.其进一步技术方案为:所述特征融合的步骤具体包括:
19.将骨干网络的各层输出图片特征图的通道数通过线性映射的方式进行映射后统一为256;
20.采用双线性插值算法对第5层的图片特征图进行上采样;将第4层的图片特征图通过1
×
1的普通卷积后与上采样后的第5层的图片特征图进行相加融合后通过3
×
3的逐通道卷积再经过1
×
1的普通卷积进行更新,获得新的第4层的图片特征图;采用双线性插值算法对新的第4层的图片特征图进行上采样;将第3层的图片特征图通过1
×
1的普通卷积后与上采样后的新的第4层的图片特征图进行相加融合后通过3
×
3的逐通道卷积再经过1
×
1的普通卷积进行更新,获得新的第3层的图片特征图作为第3、4和5层的图片特征图融合后的多尺度特征图;
21.将多尺度特征图展平后在空间维度进行拼接,获得单层二维特征图作为融合特征图,输出融合特征图至transformer模型中的解码器。
22.其进一步技术方案为:所述特征融合的步骤和所述模型获取的步骤中的所述解码器采用可变形解码器。
23.本发明的有益技术效果在于:本发明一种基于detr的人脸检测方法通过选择widerface数据集进行模型构建及训练以提高鲁棒性,通过采用data anchor sample采样方法对widerface数据集内的图片进行随机裁剪和随机缩放,获取预处理后的图片,以提高小尺度人脸在数据集内的占比,使得后续训练获得的最终人脸检测模型可更好地检测小尺度人脸,而且,于transformer模型中引入特征金字塔网络,以融合浅层的空间信息与高层的语义信息,使得融合特征图具有更丰富的信息,提高了网络的准确度并降低了计算复杂度,降低内存占用,提高计算速度,通过直接获取模型并根据模型进行人脸检测,实现了端到端的人脸检测,无需大量设置anchor进行检测,无需人工先验知识,减少人工设置及超参数,降低人工设置带来的网络性能和检测效果的下降的可能性,提高检测网络的鲁棒性及可移植性。
附图说明
24.为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
25.图1为本发明实施例提供的一种基于detr的人脸检测方法的流程图;
26.图2为本发明实施例提供的一种基于detr的人脸检测方法的数据预处理的具体流程图;
27.图3为本发明实施例提供的一种基于detr的人脸检测方法的特征融合的步骤的具体流程图。
具体实施方式
28.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
29.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
30.还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
31.还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
32.请参阅图1所示,图1为本发明实施例提供的一种基于detr的人脸检测方法的流程图,所述基于detr的人脸检测方法包括以下步骤:
33.步骤s11、数据集选择:选择widerface数据集。其中,公开的widerface数据集是人脸检测的基准数据集,该数据集的图片来源是wider数据集,其包含丰富的注释,注释包括遮挡、姿势、事件类别和面边界框,widerface数据集内总共有32203张图片,图片中可包括大量密集场景和小尺度的人脸,widerface数据集内所有图片进行了人脸标注,总共标注了393703张人脸,且widerface数据集根据事件场景的类型分为了61个类,每个类别按照40%、10%和50%的比例划分到训练集、验证集和测试集。通过选择widerface数据集,以在后续进行模型构建及训练时具有较强的鲁棒性。
34.步骤s12、数据预处理:采用data anchor sample采样方法对widerface数据集内的图片进行随机裁剪和随机缩放,获取预处理后的图片。其中,通过对widerface数据集内的图片进行随机裁剪和随机缩放以改变原widerface数据集的数据分布,提高小尺度人脸的占比,以使后续训练后的模型可更好地检测小尺度人脸。
35.步骤s13、图片特征图提取:采用resnet-50作为骨干网络对预处理后的图片进行特征提取,获取图片特征图,选取不同层的图片特征图输入至transformer模型。
36.步骤s14、特征融合:于transformer模型中选用特征金字塔网络(fpn)对输入的不同层的图片特征图进行融合,输出融合特征图至transformer模型中的解码器。其中,于transformer模型中引入特征金字塔网络,以融合浅层的空间信息与高层的语义信息,使得融合特征图具有更丰富的信息,提高了网络的准确度并降低了计算复杂度,降低内存占用,提高计算速度。
37.步骤s15、模型获取:transformer模型中的解码器对融合特征图进行解码处理,获
得优化人脸检测模型。
38.步骤s16、模型训练:采用widerface数据集内的训练集对优化人脸检测模型进行训练,获取最终人脸检测模型。
39.步骤s17、人脸检测:根据获得的最终人脸检测模型进行人脸检测。
40.其中,所述基于detr的人脸检测方法通过选择widerface数据集进行模型构建及训练以提高鲁棒性,通过采用data anchor sample采样方法对widerface数据集内的图片进行随机裁剪和随机缩放,获取预处理后的图片,以提高小尺度人脸在数据集内的占比,使得后续训练获得的最终人脸检测模型可更好地检测小尺度人脸,而且,于transformer模型中引入特征金字塔网络,以融合浅层的空间信息与高层的语义信息,使得融合特征图具有更丰富的信息,提高了网络的准确度并降低了计算复杂度,降低内存占用,提高计算速度,通过直接获取模型并根据模型进行人脸检测,实现了端到端的人脸检测,无需大量设置anchor进行检测,无需人工先验知识,减少人工设置及超参数,降低人工设置带来的网络性能和检测效果的下降的可能性,提高检测网络的鲁棒性及可移植性。
41.结合图2,所述步骤s12具体包括:
42.步骤s121、在widerface数据集内的图片上随机选取一个人脸进行裁剪,获取裁剪图片后获得的人脸的尺寸,获取与人脸的尺寸最接近的anchor。根据获得的该与人脸的尺寸最接近的anchor,可获取其索引。其中,与人脸的尺寸最接近的anchor的索引可根据公式(1)的索引:
43.i
anchor
=argmini[abs(s
ianchor-s
face
)],s
ianchor
=2
4+i
,i=0,1,2,3,4
ꢀꢀꢀꢀ
(1)
[0044]
式中,i
anchor
表示与人脸的尺寸最接近的anchor的索引,s
ianchor
表示索引为i的anchor的尺寸,s
face
表示人脸的尺寸,为裁剪图片后获得的人脸的尺寸,abs(s
ianchor-s
face
)表示计算获取索引为i的anchor的尺寸与人脸的尺寸的差值绝对值,argmini[abs(s
ianchor-s
face
)]表示计算获取使anchor的尺寸与人脸的尺寸的差值绝对值取最小值时的anchor的索引。裁剪图片后获得的人脸的尺寸为随机选取的人脸的尺寸,与人脸的尺寸最接近的anchor是指与随机选取的人脸的尺寸最接近的anchor。
[0045]
步骤s122、根据获得的与人脸的尺寸最接近的anchor的索引,随机选取一个小于该与人脸的尺寸最接近的anchor的索引的值作为选取anchor的索引。其中,选取anchor是指根据随机选取的索引的值所对应的anchor,选取anchor的索引可用公式(2)表示:
[0046]itarget
∈{0,1,2,3,

,min(5,i
anchor
+1)}
ꢀꢀꢀꢀ
(2)
[0047]
式中,i
target
表示选取anchor的索引,i
anchor
表示与人脸的尺寸最接近的anchor的索引,min表示用于获取最小值的函数;
[0048]
步骤s123、计算获取选取anchor的尺寸和人脸的尺寸之间的尺寸比值,在尺寸比值缩小一半和尺寸比值放大一倍的范围之间随机选取一个比值作为图片缩放比值,根据图片缩放比值对裁剪人脸前的原图片进行缩放,获得预处理后的图片。其中,选取anchor的尺寸和人脸的尺寸之间的尺寸比值可用公式(3)表示:
[0049]s*
=s
itarget
/s
face
ꢀꢀꢀ
(3)
[0050]
式中,s
itarget
表示选取anchor的尺寸,s
face
表示人脸的尺寸,s
*
表示尺寸比值。
[0051]
图像缩放比值可采用公式(4)表示:
[0052]sfinal
=random(s
*
/2,s
*
*2)
ꢀꢀꢀꢀ
(4)
[0053]
式中,s
final
表示图像缩放比值,s
*
表示尺寸比值,random函数表示于[s
*
/2,s
*
*2]的范围之间随机生成一个实数。
[0054]
其中,anchor的索引与骨干网络的层级相对应,anchor的尺寸与骨干网络各层输出图片特征图的通道数相对应。通过于图片中裁剪人脸并根据裁剪后获得的人脸的尺寸对应进行随机缩放,以有利于网络关注人脸区域。
[0055]
具体地,所述步骤s13中选取不同层的图片特征图输入至transformer模型的步骤具体为:选取第3、4和5层的图片特征图输入至transformer模型。结合图3,所述步骤s14具体包括:
[0056]
步骤s141、将骨干网络的各层输出图片特征图的通道数通过线性映射的方式进行映射后统一为256。其中,骨干网络的各层输出图片特征图是指选取的骨干网络的各层输入至transformer模型的图片特征图,骨干网络的第3、4和5层输出图片特征图的原始的通道数分别为512、1024和2048,通过线性映射统一各层的输出图片特征图的通道数以方便后续特征融合操作,降低计算复杂度。
[0057]
步骤s142、采用双线性插值算法对第5层的图片特征图进行上采样;将第4层的图片特征图通过1
×
1的普通卷积后与上采样后的第5层的图片特征图进行相加融合后通过3
×
3的逐通道卷积再经过1
×
1的普通卷积进行更新,获得新的第4层的图片特征图;采用双线性插值算法对新的第4层的图片特征图进行上采样;将第3层的图片特征图通过1
×
1的普通卷积后与上采样后的新的第4层的图片特征图进行相加融合后通过3
×
3的逐通道卷积再经过1
×
1的普通卷积进行更新,获得新的第3层的图片特征图作为第3、4和5层的图片特征图融合后的多尺度特征图。
[0058]
其中,所述步骤s142具体为:
[0059]
采用双线性插值算法对第5层的图片特征图进行上采样;
[0060]
将第4层的图片特征图通过1
×
1的普通卷积后与上采样后的第5层的图片特征图进行相加融合,获得初步融合的第4层的图片特征图;
[0061]
该初步融合的第4层的图片特征图通过3
×
3的逐通道卷积后再经过1
×
1的普通卷积以进行更新,获得新的第4层的图片特征图;
[0062]
采用双线性插值算法对新的第4层的图片特征图进行上采样;
[0063]
将第3层的图片特征图通过1
×
1的普通卷积后与上采样后的新的第4层的图片特征图进行相加融合,获得初步融合的第3层的图片特征图;
[0064]
该初步融合的第3层的图片特征图通过3
×
3的逐通道卷积后再经过1
×
1的普通卷积以进行更新,获得新的第3层的图片特征图,该新的第3层的图片特征图作为第3、4和5层的图片特征图融合后的多尺度特征图。
[0065]
各层输出图片特征图的通道数为映射统一后的通道数,通过对相邻两层相加融合后的图片特征图进行逐通道卷积可实现信息提取,且可与后续的解码器相匹配,以便解码操作。
[0066]
步骤s143、将多尺度特征图展平后在空间维度进行拼接,获得单层二维特征图作为融合特征图,输出融合特征图至transformer模型中的解码器。其中,将多尺度特征图展平是指将多尺度特征图的三维度(w,h,c)变换为二维度(wh,c),w表示宽,h表示高,c表示层级,wh表示多尺度特征图的分辨率,由于该多尺度特征图是根据新的第3层的图片特征图获
得的,则c为3。
[0067]
具体地,所述步骤s14和步骤s15中的所述解码器可采用可变形解码器,通过可变形解码器代替原始的解码器,可增加局部关注性,且可降低计算复杂度,从而可增加目标查询的数量以适应密集场景中的人脸检测。
[0068]
综上所述,本发明一种基于detr的人脸检测方法通过选择widerface数据集进行模型构建及训练以提高鲁棒性,通过采用dataanchor sample采样方法对widerface数据集内的图片进行随机裁剪和随机缩放,获取预处理后的图片,以提高小尺度人脸在数据集内的占比,使得后续训练获得的最终人脸检测模型可更好地检测小尺度人脸,而且,于transformer模型中引入特征金字塔网络,以融合浅层的空间信息与高层的语义信息,使得融合特征图具有更丰富的信息,提高了网络的准确度并降低了计算复杂度,降低内存占用,提高计算速度,通过直接获取模型并根据模型进行人脸检测,实现了端到端的人脸检测,无需大量设置anchor进行检测,无需人工先验知识,减少人工设置及超参数,降低人工设置带来的网络性能和检测效果的下降的可能性,提高检测网络的鲁棒性及可移植性。
[0069]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1