一种基于激活函数的改进YOLOv4车辆行人检测算法制造技术

技术编号:34005999 阅读:13 留言:0更新日期:2022-07-02 13:23
本发明专利技术提出了一种基于激活函数的改进YOLOv4车辆行人检测算法;构造了零点处梯度并不突变的FMish激活函数,保证信息流动,不会出现“梯度消失”;本发明专利技术在Dense

【技术实现步骤摘要】
一种基于激活函数的改进YOLOv4车辆行人检测算法


[0001]该专利技术属于图像识别领域,一种基于激活函数的改进YOLOv4车辆行人检测算法,该算法在通用标准数据集上表现出很好的检测性能。

技术介绍

[0002]随着计算机技术的不断发展及算力的不断提升,计算机视觉与其中的目标检测成为了近年来热门方向。利用目标检测可以对特定物体进行识别与定位,在驾驶辅助系统、军事预警系统等有广泛的发展前景。目标检测技术包括传统目标检测技术及基于深度学习的目标检测技术,而后者由于在性能与复杂度方面优于前者,已成为当前目标检测领域的主流算法。为了更高效管理交通道路,维持社会稳定,需要对道路上的行人车辆等目标进行检测。车辆行人的检测任务在无人驾驶领域中占据重要地位。进行智能车辆行人识别,可以辅助交警进行有效的管理和交通流量控制,并且可以及时预测接下来的交通状况,预防交通拥堵。
[0003]本专利技术基于YOLOv4网络和KITTI道路目标数据集,构建了更高性能的车辆行人检测算法。以YOLOv4为基础网络,借鉴DenseNet的思想,设计了Dense
‑ꢀ
SPP模块和Dense

特征融合模块,称为Dense

YOLOv4,可以有效地对高层特征进行多尺度池化以增加感受野以及更加充分的融合网络高层的特征,同时还能减少网络的计算量。
[0004]本专利技术所用的数据集是KITTI道路目标数据集,为了使模型能够更加轻量化的同时还能基本保持检测精度,设计了Dense

YOLOv4

Small网络模型,同时构造了FMish激活函数,其在零点处梯度并不突变,而是为非常小的负梯度,从而保证信息流动。在KITTI道路目标数据集上对YOLOv4、Dense

FMish
‑ꢀ
YOLOv4、Dense

FMish

YOLOv4

Small三个模型进行训练,并对比三种模型在检测速度,mAP和Recall指标上的性能。FMish激活函数不仅能避免饱和问题,而且函数较为平缓,避免“梯度爆炸”的问题,可以保证训练过程的稳定性,提升检测效果。

技术实现思路

[0005]针对以上问题,本专利技术的目的是提供一种针对YOLOv4网络结构的基于激活函数的改进YOLOv4车辆行人检测算法。
[0006]为了实现上述目的,本专利技术采取如下的技术解决方案:
[0007]一种基于激活函数的改进YOLOv4车辆行人检测算法,在Dense

YOLOv4与 Dense

YOLOv4

Small网络结构的基础上,构造了FMish激活函数,其在零点处梯度并不突变,而是为非常小的负梯度,将全部的激活函数替换为FMish激活函数,称为Dense

FMish

YOLOv4与Dense

FMish

YOLOv4

Small算法,FMish 激活函数不仅能避免饱和问题,而且函数较为平缓,避免“梯度爆炸”的问题,可以保证训练过程的稳定性,提升检测效果。
[0008]所述车辆行人检测算法包括以下步骤:
[0009]步骤一、下载当前目标检测领域通用数据集KITTI道路目标数据集,剔除原始
KITTI数据集中的“Misc”和“Dontcare”两类数据,创建KITTI

7Classes道路目标数据集,使用该数据集可保证算法检测效果与该领域公开的通用数据集保持一致,构建了本专利技术使用的道路目标数据集;将测试集、验证集与训练集按照 6:2:2的比例划分;
[0010]KITTI数据集是目前最大的自动驾驶场景下数据集;KITTI包含各种道路场景采集的真实图像数据;KITTI数据集共包含九类,分别为Car,Van,Truck, Pedestrian,Person(sitting),Cyclist,Tram,Misc和Dontcare;由于KITTI中有两类为“Misc”和“Dontcare”,分别为“杂乱无章”类和“不关心的”类,这两种类别是无意义的,并且由于这两类没有特定的目标特征,在不同的图片中其“Misc”类可能包含的物体是不同的,本专利技术对原始KITTI数据集中的“Misc”和“Dontcare”剔除,形成KITTI

7Classes数据集,本专利技术将在KITTI

7Classes上进行训练和测试;
[0011]步骤二、使用标准YOLOv4网络训练并识别和定位车辆行人;使用标准 YOLOv4网络对基于步骤一道路目标数据集进行训练,下载标准YOLOv4网络并进行编译,标准YOLOv4网络的下载地址:https://github.com/AlexeyAB/darknet;为道路目标数据kitti

