【目标检测】YOLOV2详解

本文详细介绍了YOLOv2在YOLOv1基础上的改进,包括网络结构的优化(如引入BN层和Passthrough层)、Anchor设计的改进以及训练策略的调整。这些改进显著提升了YOLOv2的检测精度,同时保持了快速的检测速度。通过多尺度训练策略,YOLOv2能适应不同大小的输入图像,提高了模型的鲁棒性。
摘要由CSDN通过智能技术生成

前言

前面我们已经讲解过了YOLOV1,因此在这里我会接着前几天的讲解,进一步写一下YOLOV2的基本思想和改进。

YOLOv2的论文全名为YOLO9000: Better, Faster, Stronger,它斩获了CVPR 2017 Best Paper Honorable Mention。在这篇文章中,作者首先在YOLOv1的基础上提出了改进的YOLOv2,然后提出了一种检测与分类联合训练方法,使用这种联合训练方法在COCO检测数据集和ImageNet分类数据集上训练出了YOLO9000模型,其可以检测超过9000多类物体。所以,这篇文章其实包含两个模型:YOLOv2和YOLO9000,不过后者是在前者基础上提出的,两者模型主体结构是一致的。YOLOv2相比YOLOv1做了很多方面的改进,这也使得YOLOv2的mAP有显著的提升,并且YOLOv2的速度依然很快,保持着自己作为one-stage方法的优势,YOLOv2和Faster R-CNN, SSD等模型的对比如下图所示。下面将首先介绍YOLOv2针对YOLOv1改进策略。

在这里插入图片描述

 1、改进步骤

YOLOV2 相对于YOLOV1 的改进主要可以分为以下三点:

1、网络结构的改进

2、Anchor的设计

3、训练策略的改进

接下来我就从这三点进行展开阐述。

1. 网络结构的改进

 在每个卷积层和激活函数层之间加入了BN层。Batch Normalization有助于解决反向传播过程中的梯度消失和梯度爆炸问题,降低对一些超参数(比如学习率、网络参数的大小范围、激活函数的选择)的敏感性,可以提升模型收敛速度,而且可以起到一定正则化效果,降低模型的过拟合。在YOLOv2中,每个卷积层后面都添加了Batch Normalization层,并且不再使用droput,关于这一点改进也是现在很多模型用的一点。使用Batch Normalization后。YOLOv2的mAP提升了2.4%。

 加入BN层之后,为了能够更好地对小目标的物体进行检测,YOLOV2 还提出了一个passthrough层来检测细粒度特征。与SSD使用多尺度特征图不

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值