Yolo v4:目标检测的最佳速度和精度(一)

简介: Yolo v4:目标检测的最佳速度和精度

《YOLOv4:Optimal Speed and Accuracy of Object Detection》


发表时间及作者:2020 CVPR

1.YOLOv4介绍


Yolov4其实并没有提出什么创新点,主要是对当时领域内的一些Tricks(WRC、CSP、CmBN、SAT、Mish激活、Mosaic数据增强,DropBlock和CIoU)进行了大量的实验,并且对模型的精度和速度进行了平衡;最终在MS COCO数据集上实现了43.5% AP (65.7% AP50),在Tesla V100的实时速度为65帧/秒。

YOLOv4一共有如下三点贡献:

1.开发了一个高效、强大的目标检测模型。它使每个人都可以使用1080ti或2080ti GPU来训练一个非常快速和准确的目标检测器

2.验证了最先进的 Bag-of-Freebies和 Bag-of-Specials对象检测在检测器训练时的影响。

3.对现有的方法进行了改进,使其更加高效,更适合于单个GPU的训练,包括CBN,PAN,SAM等。

image.png

图1:YOLOv4与其他最先进的物体探测器的比较。在性能相当的情况下,YOLOv4运行速度是EfficientDet的两倍。YOLOv4将YOLOv3的AP和FPS分别提升10%和12%。

2.YOLOv4网络结构


YOLOv4结构组成如下:


• Backbone: CSPDarknet53


• Neck: SPP , PAN


• Head: YOLOv3

2.1 Backbone改进


YOLOv4借鉴了CSPNet(Cross Stage Partial Networks,跨阶段局部网络)的思想,对YOLOv3的Darknet53网络进行了改进,形成了全新的主干网路结构–CSPDarknet53;

采用CSP结构有如下几点好处:

1.加强CNN学习能力

2.删除计算瓶颈

3.减少内存成本

image.png

image.png

CSPNet实际上是基于Densnet的思想,即首先将数据划分成Part 1和Part 2两部分,Part 2通过dense block发送副本到下一个阶段,接着将两个分支的信息在通道方向进行Concat拼接,最后再通过Transition层进一步融合。CSPNet思想可以和ResNet、ResNeXt和DenseNet结合,目前主流的有CSPResNext50 和CSPDarknet53两种改造Backbone网络。

改进后的主干网络结构如下图所示:

91812e93651b49a9ab822679c9848a29.png

2.2 Neck改进


2.2.1 SPP结构介绍


SPP-Net全称Spatial Pyramid Pooling Networks,主要是用来解决不同尺寸的特征图如何进入全连接层的,如下2图所示,下图中对任意尺寸的特征图直接进行固定尺寸的池化,来得到固定数量的特征。

image.png

image.png

2.2.2 PAN结构介绍


PAN(Path Aggregation Network)结构其实就是在FPN(从顶到底信息融合)的基础上加上了从底到顶的信息融合,如下图(PAN结构图)所示。

image.png

image.png

2.2.3 YOLOv4 PAN结构介绍


YOLOv4在原始PAN结构上进行了一点改进,如下图所示。图(a)是PAN论文中的原始融合方式,即特征层之间融合时是直接通过addition的方式进行融合的,但在YOLOv4中的PAN是通过在通道方向Concat拼接的方式进行融合的。

image.png

相关文章
|
机器学习/深度学习 算法 数据挖掘
目标检测算法——YOLOv3
目标检测算法——YOLOv3
367 0
目标检测算法——YOLOv3
|
算法 Go 计算机视觉
【YOLO系列】YOLOv8算法(尖端SOTA模型)
Ultralytics YOLOv8 是由 Ultralytics开发的一个前沿 SOTA 模型。它在以前 YOLO 版本的成功基础上,引入了新的功能和改进,进一步提升了性能和灵活性。YOLOv8 基于快速、准确和易于使用的理念设计,使其成为广泛的物体检测、图像分割和图像分类任务的绝佳选择。
2919 0
【YOLO系列】YOLOv8算法(尖端SOTA模型)
|
算法 Go 文件存储
DAMO-YOLO: 兼顾速度与精度的新目标检测框架
我们团队最近开源了DAMO-YOLO!其效果达到了YOLO系列的SOTA,欢迎各位试用!​简介DAMO-YOLO是一个兼顾速度与精度的目标检测框架,其效果超越了目前的一众YOLO系列方法,在实现SOTA的同时,保持了很高的推理速度。DAMO-YOLO是在YOLO框架基础上引入了一系列新技术,对整个检测框架进行了大幅的修改。具体包括:基于NAS搜索的新检测backbone结构,更深的neck结构,精
1100 0
DAMO-YOLO: 兼顾速度与精度的新目标检测框架
|
2月前
|
机器学习/深度学习 并行计算 PyTorch
图像检测【YOLOv5】——深度学习
Anaconda的安装配置:(Anaconda是一个开源的Python发行版本,包括Conda、Python以及很多安装好的工具包,比如:numpy,pandas等,其中conda是一个开源包和环境管理器,可以用于在同一个电脑上安装不同版本的软件包,并且可以在不同环境之间切换,是深度学习的必备平台。) 一.Anaconda安装配置. 1.首先进入官网:https://repo.anaconda.com,选择View All Installers. 2.打开看到的界面是Anaconda的所以安装包版本,Anaconda3就代表是Python3版本,后面跟的是发行日期,我选择了最近的2022
68 28
|
4月前
|
机器学习/深度学习 计算机视觉
YOLOv10实战:红外小目标实战 | 多头检测器提升小目标检测精度
本文改进: 在进行目标检测时,小目标会出现漏检或检测效果不佳等问题。YOLOv10有3个检测头,能够多尺度对目标进行检测,但对微小目标检测可能存在检测能力不佳的现象,因此添加一个微小物体的检测头,能够大量涨点,map提升明显; 多头检测器提升小目标检测精度,1)mAP50从0.666提升至0.677
913 3
|
机器学习/深度学习 算法 自动驾驶
目标检测之TextSnake
翻译:《TextSnake: A Flexible Representation for Detecting Text of Arbitrary Shapes》
107 0
|
机器学习/深度学习 固态存储 算法
目标检测之TextBoxes++
翻译:《 TextBoxes++: A Single-Shot Oriented Scene Text Detector》
|
机器学习/深度学习 计算机视觉 索引
目标检测无痛涨点新方法 | DRKD蒸馏让ResNet18拥有ResNet50的精度(一)
目标检测无痛涨点新方法 | DRKD蒸馏让ResNet18拥有ResNet50的精度(一)
530 0
|
计算机视觉
目标检测无痛涨点新方法 | DRKD蒸馏让ResNet18拥有ResNet50的精度(二)
目标检测无痛涨点新方法 | DRKD蒸馏让ResNet18拥有ResNet50的精度(二)
137 0
|
存储 编解码 固态存储
一文带你了解时下最新的目标检测模型——YOLOv8
Ultralytics YOLOv8: State-of-the-Art YOLO Models,作者:Sovit Rath
1589 0