基于改进YOLOv8n的轻量化车辆行人检测方法

文档序号:37437903发布日期:2024-03-25 19:37阅读:12来源:国知局
基于改进YOLOv8n的轻量化车辆行人检测方法

本发明涉及目标检测领域,特别是涉及基于改进yolov8n的轻量化车辆行人检测方法。


背景技术:

1、基于深度学习的目标检测算法主要分为两种:二阶段目标检测算法和单阶段目标检测算法。二阶段目标检测算法通过选择性搜索等方法得到候选区域,再对候选区域进行特征提取得到特征矩阵,最后将特征矩阵送入svm分类器进行预测并分类,检测精度较高,但由于大量候选区域的判别及处理,导致检测时间长、效率低。而单阶段目标检测算法直接将图像送入检测网络提取特征并预测,不需要提取候选区域,检测效率高,更加适用于对实时性要求较高的场景中,代表模型有ssd、yolo系列算法等。从2016年发布的yolov1到目前最新的yolov8,yolo系列算法的检测精度在不断提高,但在车载嵌入式系统等计算资源有限的设备上,由于检测算法实现高精度检测的同时带来大量计算资源消耗,给系统造成较大负载。因此,在保证检测精度的同时,轻量化检测算法消耗较少的计算资源,能够降低系统负载,具有重要研究意义。


技术实现思路

1、本发明针对现有技术存在的问题,提出一种基于改进yolov8n的轻量化车辆行人检测方法。本发明可以在保证检测精度不下降的同时,有效减少模型的计算量和参数量,降低系统负载。

2、实现上述目的的技术方案是:

3、步骤1,构建车辆行人图片数据集,通过在乘用车前挡风玻璃上端安装固定机位,根据采集的道路视频,分帧得到车辆行人图片数据;获取kitti数据集并进行预处理。

4、步骤2,训练集、验证集、测试集的生成,使用开源软件labelimg对采集到的车辆行人数据进行标注,并进一步结合kitti数据集,将结合后数据集按7:1:2的比例随机划分为训练集、验证集、测试集。

5、步骤3,模型轻量化改进,以yolov8n作为基准模型构建目标检测模型,在yolov8n基础上进行轻量化改进,得到改进后的模型。

6、步骤4,模型训练,通过设置训练超参数,使用步骤2中的训练集对步骤3中的改进模型进行训练。

7、步骤5,模型验证,对步骤4训练完成的模型进行验证,数据显示模型识别准确率可达到92.6%,相较于yolov8n提升了0.7%;计算量为6.1gflops,相较于yolov8n降低了24.7%;模型大小为5.1m,相较于yolov8n降低了15%,实现了在保证检测精度的同时实现模型的轻量化。

8、步骤6,将验证后的模型部署到车载嵌入式设备实现车辆行人实时检测。

9、所述步骤1中数据采集方式为,拍摄道路交通视频,再使用算法每10帧抽取一张图片构建数据集,视频格式为.mp4,录制尺寸为1242*375,帧率为30fps,抽取完成后得到2481张图片。

10、所述步骤1中kitti数据集为开源的道路交通场景数据集,共有9类目标。对kitti数据集的预处理方式为:将pedestrian、person_sitting类的标签合并为person,删除tram、misc、dontcare类的标签,保留car、van、truck、cyclist类的标签,处理后的kitti数据集共包含行人、小型乘用车、二轮车辆(摩托车、自行车)、小型货车、大型货车五类目标。

11、所述步骤2中使用labelimg对步骤1中采集的数据进行标注,标注的类别与处理后的kitti数据集一致,从处理后的kitti数据集中随机抽取5000张图片与标注后的图片相结合,然后按照7:1:2的比例划分为训练集、验证集、测试集。训练集包含5236张图片,验证集包含748张图片,测试集包含1497张图片。

12、所述步骤3对yolov8n模型的措施具体如下:

