YOLOv2相比于yolov1的改进

article/2025/8/23 13:23:44

1.Batch Normalization

Batch Normalization可以提升模型收敛速度,而且可以起到一定正则化效果,降低模型的过拟合。在YOLOv2中,每个卷积层后面都添加了Batch Normalization层,并且不再使用droput。使用Batch Normalization后,YOLOv2的mAP提升了2.4%。

2.High Resolution Classifier

YOLO 对应训练过程分为两步,第一步是通过 ImageNet 训练集 进行高分辨率的预训练,这一步训练的是分类网络第二步是训练检测网络,是在分类网络的基础上进行 fine tune。

之前的 YOLO v1以分辨率224*224训练分类网络,YOLO v2 将分类网络的分辨率提高到 448*448,高分辨率样本对于效果有一定的提升(文中mAp提高了约4%)。

3.k-means聚类获取anchor先验信息

详见博客k-mean聚类获取anchor的先验大小

4.网络结构-Darknet-19

YOLOv2使用了DarkNet-19作为骨干网络(图2),需要注意两点:

  1. YOLOv2输入大小为416×416,不是下图中的224×224。考虑到很多情况下待检测物体的中心点容易出现在图像的中央,所以经过5次降采样之后生成的Feature Map的尺寸是13×13,这种奇数尺寸的Feature Map获得的中心点的特征向量更准确。其实这也YOLOv1产生7×7 的理念是相同的。;
  2. 在3×3的卷积中间添加了1×1的卷积,一方面用于channel reduction,另一方面Feature Map之间的一层非线性变化提升了模型的表现能力;
  3. Darknet-19进行了5次降采样,但是在最后一层卷积并没有添加池化层,目的是为了获得更高分辨率的Feature Map;
  4. Darknet-19中并不含有全连接,使用的是全局平均池化的方式产生长度固定的特征向量(GAP可以使网络的输入不用再是一个固定值)。

5.边框回归

前面讲到,YOLOv2借鉴RPN网络使用anchor boxes来预测边界框相对先验框的offsets。边界框的实际中心位置(x,y),需要根据预测的坐标偏移值(x_{t},y_{t}),先验框的尺度(w_{a},h_{a})以及中心坐标(x_{a},y_{a})(特征图每个位置的中心点)来计算: 

x = (t_{x} \times w_{a})+x_{a}, y = (t_{y} \times h_{a}) + y_{a}

但是上面的公式是无约束的,预测的边界框很容易向任何方向偏移,如当tx=1时边界框将向右偏移先验框的一个宽度大小,而且tx=−1时边界框将向左偏移先验框的一个宽度大小,因此每个位置预测的边界框可以落在图片任何位置,这导致模型的不稳定性,在训练时需要很长时间来预测出正确的offsets。

所以,YOLOv2弃用了这种预测方式,而是沿用YOLOv1的方法,就是预测边界框中心点相对于对应cell左上角位置的相对偏移值,为了将边界框中心点约束在当前cell中,使用sigmoid函数处理偏移值,这样预测的偏移值在(0,1)范围内(每个cell的尺度看做1)。总结来看,根据边界框预测的4个offsets t_{x} ,t_{y} ,t_{w},t_{h},可以按如下公式计算出边界框实际位置和大小:

  •  公式中c_{x}c_{y}表示当前cell距离feature maps左上角的距离。
  • \sigma(t)表示网络预测的在x方向和y方向上的偏移量。

6.细粒度特征

修改后的网络最终在13x13的特征图上进行预测,虽然这足以胜任大尺度物体的检测,但如果用上细粒度特征的话可能对小尺度的物体检测有帮助。

YOLOv2使用了一种不同的方法,简单添加一个passthrough layer,把浅层特征图(分辨率为26x26)连接到深层特征图。

具体操作如下:

1.叠加相邻空间位置的特征到不同通道,将26x26x512的特征图叠加成13x13x2048的特征图。

2.将浅层特征图(13x13x2048)和深层特征图(13x13x1024)合并为一个(13x13x3072)tensor。

5.损失函数

详见博客yolo-V2损失函数理解


http://chatgpt.dhexx.cn/article/CBjuDDYd.shtml

相关文章

YOLOv1,YOLOv2,YOLOv3解读

本文依次讲解YOLOv1,v2,v3。博客地址https://blog.csdn.net/hancoder/article/details/87994678 文章目录 YOLOv11.1 Introduction1.2 Unified Detection1.3 网络框架1.4 Loss解读LOSS: 1.5 test附:NMS示例: 1.7 YOLOv1结语待解决问题 YOLOv22.1 Better更…

Yolov2模型——pytorch实现

论文传送门:YOLO9000: Better, Faster, Stronger Yolov2的改进: 1.批标准化(Batch Normalization):在conv后加入BN(conv不再使用bias),改善模型的收敛性,同时去掉dropout; 2.高分辨率分类器(High Resolut…

【YOLO系列】--YOLOv2超详细解读/总结

本章论文: YOLOv2论文(YOLO9000: Better, Faster, Stronger)(原文+解读/总结+翻译) YOLO系列解读直通车🚀: YOLO系列-【YOLOv1】🚀 YOLO系列-【YOLOv2】&a…

YOLOv1、YOLOv2和YOLOv3对比

YOLOv1、YOLOv2和YOLOv3对比 R-CNN系列YOLOv1结构目标输出网络训练YOLOv1的局限性和R-CNN系列的对比 YOLOv2结构目标输出网络训练关于YOLO9000 YOLOv3结构目标输出网络训练YOLOv3系统做过的不成功的尝试 未来 YOLO深度卷积神经网络已经经过原作者Joseph Redmon已经经过了3代4个…

YOLOv2 论文笔记

论文地址:YOLO9000: Better, Faster, Stronger 项目主页:YOLO: Real-Time Object Detection (最近博客下很多人请求Caffe 代码,受人所托,已经不再提供,且关闭本文评论,望请见谅) …

YOLO - v1

先理解预测阶段: 1)一个448*448*3的图像经过YOLO这个黑箱输出一个7*7*30矩阵; 2)7*7*30的矩阵中的30维是5520;5是预测的bbox的x,y,w,c;20是20个类别的条件概率; 解释c: 解释条件概率:它的意义是…

