自然场景下融合YOLOV5的口罩实时检测算法的制作方法
未命名
08-01
阅读:171
评论:0

自然场景下融合yolov5的口罩实时检测算法
技术领域
1.本发明涉及实时检测领域,尤其涉及自然场景下融合yolov5的口罩实时检测算法。
背景技术:
2.冠状病毒的传播途径主要是通过密切接触、空气中的飞沫或者气溶胶等方式传播,在公共场合佩戴口罩可以有效降低被病毒感染的风险,但这不仅需要个人自觉遵守,也需要利用相关技术进行监督和管理。
3.就传统方法而言,检测是否佩戴口罩大多依靠人力,但冠状病毒传染性极强,而且公共场所环境复杂,依靠人力检查存在感染风险高、工作强度大、覆盖面窄、实时性差等弊端,检测人脸佩戴口罩算法实际上是人脸检测算法和口罩佩戴分类算法的结合体,随着深度学习的发展,基于神经网络的目标检测算法和目标分类算法已经比较成熟,将这两项任务有机的结合起来,可以有效缓解人工检测所面临的一系列问题,因此,利用深度学习的方法来代替人工检测具有重要的研究意义。
4.然而,现有口罩检测算法遇在复杂场景不能实时检测,并且在人脸密集和小尺度的场景下,存在不能有效提取面部口罩特征的问题。
技术实现要素:
5.本发明克服了现有技术的不足,提供自然场景下融合yolov5的口罩实时检测算法。
6.为达到上述目的,本发明采用的技术方案为:自然场景下融合yolov5的口罩实时检测算法,其特征在于,包括:在yolov5主干网络结构中设置的特征提取模块以及推理模块;所述特征提取模块采用双分支结构,包括用于提取局部特征的局部特征提取分支,以及用于提取全局特征的全局特征提取分支,获取全局特征与局部特征融合后的特征;所述推理模块包括flatten层、位置编码器、多头注意力结构层、线性层以及rearrange层,包括以下步骤:通过flatten层把输入的张量改组为一个序列,采用正弦和余弦编码的方式得到相对位置编码,将正弦函数和余弦函数处理得到的值,成对嵌入到卷积特征中,输入到多头注意力结构层;多头注意力结构层的输出经过归一化后输入至线性层,所述rearrange层用于将归一化处理过的输出转化为检测头head所期望的shape文件。
7.本发明一个较佳实施例中,所述全局特征提取分支采用瓶颈结构,用于降低网络计算复杂度。
8.本发明一个较佳实施例中,所述局部特征提取分支的步骤包括:使用步长为2,卷积核为3
×
3的卷积层对输入特征图进行降维操作,即降至原特征图的1/4,进而利用两个步长均为1的卷积层提取局部特征。
9.本发明一个较佳实施例中,所述全局特征提取分支的步骤包括:先利用全局平均池化提取全局特征,而后使用softmax函数全局特征分布学习,最后对全局特征与局部特征
采用点乘的方法,获取融合后的特征。
10.本发明一个较佳实施例中,所述推理模块中,使用两次shortcut连接,使得网络能获取较前层的特征信息,加强特征的复用。
11.本发明一个较佳实施例中,通过全局特征分支提取全局信息,并指导局部特征提取。
12.本发明解决了背景技术中存在的缺陷,本发明具备以下有益效果:
13.本发明提出了一种基于yolov5改进的检测网络来解决复杂场景口罩检测问题,首先,考虑到口罩检测数据集较小,采用数据增强的方法提供更多的训练数据,充足的训练数据可以有效地避免过拟合,其次,使用双分支结构的全局与局部特征提取模块,利用全局特征分支提取全局信息并指导局部特征提取,提出一种推理模块(reasoning block,rb),以提取图像各区域间的语义关系,获取更为丰富的特征信息,从而达到提高面部口罩区域检测精度的目的。
附图说明
14.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图;
15.图1是本发明的特征提取模块结构图;
16.图2是本发明的推理模块结构图;
17.图3是本发明改进后的yolov5网络结构图;
18.图4是本发明的优选实施例的f1曲线;
19.图5是本发明的优选实施例的p-r曲线。
具体实施方式
20.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,本发明的描述中,“实施例”、“一个实施例”或“其他实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.注意力机制(attention mechanism)的思想来源于人类视觉。日常生活中,人类往往需要从大量纷繁复杂的信息中筛选出对其有价值的信息,这就需要人类对目标区域进行快速扫描,过滤无价值的区域,保留有价值的区域并对其投入更多的注意力。人类的这种能力运用到深度学习中被称为注意力机制,神经网络区别对待对输入信息,给予关键信息较大的注意力权重。
22.本发明借鉴注意力的思想,设计了一个全局与局部特征提取块(global and local feature extraction block,glb),如图1所示。该模块采用双分支结构分别提取局部与全局特征,两分支主要参数如表1所示。
[0023][0024]
表1 glb主要参数
[0025]
局部特征提取分支主要使用步长为2,卷积核为3
×
3的卷积层对输入特征图进行降维操作,即降至原特征图的1/4,进而利用两个步长均为1的卷积层提取局部特征。全局特征提取分支主要采用瓶颈结构,用于降低网络计算复杂度,具体步骤是先利用全局平均池化提取全局特征,而后使用softmax函数全局特征分布学习,最后对全局与局部特征采用点乘得方法,获取融合后的特征。
[0026]
推理模块:transformer的方法被广泛应用于自然语言处理中,其采用并行计算的方式,减少序列处理任务的计算量,提高了计算效率,且使用attention机制能更好地解释模型。本发明借鉴transformer的思想,提出一个reasoning block模块。reasoning层的体系结构如图2所示。该结构有flatten层、位置编码器(position encoding)、多头注意力结构(multi-head attention)、norm、linear、relu和rearrange层组成。
[0027]
具体的,首先通过flatten层把输入的张量改组为一个序列,然而此序列无法获得位置信息,为此采用正弦和余弦编码的方式得到相对位置编码,以获得区域位置信息,如式1和式2所示。
[0028][0029][0030]
其中,i表示区域在序列中的位置,j表示特征深度索引,经过正弦函数和余弦函数处理得到的值,被成对嵌入到卷积特征中,输入到multi-head attention层。multi-head attention的输出经过归一化后输入至线性层,为了处理ics问题(internal covariate shift),本发明使用了层归一化方法。在rb模块中,使用两次shortcut连接,使得网络能获取较前层的特征信息,加强特征的复用。rearrange是rb模块的最后一个子层,其作用是把第二个层归一化处理过的输出转化为检测head所期望的shape文件。
[0031]
基于改进的yolov5口罩识别算法:本发明为达到口罩实时检测,采用yolov5结构作为主干网络,为加强网络对口罩区域特征提取,解决密集和小尺度的场景下不能有效提取缺陷特征的问题,提出了双分支结构的全局与局部特征提取模块,利用全局特征分支提
取全局信息并指导局部特征提取;为了细粒度的提取不同缺陷区域间的语义特征信息,借鉴transformer编码的思想提出rb模块,以提取图像各区域间的语义关系,获取更为丰富的特征信息,网络结构如图3所示。
[0032]
深度神经网络中浅层特征具有丰富的细节信息,例如轮廓、纹理等低级特征;而高层特征则具有丰富的语义特征信息,但随着网络深度增加,会不可逆的丢失细节信息。为使提取到的面部特征具有更好的细节表征能力,增强动态场景下口罩检测效果,在网络的不同层里面引入glb模块。
[0033]
口罩区域在像素空间向特征空间映射时,缺少特征点之间的互相联系,为了加强特征点之间的互相联系,强化口罩区域的特征并且抑制其余面部特征,在网络中引入rb模块。特征映射过程中,使网络可以学习高级语义分布,并强化所需要的口罩区域语义特征,去除冗余特征。
[0034]
实施例一
[0035]
实验在ubuntu系统上进行,使用pytorch框架训练模型,训练使用内存32g,配备gtx3060显卡的工作站。
[0036]
数据集和评价指标
[0037]
口罩检测功能的实现分为特征向量提取与分类两个步骤,提取人脸深度特征向量信息,需要先构建并训练合适的深度特征提取网络,本实施例使用yolov5网络融合注意力机制构建网络模型框架,使用某研究所搜集的口罩数据作为训练数据进行模型训练。具体步骤如下:
[0038]
(1)数据集扩充。对数据集进行随机裁剪、旋转以及镜像等操作来扩充数据集,目的是增强样本的多元化与多样性,使模型的泛化能力有所提高,以防止在训练中出现过拟合现象。
[0039]
(2)划分数据集。把训练集、验证集和测试集按照85%,5%以及10%的比例进行划分。
[0040]
(3)模型构建与训练。使用yolov5网络融合注意力机制构建网络模型,并使用pytorch框架进行训练。
[0041]
为了评估本发明所提出的人脸口罩佩戴检测算法的性能,引入以下指标,正确预测正样本(true positive,tp)、错误预测正样本(false positive,fp)、正确预测负样本(true negative,tn)、错误预测负样本(false negative,fn)。
[0042]
精确率(precision):预测为正样本的样本中正样本所占的比例,其计算方式为
[0043][0044]
召回率(recall):正样本中被成功预测为正样本的比例,其计算方式为
[0045][0046]
平均精度ap(average precision):衡量某一类的分类效果,其计算方式为
[0047]
[0048]
平均精度均值map(mean average precision):表示所有类别平均精度的均值,反映总体目标检测效果,其计算方式为
[0049][0050]
f1 scores为模型的精确率和召回率的调和平均数。
[0051][0052]
为了便于观察分析本发明算法对于口罩检测的其他性能指标,对口罩进行检测并绘制p-r曲线和f1曲线来评价检测模型的性能,从图4以及图5可以看出本发明算法取得了较优的结果。
[0053]
通过消融实验来验证所添加模块对口罩检测的影响,如表2所示。其中face表示未戴口罩识别精度,mask表示戴口罩识别精度,map表示平均精确度。
[0054]
实施方法face/%mask/%map/%yolov594.395.194.7yolov5+rb96.797.397yolov5+glb94.595.795.1yolov5+rb+glb98.198.498.2
[0055]
表2消融实验
[0056]
以上依据本发明的理想实施例为启示,通过上述的说明内容,相关人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定技术性范围。
技术特征:
1.自然场景下融合yolov5的口罩实时检测算法,其特征在于,包括:在yolov5主干网络结构中设置的特征提取模块以及推理模块;所述特征提取模块采用双分支结构,包括用于提取局部特征的局部特征提取分支,以及用于提取全局特征的全局特征提取分支,获取全局特征与局部特征融合后的特征;所述推理模块包括flatten层、位置编码器、多头注意力结构层、线性层以及rearrange层,包括以下步骤:通过flatten层把输入的张量改组为一个序列,采用正弦和余弦编码的方式得到相对位置编码,将正弦函数和余弦函数处理得到的值,成对嵌入到卷积特征中,输入到多头注意力结构层;多头注意力结构层的输出经过归一化后输入至线性层,所述rearrange层用于将归一化处理过的输出转化为检测头head所期望的shape文件。2.根据权利要求1所述的自然场景下融合yolov5的口罩实时检测算法,其特征在于:所述全局特征提取分支采用瓶颈结构,用于降低网络计算复杂度。3.根据权利要求1所述的自然场景下融合yolov5的口罩实时检测算法,其特征在于:所述局部特征提取分支的步骤包括:使用步长为2,卷积核为3
×
3的卷积层对输入特征图进行降维操作,即降至原特征图的1/4,进而利用两个步长均为1的卷积层提取局部特征。4.根据权利要求1所述的自然场景下融合yolov5的口罩实时检测算法,其特征在于:所述全局特征提取分支的步骤包括:先利用全局平均池化提取全局特征,而后使用softmax函数全局特征分布学习,最后对全局特征与局部特征采用点乘的方法,获取融合后的特征。5.根据权利要求1所述的自然场景下融合yolov5的口罩实时检测算法,其特征在于:所述推理模块中,使用两次shortcut连接,使得网络能获取较前层的特征信息,加强特征的复用。6.根据权利要求1所述的自然场景下融合yolov5的口罩实时检测算法,其特征在于:通过全局特征分支提取全局信息,并指导局部特征提取。
技术总结
本发明公开了自然场景下融合YOLOV5的口罩实时检测算法,包括:在YOLOV5主干网络结构中设置的特征提取模块以及推理模块;所述特征提取模块采用双分支结构,包括用于提取局部特征的局部特征提取分支,以及用于提取全局特征的全局特征提取分支,获取全局特征与局部特征融合后的特征;所述推理模块包括Flatten层、位置编码器、多头注意力结构层、线性层以及Rearrange层,本发明利用全局特征分支提取全局信息并指导局部特征提取,并借鉴transformer编码的思想提出一种推理模块(ReasoningBlock,RB),以提取图像各区域间的语义关系,获取更为丰富的特征信息,从而达到提高面部口罩区域检测精度的目的。提高面部口罩区域检测精度的目的。提高面部口罩区域检测精度的目的。
技术研发人员:尹明臣 邵晶丽
受保护的技术使用者:苏州微光电子融合技术研究院有限公司
技术研发日:2022.09.07
技术公布日:2023/7/31
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/