目标检测

  • 目标检测
  • 一、YOLO系列
    • YOLOv1:
    • YOLOV2
      • Darknet-19
      • Batch Normalization
      • Anchor
      • Dimension Clusters
      • Direct location prediction
    • YOLOV3
      • 正负样本的匹配
    • YOLOV4
      • Backbone
      • FPN+PAN
      • SPP模块
  • IOU总结

一、YOLO系列

YOLOv1:

将图片划分为7*7网格,每个网格预测2个bbox(no_anchor) ,损失包含三部分:bounding box损失、confidence损失和classes损失。


对于一个预测20个类别的网络,每个网格预测2个bounding box,每个bounding box预测包括位置(x,y,w,h)和一个置信度confidence,加上20个类别的分数。网络最后输出7x7、深度为30的特征矩阵。

YOLOV2


YOLOv2 在YOLOv1的基础上做了许多改进:

  • Darknet-19

Backbone使用Darknet-19,包含19个卷积层,6个池化和一个Softmax。

  • Batch Normalization

Batch Normalization有助于解决反向传播过程中的梯度消失和梯度爆炸问题,降低对一些超参数(比如学习率、网络参数的大小范围、激活函数的选择)的敏感性,并且每个batch分别进行归一化的时候,起到了一定的正则化效果(YOLOv2不再使用dropout),从而能够获得更好的收敛速度和收敛效果

  • Anchor

在YOLOv1中时直接预测边界框的中心坐标、宽度和高度的方式定位效果比较差,所以在YOLOv2中作者采用anchor进行目标框的预测,采用anchor也可以使网络更容易的去学习和收敛。

  • Dimension Clusters

使用K-means算法聚类得到先验框。

  • Direct location prediction

直接是使用anchor进行预测时发现,在训练模型的时候训练不稳定,通过观察发现大部分不稳定因素来自中心坐标的预测部分导致,所以采用如下anchor预测方式。

YOLOV3

YOLOv3在YOLOv2的基础上改进了Backbone.采用Darknet53作为Backbone.

使用步长为2 的卷积层代替池化层

正负样本的匹配

针对每一个bounding box 都会分配一个bounding box prior,即针对每一个ground truth 都会分配一个正样本,一张图像中有几个ground truth就有几个正样本,分配原则其实也很简单,就是将与ground truth重合程度最大的bounding box prior作为正样本,如果与ground truth重合程度不是最大的但是又超过了某个阈值的bounding box prior,就直接丢弃,将最后剩下的样本作为负样本。

YOLOV4

  • Bag of Freebies:指的是不增加模型复杂度,也不增加推理的计算量的用来提高模型的准确度训练的方法技巧。

  • Bag-of-Specials:指的是增加少许模型复杂度或计算量,但可以显著提高模型准确度的训练技巧。
    BoF指的是

     1)数据增强:图像几何变换(随机缩放,裁剪,旋转),Cutmix,Mosaic等2)网络正则化:Dropout,Dropblock等3)损失函数的设计:边界框回归的损失函数的改进 CIOU
    

    BoS指的是

     1)增大模型感受野:SPP、ASPP等2)引入注意力机制:SE、SAM3)特征集成:PAN,BiFPN                                  4)激活函数改进:Swish、Mish5)后处理方法改进:soft NMS、DIoU NMS
    

Backbone

采用的主干网络为 CSPDarknet53,CSPDarknet53是在Yolov3主干网络Darknet53的基础上,借鉴2019年CSPNet的经验,产生的Backbone结构,其中包含了5个CSP(跨阶段部分连接)模块。

FPN+PAN

FPN层自顶向下,将高层的特征信息通过上采样的方式进行传递融合,传达强语义特征,而PAN则自底向上传达强定位特征,提高特征提取的能力。两者从不同的主干层对不同的检测层进行参数聚合,加速了不同尺度特征的融合,进一步提高特征提取的能力。

SPP模块

采用1×1,5×5,9×9,13×13的最大池化的方式,进行多尺度融合。

IOU总结

IOU -> GIOU->DIOU->CIOU
IOU_Loss:主要考虑检测框和目标框重叠面积。
GIOU_Loss:在IOU的基础上,解决边界框不重合时的问题。
DIOU_Loss:在IOU和GIOU的基础上,考虑边界框中心点距离的信息。
CIOU_Loss:在DIOU的基础上,考虑边界框宽高比的尺度信息。
YOLOv4中采用了CIOU_Loss的回归方式,使得预测框回归的速度和精度更高一些。