YOLOV2网络模型

目录 资料 网络模型原理 网络框架 相对于yoloV1的改进 Batch Norm High Resolution Classifier Convolutional With Anchor Boxes Dimension Clusters New Network:Darknet-19 Direct location prediction PassThrough Multi-Scale Training Loss YOLOV2的训…

YOLOv3

YOLOv3 论文信息论文标题:论文作者:收录期刊/会议及年份: 论文学习YOLOv3 网络架构:YOLO 输出特征图解码(前向过程):训练策略与损失函数(反向过程):精度与性能…

从YOLO到YOLO v2再到YOLO v3

配置相关博客链接: YOLO V3-GPU版本在Windows配置及注意事项 YOLO v3在Windows下的配置(无GPU)opencv3.2.0VS2015 前不久YOLO v3出来了,就迫不及待的想试一下。以前装过darknet所以我把整个darknet的文件夹全部删掉。 然后按照…

yolovx

1.输入端 (1)Strong augmentation Yolox主要采用了Mosaic、Mixup两种数据增强方法 有两点需要注意: (1)在训练的最后15个epoch,这两个数据增强会被关闭掉。 而在此之前,Mosaic和Mixup数据增…

史上最通俗易懂的YOLOv2讲解

博主本来想自己写一篇关于YOLOv2的论文笔记的,在找资料的过程中看到这篇天秀的博客,就“据为己用”了。不得不出,很多大佬写的都太深刻了,还是转载比较舒服点~~~~~~ 本文转自目标检测|YOLOv2原理与实现(附YOLOv3) 前 言 在前面的…

【目标检测】YOLOV2详解

前言 前面我们已经讲解过了YOLOV1,因此在这里我会接着前几天的讲解,进一步写一下YOLOV2的基本思想和改进。 YOLOv2的论文全名为YOLO9000: Better, Faster, Stronger,它斩获了CVPR 2017 Best Paper Honorable Mention。在这篇文章中&#xf…

YOLOv2目标检测算法——通俗易懂的解析

目录 YOLOv2目标检测算法前沿一.YOLOv2的改进1.1.BN1.2.High Resolution Classifier1.3.anchor1.4.Fine-Grained Features(细粒度特征)1.5.Multi-Scale Training 二.损失函数三.检测更多类别 YOLOv2目标检测算法 前沿 前面我们讲过了YOLOv1目标检测算法,不了解的小…

YOLOP v2

还是先道歉啊 就是自学求知 又一个自称更好的!! 网上找到的就发了 不知道 大伙用的怎么样啊 更好、更快、更强 ... YOLOv7结合YOLOP的多任务版本 论文链接:https://arxiv.org/pdf/2208.11434v1.pdf 代码链接:https://github.com/CAIC-AD/YOLOPv2 在…

YOLO系列(V1-V2-V3)

yolo系列整理 版本作者主页程序论文yoloV1点击打开点击打开点击打开yoloV2点击打开点击打开点击打开yoloV3点击打开点击打开点击打开 改进 V2 VS V1: 增加BN层: 解决问题:每层的输入分布一直在改变,训练难度增加;采取措施&am…

YOLO_v2讲解

文章目录 一:YOLO_v2的改进二:网络细节【BN层取代了Dropout】【高分辨率分类器】【Anchor思想】【K-means选定先验框】【预测坐标相对于Grid Cell的位置】【细粒度的特征】【多尺度训练】 三:损失函数四:YOLO_v2的不足 一&#xf…

YOLOV2原理理解

YOLOV2 一、YOLOV1的不足之处二、YOLOV2的改进论文精读AbstractIntroductionBetter(重点笔记)FasterStronger(非重点) 三、YOLOV2网络的输出输出结果解释输出图示 四、YOLOV2的LOSS函数五、Kmeans聚类——anchor box六、YOLOV2算法总结七、关于YOLOV2中a…

【目标检测】单阶段算法--YOLOv2详解

论文题目:《YOLO9000: Better, Faster, Stronger》 论文地址:https://arxiv.org/pdf/1612.08242.pdf 一文读懂YOLOv1:YOLOv1 一文读懂YOLOv3:YOLOv3 一文读懂YOLOv4:YOLOv4 1. 前言 在前面的一篇文章中,我…

yolov2详细讲解

yolov2详细讲解 概述 YOLO v1虽然检测速度快,但在定位方面不够准确,并且召回率较低。为了提升定位准确度,改善召回率,yolov2在yolov1的基础上提出了几种改进策略,如下图所示,一些改进方法能有效提高模型的…

YOLO V2解析

YOLO V2是YOLO系列的第二版,在YOLO V1的基础上加以改进,改善了YOLO V1定位不准的问题,又保证了检测的速度,可谓集准确性与速度于一身(YOLO V2获得了CVPR2017的最佳论文提名)。YOLO V2的原文提出了两个模型:YOLO V2和YOLO9000,本文主要着重YOLO V2,下面让我们一同走进Y…