System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于改进YOLOv8的两轮车头盔检测算法制造技术_技高网

基于改进YOLOv8的两轮车头盔检测算法制造技术

技术编号:41150754 阅读:6 留言:0更新日期:2024-04-30 18:17
本发明专利技术针对目前目标检测算法对于头盔这类小目标检测能力较差的问题,提出一种基于改进YOLOv8的轻量化注意力机制两轮车头盔检测算法。以YOLOv8算法为基础,使用EfficientVit模型作为主干网络,大幅减少模型的参数量,引入具有动态非单调聚焦机制的WIoU边界框损失函数来加快网络的训练与推理,通过权衡低质量样本和高质量样本的学习来进一步提高模型的整体性能,有效降低了头盔检测的漏检率。

【技术实现步骤摘要】

本专利技术涉及目标检测,尤其涉及一种基于改进yolov8的轻量化注意力机制两轮车头盔检测算法。


技术介绍

1、摩托车、电动车、自行车等骑乘交通工具以其便捷、便宜、环保等特点受到出行者的广泛欢迎,但这类骑乘人员在驾驶过程中完全暴露于道路之中,容易在交通事故中伤亡。2019年,我国共发生交通事故244058起,其中摩托车、电动车、自行车交通事故发生数共76967起,占比约为31.54%。摩托车、电动车、自行车发生交通事故致死人数占总交通事故死亡人数的24.91%;骑行头盔是骑乘交通工具不可缺少的一部分,可以有效减少发生交通事故时的伤亡。近几年全国各地陆续开始实施相关法规,要求骑乘者必须佩戴安全头盔。在各个交通要道安排执勤人员检查骑乘者头盔佩戴情况,但是这种检查方式效率低、漏检率高,对执勤人员的生命安全也存在一定威胁;近十年人工智能崛起,机器学习代替了人工学习,极大地提高了工作效率,尤其在图像处理领域,深度学习成果显著。采用深度学习网络对骑行人员进行头盔佩戴检测能有效解决当前所存在的问题。目前,基于深度学习的目标检测算法主要分为:(1)两阶段(two-stage)算法,如rcnn(region-proposal convolutionalneural network)、fast r-cnn、faster r-cnn、r-fcn(region based fullyconvolutional network)、mask r-cnn等;(2)单阶段(one-stage)算法,如ssd(singleshot multibox detector)、yolo(you only look once)等。这两类算法的区别在于是否需要生成候选框。一般而言,使用两阶段算法的模型在预测精度上表现优秀,但两阶段计算方式增加了计算成本,影响网络训练速度。而yolo、ssd等单阶段算法将目标边框定位问题转化为回归问题,可以进行端到端检测,因为没有候选框,所以速度快、实时性好,被广泛应用于工程实际中;头盔检测应用的场景是车水马龙的交通道路,环境复杂,且人流车流量大。不但要对庞大的车流人流进行分析,还要从中识别出骑行者有无佩戴头盔,所以对模型运算精度和实时性都有较高的要求。因此,本文采用具有较高精度且时效性更好的单阶段算法yolov8模型。传统检测方法将待检测目标划分为两部分:骑车人和骑乘工具,这样制作的数据集极易将非骑行人员纳入识别范围,增加了拟识别对象的数目,也就增加了计算量和计算过程,所以在人员密集环境下的检测精度不高。为此,本专利技术采用人与车整体标定的方法,即在制作数据集时,将骑车人与骑乘工具标定为一个整体。这样,训练出的网络就可有效地将骑车者与非骑车者区别开来。


技术实现思路

1、本专利技术所解决的技术问题是针对目前检测算法对两轮车头盔这类小目标的检测效果差的问题,综合考虑检测精准度、检测速度、样本平衡等多方面因素,提出改进方案。使用efficientvit模型作为主干网络,大幅减少模型的参数量,既保证了提取的特征信息尽量多,又使网络检测速度更快。引入具有动态非单调聚焦机制的wiou边界框损失函数来加快网络的训练与推理,通过权衡低质量样本和高质量样本的学习来进一步提高模型的整体性能,同时有效解决了回归不准确和收敛速度慢的问题。