目标检测YOLO系列总结相关推荐

  1. 目标检测YOLO系列------YOLO简介

    目标检测YOLO系列------YOLO简介 1.为什么会出现YOLO算法 2.YOLO算法会逐渐成为目标检测的主流吗     YOLO以及各种变体已经广泛应用于目标检测算法所涉及到的方方面面,为了梳 ...

  2. 目标检测——YOLO系列算法(YOLOv4、YOLOv5)的学习笔记

    目录 1 前言 2 致谢 3 YOLO模型列表 4 模型结构 2.1 Backbone Focus--网格下采样 CSPDarknet53 2.3 Neck -- SPP & PAN SPP: ...

  3. 目标检测 | YOLO系列超全讲解v1,v2,v3

    前言 一.YOLOv1 1. 网络结构 2. 实现方法 3. 损失函数 4. 缺点 二.YOLOv2 1. 网络结构 2. 改进方法 3. YOLO9000 4. 网络训练细节 三.YOLOv3 1. ...

  4. 目标检测 YOLO系列算法

    文章目录 1. YOLO算法 1.1 Yolo算法思想 1.2 Yolo的网络结构 1.2.1 网络输入 1.2.2 网络输出 1.7X7网格 2x30维向量 1.3 Yolo模型的训练 1.3.1训 ...

  5. 目标检测yolo系列

    出自科技猛兽知乎专栏,地址:科技猛兽目标检测专栏 前言 本文目的是用尽量浅显易懂的语言让零基础小白能够理解什么是YOLO系列模型,以及他们的设计思想和改进思路分别是什么.我不会把YOLO的论文给你用软 ...

  6. 目标检测YOLO系列算法的进化史

    本文中将简单总结YOLO的发展历史,YOLO是计算机视觉领域中著名的模型之一,与其他的分类方法,例如R-CNN不同,R-CNN将检测结果分为两部分求解:物体类别(分类问题),物体位置即bounding ...

  7. 目标检测 YOLO 系列模型

    前言 YOLO (You Only Look Once) 系列模型追求实时目标检测,因此会在一定程度上牺牲精度,以实现更高的检测速度. 如果你对这篇文章感兴趣,可以点击「[访客必读 - 指引页]一文囊 ...

  8. 目标检测——YOLO系列(一网打尽)

    YOLO系列算法 1. 基本概念 2. 目标检测算法分类及流程 2.1 算法分类 2.2 基本流程 2.3 Two-stage与One-stage基本流程比较 3. YOLO系列目标检测模型 3.1 ...

  9. 【目标检测·yolo系列】YOLOV1目标检测论文(参考 同济子豪兄的解读)笔记

    YOLO V1 目标检测 object detection YOLOV1 预测阶段 前向推断 用图展示过程 预测阶段 后处理 NMS Non-Maximum Suppression 非极大值抑制 训练 ...

最新文章

  1. NDK相关概念与NDK开发步骤
  2. 使用ros标定相机的内参和外参
  3. 执行计划信息Oracle 执行计划总结
  4. python整数类型提供了4种进制表示_关于整数类型的 4 种进制表示,哪个选项的描述是正确的?_学小易找答案...
  5. DotFuscator使用步骤
  6. 超级终端连接华为交换机_win8系统教你实现用超级终端连接华为交换机的超详细图文教程...
  7. ChromeOS 体验
  8. C语言pow函数编写
  9. [GUI] 使用MATLAB从图片中提取曲线数据
  10. 修复IE默认主页——注册表篇
  11. EclipseCDT
  12. STM32例程分享-01-OLED模块(IIC)
  13. html转换为pdf php,js实现html转成pdf
  14. 物理学转行?读了四年物理学,优势在哪里?
  15. postgresql数据库使用Citus实现集群
  16. C++ using declaration
  17. 汇编语言实验一-《汇编语言-王爽老师》
  18. 10万亿同业存款免缴存准 全面降准将推迟
  19. windows仍在设置此类设备的类配置,代码56
  20. RealPlayer.11.6.0.14.748 新体验

热门文章

  1. BCGControlBar Pro 31.3 for MFC 零售版
  2. codeforces做题 记录
  3. 3.文件写入操作编程_write函数
  4. 3年功能测试拿8K,被刚进来的薪资倒挂,其实你在假装努力
  5. 国产兼容三菱FX3U源码,最新一波bug修改,修改监控时卡顿 问题
  6. 吴晓波直播翻车,直播乱象,直播带货走进“全网最低价”怪圈
  7. 微信小程序 input、textarea设置宽度100%,超出父元素的宽度
  8. 5、数据库的基本知识
  9. 59-Java:String类案例:验证码、登录、隐私号码
  10. java.lang.RuntimeException: Duplicate class com.bumptech.glide.GeneratedAppGlideModuleImpl found in