[图像算法]-深入浅出Yolo系列之Yolov5核心基础知识完整讲解

大白在之前写过《深入浅出Yolo系列之Yolov3&Yolov4核心基础知识完整讲解》,点击即可查看。

对Yolov4的相关基础知识做了比较系统的梳理,但Yolov4后不久,又出现了Yolov5,虽然作者没有放上和Yolov4的直接测试对比,但在COCO数据集的测试效果还是很可观的。

很多人考虑到Yolov5的创新性不足,对算法是否能够进化,称得上Yolov5而议论纷纷。

但既然称之为Yolov5,也有很多非常不错的地方值得我们学习。不过因为Yolov5的网络结构和Yolov3、Yolov4相比,不好可视化,导致很多同学看Yolov5看的云里雾里。

因此本文,大白主要对Yolov5四种网络结构的各个细节做一个深入浅出的分析总结,和大家一些探讨学习。

目录

  • 1 Yolov5四种网络模型
    • 1.1 Yolov5网络结构图
    • 1.2 网络结构可视化
      • 1.2.1 Yolov5s网络结构
      • 1.2.2 Yolov5m网络结构
      • 1.2.3 Yolov5l网络结构
      • 1.2.4 Yolov5x网络结构
  • 2 核心基础内容
    • 2.1 Yolov3&Yolov4网络结构图
      • 2.1.1 Yolov3网络结构图
      • 2.1.2 Yolov4网络结构图
    • 2.2 Yolov5核心基础内容
      • 2.2.1 输入端
      • 2.2.2 Backbone
      • 2.2.3 Neck
      • 2.2.4 输出端
    • 2.3 Yolov5四种网络结构的不同点
      • 2.3.1 四种结构的参数
      • 2.3.2 Yolov5网络结构
      • 2.3.3 Yolov5四种网络的深度
      • 2.3.4 Yolov5四种网络的宽度
  • 3 Yolov5相关论文及代码
    • 3.1 代码
    • 3.2 相关论文
  • 4 小目标分割检测
  • 5 后语

1 Yolov5四种网络模型

Yolov5官方代码中,给出的目标检测网络中一共有4个版本,分别是Yolov5s、Yolov5m、Yolov5l、Yolov5x四个模型。

学习一个新的算法,最好在脑海中对算法网络的整体架构有一个清晰的理解。
但比较尴尬的是,Yolov5代码中给出的网络文件是yaml格式,和原本Yolov3、Yolov4中的cfg不同。

因此无法用netron工具直接可视化的查看网络结构,造成有的同学不知道如何去学习这样的网络。

比如下载了Yolov5的四个pt格式的权重模型:


image.png

因为netron对pt格式的文件兼容性并不好,直接使用netron工具打开,会发现,根本无法显示全部网络。

因此可以采用pt->onnx->netron的折中方式,先使用Yolov5代码中models/export.py脚本将pt文件转换为onnx格式,再用netron工具打开,这样就可以看全网络的整体架构了。

image.png

如果有同学对netron工具还不是很熟悉,这里还是放上安装netron工具的详解,如果需要安装,可以移步大白的另一篇文章:《网络可视化工具netron详细安装流程》
如需下载Yolov5整体的4个网络pt文件及onnx文件,也可点击链接查看下载,便于直观的学习。

1.1 Yolov5网络结构图

安装好netron工具,就可以可视化的打开Yolov5的网络结构,这里大白也和之前讲解Yolov3&Yolov4同样的方式,绘制了Yolov5s整体的网络结构图,配合netron的可视化网络结构查看,脑海中的架构会更加清晰。


image.png

本文也会以Yolov5s的网络结构为主线,讲解与其他三个模型(Yolov5m、Yolov5l、Yolov5x)的不同点,让大家对于Yolov5有一个深入浅出的了解。

1.2 网络结构可视化

将四种模型的pt文件转换成对应的onnx文件后,即可使用netron工具查看。
但是,有些同学可能不方便,使用脚本转换查看。
因此,大白也上传了每个网络结构图的图片,也可以直接点击查看。虽然没有netron工具更直观,但是也可以学习了解。

1.2.1 Yolov5s网络结构

Yolov5s网络是Yolov5系列中深度最小,特征图的宽度最小的网络。
后面的3种都是在此基础上不断加深,不断加宽。

上图绘制出的网络结构图也是Yolov5s的结构,大家也可直接点击查看,Yolov5s的网络结构可视化的图片。

1.2.2 Yolov5m网络结构

此处也放上netron打开的Yolov5m网络结构可视图,点击即可查看,后面第二版块会详细说明不同模型的不同点。

1.2.3 Yolov5l网络结构

此处也放上netronx打开的Yolov5l网络结构可视图,点击即可查看。

1.2.4 Yolov5x网络结构

此处也放上netronx打开的Yolov5x网络结构可视图,点击即可查看。

2 核心基础内容

2.1 Yolov3&Yolov4网络结构图

2.1.1 Yolov3网络结构图

你可能感兴趣的:([图像算法]-深入浅出Yolo系列之Yolov5核心基础知识完整讲解)