APP下载

基于Yolov5的人行道障碍物目标检测*

2023-01-10李小龙侯焱森史雅莉张鑫利孙镇坤肖春宝

山西电子技术 2022年6期
关键词:障碍物准确性目标

李小龙,侯焱森,史雅莉,张鑫利,孙镇坤,肖春宝

(河南科技大学信息工程学院,河南 洛阳471023)

1 概述

行人作为道路交通的参与者之一,最大的特点是行走随意性大,方向多变。面对复杂的道路和交通环境,目标检测的速度是最重要的指标之一,Yolov5拥有最高140FPS的检测速度又兼具了检测的准确性,在实时条件和移动环境部署上得到了广泛应用。

本文利用Yolov5网络模型设计出一种可应用于盲人出行的辅助设备。设计开发针对于人行道常见障碍物的目标检测识别算法。

2 Yolov5介绍

2.1 Yolov5s网络模型

在Yolov5的5种网络模型中,Yolov5网络模型的深度是最小的,因此能够更好地应用于算力有限的移动设备和较小数据集的模型训练。

2.2 Input端

Input端使用了Mosaic数据增强技术、自适应锚框计算和自适应图片缩放技术。Mosaic数据增强是指将4张图片通过随机缩放、随机剪裁、随机排布的方式拼接,使用Mosaic数据增强技术的主要原因是为了提高模型对数据集中小目标检测的准确性。另外,使用Mosaic数据增强还能够丰富数据集,通过随机缩放增加的小目标也让网络更加鲁棒。

图1 Yolov5s网络模型结构

2.3 Backbone

在Yolov5s网络结构中,原始图像大小为608*608*3,图片输入后先经过Focus结构切片,变成304*304*12的特征图,再使用32个卷积核进行卷积操作,最终转变成304*304*32的特征图。除了Focus结构外,Yolov5还在Backbone和Neck中分别设计了两种不同的CSP结构CSP1_X和CSP2_X,CSP结构的使用让Yolov5模型在尽可能轻量化的同时保证了准确性,降低了内存成本。

2.4 Neck

Neck层借鉴PANet,采用了FPN(自顶向下)+PAN(自下而上)两种特征金字塔相结合的方式,同时获取到强语义特征和强定位特征对不同检测层的参数进行聚合,进一步提高了特征提取能力。

2.5 Prediction

Yolov5s采用了GIOU_Loss损失函数,并通过非最大抑制算法将非最大贡献值的预测结果去除,返回概率最大的分类结果并输出,使得预测框回归的速度和精确度更高。

3 训练前准备阶段

3.1 数据集准备

训练数据集的质量和可靠性对训练后的模型质量有着直接的影响,是影响障碍物检测效果的关键因素,在数据选择时需要考虑的因素包括但不限于天气、光照、清晰度等。为保证图片更贴近于实际应用场景,数据集中所选用的图片来自于相机拍摄和百度实景地图。

在进行图片筛选时尽量选择在不同自然环境下的,以及在同一地点不同时间的图片,使用labelimg工具对不同的障碍物进行标注,并保存为yolo格式数据。将标注好的数据以8∶1∶1的比例划分为训练集、测试集和验证集三部分,分别将原始图片和标签存放在images和labels文件夹下。

3.2 环境部署

首先在anaconda控制台中新建一个python虚拟环境,python版本选择3.8。下载Yolov5源代码,在anaconda控制台中进入该项目路径下,编辑requirements.txt文件,将torch和torchvision两行注释后,安装所需依赖包。安装完成后,进入Pytorch官网,获取CUDA 11.3版本torch包的pip安装命令,并安装torch和torchvision依赖。

4 训练结果分析与讨论

4.1 第一次训练及结果分析

将标注好的数据进行100轮次训练,参数设置如下:初始学习率lr0为0.01,权重衰减率为0.0005,学习率动量为0.937,权重文件使用yolov5s.pt。

从图2中数据可知,准确率和召回率曲线波动性较强,mAP值较小,经初步分析可知模型训练结果较差。结合测试图像可知,该模型存在欠拟合现象,对部分目标的检测出现了过拟合。造成这种结果的原因是数据集较小,各类目标在数据集中出现的次数不均衡,训练轮次较少。

图2 第一次模型训练结果

4.2 第二次训练结果及分析

第二次训练时增加了数据集中图片的数量,并将训练轮次提升到300轮次,其余参数设置不变,权重文件仍然使用yolov5s.pt。

图3 第二次模型训练结果

将图3中的数据与图2中的数据比较分析后可以发现,mAP值有了较大的提升,且波动性有明显下降。通过模型检测结果也能够得知,目标识别的准确性有了显著的提升,但仍存在漏检现象,初步判断导致漏检的原因是数据集制作时数据标注结果较差,数据集规模小。

图4 目标检测结果

5 结语

综上所述,人行道障碍物检测表现出的特征是环境复杂,障碍物类型较多,所以需要规模极其庞大的数据集才能得到更加完善可靠的障碍物目标检测模型。

针对本文中所出现的问题,仍然存在许多有待完善的地方,例如在复杂环境中可能出现的无法识别的情况,在目标视野中存在大量目标时出现的漏检和小目标漏检问题。下一步可以从扩大数据集规模,提高图像标注质量,优化损失函数,改进网络模型等方面进一步提高目标识别的精确度,降低误检率和漏检率。

猜你喜欢

障碍物准确性目标
浅谈如何提高建筑安装工程预算的准确性
理解语境与名句的关系,提高默写的准确性
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
赶飞机
为桥梁领域的示值准确性护航
影响紫外在线监测系统准确性因子分析
新目标七年级(下)Unit 3练习(一)
新目标七年级(下)Unit 4练习(一)
(新目标)七年级下Unit 1练习(二)