yolov4论文解析

由于yolov3作者退出yolo算法更新,但并没有停止对yolo的改进。2020年yolov4发出,并得到原作者的肯定。yolov4论文中做了非常多的消融实验进行对比,使用很多的训练策略,在精度上面对比yolov3有比较大的提升。

论文下载地址:https://arxiv.org/pdf/2004.10934​​​​​​

论文代码地址:https://github.com/AlexeyAB/darknet


1、简介

首先来看一下yolov4在coco数据集上的AP值,保证了速度的同时,提到了进度。对比yolov3提升了接近10%的AP值,可以看出yolov4的效果是非常的不错,而对比efficientDet虽然精度低,但是在速度上远超过它,能够达到实时检测的效果。

 yolov4是做了哪些改进,使得它的效果提升这么明显,同样,我们先从网络架构、训练策略、数据处理方面进行分析。首先网络架构上,backbone使用CSPDarknet53,neck部分使用PAN特征融合,head和yolov3类似,采用一个1x1卷积输出。训练策略上使用BoF和BoS,BoF就是不增加网络本身的成本进行改进,也就是数据增强,BoS就是改变网络架构,向网络中加入一些模块从而提高网络能力。

2、网络架构

        2.1backbone:

                为什么要使用CSPDarknet53,作者做了实验,其中CSPDarknet53在检测上面有优势,也就是特征提取能力强,同时它的感受野大,参数量大对模型的学习能力强。

  同时,在CSPDarknet53添加了SPP模块,为了进一步的扩大网络的感受野,降低信息丢失。

在这里插入图片描述

        2.2neck和head:

                在neck部分没有使用yolov3中的FPN而是采用PANet作为参数聚合的方式,其中a为FPN,a和b加起来就是PAN,对比FPN多加了一轮下采样。而head和yolov3一样

在这里插入图片描述

        但是在yolov4的PAN中使用的是concat,而不是add

  从上面两个部分构成了yolov4的网络结构

3、训练策略

        2.1、BoF和BoS

        激活函数使用Mish,IOU Loss使用CIoU,数据增强使用Mosaic、正则化使用DropBlock、归一化采用CmBN、标签平滑处理等。这一系列的改进策略,

 

 

作者通过以上的实验来进一步证明所使用的策略的有效性。yolov4当中主要是提出相关的策略,并基于yolov3的基础进行改进。

推荐大家看一下这位大佬的博客详解:

YOLOv4网络详解_太阳花的小绿豆的博客-CSDN博客_yolov4网络结构图

猜你喜欢

转载自blog.csdn.net/weixin_44711102/article/details/127816150
今日推荐