2、为了实现上述目的,本专利技术的技术方案如下:

3、基于改进yolov8的轻量化注意力机制两轮车头盔检测算法,包括以下步骤:

4、步骤一:数据集的设计制作以及数据预处理,将头盔数据集根据需求调整为网络可训练的大小;

5、步骤二:输入头盔图像数据,通过构建引入的efficientvit主干网络中的移动翻转瓶颈卷积(mobile inverted bottleneck convolution,mbconv)进行特征提取及特征融合;

6、步骤三:两轮车以及头盔预测,分别对两轮车以及头盔的中心点、尺度和偏移量进行预测;

7、步骤四:预测框后处理,将头盔预测结果经过wiou边界框损失函数处理,保留遮挡头盔的预测框,去除同一个头盔的冗余预测框,最终得到头盔检测网络的整个预测结果。

8、所述步骤一中的具体情况如下:

9、首先,数据的采集是在多个路口、市场、小区等场景下进行,其中的驾驶人身份不同,有外卖小哥、白领、工人、学生等,安全头盔颜色多样,电动车型号颜色多样,拍摄的角度不同、拍摄距离不同,采集到尽可能多的佩戴安全头盔的数据。采集数据全部是以拍摄视频的方式获取,视频时长几秒到几十秒不等,共计135个视频。然后通过编写python代码进行图片的提取,每秒提取图片数量为10张,共计提取的图片有7257张。剔除掉图像中没有待检测目标或目标特征不明显的无用图片1981张以及重复图片3776张后共计保留1500张。在对转换后的图片数据进行查看时发现其具有以下特点:

10、(1)个别图片模糊不清;

11、(2)个别图片中待检测目标太小;

12、(3)个别相邻图片的重复度过大;

13、(4)个别图片中由于待检测目标密度过大导致遮挡严重。

14、对上述几类图片进行删除,对所有数据图片进行筛选后,其文件名称序号不连续,编写代码对筛选后的图片重命名,通过重命名对所有图片进行编号排序,然后使用labelimg工具进行图片标注。由于该数据集中图片为尺寸1024×2048像素的高分辨率图片,为了不超过显卡的限制,实验中将图片尺寸调整为640×640,batch size设置为32。

15、所述步骤二中的具体情况如下:

16、首先,通过一个轻量级的1×1卷积操作,降低输入特征图的通道数。然后采用深度可分离卷积dwconv(depthwise convolution,dwconv)对输入进行处理。经过dwconv之后,将其输出通过senet(squeeze-and-excitation networks,senet)进行处理。接下来,通过一个1×1卷积操作将通道数恢复到与输入特征图相同的数量。最后,将经过dwconv和senet处理的特征图与输入特征图在相同维度的数值进行相加,避免梯度消失的问题。其中,dwconv分为深度卷积和逐点卷积。深度卷积将通道间的卷积分解为独立的卷积操作,在每个通道上进行独立的卷积。逐点卷积使用1×1的卷积核对深度卷积的输出进行卷积操作,相当于对特征图的通道维度进行线性组合。两者相结合,使得网络在保持高效性的同时,能够更好地提取和表示特征。

17、所述步骤三中的具体情况如下:

18、将处理后的数据通过两个1×1卷积核和一个2×2卷积核,分别对头盔中心点、尺度和偏移量进行预测。

19、所述步骤四中的具体情况如下:

20、使用wiou替代iou:考虑到训练数据不可避免地包含低质量的例子,盲目地在低质量样本上加强边界框回归会降低模型的泛化性能。当预选框与目标框重合度较高时,良好的损失函数应该削弱几何因素的惩罚,使模型获得本文档来自技高网...

【技术保护点】

1.一种基于改进YOLOv8的两轮车头盔检测算法,其特征在于,包括以下步骤:

【技术特征摘要】

1.一种基于改进yolov8的两轮车头...

【专利技术属性】
技术研发人员:刘丽伟岳新博路明何平鸽
申请(专利权)人:长春工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1