博客
关于我
Yolov1 v2 v3 原理学习笔记
阅读量:686 次
发布时间:2019-03-17

本文共 3081 字,大约阅读时间需要 10 分钟。

原视频:

参考文章:

如何学习网络?

1)、学习网络原理
2)、读原论文
3)、跑通github上的代码
/ 选择自己喜欢的框架+经常更新+标star多的
4)、读代码
/ 分析网络搭建+数据预处理+损失计算
/ 结合原论文+代码解读文章

一些术语:

  1. Backbone:提取特征的网络,后面接着我们自己的网络(如VGG16, Resnet-50, Darknet52 , ResNext50 variants.)
    2)Head:对图像特征进行预测,生成边界框和并预测类别。
    3)neck:放在backbone和head之间的,是为了更好的利用backbone提取的特征( 如FPN PAN RFB )

Yolov1(2016)

【论文思想】

1)、一幅图像分成S×S个 网格(grid cell),落在某个object中心的网格负责该object
2)、final predicting is a (S×S×(5*B + C)) tensor
以S=7, B=2, C=20为例
在这里插入图片描述
一个网格负责预测两个bndbox + 20个类别的分值。
每个bounding box包含(x,y,w,h) + confidence, 共5个数值
(x, y): the centerof the box relative to the bounds of the grid cell. 取值[0, 1]
(w,h): The width and height are predicted relative to the whole image.取值[0, 1]
confidence = Pr(Object)*IOU(truth, pred), 当存在object时,Pr(Object)=1,confidence可简单理解为IOU

【网络结构】

在这里插入图片描述
【损失函数】
在这里插入图片描述
注:w,h要开根处理,因为同样的偏移,不同尺度的目标IOU变化不同,尺度越大变化越小在这里插入图片描述
【v1存在问题】
1)small objects that appear in groups
2) objects in new or unusual aspect ratios or configurations
主要原因在于定位不准确

Yolov2(2017)

【better】Yolov2的7种尝试:

1) ,mAP提升2%
在每一个卷积层后加入BatchNormalization,
BatchNormalization批归一化:指神经网络中间层也进行归一化处理,有助于规范化模型,防止过拟合。

2)high resolution classifier,mAP提升4%

一般的目标检测方法中,先使用AlexNet / VGG网络进行特征提取,图片resize到< 256256,分辨率低,目标检测困难;YOLOv2自定义了darknet分类网络,将图像的输入分辨率更改为448448

3)Convolutional with Anchor Boxes,提升recall

借鉴FasterR-CNN中的anchor思想,产生多个bounding boxes先验框

4)Dimension Cluster

先通过维度聚类生成先验框 给定AnchorBoxes的宽高纬度,然后通过网络学习转换系数,得到准确的boundingbox候选框。有priors更快。

5)Direct location prediction, 4+5后mAP提升5%

直接位置预测:YOLOv2中不采用直接的offset方法,而是限制预测的坐标信息,每个anchor去负责 中心落在某个grid cell区域内 的目标,避免anchor落在图像中的任意一个位置导致的不稳定在这里插入图片描述
6)Fine-Grained Features,mAP提升1%
细粒度特征。通过passthrough layer将底层特征与高层特征融合,提升检测小目标的效果
在这里插入图片描述
在这里插入图片描述
7)Multi-Scale Training
多尺度训练。We want YOLOv2 to be robust to running on images of different sizes ,so 每经过10个epoch,随机选择新的图片尺寸进行训练
由于YOLOv2中仅存在卷积层和池化层,所以可以进行动态调整
由于YOLOv2中降采样的参数为32,所以尺寸可选值{320,352,…,608}总共十个不同尺寸的的图像

【faster】

使用基于GoogleNet的定制网络DarkNet,改善检测速度

Yolov3(2018)

【网络结构】

在这里插入图片描述

backbone采用darknet-53
filters:卷积核个数 ; size:卷积核大小

【目标边界框的预测】

在这里插入图片描述
【正负样本的匹配】

  • assign one bounding box prior for each ground truth object,有几个gt目标就有几个正样本
  • 把与gt重合程度最大的bounding box prior作为正样本
  • 与重合程度非最大且大于threshold,则该bounding box prior既不是正样本也不是负样本,丢弃
  • 剩下样本是负样本,既没有定位损失,也没有类别损失,只有objectness(confidence score)

【损失的计算】在这里插入图片描述

主要是将v1中关于confidence和class类别概率部分的损失函数更改为logistic交叉熵损失函数
在这里插入图片描述
在这里插入图片描述
Eg. 真实标签 [0, 0, 1] 预测概率 [0.1, 0.8, 0.9]; 每个概率是相互独立的,没有使用softmax所以和不为1在这里插入图片描述

Yolov3 SPP

【Mosaic图像增强】

一种将4张训练图片混合成一张的新数据增强方法,可以丰富图像的上下文信息。
在这里插入图片描述
优点:1)增加数据多样性;2)增加目标个数;3)大大减少了对大mini-batch处理size的需求。BN时要求batch-size要尽可能大,加入Mosaic后,输入一张四张图像拼接的图像≈并行输入四张(batch Sze=4)原始图像

【SPP模块】

实现了不同尺度的特征融合,注意与不同
具体结构为:
在这里插入图片描述
输出为:1616(512*4)
图中显示在第一个预测特征图之前加入了SPP,第二/三个预测特征图之前也可以加SPP,效果都差不多

【CIOU Loss】

在这里插入图片描述
Yolov3选用差值平方,Yolov3 SPP 选用CIOU Loss,考虑到了重叠面积、中心点距离、长宽比
在这里插入图片描述
Focal loss(map下降2%?黑人问号脸?)
主要是为了解决one-stage目标检测中正负样本比例失衡class imbalance的问题:一张图像中能够匹配到目标的候选框(正样本)个数一般只有十几个或几十个,而没匹配到的候选框(负样本)大概有10000-100000个。其中大部分为简单易分的负样本(对训练网络起不到什么作用,但数量太多会淹没掉少量但有助于训练的样本)。该损失函数降低了大量简单负样本在训练中所占的权重
类似的思想有困难样本挖掘 hard negative mining: 只选取损失较大的负样本训练网络
在这里插入图片描述
then
在这里插入图片描述
引入α平衡正负样本权重;
a∈[0,1]for class 1 and 1-0 for class -1.取0.75 效果最好

then

在这里插入图片描述
降低简单样本权重, focus on hard negatives
then
在这里插入图片描述
又加了一个超参数平衡,当γ = 2 α = 0.25时,效果最好

转载地址:http://cwdhz.baihongyu.com/

你可能感兴趣的文章
mysql - 视图
查看>>
MySQL - 解读MySQL事务与锁机制
查看>>
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql -存储过程
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mysql 1045解决方法
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
mui折叠面板点击事件跳转
查看>>
MySQL 8 公用表表达式(CTE)—— WITH关键字深入用法
查看>>
mysql 8 远程方位_mysql 8 远程连接注意事项
查看>>
MUI框架里的ajax的三种方法
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
Mysql 8.0 新特性
查看>>
MultCloud – 支持数据互传的网盘管理
查看>>
MySQL 8.0.23中复制架构从节点自动故障转移
查看>>
MySQL 8.0开始Group by不再排序
查看>>