YOLO V4重磅来袭-论文全面详细解

  上个月yolo v4重磅推出 了,最近有时间把论文读了一遍,后面找时间再把代码细看下,yolo v4综合了已有的物体检测和CNN各种trick,把yolo的检测精度和速度提了上去,该论文将物体检测领域各种trick都总结比较了一番,对于学习目的来说,好好读读该篇论文肯定也受益匪浅。
  yolo v4的作者不再是Joe Redmon,而是另一位曾经参与yolo维护的大神Alexey Bochkovskiy和两名台湾的大学生,下面一起来看看yolo v4的论文!
论文连接:https://arxiv.org/abs/2004.10934
源码连接:https://github.com/AlexeyAB/darknet
目前源码作者还在持续更新中~

一、主要贡献

  论文的主要工作是设计了一种快速的物体检测器,同时优化并行计算,使任何人只用一个传统的GPU就可以训练和测试,就可以获得一个实时、高质量、令人信服的检测结果。论文的主要贡献有以下三点:
  1、设计的模型可以只使用1080 Ti或208 Ti GPU就能训练出相当快和精确的物体检测器。(但训练时间作者没有提)
  2、在训练期间,验证了目前最先进的物体检测Bag of Freebies、Bag of Specials的影响,其中Bag of Freebies是指不增加推断代价,只通过改变训练策略或训练代价就可以使物体检测器获得更好的精度的方法。Bag of Specials是指通过添加插件模块或后处理等,在只少量增加推断代价的情况下可以显著提高物体检测精度的方法。
  3、修改了目前神经网络最好的方法,使他们更高效更适合单GPU训练,包括CBN、PAN、SAM等。

二、相关工作

2.1 物体检测模型

  目前物体检测的总体模型结构如下:
在这里插入图片描述
  物体检测结构通常包含两部分,backbone骨架和头部,骨架通常采用预训练好的CNN网络,头部用来预测类别和bounding box框的位置。在GPU平台上运行的检测器,骨架一般是VGG、ResNet、ResNetXt或DenseNet,对于CPU平台运行的检测器,骨架一般是SqueezeNet、MobileNet或ShuffleNet。
  上面提到的一大堆网络性能SqueezeNet、MobileNet、ShuffleNet是在VGG、ResNet、ResNetXt、DenseNet之后出现的网络,而且SqueezeNet、MobileNet或ShuffleNet的性能不见得比VGG等网络差,通过下面笔者从网上找的几张图可以对他们之间的性能有个大概的了解。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  接着说论文部分:物体检测器的头部,一般分为两种,one-state和two-stage,one-state是指用一个阶段就完成bounding box推荐和得到分类结果,two-stage是两个阶段,第一阶段产生区域推荐bounding box,第二阶段根据第一阶段的结果给出分类的类别和概率。
  最有代表性的two-stage是R-CNN系列,包括fast R-CNN, faster R-CNN, R-FCN和Libra R-CNN。 也可以把two-stage的检测器做成anchor free物体检测器,例如RepPoints。
  对于one-state模式,最有代表性的是YOLO、SSD、RetinaNet,近些年,one-state模式的anchor free物体检测器也已经被设计出来,包括CenterNet、CornerNet、FCOS等。
  物体检测器发展至今,模型结构上,在骨架和头部中间经常会插入一些用于搜集不同feature maps状态的层,这些层被称为neck(脖子)。neck通常由一些bottom-up和top-down路径组成,包含neck的网络有FPN,PAN、BiFPN、and NAS-FPN等。
  除了上面提到的模型,一些研究者关注于建立新的骨架(DetNet,
DetNAS),或者搭建整个物体检测的模型(SpineNet、HitDetector)。
  总结下来,物体检测包括以下结构:
输入: image, Patches, Image Pyramid
骨架: VGG16, ResNet-50, SpineNet, EfficientNet-B0/B7, CSPResNeXt50
CSPDarknet53
• Neck:
  添加模块: SPP, ASPP, RFB, SAM
  路径集成模块: FPN, PAN,NAS-FPN, Fully-connected FPN, BiFPN, ASFF, SFAM
•头部::
  密集预测(one-stage):
  RPN, SSD, YOLO, RetinaNet(基于anchor 的)
  CornerNet, CenterNet, MatrixNet,FCOS(anchor free的)
  稀疏预测 (two-stage):
  Faster R-CNN, R-FCN, Mask RCNN (基于anchor 的)
  RepPoints(anchor free的)
  总的来看,这部分作者把物体检测的现状都总结了一遍,对于想深入了解物体检测各种方法的童鞋,按照作者的介绍顺序来学习还是挺不错的。
  下面分别介绍Bag of Freebies和Bag of Specials的策略。

2.2 Bag of Freebies

  这部分介绍目前不增加推断代价,只通过改变训练策略或训练代价就可以使物体检测器获得更好的精度的各种方法。
  最常用的Bag of Freebies方法就是数据增强,数据增强的目的是增加输入图像的变化,使模型健壮性更好,例如光学畸变(亮度、对比度、色调、饱和度、图像噪音)和几何畸变(缩放、裁剪、翻转、旋转)是常见的两种数据增强方法。这些数据增强方法都是逐像素调整,原始像素信息在调整区域没有变,此外,一些研究人员重点研究物体遮挡的情况,例如,随机擦除或者裁剪掉图像的一部分,然后用另一个图像或者0填充该部分,还有研究者对输入图像做类似feature map的DropOut、DropConnect、DropBlock动作,也就是随机从输入图像中抠掉一些矩形然后填充0。还有一些研究者推荐将多个图像一起做数据增强,例如MixUp将两张图像相乘,然后按照一定比例叠加,然后根据比例调整标签,CutMix是将裁掉部分的图像用另一个图像覆盖,然后根据面积调整标签,除此之外,style transfer GAN 也被用于图像增强,此

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值