7classes更改cfg文件夹中kitti7.data文件中的训练集、验证集、测试集目录为下载数据集的地址,指定类别数量与类别名称,在训练执行的命令行中根据精度要求设定迭代次数(epoch)为100,根据本次实验数据集加载kitti7.data,同时加载yolov4.cfg,程序即可开始训练;保存训练过程中各层的权重文件Q1,作为训练结束后检测的权值输入文件;利用权重文件Q1进行测试,得到均值平均精度(Mean Average Precision,mAP)、召回率(Recall)与检测时的帧率(Frame Per Second,FPS);
[0012]1)构建YOLOv4网络模型,使用Initialization函数进行神经网络各层权值参数的初始化;
[0013]YOLOv4由四个部分组成,分别是:(1)Input输入端:指输入网络原始样本数据;(2)骨架(Backbone)网络:指进行特征提取操作的卷积神经网络结构;(3)Neck颈部:对主干网络提取的图像特征进行融合,并将融合后的特征传递到预测层;(4)Head头部:对图像中的感兴趣目标物体进行预测,并生成可视化的预测框与目标类别;
[0014]下载标准YOLOv4网络后,对YOLOv4网络使用make命令进行编译,形成可执行文件darknet;为道路目标数据集KITTI

7classes编辑cfg文件夹中kitti7.data 文件,将class、train、valid、names字符串改为对应数据集的目录与参数,这样就编辑好了标准YOLOv4网络Input部分需要的参数,在训练执行的命令行中设定epoch后,根据本次实验数据集加载kitti7.data,同时加载yolov4.cfg,程序即可开始训练;程序在运行时会使用Initialization函数进行神经网络各层权值参数的初始化;
[0015]2)从Input部分输入图片数据,经过Backbone部分,最本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于激活函数的改进YOLOv4车辆行人检测算法,基于Kitti

7classes通用数据集的道路目标数据集的检测定位,其特征在于:利用KITTI道路目标数据集进行车辆行人检测,KITTI包含各种道路场景采集的真实图像数据,KITTI数据集共包含九类,分别为Car,Van,Truck,Pedestrian,Person(sitting),Cyclist,Tram,Misc和Dontcare,由于KITTI中有两类为“Misc”和“Dontcare”,分别为“杂乱无章”类和“不关心的”类,这两种类别是无意义的,并且由于这两类没有特定的目标特征,在不同的图片中其“Misc”类可能包含的物体是不同的,本发明对原始KITTI数据集中的“Misc”和“Dontcare”剔除,形成KITTI

7Classes数据集,本发明将在KITTI

7Classes上进行训练和测试;所述车辆行人检测算法包含以下步骤:步骤一、下载当前目标检测领域通用数据集KITTI道路目标数据集,KITTI数据集是目前最大的自动驾驶场景下数据集,剔除原始KITTI数据集中的“Misc”和“Dontcare”两类数据,创建KITTI

7Classes道路目标数据集,使用该数据集可保证算法检测效果与该领域公开的通用数据集保持一致,构建了本发明使用的道路目标数据集;将测试集、验证集与训练集按照6:2:2的比例划分;步骤二、使用标准YOLOv4网络训练并识别和定位车辆行人;使用标准YOLOv4网络对基于步骤一道路目标数据集进行训练,下载标准YOLOv4网络并进行编译,标准YOLOv4网络的下载地址:https://github.com/AlexeyAB/darknet;为道路目标数据kitti

7classes更改cfg文件夹中kitti7.data文件中的训练集、验证集、测试集目录为下载数据集的地址,指定类别数量与类别名称,在训练执行的命令行中根据精度要求设定迭代次数(epoch)为100,根据本次实验数据集加载kitti7.data,同时加载yolov4.cfg,程序即可开始训练;保存训练过程中各层的权重文件Q1,作为训练结束后检测的权值输入文件;利用权重文件Q1进行测试,得到均值平均精度(Mean Average Precision,mAP)、召回率(Recall)与检测时的帧率(Frame Per Second,FPS);1)构建YOLOv4网络模型,使用Initialization函数进行神经网络各层权值参数的初始化;YOLOv4由四个部分组成,分别是:(1)Input输入端:指输入网络原始样本数据;(2)BackBone网络:指进行特征提取操作的卷积神经网络结构;(3)Neck颈部:对主干网络提取的图像特征进行融合,并将融合后的特征传递到预测层;(4)Head头部:对图像中的感兴趣目标物体进行预测,并生成可视化的预测框与目标类别;下载标准YOLOv4网络后,对YOLOv4网络使用make命令进行编译,形成可执行文件darknet;为道路目标数据集KITTI

7classes编辑cfg文件夹中kitti7.data文件,将class、train、valid、names字符串改为对应数据集的目录与参数,这样就编辑好了标准YOLOv4网络Input部分需要的参数,在训练执行的命令行中设定epoch后,根据本次实验数据集加载kitti7.data,同时加载yolov4.cfg,程序即可开始训练;程序在运行时会使用Initialization函数进行神经网络...

【专利技术属性】
技术研发人员:王兰美魏兵王桂宝廖桂生贾建科孙长征
申请(专利权)人:陕西理工大学
类型:发明
国别省市:

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

1