13、(1)基于轻量级卷积模块ghostconv设计ghostbottleneck和ghostc2f,并使用ghostconv替换传统卷积模块,使用ghostc2f替换c2f模块。ghostconv原理是先通过常规卷积生成部分特征图,再使用深度可分离卷积(depthwiseconv)进一步生成新的特征图,最后将两组特征图拼接起来。ghostconv通过传统卷积生成较少的特征图,后续在得到的特征图上使用深度可分离卷积,最后将两组特征图拼接起来,从而实现轻量化。基于ghostconv设计的ghostbottleneck模块根据卷积步长不同,有两种不同结构。当步长为1时,ghostbottleneck结构依次为输入层、ghostconv、ghostconv、连接层、输出层;当步长为2时,ghostbottleneck结构依次为输入层、ghostconv、depthwiseconv、ghostconv、连接层、输出层。ghostc2f与原始c2f模块结构类似,使用ghostbottleneck替换所有原始c2f模块中的bottleneck,生成ghostc2f模块。

14、(2)在模型颈部网络增加cbam注意力机制来增强特征融合能力。cbam注意力机制添加位置为neck部分每个ghostc2f模块后,与head层连接。

15、(3)在颈部网络使用bifpn(加权双向特征金字塔)结构增强特征融合能力。bifpn为一种加权融合方式,实现方法如下:

16、在主干网络依次提取320*320*64、160*160*128、80*80*256、40*40*512、20*20*1024五个特征层,建立特征融合金字塔,自下而上建立特征金字塔通道,同时删除只有一个输入的节点,当网络输出节点和原始输入节点通道数相同时,连接原始输入节点和输出节点从而融合更多特征。

17、(4)使用wiou(wise-iou)v3作为模型的损失函数。wiouv3使用动态非单调机制评价锚框质量,使普通质量的锚框得到更多关注,可以有效提高模型的检测精度。wiou计算公式如下:

18、lwiou=rwiou×liou

19、其中

20、

21、

22、其中表示真实框中心点坐标,表示预测框中心点坐标,cw表示预测框和真实框长度差,ch表示预测框和真实框高度差,a表示预测框,b表示真实框。

23、wiouv3在wiou基础上定义了一个离群值β用于衡量锚框质量,并基于离群值构建非单调焦点因子r,wiouv3计算公式如下:

24、lwiouv3=lwiou×r

25、其中:

26、

27、这里,α值取1.9,β值取3。

28、所述步骤4中的训练是在搭载windows10的台式计算机上进行,cpu为amd5600x,gpu为rtx3060ti,内存为16g。训练超参数设定如下:训练次数为200次,batch size为设为16,使用adam优化器,初始学习率为1*10-3,最终学习率为1*10-4,并采用余弦退火算法动态调整学习率。

29、所述步骤5中验证时iou设为0.5,batchsize设为1。

30、所述步骤6中先将验证后的模型转化为onnx格式,再将onnx格式检测模型导入到车载嵌入式设备中,实现车辆行人的实时检测。

31、与现有技术相比,本发明具有以下有益效果:

32、本发明提出一种基于改进yolov8n的轻量化车辆行人检测方法。(1)为了实现模型的轻量化,本发明基于ghostconv设计了ghostbottleneck和ghostc2f模块,并使用ghostc2f替换c2f模块,使用ghostconv替换传统卷积,有效减少了模型的计算量。(2)本发明使用bifpn(加权双向特征金字塔)结构增强特征融合能力,本发明还在neck部分的每个ghostc2f模块后添加了cbam注意力机制,使网络更加关注感兴趣,平衡因使用轻量化卷积模块对检测精度造成的不利影响。(3)本发明使用wiouv3作为模型损失函数,使普通质量的锚框得到更多关注,有效提高模型的检测精度。

33、相较于改进前的yolov8n,本发明模型计算量降低了24.7%;模型大小降低了15%,检测精度提升了0.7%,在保证检测精度的同时实现模型的轻量化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1