1、基于 MCA-YOLOv5s 的轻量化地铁站内行人检测孙同庆1,刘光杰1,唐喆1,李佑文21(南京信息工程大学电子与信息工程学院,南京210044)2(南京国电南自轨道交通工程有限公司,南京210032)通信作者:刘光杰,E-mail:everglow_摘要:随着智慧车站和云计算的迅速发展,地铁站内大规模视频监控系统行人检测的部署愈发重要,在客流监测、乘客引导和行为警示等方面发挥着人力不能及的重要作用.在实际工程应用中,受到计算资源有限以及多尺度多角度遮挡的困难样本带来错漏检的不利影响,为此提出一种轻量化行人检测算法 MCA-YOLOv5s.首先使用MobileNetv3 代替 YOLOv5
2、主干网络,实现网络模型轻量化处理,并用 PConv 代替 MobileNetv3 网络中的 DWConv,减少冗余计算和内存访问;其次在特征融合阶段的 C3 模块中融入坐标注意力机制,使模型更加关注行人的位置信息;同时将损失函数 CIoU 替换为 AlphaIoU 以增加 HighLoss 目标的权重和边界框的回归精度;最后通过FPGM 剪枝压缩改进后的网络模型,提升模型加载和运行速度.将改进后的模型部署在华为 Atlas300AI 加速卡中,对地铁站内行人进行检测,其平均精度达到 94.1%,检测速度为 104.1fps.实际工程实践表明,改进后的算法检测速度提升 71.8%,节省了站内硬件
3、部署资源,更满足地铁大客流下的行人监测和管理的工程实际需求.关键词:行人检测;MCA-YOLOv5s;轻量化;注意力机制;剪枝;模型部署引用格式:孙同庆,刘光杰,唐喆,李佑文.基于 MCA-YOLOv5s 的轻量化地铁站内行人检测.计算机系统应用,2023,32(11):120130.http:/www.c-s- Subway Pedestrian Detection Based on MCA-YOLOv5sSUNTong-Qing1,LIUGuang-Jie1,TANGZhe1,LIYou-Wen21(SchoolofElectronicandInformationEngineering,N
4、anjingUniversityofInformationScienceandTechnology,Nanjing210044,China)2(NanjingGuodianNanziRailTransitEngineeringCo.Ltd.,Nanjing210032,China)Abstract:Withtherapiddevelopmentofsmartstationsandcloudcomputing,thedeploymentoflarge-scalevideosurveillancesystemsforpedestriandetectioninsubwaystationsisbeco
5、mingmoreandmoreimportant,whichplaysanimportantroleinpassengerflowmonitoring,passengerguidance,andbehaviorwarning.Inpracticalengineeringapplications,alightweightpedestriandetectionalgorithmMCA-YOLOv5sisproposedduetotheadverseeffectsoflimitedcomputingresourcesanddifficultsamplescausedbymulti-scaleandm
6、ulti-angleocclusion.Firstly,MobileNetv3replacestheYOLOv5backbonenetworktoachievelightweightnetworkmodelprocessing,andPConvreplacesDWConvintheMobileNetv3networktoreduceredundantcomputationandmemoryaccess.Secondly,thecoordinateattentionmechanismisincorporatedintheC3moduleofthefeaturefusionstagetomaket
7、hemodelpaymoreattentiontopedestrianpositioninformation.Atthesametime,thelossfunctionCIoUisreplacedbyAlphaIoUtoincreasetheweightoftheHighLosstargetandtheregressionaccuracyoftheboundingbox.Finally,theimprovednetworkmodeliscompressedbyFPGMpruningtoimprovetheloadingandrunningspeedofthemodel.Theimprovedm
8、odelisdeployed计算机系统应用ISSN1003-3254,CODENCSAOBNE-mail:ComputerSystems&Applications,2023,32(11):120130doi:10.15888/ki.csa.009279http:/www.c-s-中国科学院软件研究所版权所有.Tel:+86-10-62661041基金项目:国家自然科学基金(U21B2003);江苏省产业前瞻与关键核心技术竞争项目(BE2022075)收稿时间:2023-04-18;修改时间:2023-05-17;采用时间:2023-05-23;csa 在线出版时间:2023-08-09CNKI
9、 网络首发时间:2023-08-10120系统建设SystemConstructioninHuaweiAtlas300AIacceleratortodetectpedestriansinsubwaystations.Theaverageaccuracyis94.1%,andthedetectionspeedis104.1fps.Theactualengineeringpracticeshowsthatthedetectionspeedoftheimprovedalgorithmisincreasedby71.8%,savingthehardwaredeploymentresourcesinth
10、estationandmeetingtheactualengineeringneedsofpedestrianmonitoringandmanagementinsubwaystationswithlargepassengerflow.Key words:pedestriandetection;MCA-YOLOv5s;lightweight;attentionmechanism;pruning;modeldeployment如今地铁已经成为城市交通出行不可或缺的方式,智慧车站的发展满足了人们对地铁智能化服务的需求.随着近年来云计算、大数据、人工智能等技术的不断演进,智慧车站中的视频监控系统逐渐以
11、深度学习目标检测体系为架构,不仅能在保障地铁安全上发挥越来越重要的作用,还能改善地铁运营效率,提升地铁服务质量,增强地铁应急能力.智能视频监控系统可以实时检测、分析和处理所监控的图像,实现地铁人流量监测、行人异常行为分析、安全隐患警示等快速的响应.地铁站内大规模视频监控系统的计算资源有限,在成本约束下,选择性能优越的国产算能卡部署目标检测网络更符合工程需求.目标检测技术是为了解决目标视频或者图片中待检测物体的定位和分类问题,它的性能好坏会直接影响到计算机视觉研究的后续进程.随着神经网络在目标检测领域的迅速发展,以深度学习为基础的目标检测算法成为主流,其主要分为 two-stage 检测算法和o
12、ne-stage 检测算法两类.Two-stage 算法将图像候选区域和卷积神经网络进行融合,使用 CNN 提前在输入图像的生成区域中创造一个目标分类器,然后进行分类和特征提取,常见的算法有 R-CNN1、FastR-CNN2、FasterR-CNN 等.One-stage 算法主要包括 SSD3、YOLO 系列47,不需要生成候选框,直接对初始的目标进行检测,加快了图像检测速度,满足大量图像检测的需求.虽然当前很多目标检测算法精度很高,但是部署在视频监控系统中并不能满足快速检测的需求,而且行人之间遮挡较严重,算法的误检率和漏检率也比较高.针对密集场景下遮挡和多尺度行人检测精度低的问题,Zha
13、ng 等人提出一种跨通道的注意机制8,在FasterR-CNN 架构中增加注意网解决不同的遮挡情况,将身体不同部位与 CNN 通道进行关联,提高网络对行人目标的关注度.王明吉等人提出一种改进 YOLOv3的行人检测方法9,通过搭建新一层的特征流在网络颈部进行特征融合,增强网络的特征信息,但该网络结构复杂度较高.邓杰等人提出 Crowd-YOLO 算法10,将行人可见框和全身框进行结合并在空间注意力上增加频域通道注意力机制,但在拥挤人群场景中,该算法会生成特别多的锚框,正负样本比例失衡.单阶段检测算法中的 YOLOv5 网络模型综合性能较优异,其网络深度和宽度可以自行调节.根据参数量由小到大,可
14、以分为 YOLOv5s,YOLOv5m,YOLOv5l,YOLOv5x 这 4 种不同结构.考虑到地铁站内大规模监控系统中的算能卡算力有限,本文选择 YOLOv5s 为基础算法进行改进,提出一种轻量化行人检测算法 MCA-YOLOv5s,并采用 FPGM 剪枝进一步压缩网络模型,然后部署在 Atlas300AI 加速卡中进行测试.MCA-YOLOv5s 首先分析采集到的地铁行人图像,然后采用轻量级模块 MobileNetv311重构 YOLOv5s 的主干网络,减少模型的体积和参数量,实现网络模型轻量化处理,并用 PConv12代替深度可分离卷积中的 DWConv,减少冗余计算和内存访问,提高
15、网络的计算速度.针对行人目标多尺度问题,将注意力模块 CA(coordinateattention)13融入模型结构中的特征融合阶段的 C3 模块中,使模型更加关注行人的位置信息,提高对目标位置的定位能力,同时弥补轻量化处理带来的精度损失.最后将损失函数 CIoU 替换为 AlphaIoU14以增加HighLoss 目标的权重和边界框的回归精度,优化模型整体性能.为了进一步提高算法部署在 Atlas300AI 加速卡上的检测速度,对优化的网络模型进行剪枝,压缩模型大小.考虑到地铁场景内行人身体部位相互遮挡带来的不利影响,本文选择遮挡范围较小的头部作为行人的检测目标.实际工程实践表明,改进后的算
16、法相比于原始网络模型,部署到加速卡设备中拥有更快的实时检测性能,而且检测精确率也很高.1YOLOv5 网络介绍本文所提出的算法在 YOLOv5s-6.0 版本的基础上2023年第32卷第11期http:/www.c-s-计 算 机 系 统 应 用SystemConstruction系统建设121进行改进,网络结构分为输入端、Backbone、Neck 和Head.输入端采用自适应图片缩放技术和 Mosaic 数据增强以及 K-means 算法处理输入的图像.Backbone 部分特征图首先经过第一层的卷积层(Conv),接着通过4 层 C3 模块生成不同尺寸的特征图,最后使用空间金字塔池化结构
17、(SPPF)融合不同感受野的特征图.Neck部分采用 FPN+PAN15结合的路径聚合网络架构,加强网络特征的融合能力.Head 检测层分别解码预测3 种不同尺寸的特征图,使用 NMS(non-maximumsuppression)非极大值抑制算法获取目标最优预测框,输出预测框和类别位置信息.2改进 YOLOv5s 检测算法复杂网络模型通常具有较大的参数量,部署到设备中将面临占用空间大和检测速度慢的问题,难以满足地铁大规模监控系统低延迟和快速响应的需求,同时地铁站内设有多路监控视频设备,需要考虑到工程成本的实际需求.而且采用头部作为行人的检测目标虽然可以解决身体部位的遮挡问题,但是行人头部依然
18、存在多尺度、多角度、穿戴物遮挡等困难检测样本,当前算法依然存在误检和漏检的问题.为优化地铁站内大规模视频监控场景下的行人检测,对 YOLOv5s 网络结构进行改进,如图 1 所示,具体方法为:(1)为提高模型检测速度,使用 MobileNetv3 网络替换主干网络,并使用 PConv 替换 MobileNetv3 中的 DWConv,减少网络内存的访问,降低计算延迟.(2)为了增强网络各层的特征融合能力,在特征融合模块的 C3 层中融入CA 注意力模块,使模型更加关注目标的位置信息.(3)为提高 HighLoss 目标的权重和边界框的回归精度,损失函数使用 AlphaIoU 替换 CIoU.(
19、4)为进一步压缩网络模型,提高算法部署到设备中的推理速度,使用FPGM 剪枝去除不重要的卷积核和冗余的通道数.InputConvMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockMobileNet_New BlockConvUpsampleConcatC3CAConvU
20、psampleConcatC3CAConvConcatC3CAConvConcatConvDetectDetectDetectBackboneNeck图 1改进的 YOLOv5s 网络结构 2.1 MobileNetv3MoblieNetv3 采用 MoblieNetv116和 Moblie-Netv217中提出的深度可分离卷积和逆残差结构,在此基础上更新 Block,加入 SE(squeezeandexcitation)18模块,利用 H-swish 代替 swish 激活函数,进一步地提高了计算速度和模型性能.MoblieNetv3 网络中的 Block 网络结构如图 2 所示,主要包括了
21、通道可分离卷积和 SE 通道注意力机制以及残差网络结构.其核心是使用深度可分离卷积代替传统卷积层,将传统卷积层拆分成逐通道卷积(DWConv)和逐点卷积(PWConv).逐通道卷积用于空间滤波,将卷积核变为单通道,每个卷积核处理一个通道.逐点卷积用于特征生成,不仅可以改变特征图的维度,还可以在逐通道卷积生成的特征图通道上进行融合.在逐通道卷积中,每个卷积核的深度都为 1,输出特征矩阵与输入特征矩阵深度相等.逐点卷积则相当于卷积核大小为 1 的普通卷积,一般与逐通道卷积搭配使用,放在逐通道卷积后用来改变或者自定义特征矩阵的深度,极大地减少了模型参数数量和计算量.逐通道卷积和逐点卷积组合如图 3
22、所示.MobileNetv3 通过 NAS 搜索全局网络结构,分为Large 和 Small 两种版本.主要的不同在于经过卷积升维后的通道数量以及网络中的 Block 使用次数.本文采用 MobileNetv3-Small 模型进行实验.2.2 MobileNetv3 的改进为了减少逐通道卷积中的冗余计算和内存访问的数量,使用 PConv(partialconvolution)替换 DWConv,更好的平衡检测延迟(Latency)和浮点运算(FLOPs)之间的联系,它们之间的关系公式如下:计 算 机 系 统 应 用http:/www.c-s-2023年第32卷第11期122系统建设Syste
23、mConstructionLatency=FLOPsFLOPS(1)其中,FLOPS 表示每秒浮点运算的缩写,度量有效的计算速度.PConv 可以缓和网络进行 FLOPs 时,内存访问频繁造成 FLOPS 减小的副作用,在降低 FLOPs的同时优化 FLOPS,尽可能多地使用设备的计算能力,实现更好的低延迟效果.PConv 的工作原理如图 4所示.Bottleneck=Input11PWConv11DWConvSENet11PWConvOutput图 2Block 网络结构3channel3Filters3Maps2Filters2MapsDWConvPWConvDk图 3逐通道卷积和逐点卷积
24、组合hwcpcpcpcpkk输入hw输出=Identity卷积核图 4PConv 工作原理在 PConv 结构中,只需要使用部分输入图像的通道与标准卷积结合,进行特征的提取,其余通道保持不变.如果内存访问是连续或者规则的,使用第 1 个或最后一个连续的通道作为计算代表与整个特征图进行融合.PConv 的内存访问数量为:hw2cp+k2c2p hw2cp(2)其中,h 和 w 分别为输入矩阵的宽高,cp是常规卷积作用的通道数,k 为卷积核的大小.在实际实现过程中,cp一般设置为常规矩阵的 1/4,其余通道数不参与计算.而 DWConv 在降低 FLOPs 的同时,会增大通道数来弥补精度的下降,一
25、般通道数会增大为常规卷积的 6 倍.因此,PConv 相比与 DWConv 能够极大地减小内存访问的数量和计算冗余.PConv 层中没有简单地删除剩余的通道,而是接着使用 PWConv 进行剩余通道特征的进一步提取.PWConv 可以提取所有通道特征信息流,充分完整的捕获所有通道的特征信息.PConv与 PWConv 组合成新的结构 NewBlock.改进后的MobileNetv3 网络结构如表 1 所示.表 1改进 MobileNetv3 网络结构InputOperatorExp.sizeSEAFStide6402332028160288021680216402244022440224402
26、24402242024820248conv2d,33NewBlock,33NewBlock,33NewBlock,33NewBlock,55NewBlock,55NewBlock,55NewBlock,55NewBlock,55NewBlock,55NewBlock,55NewBlock,5516728896240240120144288576576HSREREREHSHSHSHSHSHSHSHS222121111211对于输入网络的图像,统一调整为 640640 的尺寸,其中 NewBlock 表示将深度可分离卷积中的 DWConv替换成 PConv,网络中一共包含 11 个 NewBloc
27、k.HS为 hard-swish 激活函数,RE 为 ReLU 激活函数.2.3 融合 CA 注意力模块CA 注意力机制相比其他注意力机制,如 SENet、ECA19、CBAM20,同时考虑了通道维度和空间维度的信息,并把位置信息嵌入到通道注意力当中,有效地解决了空间维度存在的长距离依赖的问题,而且还避免了大量的计算,适合嵌入到轻量化网络当中.CA 注意力机制的具体流程如图 5 所示.CA 注意力机制首先进行信息嵌入操作.针对输入特征图的每一个通道信息,利用尺寸为(H,1)和(1,W)的卷积核对每个通道的水平方向和垂直方向进行全局平均池化操作,聚合两个空间方向的特征,输出具有方2023年第32
28、卷第11期http:/www.c-s-计 算 机 系 统 应 用SystemConstruction系统建设123向感知的特征图.其中水平方向得到 H1C 的信息特征图的公式为:Zhc(h)=1W0iwxc(h,i),Zhc RCH1(3)垂直方向得到 1WC 的信息特征图公式为:Zwc(w)=1H0iHxc(j,w),Zwc RC1W(4)ZhcZwc接着进行 CA 注意力生成操作.沿着空间维度对生成的特征图和进行级联操作,把水平方向和垂直方向的特征级联为全局特征.再使用 11 的卷积和激活函数进行 F1变换.然后在空间维度使用分片操作得到两个单独的注意力张量 gh和 gw,使用两个 11
29、的卷积将张量的通道数变换为和输入相同的通道数.F1变换和 gh以及 gw分别表示为:f=(F1(Zh,Zw),f RCr1(H+W)(5)gh=(Fh(fh)(6)gw=(Fw(fw)(7)ResidualInputX Avg PoolY Avg PoolConcat+Conv2dBatchNorm+Non-linearConv2dConv2dSigmoidSigmoidRe-weightOutputCH1CH1CH1CHWC1WC/r1(W+H)C/r1(W+H)C1WC1WSplitCHW图 5CA 注意力机制流程最后使用广播变换把 gh和 gw拓展到 CHW 维度,对特征图进行矫正,得到
30、注意力特征.CA 注意力机制输出的最终表达式为:yc=xcghgw(8)CA 注意力机制融入到 C3 模块当中只会引入少量的参数,而且不会增加网络的总层数,运用在本文数据集中可以提高整个网络的性能,具体实现如图 6 所示.在 C3 模块主通道的 CBS 卷积之后接入 CA 注意力模块组合成 C3CA 模块.其中,CBS 为带有 BN 和激活函数 SiLU 的卷积核大小为 11 的卷积,Bottleneck 为两个卷积核大小分别为 11 和 33 的 CBS 卷积融合而成.CBSCACBSConcatCBSCBS=Conv BN SiLU=CBSCBSBottleneck3Bottleneck图
31、 6CA 融合 C3 模块 2.4 IoU Loss 改进GIoU 损失函数考虑到真实框和预测框不相交的情况下,梯度恒为 0 无法反向传播的问题,提出了使用最小外接矩阵包含真实框和预测框21.但是在对行人进行检测时,经常会出现真实框与预测框完全重叠在一起的情况,这会导致损失收敛速度变慢.CIoU 损失函数进一步地优化了检测框,同时考虑到预测框与真实框的重叠面积、中心点聚集、长宽比之间的差异22,从而使得目标框的发散减少,回归更加稳定,同时加速损失的收敛速度.CIoU 的定义如下:Lloss=1IoU+2(b,bgt)c2+u(9)u=42(arctanwgthgtarctanwh)2(10)其
32、中,Lloss为 CIoU 的损失;IoU、bgt和 b 以及 c 分别为真实框与预测框的交并比、中心点之间的距离、中心点以及并集部分对角线的长度;为调节因子;u 是长宽比的相似系数,w 和 h 分别为预测框的高度与宽度,wgt和 hgt分别为真实框的高度和宽度.但是该损失函数对每个目标的 IoU 都分配相同的权重,在训练过程中梯度和损失无法自适应,对于某些HighIoU 目标回归精度较差.因此本文使用 AlphaIoU 对 CIoU 做进一步的优化,自适应地调节 HighIoU 目标的权重.运用 Box-Cox 变换,AlphaIoULoss可表示为:L-IoU=1IoU,0(11)其中,当
33、 趋近于 0 时,L-IoU=log(IoU),当 不趋近于 0 时,L-IoU=1IoU.计 算 机 系 统 应 用http:/www.c-s-2023年第32卷第11期124系统建设SystemConstruction将惩罚项加在上述公式中,可以归纳出 CIoU 的改进损失函数-CIoU,即:L-CIoU=1IoU+2(b,bgt)c2+(u)(12)此时,该函数可以概括出现有的一些其他的 IoU损失类型.当 大于 1 时,分配给 HighIoU 目标更多的损失权重,有利于模型更加关注 HighIoU 目标,提高检测性能和边界框的回归精度.同时模型训练更加灵活,能够实现计算不同情况下的目标
34、框回归精度,在轻量化网络模型的结构中能发挥更好的作用.经过实验对比,参数取 3 的情况下模型对 HighIoU 目标的检测效果最好.2.5 基于滤波器剪枝的 MCA-YOLOv5sFPGM(filterpruningviageometricmedian)23提出了一种新的剪枝方法,通过计算几何中值的卷积神经网络过滤器剪枝.突破范数准则不能总是满足范数偏差很大以及最小范数很小这两个要求的局限性,实现“相对不重要”到“可替代性”的转变.FPGM 剪枝过程如图 7 所示,通过修剪带有冗余信息的卷积核来压缩CNN 模型,具体为修剪同一层卷积核中几何中值附近的卷积核,生成深度减小的特征图.其相比基于范数
35、准则的剪枝方法保留了更多的特征信息,并且能够结合网络模型正常的训练过程,免去额外的微调.几何中心剪枝前卷积核剪枝后卷积核i 层特征图WiNiHiHii+1 层特征图WiNi(1R)图 7FPGM 剪枝过程FPGM 结合 YOLOv5s 训练过程具体为:(1)YOLOv5s 网络根据梯度更新网络参数,定义剪枝率参数 R,以迭代的方式进行剪枝操作.(2)在所有卷积层中,计算当前层的几何中心点,然后计算其他卷积核到几何中心点的欧式距离.(3)对欧式距离进行排序,裁剪掉后 RN 个卷积核,N 为当前层的卷积核总数.(4)模型进行下一轮的训练,裁剪掉的卷积核权重修改为 0.(5)模型的每轮训练不断地迭代
36、(2)(4)这 3 步.(6)训练完成后开始调整网络结构,去除参数为 0 的卷积核和卷积核中的冗余通道以及 BN 层参数的冗余数值,得到最终剪枝后的模型.3实验结果及分析 3.1 实验环境本实验的基本参数以及训练的深度学习环境如表 2所示,使用 PyTorch 深度学习框架部署网络模型.表 2实验环境配置表名称配置操作系统开发环境CPU显卡内存部署设备Windows11CUDA11.4AMDRyzen7-5800HNVIDIAGeForceRTX3060Laptop6GB16GBAtlas300AI加速卡 3.2 实验数据集本文采用的数据集来自地铁站内监控视频的抽帧图片.现场捕获地铁站内乘客运
37、动的视频,使用 Python导入 OpenCV 包对视频进行读取,并使用 5fps 的帧率进行抽帧,通过对不同时间段视频的采集,建立了丰富的站内乘客数据,提供训练模型多样化的样本数据.本文共 8738 张图片,其中包含密集和稀疏的行人场景以及多尺度的行人.对获取的图片使用 LabelImg 软件进行手动标注,获取 XML 格式的标签,然后计算归一化的坐标以及归一化的宽高,将标注文件转换为 YOLOv5s算法适配的 txt 格式.标注目标为行人的头部,标签为“head”类,以此来消除行人身体部分遮挡带来的影响.实验按照 8:2 的比例划分图片,训练集 6166 张,验证机2622 张,一共包含
38、41925 个标签.3.3 训练参数及评价指标将网络的输入图片大小统一裁剪为 640640 的尺寸,设置 batchsize 为 4,优化器选择随机梯度下降法来更新网络参数,学习率设置为 0.01,使用余弦函数动态调整,Dropout 率设置为 0.05,在训练集上最大训练次数 epoch 设置为 200,前 3 个 epoch 用作热身训练,IoU 训练时的置信度阈值设置为 0.45.为了更好地衡量地铁场景内行人检测算法的精确度和实时性能,本研究设置的模型检测性能评价指标有:精确率(precision,P)、召回率(recall,R)、平均精度(averageprecision,AP)、浮点
39、计算量(gigafloating-pointoperationpersecond,GFLOPs)、每秒传输帧数(framespersecond,FPS)、参数量(Parameters).精确率 P 定义为在所有的检测目标中预测正确的2023年第32卷第11期http:/www.c-s-计 算 机 系 统 应 用SystemConstruction系统建设125概率,计算公式为:P=TPTP+FP(13)召回率 R 定义为实际存在的图片中预测正确的概率,计算公式为:R=TPTP+FN(14)平均精度 AP 定义为不同召回率下的平均精确度,计算公式为:AP=10p(R)dR(15)其中,TP(tr
40、uepositives)表示正样本中被正确检测的例子;FP(falsepositives)表示负样本被预测为正样本的例子;FN(falsenegatives)表示正样本被错误预测为负样本的例子.AP 表示 P(R)(precision-recall)学习的模型检测性能的好坏.GFLOPs 表示浮点运算次数,可以用来衡量网络模型的复杂度.FPS 表示模型的检测速度,即检测图片的数量和检测时间的比例.Parameters 表示模型中包含参数的数量.3.4 实验结果分析共进行 6 组对比实验和 1 组消融实验,第 1 组(见表 3)为不同轻量化网络模型比较;第 2 组(见图 8)为不同剪枝率下的模型
41、性能比较;第 3 组(见图 9 和图 10)为 YOLOv5s 和 MCA-YOLOv5s 的损失函数收敛性比较;第 4 组(见表 4)为 YOLOv5s 加入不同改进模块的消融实验;第 5 组(见图 11)为 MCA-YOLOv5s 与YOLOv5s 的性能比较;第 6 组(见表 5)为 MCA-YOLOv5s与其他主流方法的比较;第 7 组(见图 12图 14)为改进算法的检测效果图比较.表 3轻量化效果对比轻量化网络FLOPs(G)P(%)R(%)AP(%)FPSGhostNet7.994.991.894.466.8MobileNetv31.993.893.594.374.6Faster
42、Net11.893.594.294.676.1MobileNetv3(PConv)4.394.193.794.878.7首先对改进后的 MobileNetv3 与原始的 Mobile-Netv3、FasterNet 和 GhostNet24轻量化网络模型做对比试验,在实验中均加入 CA 注意力模块和 AlphaIoU 损失,结果如表 3 所示.FasterNet 虽然 FLOPs 较高,但是其结构中的 PConv 相比于 DWConv 极大地降低了内存访问数量,对空间特征的提取更为有效,因此检测平均精度和速度都高于 GhostNet 和 MobileNetv3.改进的 MobileNetv3
43、模型与 FasterNet 相比较,检测精度和速度都有提高,轻量化效果更加优异.FPS515427273154120.9122.386.4156790.1115.792.994.394.394.580.294.878.7000.20.60.81.0100200300400500Parameters(M)Prune rateAP(%)数值图 8不同剪枝率下网络模型参数的变化Epochtrain/box_losstrain/obj_lossLoss0020406080100 120 140 160 180 2000.020.040.060.080.10图 9YOLOv5s 损失函数收敛曲线Epoc
44、htrain/box_losstrain/obj_lossLoss0020406080100 120 140 160 180 2000.020.040.060.080.10图 10MCA-YOLOv5s 损失函数收敛曲线表 4MCA-YOLOv5s 的消融实验算法MobileNetv3 PConv CAAlphaIoU剪枝(%)FLOPs(G)AP(%)FPSYOLOv5s15.894.653.2A1.992.575.6B4.393.181.8C3.994.778.2D3.994.878.7E401.494.2 102.6对使用不同剪枝率的 MCA-YOLOv5s 模型的性能进行对比验证,剪枝
45、结果如图 8 所示.图中展示了不同剪枝率下网络的 AP、FPS、Parameters 的指标变化.剪枝率为 0 表示 MCA-YOLOv5s 网络模型.本文的骨计 算 机 系 统 应 用http:/www.c-s-2023年第32卷第11期126系统建设SystemConstruction干网络已经进行了轻量化处理,为了维持模型的检测精度,此处主要对特征融合阶段的多余通道进行剪枝.从实验结果可以看出,网络模型的参数量随着剪枝率的增加线性下降.模型性能方面,当剪枝率达到 0.4 后,检测速度的增加变得缓慢,检测精度开始加速降低,当剪枝率为 0.9 时 AP 仅有 86.4%,原因是因为剪枝后的网
46、络结构如果太浅会严重影响精度.在保证检测精度的情况下,本文实验选择使用 0.4 的剪枝率.Epoch0050MCA-YOLOv5sYOLOv5s1001502000.20.40.60.81.0AP图 11YOLOv5s 与改进 YOLOv5s 的 AP 对比表 5当前主流方法的对比试验算法P(%)R(%)AP(%)FPSFasterR-CNN64.589.478.310.9SSD88.281.156.630.4YOLOv492.580.480.218.6YOLOXs87.492.893.948.3YOLOv793.793.995.242.1YOLOv5s93.592.894.653.2MCA-
47、YOLOv5s94.193.794.878.7图 12稀疏行人场景图 13密集行人场景对比使用 GIoU 损失函数的 YOLOv5s 与加入AlphaIoU 损失函数的 MCA-YOLOv5s 的损失函数收敛情况,得到定位损失 box_loss 与置信度损失 obj_loss 的收敛曲线,如图 9 和图 10 所示.通过对比图 9 和图 10 可以发现,MCA-YOLOv5s的定位损失函数达到稳定状态时损失值稳定在 0.021附近,相比于 YOLOv5s 有明显的下降.这是由于采用AlphaIoU 损失函数可以有效降低边界框的损失值,而且使得模型的置信度损失也有所下降,提高网络整体的收敛效果.
48、为验证改进模型的性能,本文进行消融实验.实验结果如表 4 所示,采用 AP 和 FPS 以及 GFLOPs 这3 种指标评价模型.首先在 YOLOv5s-6.0 的基础上使用改进的 MobileNetv3 主干网络,测试轻量化模型的性能,然后在轻量化模型的基础上依次加入 CA 注意力机制和 AlphaIoU 损失函数观察检测效果,最后采用 40%剪枝率的 FPGM 剪枝对改进后的网络模型进行压缩,测试去除冗余通道后模型检测速度和精度的变化,其中表示加入此模块.由实验结果可知:在模型主干替换为 MobileNetv3后模型的计算量大幅减少,检测速度加快,但带来了精度上的小幅降低;把 Mobile
49、Netv3 中的 DWConv 替换为 PConv 后,虽然参数量有所上升,但是其降低了检测延迟,因此检测速度有所加快,行人目标的检测 AP 也有提升;在此基础上加入 CA 注意力模块,在小幅降低检测速度的同时,行人目标检测 AP 提高了 1.6%,弥补2023年第32卷第11期http:/www.c-s-计 算 机 系 统 应 用SystemConstruction系统建设127了轻量化结构导致的部分精度损失,然后再将 CIoU 损失函数替换为 AlphaIoU,行人目标检测的精度和速度都得到了提升.改进后的算法在保证了检测精度的同时,大大减小了模型的计算量和复杂度,加快了检测速度.更进一步
50、的使用 40%剪枝率的剪枝压缩改进后的网络模型,在 AP 下降了 0.6%的情况下,FPS 增加 30.4%,达到 102.6,更加适合后续的算法模型部署.最后对比在相同数据集下 MCA-YOLOv5s 与原始 YOLOv5s 模型的性能,AP 对比图如图 11 所示,改进的 YOLOv5s 算法在检测速度加快 48%的情况下,检测精度保持与原始 YOLOv5s 相近的水平,因此综合性能更加符合地铁内大规模监控系统的实时检测需求.为了验证本文 MCA-YOLOv5s 算法的效果与性能,将算法与其他当前主流算法,如 YOLOv5s、YOLOv7、YOLOv4、FasterR-CNN、SSD、YO
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100