YOLOv4阅读笔记

论文中英对照翻译参考:


一、目标检测的一般性结构

论文中首先总结了目标检测的一般性结构:
在这里插入图片描述

  • 输入部分:图片,一批图片,预处理过的图片
  • 主干网: GPU平台:VGG、ResNet…等,CPU平台:SqueezeNet , MobileNet 等
  • 颈部: 颈部由几个自下而上的路径和几个自上而下的路径组成。配备此机制的网络包括特征金字塔网络 (FPN)、路径聚合网络 (PAN)、BiFPN [77]和 NAS-FPN 。
  • 头部: 通常分为两类,two-stage /one-stage。

在这里插入图片描述

二、Bag of freebies类方法

通常,传统的目标检测器是离线训练的。因此,研究人员总是喜欢利用这一优势,开发更好的训练方法,使目标检测器在不增加推理成本的情况下获得更好的精度。我们将这些方法称为” Bag of freebies”,这些方法仅改变训练策略或仅增加训练成本。

数据扩充:

数据扩增的目的是增加输入图像的可变性,使设计的目标检测模型对从不同环境获得的图像具有更高的鲁棒性
数据扩充方法是所有像素调整,并保留调整后区域中的所有原始像素信息。

​ 1、光度畸变:调整图像的亮度、对比度、色调、饱和度和噪声

​ 2、几何畸变:加入随机缩放、剪切、翻转和旋转

模拟对象遮挡:

  1. 随机擦除 (random erase),CutOut:随机选择图像中的矩形区域并填充零的随机或互补值。

  2. hide-and-seek、grid mask:随机或均匀地选择图像中的多个矩形区 域,并将其全部替换为0

正则化方法 Regularization method:

  • DropOut, DropPath , Spatial DropOut, 或者 DropBlock

结合多幅图像进行数据扩充:

  1. MixUp:使用两个图像以不同的系数比率倍增和叠加,然后使用这些叠加比率调整标签
  2. CutMix:将裁剪的图像覆盖到其他图像的矩形区域,并根据混合区域的大小调整标签。

Style Transfer GAN用于数据扩充

语义分布偏差之—解决类别不平衡问题:

  • hard negative example mining (只适用两阶段)

  • online hard example mining (只适用两阶段)

  • focal loss

label smoothing

将硬标签转化为软标签进行训练

bbox:

​ 1、IoU_loss

​ 2、GIoU_loss

​ 3、DIoU_loss

​ 4、CIoU_loss

YOLOv4 - use:

CutMix and Mosaic data augmentation、DropBlock regularization、 Class label smoothing、CIoU-loss、CmBNSelf-Adversarial TrainingEliminate grid

三、Bag of specials类方法

对于那些插入模块和后期处理方法只会增加少量的推理成本,但可显著提高目标检测的准确性,我们称其为 “Bag of specials”。一般来说,这些插入模块是用来增强某些属性的,如扩大感受野,引入注意力机制或增强特征整合能力等,而后处理是一种筛选模型预测结果方法。

扩大感受野 enhance receptive field:SPP,ASPP,RFB

注意力机制 attention module:

  • 1、Squeeze-and-Excitation (SE):可以改善resnet50在分类任务上提高 1%精度,但是会增加GPU推理时间10%。

  • 2、Spatial Attention Module (SAM):可以改善resnet50在分类任务上提 高0.5%精度,并且不增加GPU推理时间。

特征融合 feature integration:

  • 早期使用skip connection、hyper-column。随着FPN等多尺度方法的流 行,提出了许多融合不同特征金字塔的轻量级模型。SFAM、ASFF、BiFPN。SFAM的主要思想是利用SE模块对多尺度拼接的特征图进行信道级配重权。 ASFF使用softmax作为点向水平重加权,然后添加不同尺度的特征映射。BiFPN提出了多输入加权剩余连接来执行按比例加权的水平重加权,然后加入不 同比例的特征映射。

激活函数 activation function:

  • ReLU解决了tanh和sigmoid的梯度消失问题。LReLU , PReLU , ReLU6 ,SELU, Swish , hard-Swish ,Mish 其中 Swish和Mish都是连续可微的函数。

后处理方法 post-processing method

  • greedy nms:过滤那些预测错误的 BBoxes,并只保留较高的候选 BBoxes,NMS 原始方法没有考虑背景信息,所以 Girshick 等人增加了 R-CNN 中的置信度评分为参考,并根据信任分数的顺序,从高分到低分的顺序执行greedy NMS。

  • soft-nms:解决对象的遮挡问题

  • DIoU nms:将中心点分布信息添加到BBox筛选过程中

YOLOv4 - use:

  • Mish activation、CSP、MiWRC、SPP-block、SAM、PAN、DIoU-NMS

四、架构选择 Selection of architecture

​ 在ILSVRC2012 (ImageNet)数据集上的分类任务,CSPResNext50要比CSPDarknet53好得多。然而,在COCO数据集上的检测任务,CSP+Darknet53比CSPResNext50更好。

​ backbone:CSP+Darknet53

​ additional module:SPP

​ neck:PANet

​ head:YOLOv3 (anchor based)

五、额外提升 Additional improvements

​ 为了使检测器更适合于单GPU上的训练,做了如下补充设计和改进:

​ 1、引入了一种新的数据增强方法Mosaic和自对抗训练(SAT)

​ 2、在应用遗传算法的同时选择最优超参数

​ 3、修改了一些现有的方法,如:SAM,PAN,CmBN

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shine.Zhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值