版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于改进YOLOv5算法用于电动车头盔检测的研究摘要:鉴于我国电动车数量庞大,且电动车发生事故量在交通事故中的占比居高不下,因此如何降低电动车事故对骑行者的伤害成为了一个亟待研究的问题。目前,我国大多数城市已出台法规,要求电动车骑行者佩戴头盔,以确保骑行安全。目前我国对电动车骑行的监管方式主要依赖于交警现场执法,这种方式不仅耗费大量人力和时间,效率低下,而且受限于时间和地点,难以实现有效的全面监管。目前许多研究者都使用目标检测算法来实现对电动车骑行者的安全管理,然而,现有的数据集大多不适用于复杂场景下的小目标检测任务。为了让电动车头盔检测模型更好地适用于复杂的电动车头盔检测场景,本文设计了一个电动车头盔检测系统,基于YOLOv5算法提出多种网络优化方法,如改进骨干网络结构、改进多尺度特征融合结构以及优化后处理等多种优化措施,并采取使用Mosaic-9数据增强和添加CBAM注意力机制的改进措施进行对比实验,还开发了一个基于Qt框架的头盔检测可视化界面。最终,通过对比实验和一系列的评估指标分析,实现了对YOLOv5算法在复杂场景下进行小目标检测的优化,并相比于原算法模型在各个评估指标上均有相对提升。关键词:改进YOLOv5;头盔检测系统;注意力机制ImprovedYOLOv5basedalgorithmforelectricvehiclehelmetdetectionAbstract:GiventhelargenumberofelectricvehiclesinChinaandthehighpercentageofaccidentsinvolvingelectricvehiclesintrafficaccidents,howtoreducetheinjuriesofelectricvehicleaccidentstoridershasbecomeanurgentresearchissue.Atpresent,mostcitiesinChinahaveissuedregulationsrequiringe-vehicleriderstowearhelmetstoensureridingsafety.Atpresent,China'sregulatoryapproachtoEVridingmainlyreliesonon-siteenforcementbytrafficpolice,whichnotonlyconsumesalotofmanpowerandtimeandisinefficient,butisalsolimitedbytimeandlocation,makingitdifficulttoachieveeffectiveandcomprehensiveregulation.Manyresearchershaveusedtargetdetectionalgorithmstorealizethesafetymanagementofe-vehicleriders,however,mostoftheexistingdatasetsarenotapplicabletosmalltargetdetectiontasksincomplexscenarios.InordertomaketheEVhelmetdetectionmodelbetterapplicabletocomplexEVhelmetdetectionscenarios,thispaperdesignsanEVhelmetdetectionsystem,proposesvariousnetworkoptimizationmethodsbasedontheYOLOv5algorithm,suchasimprovingthebackbonenetworkstructure,improvingthemulti-scalefeaturefusionstructure,andoptimizingthepost-processingandotheroptimizationmeasures,andadoptstheenhancementofusingMosaic-9dataandtheadditionoftheCBAMTheimprovementmeasuresofattentionmechanismareusedforcomparisonexperiments,andavisualizationinterfaceforhelmetdetectionbasedonQtframeworkisalsodeveloped.Finally,throughcomparativeexperimentsandaseriesofevaluationindexanalysis,theoptimizationofYOLOv5algorithmforsmalltargetdetectionincomplexscenesisachieved,andcomparedwiththeoriginalalgorithmmodel,thereisarelativeimprovementineachevaluationindex.KeyWords:ImprovementofYOLOv5;helmetdetectionsystem;attentionmechanism
目录TOC\o"1-3"\h\u128421绪论 1254481.1研究背景及意义 1145431.2国内外研究现状 2247391.3主要研究内容 317222相关理论基础介绍 5150202.1卷积神经网络 5285142.1.1卷积层 6220312.1.2池化层 8287462.1.3全连接层 10247712.1.4损失函数 1051282.2目标检测算法介绍 13260102.2.1双阶段检测算法 136252.2.2单阶段检测算法 14154132.2.3YOLO网络概述 14202822.3YOLOv5算法原理介绍 15168102.4YOLO检测流程 18252302.5评价指标概述 20264232.6本章小结 22295453改进YOLOv5电动车头盔佩戴检测算法 23204123.1骨干网络改进 2324893.2多尺度特征融合 26148003.3非极大值抑制算法优化 28283063.4本章小结 2991294实验准备 30253384.1数据准备 30161864.2Mosaic-9数据增强 31312515模型训练及验 33164245.1训练结果分析 3365845.1.1训练过程对比 3367955.1.2训练结果对比 36319335.2可视化界面 42165335.3本章小结 43113806总结与展望 4478296.1总结 44212906.2展望 4420465参考文献 466071致谢 48PAGE17附录1绪论1.1研究背景及意义目前,全球90%左右的电动车和摩托车都进入了中国市场REF_Ref7639\r\h[1]。此外,自2019年以来,全国电动车需求不断增高,电动车市场前景广阔,电动车的生产、销售量也持续走高。通过数据分析,截止2022年国内的电动车数量已经达到了3.5亿辆REF_Ref7639\r\h[1]。随着我国城市化发展,人们日均活动范围也随之增长,电动车的需求仍在不断扩大。在电动车的发展过程中,电动车行驶速度也在逐步提高,导致电动车的各项安全隐患问题突出,极易发生交通安全事故。为了降低我国电动车交通事故的风险,我国大部分城市出台大量法规来规范电动车骑行行为,其中特别强调电动车骑行者在骑行时必须佩戴头盔。经分析,在电动车交通事故中,头部受伤是电动车事故伤亡率和致残率高的主要因素。人体头部作为生命要害部位,有众多中枢神经非常脆弱。同时由于惯性,电动车在高速行驶发生交通意外事故时,多是以头部撞击导致伤害,佩戴安全头盔则可以有效减轻甚至避免头部受到重伤。相关数据表明,如果不佩戴安全头盔骑行电动车,在发生交通事故时死伤率将大幅提高。此外,电动车骑行者因未佩戴安全头盔而在事故中不幸丧生的比例占到伤亡案例的八成。且正确佩戴安全头盔将大幅度降低约七成的碰撞伤害,并使交通事故中的伤亡风险减少40%以上REF_Ref8370\r\h[2]。此外,头盔还能够有效防止对骑行者关键部位造成致命伤害,从而维护骑行者的生命安全。交通管理系统中,通常采用交警现场执法的方式来监管骑行者佩戴头盔,这一方法耗费巨大的人力和时间,且受时间以及地点的限制,难以形成规模。利用图像识别技术可以有效解决这一问题,通过交通摄像头实时输入路面情况,利用图像识别算法,可以对回传的路面车辆情况进行实时监测。同时可以在交通摄像头旁嵌入喇叭,开发智能预警系统,只要检测到有未佩戴头盔的骑行者,就启动预警系统智能提醒,实现对电动车安全骑行的智能劝导活动。目前人工智能技术已经趋于成熟,且处理器、内存等硬件发展也突飞猛进,计算机运算能力得到了很大的提高。这使得人工智能技术,尤其是机器学习算法迅速发展,目前行业内经常采用基于机器学习理论和神经网络的目标检测算法。机器学习是通过计算机视觉识别技术对已有数据集进行规模化的不断学习,使得在训练结束后可以具备较高的识别效率和准确率,这为上述研究提供了有力的支持。其中YOLO算法是现目前最为流行的目标检测算法,它使用神经网络能同时预测一张图像中的多个目标,如头盔、人群、车辆等目标的位置和类别。因此,本文采用YOLO目标检测算法,来实现对道路上电动车骑行者是否佩戴头盔的智能检测。1.2国内外研究现状随着道路交通的不断发展,电动车以便捷、快速的优势走入越来越多人的生活。伴随而来的是,电动车的道路交通安全隐患也不断变大。各地纷纷发布电动车驾驶员在骑行时需佩戴安全头盔的规定。目前,人工智能技术不断发展,其中目标检测算法的精度和效率也在不断提高,因此可以应用于电动车头盔佩戴检测领域。且国内外有关电动车头盔检测的研究相对较少,但相似类型的算法模型较多,如建筑施工地安全帽的佩戴检测等,本文采用与工地安全帽检测相似的机器视觉算法模型进行研究,并对目标检测技术和头盔佩戴检测方法的研究现状进行介绍。当前,国内对电动车头盔检测的研究较为有限,而工地安全帽检测的研究相对广泛。过去的研究中,有部分研究者者采用了反向传播神经网络和小波变换等方法来识别头盔的佩戴,同时也有一部分学者选择使用目标像素颜色检测的方式进行头盔识别。近年,多位研究学者,包括卢建刚REF_Ref8511\r\h[3]等人,将深度学习与目标检测算法相融合,利用区域卷积神经网络以及分层图像特征提取等手段,实现了对安全帽的精准识别。这种研究方法在提取和识别目标图像时无需手动设计特征,具有高准确度和快识别率的特征,为电动车头盔检测提供了一个新的研究方向。在电动车佩戴头盔检测方面,许多研究人员已经做出了贡献。ZhangREF_Ref8563\r\h[4]等人在2020年提出了一种基于改进YOLOv4算法的电动车头盔检测方法,其识别准确度高达98.8%。同年,LiREF_Ref8563\r\h[4]等人也提出了一种新颖的检测方法,该方法采用改进的SSD算法对电动车头盔进行检测,平均准确率达到了97.8%。此外,还有研究人员致力于开发基于深度学习的自动检测系统,如ShiREF_Ref8596\r\h[5]等人在2020年成功开发了一种深度学习电动车头盔检测系统。在算法优化方面,2021年,薛瑞晨REF_Ref8625\r\h[6]等人在对YOLOv3算法进行改进,采用增加注意力机制和引入通道注意力等措施来优化特征提取的效果。庄建军REF_Ref9105\r\h[7]等人则在2022年采用了改进的YOLOv5m算法对骑行者头盔和车牌进行检测,通过引入DIOU损失函数和DIOU_NMS,有效提高了模型在密集场景中的识别能力。R.GirshickREF_Ref9239\r\h[8]等人在目标检测与语义分割领域创新提出R-CNN算法,为准确定位检测对象提供了有效方法。该方法巧妙地结合了深度神经网络和传统计算机视觉技术的优势,在目标检测和语义分割任务中取得了显著成果。通过利用高容量卷积神经网络对图像进行自上而下的定位和分割,R-CNN在多个数据集上展现了出色的检测和分割精度。此外,S.S.KimREF_Ref9301\r\h[9]等人基于深度学习对摩托车骑手头盔佩戴情况进行了深入分析。他们采用高斯混合模型对前景对象进行轻量级的分割和标记,进而利用基于区域的卷积神经网络来更高效地进行目标检测。这种方法通过数据集不断训练神经网络,以此实现高精度头盔佩戴检测,为交通安全监管提供了有力支持。1.3主要研究内容电动车在交通事故中发生比例较高,且对骑行者的潜在伤害较大,因此如何减少电动车对骑行者的损害成为一个重要的研究课题。本文研究设计基于改进YOLOv5算法的方法来进行电动车头盔的识别。首先,本文详细介绍了机器学习、深度学习、卷积神经网络和目标检测算法的相关理论知识。再对YOLO算法进行概述,介绍YOLOv5算法的检测流程、理论原理和评价指标,它可以实时检测多个目标,且具有高精度和高效率的特点。然后,针对电动车头盔的检测问题,本研究改进YOLOv5算法,在对改进方式进行技术调研分析后REF_Ref9330\r\h[10],提出了多种改进措施对YOLOv5算法进行优化,其中选取添加CBAM注意力机制和在训练样本中添加Mosaic-9数据增强的方案进行实验研究,对改进后的模型进行了重新训练和测试,以提高电动车头盔检测的准确率和鲁棒性。在实验部分,本研究收集了大量电动车骑行场景图片,通过在互联网中收集电动车骑行场景的视频和图片,并采用COCO大型目标检测数据集整合成一个具有多场景的复杂场景数据集,并用labelimg软件进行了数据标注,再进行格式转换和数据集划分,用于训练和检测改进前后算法的性能。实验对比结果表明,改进后的YOLOv5算法在精确度和准确性上有一定的提升,且在复杂场景下,小目标检测具有较高的准确性,能够有效地检测电动车骑行者是否佩戴头盔。此外,本研究还分析了将改进的YOLOv5算法应用于现有交通管理系统的可行性,基于PySide6实现智能头盔检测系统的可视化操作界面,可以更清晰直观地看到骑行者头盔检测过程。该可视化系统支持图片和视频检测,目前只针对于保存的视频进行抽帧处理后进行检测。并将抽取到的帧图像进行连续检测输出。以此为基础,在后续改进中,还可以支持视频实时传输监测,可以与现有的交通摄像头结合,实现对电动车骑行者头盔的自动监测和违规行为的实时抓拍。这种方法将大大提高交通安全监管的效率和精度,降低人力成本,并促进交通法规的执行。本研究通过改进YOLOv5算法进行电动车头盔的检测,以提高对电动车佩戴头盔的监管效果,从而减少电动车在交通事故中对骑行者的伤害。实验验证了该优化措施在电动车头盔检测方面具有较高精度和准确性,复杂场景下小目标检测具有较高的识别率。进一步的研究可以探索如何将该方法应用于现有的交通管理系统,并进一步提高交通安全监管的效果。2相关理论基础介绍近年来,随着机器学习和深度学习不断进步,卷积神经网络的相关模型也在不断更新。相关模型的不断优化,这也对于提高电动车头盔佩戴检测算法的检测速度和精度起到了重要最有。在对网络不断优化的过程中,模型的体积也在逐渐减小,这使得它们更容易被移植到计算资源有限的设备上,也更加容易被运行。因此,本章将介绍卷积神经网络的基础知识和当前主流的目标检测算法,为后续章节中改进以YOLOv5目标检测算法奠定基础,来检测复杂场景下的电动车骑行者是否佩戴头盔。2.1卷积神经网络卷积神经网络(CNN)是一种深度学习算法,深度学习的研究可以追溯到福岛邦彦提出的neocognition模型,该模型是最早的深度学习模型之一,是对生物的视觉皮层进行仿造的模型。初代人工神经网络ANN由简单的感知器神经层组成,只能进行有限的简单计算。然而,在1987年亚历山大-怀贝儿提出的时间延迟网络(TDNN),主要应用于语音识别领域,其中包括了输入层和两个一维卷积构成的隐含层。此后,衍生出了许多其他算法,如深度前馈神经网络(FNN)等。但在2012年卷积神经网络才真正引起人民高度关注,AlexNet网络以其独特的结构显著降低了目标物体的误检率,提高了检测精度,超越了当时所有的机器学习算法模型。自AlexNet问世以来,卷积神经网络迅速崛起,成为研究的热点,并引发大量基于卷积神经网络的新型网络模型提出和实现。尽管存在众多的衍生算法,但它们基本上都遵循一个核心框架,包括输入层、隐含层和输出层这三个主要层次,在隐含层中包含卷积层、池化层和全连接层等关键组成部分。这些层次共同构成算法的基础结构,使得算法能够有效地进行特征提取、信息处理和结果输出。其基本结构如图2-1所示。图2-1卷积神经网络基本结构图卷积神经网络具有局部连接和权值共享等特点,它是通过理解和抽象人脑的视觉皮层对外界刺激的响应机制,以模仿生物神经系统的基本原理和结构为基础,提出的一种数学模型,可以对复杂信息进行非线性关系表示和逻辑操作。这种神经网络模型可以模仿各种生物信号,并来处理不同类型的信号。卷积神经网络模型模仿了生物神经网络受到外界信号刺激后,信号在神经网络传递中,下一个神经元被激活是取决于所传输过来的信号值是否高于该神经元响应的阈值,若高于这个阈值,这神经元被激活并向后传输信号,如图2-2所示。图2-2神经元对比结构图目前,卷积神经网络是应用最广泛的模型之一。卷积神经网络利用了生物神经系统中信号传输的原理,实现了信号的输入与输出。人工神经网络主要采用全连接的方式,导致了计算量增加,但是卷积神经网络能够巧妙地避免这类问题,它提供端到端的学习方式,非常适用于图像特征提取和分类任务。因此,卷积神经网络主要用于处理图像相关的机器学习问题,并且在识别效果上有显著的提升。2.1.1卷积层卷积层在卷积神经网络中扮演着重要的角色,类似于传统目标检测方法中的特征提取器。卷积层旨在利用特定的卷积核对上一层提取的图像信息进行卷积操作,提取出图像中的关键特征信息。再通过预先设定的矩形特征卷积核,对像素矩阵进行精细的卷积运算。这种方式不仅高效地提取出图像的特征值,而且所提取的特征不会受到图像像素的空间关系影响,对后续的图像分析不产生干扰。经过卷积操作后,图像中的所有像素值都会发生变化,较小的像素值可能被削弱,较大的像素值则会增强。这种原理使得我们可以为不同类型的图像设置不同数值的卷积核。卷积层采用局部连接的方式,将上一层提取到的图像信息与卷积核进行连接,避免了全连接操作带来的计算量增加问题。随着网络模型深度的增加,通过卷积操作获取的局部特征可以综合为全局特征。从另一个角度来看,卷积操作也可以视为一种数字运算过程。卷积运算可以看作输入层与卷积核间做内积运算,或者视为两个特定函数间的运算关系。卷积运算包含了局部关联与窗口滑动两个内容。局部关联将卷积核视为滤波器,在图像上以滑动窗口的形式对不同局部数据进行相关函数运算,从而捕捉图像中的关键特征。卷积层主要分为包括卷积核的大小、步长和填充方式三个参数部分,其主要包括:(1)步长:表示卷积核在进行滑动卷积时每一次移动的距离,以及特征图输出的尺寸。通常情况下默认为1,通过设置不同的步长数值,可以输出不同尺寸的特征图,较小的步长可以提取到更多的特征,而较大的步长可以输出更小的特征图。(2)边界扩充:通过在原始图像的周围填充额外的像素,进行扩充处理,使其与卷积后的图像尺寸相匹配,可以使得卷积后的图像尺寸与原始图像相匹配。一般来说,扩充区域的默认值为0。边界扩充可以保留特征图的空间尺寸,防止信息丢失。(3)卷积核大小:其大小直接决定了所提取特征的空间范围。小卷积核擅长捕捉教细微的特征,而大卷积核则更善于提取更宽泛和宏观的特征。在选择卷积核大小时,需要根据任务需求和图像特征的复杂程度来进行参数调整。以4x4的单通道图像为例,采用3x3的卷积核,设置填充为1,步长设置为1,进行卷积运算,如图2-3所示。图2-3卷积运算过程使用3x3大小的卷积核对上述4x4图像进行卷积运算。卷积核沿着图像从左上角开始,按照步长为1的方式逐渐向右和向下滑动,并执行卷积操作。在每个位置,将卷积核覆盖的区域与对应位置的图像像素值进行逐元素相乘,然后将结果相加得到卷积的输出值。2.1.2池化层池化层通常情况下位于卷积神经网络的卷积层之后,也在神经网络中扮演着重要角色。池化操作与卷积操作类似,主要是对卷积层输出的特征图进行下采样处理,以此来减少数据的维度并提取出最关键的特征信息。通过下采样,池化层不仅能有效地减少数据规模,降低了神经网络在数据处理过程地计算量,有助于减少过拟合现象并加快模型的训练和推理速度。研究者通常会周期性地插入池化层在卷积之间来实现对模型的优化,如卷积层-激活函数-池化层,这个模式被重复多次以构建更深的网络,以促进特征信息的提取。这样不仅有助于控制过拟合,提高模型的运算效率,而且能够扩大感受野,增强网络泛化能力。池化层在卷积操作不仅能提取图像的边缘和曲线信息,还能确保卷积神经网络的后续层可以更高效地获取更加丰富的特征信息。合理使用神经网络中的池化层,可以控制过拟合、显著提高运算效率、增强泛化能力和优化网络性能,进一步提升卷积神经网络在图像识别精度和效率。池化层可以采用下采样的操作来减少输出特征的维度,通过降维的方式来减少计算参数和计算量,以此提升模型的运算效率,同时还有助于凸显图像中最显著的特征,并保留关键的空间信息。在池化操作中,最大值池化和平均池化是较为常见的方法。最大值池化是通过选取窗口内像素值的最大值作为输出,可以有效提取出特征图中最为突出的特征。而平均值池化则是通过计算窗口内像素值的平均值作为输出,更加侧重于保留全局信息,并减少噪声的影响。这两种池化函数都可以通过设置窗口的大小和步幅来控制下采样的程度。通过减少特征图的尺寸,可以降低后续层的输入维度,进而减少需要训练的参数数量。这样不仅可以减少模型的存储空间和计算量,还有助于避免过拟合的问题,够提高模型的泛化能力,也增强模型对于图像平移、缩放等变换的鲁棒性。池化层的参数主要包括窗口大小、不长和填充:(1)窗口大小:指用于聚合像素值的窗口大小。池化窗口大小通常有2x2、3x3等。窗口大小越大,聚合的信息就越多,但也会导致输出特征图尺寸更小。(2)步长:指的是池化窗口在特征图上的移动距离。它定义了池化窗口每次滑动的像素数。较大的步长可以加快下采样速度,使得输出特征图更小,而较小的步长则可以产生更多的输出特征图像素,尺寸相对较大。(3)填充:填充常用于控制池化操作后特征图的尺寸,在特征图的边缘添加额外的像素值,确保池化操作不会减小特征图的尺寸,保持与原始特征图相同的空间维度。如下,一个4x4的特征图,池化窗口为2x2、步长为2,进行最大值池化与平均池化,如图2-4所示。图2-4最大值池化最大值池化操作选择输出每个2x2的窗口中的最大值,将池化窗口的移动步长设置为2,每次移动两个像素位置。在池化过程中,池化窗口从特征图的左上角开始进行最大值池化操作,依次遍历每个2x2窗口并选取最大值进行输出。图2-5平均池化平均值池化将在每个2x2的窗口中计算窗口内所有像素值的平均值作为输出。步长为2表示池化窗口每次滑动2个位置。因此,从左上角开始进行平均池化操作,依次取每个窗口的平均值进行输出。2.1.3全连接层全连接层是整个卷积神经网络的最后一层,主要是将卷积层和池化层提取带的特征进行整合和分类。核心功能在于对先前层提取的特征进行线性组合及非线性变换,从而得出最终的分类结果。在全连接层的结构中,每个神经元均与前一层的所有神经元形成连接,每个连接都有一个可学习的权重参数,这种连接方式确保了信息的全面融合。并通过权重参数进行加权求和,再经过激活函数的作用,实现数据输入到输出分类的映射,最终的到分类结果。在参数设置上,全连接层包括权重矩阵和偏置向量。权重矩阵的大小通常与输入节点数和输出节点数相等。其每个元素代表了一个连接权重,决定了输入与输出层神经元之间的连接强度,从而影响了模型的学习能力和表达能力。偏置向量则用于为权重矩阵提供偏移量,每个输出神经元都有一个对应的偏置项,它可以调整网络的输出,并增加模型的灵活性,通过调整偏置项,可以使网络更好地适应训练数据。在模型的训练阶段,全连接层的权重矩阵和偏置向量通过反向传播对每个神经元进行计算,对神经元参数进行更新调整,实现预测输出与实际标签之间的误差最小化。根据误差信号不断反向调整权重和偏置的取值,以此不断优化模型对目标的拟合能力。随着训练的进行,全连接层能够逐渐学习到如何根据输入特征进行最佳分类决策,通过权重矩阵和偏置向量的调整,它能够捕捉输入数据中的关键特征,并输出合理的分类结果。全连接层在深度学习中扮演着重要角色,广泛应用于图像识别、自然语言处理等各种任务中。2.1.4损失函数损失函数是在机器学习和深度学习中用于衡量模型预测结果与真实值之间的差距或误差的一种函数。它起到了评估模型预测性能,并为优化算法提供明确的优化目标的作用。损失函数的核心是找到一种核心的度量方式,来刻画模型预测值和真实值之间的差异,以便模型能够尽可能地接近真实数据的分布或标签。当模型的预测值和真实值相差较大时,损失函数会给出较高的数值,若预测较为准确,损失函数的值则较低。通过最小化损失函数,模型可以逐步调整其参数,以改进预测性能,并逼近更理想的状态。常用的损失函数包括:(1)均方误差损失(MeanSquaredErrorLoss):均方误差损失函数计算预测值与真实值之间的均方误差,是取所有样本的平均值来衡量预测性能,适用于回归问题。这种方法对预测值与真实值之间的绝对差距较为敏感,有助于模型更好地拟合数据。同时对离群值也比较为敏感,可能导致模型在异常值出表现不佳。(2)交叉熵损失(Cross-EntropyLoss):交叉熵损失函数常用于解决分类问题,在多分类任务中表现出色,它通过比较模型预测的概率分布与真实标签之间的差异来评估模型的性能,同时还鼓励模型产生更接近真实标签的概率分布,来提高分类的准确性。(3)Hinge损失(HingeLoss):Hinge损失函数常用于支持向量机中。它适用于二分类问题,并通过测量预测分数与真实标签之间的差距来评估分类模型的性能。它对于分类正确的样本有较小的损失,对于分类错误的样本有较大的损失。在深度学习的训练过程中,损失函数的核心在于衡量模型对每个训练样本的预测结果与实际标签之间的误差,并累积所有样本的误差得出整体的损失值。它的选择对于模型性能和训练效果至关重要。每个训练样本都会通过模型进行前向传播,来产生预测结果。将预测结果传入损失函数,计算这些传入的预测值与真实值之间的误差。这个误差会针对每个样本进行计算,并累积得到总体的损失值。然后再通过反向传播算法,将损失值逆向传递回网络中,最后算法再根据链式法则,对网络中的权重和偏置等参数进行更新。因此,损失函数的选择将决定模型的性能和训练效果。不同的任务和数据类型可能需要采用不同的损失函数。在多分类问题中,交叉熵损失函数能够有效度量预测结果与真实标签之间的距离,并通过最小化交叉熵不断提高模型的分类能力;而对于回归问题,均方误差损失函数更为合适,它计通过算预测结果与真实值之间的差异,采用最小化均方误差来训练模型,从而提高模型的性能。损失函数的准确性和有效性直接关系到模型的学习效果和最终性能。通过不断优化损失函数的设计,可以进一步提高模型的泛化能力和准确性。为各种实际应用场景提供可靠的机器学习解决方案。卷积层、池化层和全连接层是神经网络中最主要的结构,卷积神经网络中的这些基础层都通过线性加权求和的方式对输入进行转换,从而形成对输入数数据的复杂线性组合。除了卷积层、池化层和全连接层的线性加权求和操作外,非线性激活函数的引入对于神经网络的训练和性能起到重要作用,同时便于神经网络能够更好地适应不同类别的数据。常用的激活函数包括sigmoid、ReLU和Mish等,它们具有不同的特点,在神经网络中至关重要,它们使得神经网络能够更好地进行各种复杂的非线性映射,有效地提取输入数据的特征。通过非线性激活函数可以有效提升模型的性能和预测准确性。(1)Sigmoid函数,其公式如式2-1所示:(2-1)Sigmoid激活函数有易于计算、平滑可导、输出值范围有限和非线性等优点,适用于二分类等问题,但也存在容易出现梯度消失、输出非零中心、计算代价较大和不适合多分类问题等缺点。(2)Tanh函数,其公式如式2-2所示:(2-2)Tanh激活函数的值域在[-1,1]之间,任何输入值都可以映射到这个范围内。Tanh函数的导数的最大值为1,其在反向传播算法中会更容易地产生较大的梯度,使得模型更快地收敛。Tanh函数在计算导数时,可以保证在正负饱和区间内的导数不会太小,避免了梯度消失问题。然而当输入数据中存在值远离0的极端值时,Tanh函数容易出现饱和现象,导数梯度接近于0,难以对网络产生有效的更新。(3)ReLU函数,其公式如式2-3所示:(2-3)ReLU也是常用的一种激活函数,解决了梯度消失问题。当输入为正时,能够保持原始输入值不变并传入后续层,当输入为负时,则神经元输出为0,有效地引入了稀疏性,促进了网络的训练速度和稳定性。但会存在一个“死区”现象,即在输入处于负区间时,神经元输出始终为0,导致神经元权重无法得到更新,从而使得这些神经元在训练过程中“死亡”,无法再对模型的输出结果产生任何影响。此外,ReLU的输出均为非0,可能会影响到网络的收敛性和模型的学习效果。(4)LeakyReLU函数,公式如式2-4所示:(2-4)LeakyReLU是对ReLU函数的改进优化,它是一种修正线性单元激活函数。式中QUOTEaa可以根据实际数据调整,通常情况下QUOTEaa取0.01。与ReLU不同的是,LeakyReLU在负区间内会有一个非零输出,这有助于在神经网络中避免的“死区”问题。相比于ReLU,LeakyReLU具有更好的鲁棒性,并且能够有效地防止梯度消失问题。(5)Mish函数,其公式如式2-5所示:(2-5)Mish激活函数在输入值为正时类似于ReLU函数,输出值范围在0到正无穷之间。它具有非线性特性和较大的梯度,适用于优化神经网络模型。但Mish的缺点在于计算复杂度较高,相对于其他激活函数需要更多的计算资源。2.2目标检测算法介绍目前,针对电动车骑行车佩戴头盔的检测算法,主要采用了可以自主学习的算法来进行目标检测,并且还能够预测目标的相关特征。基于人工智能理念,目标检测算法可分为双阶段和单阶段算法两种。双阶段目标检测算法首先会生成候选区域框,对候选框内的潜在目标物体进行精确的定位和分类处理REF_Ref9402\r\h[11]。这种方法的优势在于检测准确性较高,但相应的检测时间较长。其中,复杂的R-CNN模型是双阶段检测算法的代表REF_Ref9461\r\h[12],而单阶段算法较为简单,它直接预测图像中待检测目标的位置和类别。相对于双阶段检测算法,它的识别准确性相对较低,但检测速度较快。在单阶段目标检测领域,常用的有SSD和YOLO系列算法。2.2.1双阶段检测算法如图2-6所示,双阶段检测算法在第一阶段先产生候选区域,算法使用候选区域生成器对输入图像进行扫描,通过滑动窗口或锚框的方式生成一系列候选框和与之对应的边界框回归预测值和目标置信度得分。在第二阶段,通过一个卷积神经网络,对第一阶段的生成结果进行区域分类,并输出各个目标类别的概率。图2-6双阶段算法基本流程同时,双阶段检测算法如图2-7所示,还有一些改进的变体,如FPN、FasterR-CNN、R-FCN和MaskR-CNN等,它们在双阶段检测的基础上进行了不同的改进,进一步提升了检测性能,广泛应用于物体检测、目标跟踪和人脸识别等任务中。图2-7双阶段常见算法2.2.2单阶段检测算法YOLO算法是典型的单阶段算法,该类算法利用回归方式进行直接目标检测,对输入图片进行定位和分类操作,这种算法将目标检测简化检测流程,转化为了回归问题。在单阶段目标检测算法中,首先对每一个小网格的中心点设定多个锚框,然后以每一个锚框为基础生成相应的预选框。接下来,通过卷积神经网络的卷积操作提取出所需要的图像信息,并进行相应的特征融合操作,输出特征图。最后将预选框与特征图进行相互关联,通过损失函数来指导整个算法的训练过程。单阶段目标检测算法的优点在于其高速、高精度以及对小目标检测效果好。不过,由于它采用回归方式进行检测,对于类别差异显著的目标检测效果不好,同时,在面对遮挡、重叠等复杂情况的处理能力也较弱。2.2.3YOLO网络概述YOLO算法在目标检测的精度和速度上取得了较好的平衡。其结构主要由三部分特征提取层、全连接层和后处理模块组成。首先,YOLO算法这些网络结构层可以逐层抽象输入的图片,从而获得越来越高级别的特征。这些特征能够捕捉到不同尺度和语义的目标信息,为后续的目标检测提供基础。而在YOLO算法网络结构中连接了两个全连接层,它用来把卷积神经网络的输出映射到各个类别的概率。还给出物体的边界框中心点和长宽比的绝对位置信息,使得YOLO算法不仅可以检测出目标所属的类别,还能够提供目标的具体位置信息。此外,YOLO网络的最后一步是后处理模块,后处理模块对输出的预测值进行非极大值抑制操作,此操作将消除冗余边界框并保留置信度最高边界框。相比于其他目标检测方法,YOLO算法不需要多次扫描输入图像,因此速度更快,且能够在保持较高准确率的情况下进行实时检测。2.3YOLOv5算法原理介绍YOLOv5算法是YOLO算法系列中较为常用的版本,YOLOv5提供了5种不同版本的YOLOv5算法,包括为YOLOv5s、YOLOv5m、YOLOv5n等。本文重点针对YOLOv5s算法进行算法优化,YOLOv5目标检测网络由四个部分组成:输入端通过多样化的数据增强技术来扩充数据集,增加了数据的多样性和丰富性,还有助于提高模型的泛化能力,使模型能够更好地适应各种实际场景中的目标检测任务。骨干网络主要由Focus、CBL、CSP和SPP等网络部分组成。Focus网络模块用于减少计算量和参数数量,以提高速度和效率。CBL模块主要用于输入无图像特征的提取,通常利用卷积和批归一化来实现。CSP模块则采用了CrossStagePartial连接的结构,可以有效地跨层传递信息,提高特征表达能力。SPP模块则是空间金字塔池化,实现了多尺度的信息交互。而输出端或称为头部,它由一系列卷积层和全连接层组成,则负责目标的精准预测和输出结果的处理。YOLOv5的网络结构如图2-8所示。图2-8YOLOv5算法网络结构图YOLOv5算法针对不同的网络深度和特征图宽度分为五个不同版本。其网络结构主要可分为四个部分:输入端、骨干网络、颈部网络和输出端。下面将详细介绍前两个部分:1、输入端1)Mosaic数据增强输入端作为YOLOv5算法的第一步,将对图片数据进行处理。该算法采用数据增强方法来提升模型的鲁棒性。输入端对输入的图片进行翻转、缩放及色域调整变化等操作,并将多张图片融合成一张带有原始标注筐的大图。这种方式不仅增加了小目标的数量,还丰富了检测数据集,从而提升网络的性能。2)自适应锚框计算为了匹配不同数据集的独特性质,YOLOv5会预先计算锚框。这一过程通过k-means聚类算法来实现,从标签中选择出各类别的最佳锚框,使模型可以更精确地预测目标的位置和大小,从而提高检测的准确性。但这种方法可能导致网络收敛速度减慢。因此YOLOv5采用了K-means++重新聚类锚框大小,从而加快网络的收敛速度。2、Backbone结构Focus是用于提取特征的一种网络结构。通过该结构,可以将输入图像的长宽减半,同时使通道数增至为原来的四倍。这样可以有效整合空间信息到通道中,从而获得没有信息丢失的二倍下采样特征图。图2-9展示了Focus结构的直观示意。图2-9Focus结构YOLOv5通过引入CSP结构来强化模型的特征学习能力。在CSP结构中,原始输入被巧妙地分割为两个并行处理的分支。每个分支独立执行卷积操作,并在此过程中减少了通道数,有效地降低了计算的复杂度。其中一个分支进一步经过多个Bottleneck组件深度处理,再使两个分支通过Concat操作进行合并,以获得更丰富的特征表示。这种设计有助于提升模型对图像特征的提取和识别能力。CSP结构的工作原理如图2-10所示。图2-10YOLOv5的CSP结构3、YOLOv5s改进算法原理和调整参数YOLOv5s作为YOLOv5的一个轻量级版本,其性能优化至关重要。如图2-11是YOLOv5s的CSP结构,为了进一步改进模型检测性能,可以从以下几个方面进行优化调整:图2-11YOLOv5s的CSP结构网络大小:网络深度和宽度的调整是平衡模型精度和速度的关键。增加深度能提升模型表达能力,但也会增加计算量和训练时间。因此在改进时,需权衡计算量和训练时间;而增加宽度则能增强特征提取能力,但需要考虑计算资源需求的增加。具体的深度和宽度调整需要根据应用场景和硬件条件进行。数据增强策略:可以进一步改良Mosaic数据增强方式等,如增加图片变换种类、调整变换参数范围等,以丰富数据集并增强模型鲁棒性。锚框的选择:通过调整K-means聚类的参数,如增加迭代次数或尝试不同初始值,可以选择更适合数据集的锚框大小。损失函数的权重:YOLOv5采用组合损失函数,可以根据实际需求调整各损失函数的权重,有助于提升目标检测性能。因此,通过调整网络结构、优化数据增强和调整参数等操作,可以优化算法模型的性能。2.4YOLO检测流程YOLO算法依托单个神经网络实现高效检测。其核心在于利用聚类的质心作为锚框,并利用这些锚框进行目标检测和位置预测。该算法通过回归预测目标的边界框,对于每个锚框,YOLO算法都预测三个关键信息:边界框的宽度、高度以及中心点坐标,用于调整锚框的大小以适应目标的实际尺寸。边界框的置信度表示该边界框包含目标的可信度,因此,YOLO算法能够迅速且准确地识别出目标,同时避免了冗余的计算,也成为了目标检测领域的热门选择,受到了广泛的关注和应用。置信度的计算公式如式2-6所示:(2-6)其表示为目标存在的先验概率及预测的边界框与真实边界框之间的交并比的乘积,通过计算置信度,筛选出具有高置信度的识别框,并作为检测结果。此外,每个边界框还附带了该物体属于C个类别的条件概率,则输出的张量形状如式2-7所示:(2-7)YOLOv5相较于之前的版本,在目标检测中采用了多个特征图进行预测,以更好地适应不同目标的尺度。通过使用多个特征图,该模型实现了特征信息的多元化整合,进一步优化了检测效果。特别值得一提的是,该方法不仅有效提高了小目标的检测率,而且依然保持了出色的检测速度。因此被广泛应用于计算机视觉领域。在YOLOv5中,每个尺度的特征图都有三种不同的锚框,这些锚框是通过聚类方法从训练集中得到的,可以覆盖各种目标形状和尺寸。例如,在YOLOv5s中,第一个尺度的锚框大小为(10,13),(16,30),(33,23);第二个尺度的锚框大小为(30,61),(62,45),(59,119);第三个尺度的锚框大小为(116,90),(156,198),(373,326)。接着,每个预测框模型会输出其与锚框的偏移量(QUOTE,QUOTEtyty,QUOTEtwtw,QUOTEthth)。公式2-8,2-9,2-10和2-11为偏移量的计算公式:(2-8)(2-9)(2-10)(2-11)其中,QUOTEbxbx和QUOTEbyby表示预测边界框的中心坐标,QUOTEbwbw和QUOTEbhbh分别表示预测边界框的宽和高。QUOTEcxcx和QUOTEcycy是当前网格单元的左上角坐标,即(QUOTEi,ji,j);而QUOTEpxpx和QUOTEpypy则是锚框的宽和高,QUOTEσtxσtx和QUOTEσtyσty表示经sigmoid函数处理后的值。根据特征图缩放比例,YOLOv5中会将预测边界框的坐标和大小转换为图像坐标。具体来说,设输入图像的大小为QUOTEH,WH,W,则预测框坐标和大小的计算如公式2-12,2-13,2-14和2-15所示:(2-12)(2-13)(2-14)(2-15)其中,S是当前特征图的大小。由此可以得到预测边界框在输入图像中的绝对位置和大小。YOLOv5使用非极大值抑制(NMS)算法能够有效地过滤掉多余的检测框,并提取出与实际目标最接近的边界框。该算法会计算其它预测框与基准框的IoU值,即两框重叠区域占两框合并区域的比例。当IoU超过预设阈值(通常设为0.5)时,则将该预测框视为冗余框并删除。最终,通过多次迭代,NMS算法返回被保留的预测框作为最终的检测结果,以此来优化模型的性能。NMS算法技术能够有效减少冗余检测框,并加快检测速度并识别精度。YOLO算法的检测流程如图2-12所示。首先,将输入图片分为S×S个网格,然后使物体中心落在网格中心,接着预测每个网格的边界框,随后通过非极大值抑制处理,去除重叠度高的冗余框。最终,仅保留高置信度的边界框作为检测结果输出,确保检测结果的精确性和有效性。图2-12YOLO算法的流程图2.5评价指标概述目标检测中常用的评价指标包括交并集(IoU)、混淆矩阵(ConfusionMatrix)和平均精确度(AP)等。在模型评估时,需要综合考虑多个不同的评价指标,以下介绍目标检测中常用的几种评价指标。IoU是目标检测算法中用于评价模型对目标物体位置和大小预测精度的关键指标。它它通过计算预测边界框与实际边界框之间的交集面积与并集面积之比,来衡量两者之间的重合程度。如图2-13所示。该比值越接近1,说明预测框与实际框的重合度越高,模型的预测越准确。IoU不仅用于评估模型的定位精度,还用于判断分类的准确性。图2-13IoU计算过程混淆矩阵常用于评估分类模型的性能,它通过比较模型的预测结果与真实标签,计算出不同类型的预测情况。如表2-1所示,在模型评估中,下面四点术语通常用于计算模型的准确率、召回率、F1分数等指标,以全面评估模型的性能。表2-1混淆矩阵预测PositiveNegative真实PositiveTP(TruePositive)FN(FalseNegative)NegativeFP(FalsePositive)TN(TrueNegative)基于混淆矩阵,可以推导出多个关键评价指标。精确度便是其中一项至关重要的指标,它反映模型在预测为正例的样本中,实际为正例的比例。通过计算精确度,可以了解模型对正例的判别准确性,进而更好地评估模型的性能并优化相关参数。其计算公式如式2-16所示:(2-16)此外,召回率(Recall)也是衡量二分类模型性能的关键指标。它表示模型正确识别出正例的比例,计算公式如式2-17所示:(2-17)召回率可以衡量模型对于正例识别的能力。召回率越高,说明模型检测出的正例占实际正例总数的比例越大,进而体现了模型对正例的出色识别能力。与精确率和召回率相比,平均精确度(AP)提供了更全面的模型性能评估。为确保曲线的准确性和平滑性,需要对P-R曲线进行插值操作。最后,将每个阈值下的精确度和召回率乘积的平均值作为AP的值。AP的计算公式如式2-18所示:(2-18)其中,p(r)QUOTEp(r)均值平均精确度(mAP)是对所有类别AP求和取平均值。mAP的计算考虑了不同类别的性能,为模型的整体性能提供了全面的度量,mAP(2-19)其中,N为检测类别的个数。2.6本章小结本章详细介绍了卷积神经网络在目标检测中的重要概念和技术,其中包括卷积层,用于提取图像中的局部特征;池化层,用于降低数据维度并保留重要特征;激活函数,为网络引入非线性特性,使其能够学习复杂模式;以及全连接网络,用于将特征映射到最终的预测结果。这些组件互相协作,共同构成了卷积神经网络的基础架构。同时,本章还介绍了目标检测算法的一种分类方法,将算法可分为单阶段和双阶段检测算法。单阶段检测算法直接对图像进行边界框和类别信息的预测,具有高效性。双阶段检测算法则采用两步走策略,先提取候选框,再对其进行分类和回归来实现目标检测。此外,本章还重点剖析了YOLOv5目标检测算法的结构和检测流程。为了全面评估目标检测模型的性能,还详细分析了目标检测算法的相关评价指标如精确率、召回率、均值平均精确度(mAP)等评估指标,这些指标不仅能够量化YOLOv5算法模型的性能,还能为后续YOLOv5模型的3改进YOLOv5电动车头盔佩戴检测算法尽管目前对安全头盔检测的研究已经相当充分,但大部分研究主要集中在普通的安全头盔检测,如建筑工地施工人员是否佩戴安全头盔和生产车间员工是否佩戴头盔和是否穿工作服等。相比之下,针对电动自行车骑行者的头盔佩戴检测研究仍然较少。此外,国内电动车骑行者头盔佩戴检测研究在场景目标或场景背景方面存在一些问题,如场景目标单一或场景背景简单等。在现实的交通路口或者关键路段,检测识别电动车骑行者是否佩戴安全头盔,常常因交通场景较为复杂,不同类别车辆和行人聚集,以及头盔受被检测的目标较小而出现遮挡和重叠等因素的影响,导致原有的检测方法出现漏检、错检等情况并不具备普适性。所以对于骑行者安全头盔佩戴检测网络模型中的特征提取部分,特征融合部分以及非极大值抑制部分仍然会有很大的改进空间,对于电动车骑行者是否佩戴头盔的检测精仍然有很大的提升空间。针对电动车骑行者头盔佩戴检测的实际问题,本文基于改进的YOLOv5算法,提出对网络模型的特征提取、特征融合和非极大值抑制等部分进行相应的改进方案。这些改进方案旨在使模型能够更好地适应复杂道路场景下的头盔佩戴检测需求,从而提升模型的性能和检测的准确性。而本次实验主要通过改进数据预处理技术和增加CBAM注意力机制来应对复杂场景下的骑行者安全头盔佩戴检测,进一步增强了模型对关键特征的捕捉能力,提高了检测性能。以下将介绍一些常用的YOLOv5模型改进方法和本文实验采取的改进方法。3.1骨干网络改进(1)CSPDarknet53结构改进为了解决安全帽佩戴检测问题中对小目标的不准确性,我们可以对YOLOv5的核心骨干网络CSPDarknet53进行改进。这个网络中设计有三层特征提取结构,专门针对不同大小的目标进行特征捕获但原有的三层结构在处理小目标时存在局限性。在安全帽佩戴检测场景中,特别是当安全帽的像素尺寸极小,例如小于8×8像素时,这三层结构的效能就会受到限制,很难准确检测到目标。导致这种情况发生的原因是小目标在图像中的分辨率低且模糊,导致检测难度增大,进而影响了算法的精确性和性能。为了改善这一问题,可以在CSPDarknet53骨干网络中新增了一个新的特征提取层,使网络结构能够更好地捕捉和提取小目标(如安全帽)的特征信息,从而增强检测效果。CSPDarknet53结构会随着网络层次的纵向增加而对大目标的特征提取能力逐步加强,即可以更加准确地检测大目标。而通过在浅层网络中增加一个有效特征提取层,便可以更好地检测较小目标。图3-1中的(a)显示了原有的三层有效特征提取层结构,而(b)则展示了在(a)的基础上增加了一个160×160尺度大小的有效特征提取层。通过这种改进,有望显著提高安全帽佩戴检测的准确性和整体性能。图3-13层有效特征提取层图3-24层有效特征提取层(2)添加CBAM注意力机制通过分析数据集后,发现数据集中小目标对象占比高达44.52%,且道路交通背景复杂多变,电动车骑行者头部经常被遮挡。针对这一问题,在提高目标检测和定位精度方面,可以考虑在YOLOv5网络主干网络中引入CBAM注意力机制。引入的该模块能够较好的增强网络对关键区域的响应,有效捕捉目标物体的细节特征,并引入上下文信息以更好地识别和定位目标物体。然而,CBAM模块在计算通道和空间注意力权重时需要额外的计算量,这会导致模型在处理大型图像集时网络速度下降。其次,在YOLOv5网络中整合CBAM模块意味着需要更长的训练时间来学习注意力权重。同时,CBAM模块需要更多的存储空间来存储注意力权重,这会增加模型在训练和推理过程中的存储需求。图3-3CBAM模块替换SSP如图3-3所示,本文将CBAM模块引入并替换原有的SSP模块更好地捕捉图像的上下文信息和提取图像特征,进而优化YOLOv5模型的性能。CBAM模块作为一种有效的注意力机制,在图像分类和目标检测任务中有出色的表现。由图可以看出,CBAM模块在输入特征后引入了一个通道注意力模块,该模块的引入是通过计算每个通道的权重值,来对关键的通道信息进行强调;接着又引入了一个空间注意力模块,来计算每个位置的权重值REF_Ref9676\r\h[14],从而来引入重要的上下文信息。这两个注意力机制的输出最终相加,并通过一个2×2的卷积层进行调整,得到CBAM模块的输出。如图3-4所示,该模块可以有效地帮助模型捕捉输入特征图中的关键区域响应和上下文信息,来有效提升模型性能和识别精度。在实际应用中,CBAM模块因其良好的可扩展性和适应性,可以适用于各种神经网络架构,因此被广泛应用于图像分类和目标检测等任务中。通过对CBAM模块的引入,能够使模型在复杂道路场景下的头盔佩戴检测中表现出更高的准确性和鲁棒性。图3-4CBAM模块结构3.2多尺度特征融合(1)FPN结构改进方案特征融合在目标检测中占据核心地位。在卷积运算过程中,在卷积运算过程中,由于目标对象的尺度不同,它们在骨干网络中提取的特征尺度也不同。直接使用这些在骨干网络中提取的多尺度目标特征时,可能导致一些较小可能导致小目标难以被检测或特征信息丢失等问题。因此,可以利用骨干网络中的多尺度特征至关重要,它们对后续能否准确预测目标位置和所属类别起着决定性作用。为了提高安全帽佩戴检测的精度,特征金字塔网络(FPN)被前人引入到目标检测算法中,并将其实际应用于目标检测算法中。FPN的核心思想在于通过下采样操作将不同层级的特征图进行有效结合,以便更好地捕捉图像中不同大小物体的特征信息,从而丰富自身网络结构对语义信息的捕捉能力REF_Ref9676\r\h[14]。然而,在现有基于FPN的目标检测算法中,虽然FPN对提取到的特征信息进行了三次下采样操作来提升网络的分类性能,但对于像素点低的小目标,在下采样后特征信息会大量丢失。因此,现有的FPN结构仍需优化,来更好地保留和利用小目标的特征信息,FPN结构,如图3-5所示。图3-5FPN结构(2)PANet结构PANet是在FPN之后提出的一种加权双向的特征金字塔网络结构,在目标检测领域有着较多优点。它可以实现了高效且简洁的多尺度特征融合,不仅强化了语义信息的表达,还丰富了位置信息的捕捉,从而提升了算法的性能。YOLOv5算法便是采用了这种网络结构来构建自己的特征金字塔REF_Ref9745\r\h[15]。PANet把骨干网络输出的特征图作为输入。在接收这些特征图后,对这些特征图进行特性信息的融合,以丰富语义和位置信息,最终将这些信息传递给头部进行预测。作为FPN的改进版,PANet在特征融合方面取得了大幅提升。FPN虽然强化了语义信息,却缺失了定位信息传递这一重要功能REF_Ref12580\r\h[16]。而PANet在特征金字塔的构建上更为全面,它不仅通过自顶向下的路径传递高级语义信息以强化特征金字塔,还引入了一个自底向上的金字塔结构REF_Ref12873\r\h[17],从而有效地传递了低级特征的强定位信息。这种双向的特征融合方式使得PANet在特征提取和定位能力均有所提高,并实现了多尺度特征信息的有效融合。因此,PANet在安全帽佩戴检测任务中,能够对多尺度特征信息的有效融合,这使得其能够更准确地检测出不同预测尺度下的安全帽目标。然而,尽管PANet在特征融合方面取得了一定的进步,但仍存在改进的空间,使其进一步提升其在多尺度特征融合方面的性能。PANet结构,如图3-6所示。图3-6PANet结构(3)改进PANet结构方案YOLOv5目标检测算法的颈部主要工作在于高效融合骨干网络所提取到的关键特征。为进一步优化改进PANet结构,可以添加一条连接边在同一个网路结构层的输入与输出节点之间,从而实现更多特征的融合。这种改进有助于融合更多特征信息,且不会增加太多计算负担。同时,也使得网络能更好地理解每个特征的重要性,进而实现不同尺度特征的更优质融合。改进PANet结构如图3-7所示。图3-7改进PANet结构3.3非极大值抑制算法优化(1)错检和漏检问题在目标检测中,处理预选框的错检和漏检是两大核心难题。尤其在初始检测阶段,模型对同一目标可能会产生多个预选框,导致数据冗余。为了解决这一问题,为了解决这一问题,非极大值抑制(NMS)方法被引入。该方法基于交并比(IOU)的思想,通过设定一个阈值来计算预选框间的交并比,如果两个预选框的IOU超过阈值,除得分较低的预选框将被去除,仅保留得分最高的那个预选框。尽管NMS在许多情况下有效解决了预选框的重复问题,但在涉及重叠目标的情况下,NMS可能会错误地抑制一个预选框,导致被遮挡的目标无法被准确检测。在对于单个目标的电动车骑行者佩戴头盔检测时,检测效果较好,但在多目标、尤其是目标密集的场景下,NMS的性能会受到较大影响,导致检测效果不佳。这主要是因为NMS在筛选过程中主要依赖置信度得分和IOU,而未充分考虑目标的实际重叠情况。在YOLOv5模型中,预选框回归后进入筛选阶段,NMS算法会计算它们IOU值,若IOU超过预先设定好的阈值REF_Ref13180\r\h[18],则低分框会被剔除。但这种策略的问题在于,一旦某框被判定为冗余,即超过设定阈值将直接被剔除,将不再有重新评估的机会,这在处理高重叠率目标时尤为不利,从而导致错检和漏检的情况发生。(2)NMS算法优化方案针对上述传统的NMS算法在目标检测中的不足。在安全帽佩戴检测中,NMS的主要作用是去除冗余的预选框,确保每个目标仅有一个最优的候选框被选出。当多个预选框与真实标注框高度重叠时,NMS算法需要准确判断哪些框是冗余的,哪些框是有效的。优化NMS算法的关键在于改进其筛选机制。可以考虑IOU和置信度得分优化,也可以引入其他特征或策略来辅助判断。对于IOU指数,在传统NMS算法中,IOU是判断两个预选框是否重叠的标准。但在目标密集或重叠较大的情况下,传统的IOU计算可能会导致目标丢失。为了解决这个问题,可以引入IOU修正机制。例如,可以根据预选框之间的相对位置和目标特征等信息,对IOU进行修正,从而更准确地判断预选框是否重叠。此外,在NMS算法的优化上可以结合目标的尺寸、形状或上下文信息来改进筛选过程。也可以采用软NMS算法,为每个预选框分配一个权重,而不是简单地剔除得分较低的框,这样可以更好地处理目标重叠的情况。3.4本章小结本章首先根据电动车头盔检测的应用场景进行分析,电动车头盔检测通常应用于交通路口或者关键路段,检测识别电动车骑行者是否佩戴安全头盔,常常因交通场景较为复杂,不同类别车辆和行人聚集,以及头盔受被检测的目标较小而出现遮挡和重叠等因素的影响,导致检测精度低。因此,在用YOLOv5算法进行头盔检测时,检测目标物属于小目标且易遮挡检测,在对算法改进方案分析时,提出了对骨干网络结构、多尺度特征融合、非极大值抑制算法等多方面提出改进方案,最终本文选择对在骨干网络结构中添加CBAM注意力机制方案来进行实验,并将采用Mosaic-9数据增强方法来解决数据集不充分不均衡等问题。4实验准备4.1数据准备本次电动车头盔的佩戴检测数据集通过多种方式进行采集获取,包括网络公开数据集、网络爬取和现场实拍采集,将采集后的数据进行统一归纳和预处理。通过labelimg软件标注数据集,先标注为XML格式,再转换为YOLO格式,并将其进行划分为测试集和数据集,把训练集和测试集的数据大致按7:3的比例分配。本次采用的数据集共有1164张电动车交通场景图片,其中299张图片用于实验验证。自建数据经过预处理后进行标注,数据集标签主要包括三个类别:0helmet——佩戴头盔1without——未佩戴头盔2two_wheeler——电动车及摩托车这些图片包含了多种不同的两轮车类别、不同年龄段的人群以及数据集中包含的骑行者数量跨度大,存在遮挡、场景变换、视角变换、光线变换等。其中小尺度的实例数据居多,更加符合真实场景情况,同时也增加了数据标注和训练难度,如图4-1所示。图4-1部分数据样本其中数据集检测的类别包含电动车及摩托车(two_wheeler)、佩戴安全头盔(helmet)和未佩戴安全头盔(without)这三个类别,每个类别的实例数量如图4-2所示。其中,two_wheeler共3604个,helmet共3087个,without共1760个,总共标签数为8451个。根据数据集标签分析,数据集中未佩戴头盔类的检测实例数量较少,导致类别不均衡问题,可以通过再增加数据增强处理来改善此问题,如几何变换、颜色变换、模糊处理和随机裁剪等方式。另外,数据集中存44%左右的较小的目标。在这种小目标较多的情况下,本实验采取添加CBAM注意力机制来优化算法模型,来应对小目标较多且检测效果不佳的情况。总之,在解决特定场景下的目标检测问题时,必须针对该场景下数据集中的具体特性来进行适当的处理和优化,以提升模型的检测准确率和整体性能。图4-2检测类别的数量4.2Mosaic-9数据增强为了应对图4-2数据不均衡的问题,本文采用数据增强对数据集进行处理,可以借助图片中微小的变换操作来生成一张全新的图片,从而减少了过拟合的风险。本文采用了Mosaic-9数据增强方法,该方法将9张图片进行随机缩放、翻转、调整色域等措施进行全新图片的构造,然后将其拼接成一张大图,该方式不仅解决了处理数据不足和数据不均衡等问题,还提高模型的表现和泛化能力。图4-3展示了Mosaic-9数据增强在本次设计的数据集上的效果图。图4-3Mosaic9数据增强效果5模型训练及验本文利用PyTorch框架实现YOLOv5模型的改进,并在此基础上对模型性能和检测效果进行分析。PyTorch支持动态计算图与GPU加速,且拥有强大的社区支持,在人工智能领域广受欢迎。本章将讨论训练和实验所使用的硬件平台以及对改进前后的模型进行比较分析。5.1训练结果分析本文对改进前和改进后的模型进行了100轮的训练实验,并以精确率、召回率和QUOTEmAP50mAP5.1.1训练过程对比如图5-1所示,mAP50数值被表示为纵坐标,横坐标则代表训练轮数。蓝色曲线为改进前模型在训练期间的mAP50QUOTEmAP50数值的变化轨迹,而红色曲线则为改进后模型在训练期间的QUOTEmAP图5-1改进前后模型在训练时期的QUOTEmAP50mA图5-2展示了验证集类别损失(cls_loss)的变化情况,类别损失作为分类损失函数,能够体现预测类别标签和实际标签两者的差别。YOLOv5算法中,采用了交叉熵损失函数来计算类别损失,基于预测类别概率与实际标签的交叉熵来评估预测的准确性。根据图表趋势,可以发现训练后期改进后的YOLOv5模型类别损失明显低于为改进的YOLOv5算法模型,这意味着改进后模型在分类任务上表现更为出色。图5-2改进前后模型的验证集分类误差在训练时期的变化曲线图5-3展示了边界框损失(box_loss)在训练时期的变化趋势,反映了模型在边界框坐标定位方面的误差变化,随着训练过程的不断进行,损失值的数值越小,模型的定位能力就越强。YOLOv5算法中,类别损失函数用来计算边界框损失的值,其相较于传统的损失函数,考虑了边界框的长宽比以及中心点距离的影响,使得损失函数能够更准确地反应出预测框与真实框的相近值,通过模型改进前后的边界框损失对比图,可以看出训练过程中改进后算法模型的边界框损失始终低于改进前。可以得出,改进后的算法模型进一步提升了在定位方面的精确度。图5-3改进前后模型的验证集边界框误差在训练时期的变化曲线图5-4呈现置信度损失(obj_loss)的变化趋势,它代表了边界框内的对象置信度出现的误差值,置信度损失越低,说明该模型区分边界框中是否有物体存在的能力越强。根据图表显示,改进后模型的置信度损失在整个训练过程中均低于改进前的模型。由此得出,改进后的算法模型在区分边界框中是否有物体存在的能力更强,更加可以减少未被标记物体和背景等的影响,从而降低判断错误的概率。除此之外,随着训练的重复不断进行,置信度损失呈现出下降后上升的曲线趋势,这是过拟合现象的表现。为了模型权重能够有最好的泛化能力,要优先选取损失曲线最低点匹配的模型权重,以确保模型在实际应用中具有最优的性能。图5-4改进前后模型的验证集物体性误差在训练时期的变化曲线5.1.2训练结果对比图5-5对比了YOLOv5模型改进前后在QUOTEmAP50mAP图5-5改进前后模型的QUOTEmAP50mA图5-6对比了模型改进前后在精确度方面的各个实际呈现。X轴展示了不同的类别,Y轴则代表其精确度。由图可见,改进后模型在多个类别上的精确度均有所改善。佩戴安全头盔类的精确度从81.4%提升至85.3%,增长了3.9%;未佩戴安全头盔类则从80.2%提升至84.4%,增长了4.2%;电动车类则略有提升至90.0%,基本保持稳定。在全部类别上,改进后模型的精确度达到86.5%,相比改进前的83.8%有2.7%的提升。说明了对YOLOv5算法模型的改进有效增强了模型对各类物体的识别准确性,提升了整体检测性能,使其更适用于实际复杂的电动车头盔检测场景,对小目标物体检测更为精准。图5-6改进前后模型的精确度对比图5-7在算法模型改进前和改进后的召回率方面进行了比较,X轴代表不同的类别,Y轴表示的是召回率的值。通过对比改进前后的模型性能,在未佩戴头盔类别的检测中,召回率有显著的提升,由64.6%增长至67.6%。在电动车类别的召回率上由89.6%提升至90.2%,但佩戴头盔类别的召回率出现了轻微的下降,召回率下降了0.3%。由此可见,通过改进YOLOv5模型,可以更加精准地识别不同的物体。虽然某些类别的召回率可能会有所下降,但整体上模型的性能仍然得到了显著提升。图5-7改进前后模型的召回率对比图5-8和图5-9展示了模型改进前后在两个电动车骑行者检测
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学生食堂承包经营方案
- 2026需求产品面试题及答案解析
- 2026药企裁员面试题及答案
- 2026疫情插队面试题及答案
- 2026优化师岗位面试题及答案
- 2026人工智能产业发展现状趋势分析与市场竞争格局调研报告
- 2026体育中考改革背景下学生防护装备需求变化与应对策略
- 湖南省娄底市2027届数学三上期末复习检测模拟试题含解析
- 污水处理厂安全生产管理制度
- 2026中国通信软件研发行业现状供需分析及投资评估规划分析研究报告
- 2026 年高中秋季新生开学军训“坚定信念追逐青春理想”
- 2026年喀什经济开发区兵团分区招聘(20人)笔试参考题库及答案详解
- 2026年行政执法证考试必考题库及完整参考答案(官方大纲版)
- 2026年春广东省中职“3+证书”高职高考语文真题(含解析)
- 现代交换原理重点总结
- 2026年福建中共厦门市委网信办非公党建工作指导员招聘2人笔试题库及答案详解(历年真题)
- 1995年74号文转发省劳动厅河南省深化企业职工养老保险制度改革试行方案的通知
- 2026年软考-系统架构设计师考试真题及答案
- 2026重庆青年职业技术学院招聘80人备考题库及一套参考答案详解
- HF生产装置的腐蚀机理及安全防护技术探讨
- 前列腺癌诊疗中国指南(2026 版)
评论
0/150
提交评论