最新|全新风格原创YOLOv7YOLOv5和YOLOX网络结构解析图

Posted 芒果汁没有芒果

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最新|全新风格原创YOLOv7YOLOv5和YOLOX网络结构解析图相关的知识,希望对你有一定的参考价值。

💡本篇分享一下个人绘制的原创全新风格YOLOv7网络结构图YOLOv5网络结构图YOLOX网络结构图
个人感觉搭配还行,看着比较直观,所以开源分享一下。

文章目录

YOLOv5 网络结构图(最新 推荐🔥🔥🔥)

YOLOv5 结构:

Backbone: New CSP-Darknet53
Neck: SPPF, CSPPAN
Head: YOLOv3 Head

By YOLOAir CSDN芒果汁没有芒果

YOLOv7 网络结构图(最新 推荐🔥🔥🔥)

论文:YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors

YOLOv7 结构:

Backbone: New ELANCSP
Neck: SPPCSPC, ELANPAN
Head: YOLOv7 Head


By YOLOAir CSDN芒果汁没有芒果

YOLOX 网络结构图(最新 推荐🔥🔥🔥)

YOLOX 结构:

Backbone: New CSP-Darknet53
Neck: SPP, CSPPAN
Head: YOLOX Head

By YOLOAir CSDN芒果汁没有芒果

最新YOLOv5、YOLOv7创新点首发原创改进博客推荐

(🔥 博客内 附有多种模型改进方式,均适用于YOLOv5系列 以及 YOLOv7系列 改进!!!)


YOLOv7解析

扩展的高效层聚合

骨干网中 YOLO 网络卷积层的效率对于高效推理速度至关重要。WongKinYiu 通过 Cross Stage Partial Networks 开始了最高层效率的道路。

在 YOLOv7 中,作者建立在关于这个主题的研究的基础上,牢记将层保存在内存中所需的内存量以及梯度在层中反向传播所需的距离——梯度越短,他们的网络学习能力越强。他们选择的最后一层聚合是 E-ELAN,它是 ELAN 计算块的扩展版本。

模型缩放技术

对象检测模型通常以一系列模型的形式发布,大小按比例放大和缩小,因为不同的应用程序需要不同级别的准确度和推理速度。

通常,对象检测模型会考虑网络的深度、网络的宽度以及网络训练的分辨率。在 YOLOv7 中,作者在将层级联在一起的同时协同缩放网络深度和宽度。消融研究表明,这种技术在针对不同尺寸进行缩放的同时保持模型架构最佳。

重新参数化规划

重新参数化技术涉及对一组模型权重进行平均,以创建一个对其尝试建模的一般模式更稳健的模型。在研究中,最近关注模块级重新参数化,其中网络的一部分有自己的重新参数化策略。

YOLOv7 作者使用梯度流传播路径来查看网络中的哪些模块应该使用重新参数化策略,哪些不应该。

辅助头粗到细

YOLO 网络头对网络进行最终预测,但由于它位于网络的下游,因此向位于中间某处的网络添加辅助头可能是有利的。当你在训练时,你正在监督这个检测头以及实际要进行预测的头。

辅助头的训练效率不如最终头,因为它与预测之间的网络较少——因此 YOLOv7 作者对这个头进行了不同级别的监督试验,确定了通过监督的粗到细定义从不同粒度的铅头返回。

YOLOv5 网络配置

# YOLOv5 🚀 by Ultralytics, GPL-3.0 license

# Parameters
nc: 80  # number of classes
depth_multiple: 1.0  # model depth multiple
width_multiple: 1.0  # layer channel multiple
anchors:
  - [10,13, 16,30, 33,23]  # P3/8
  - [30,61, 62,45, 59,119]  # P4/16
  - [116,90, 156,198, 373,326]  # P5/32

# YOLOv5 v6.0 backbone
backbone:
  # [from, number, module, args]
  [[-1, 1, Conv, [64, 6, 2, 2]],  # 0-P1/2
   [-1, 1, Conv, [128, 3, 2]],  # 1-P2/4
   [-1, 3, C3, [128]],
   [-1, 1, Conv, [256, 3, 2]],  # 3-P3/8
   [-1, 6, C3, [256]],
   [-1, 1, Conv, [512, 3, 2]],  # 5-P4/16
   [-1, 9, C3, [512]],
   [-1, 1, Conv, [1024, 3, 2]],  # 7-P5/32
   [-1, 3, C3, [1024]],
   [-1, 1, SPPF, [1024, 5]],  # 9
  ]

# YOLOv5 v6.0 head
head:
  [[-1, 1, Conv, [512, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 6], 1, Concat, [1]],  # cat backbone P4
   [-1, 3, C3, [512, False]],  # 13

   [-1, 1, Conv, [256, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 4], 1, Concat, [1]],  # cat backbone P3
   [-1, 3, C3, [256, False]],  # 17 (P3/8-small)

   [-1, 1, Conv, [256, 3, 2]],
   [[-1, 14], 1, Concat, [1]],  # cat head P4
   [-1, 3, C3, [512, False]],  # 20 (P4/16-medium)

   [-1, 1, Conv, [512, 3, 2]],
   [[-1, 10], 1, Concat, [1]],  # cat head P5
   [-1, 3, C3, [1024, False]],  # 23 (P5/32-large)

   [[17, 20, 23], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)
  ]

YOLOv7 网络配置

# parameters
nc: 80  # number of classes
depth_multiple: 1.0  # model depth multiple
width_multiple: 1.0  # layer channel multiple

# anchors
anchors:
  - [12,16, 19,36, 40,28]  # P3/8
  - [36,75, 76,55, 72,146]  # P4/16
  - [142,110, 192,243, 459,401]  # P5/32

# yolov7 backbone
backbone:
  # [from, number, module, args]
  [[-1, 1, Conv, [32, 3, 1]],  # 0
  
   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2      
   [-1, 1, Conv, [64, 3, 1]],
   
   [-1, 1, Conv, [128, 3, 2]],  # 3-P2/4  
   [-1, 1, Conv, [64, 1, 1]],
   [-2, 1, Conv, [64, 1, 1]],
   [-1, 1, Conv, [64, 3, 1]],
   [-1, 1, Conv, [64, 3, 1]],
   [-1, 1, Conv, [64, 3, 1]],
   [-1, 1, Conv, [64, 3, 1]],
   [[-1, -3, -5, -6], 1, Concat, [1]],
   [-1, 1, Conv, [256, 1, 1]],  # 11
         
   [-1, 1, MP, []],
   [-1, 1, Conv, [128, 1, 1]],
   [-3, 1, Conv, [128, 1, 1]],
   [-1, 1, Conv, [128, 3, 2]],
   [[-1, -3], 1, Concat, [1]],  # 16-P3/8  
   [-1, 1, Conv, [128, 1, 1]],
   [-2, 1, Conv, [128, 1, 1]],
   [-1, 1, Conv, [128, 3, 1]],
   [-1, 1, Conv, [128, 3, 1]],
   [-1, 1, Conv, [128, 3, 1]],
   [-1, 1, Conv, [128, 3, 1]],
   [[-1, -3, -5, -6], 1, Concat, [1]],
   [-1, 1, Conv, [512, 1, 1]],  # 24
         
   [-1, 1, MP, []],
   [-1, 1, Conv, [256, 1, 1]],
   [-3, 1, Conv, [256, 1, 1]],
   [-1, 1, Conv, [256, 3, 2]],
   [[-1, -3], 1, Concat, [1]],  # 29-P4/16  
   [-1, 1, Conv, [256, 1, 1]],
   [-2, 1, Conv, [256, 1, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [[-1, -3, -5, -6], 1, Concat, [1]],
   [-1, 1, Conv, [1024, 1, 1]],  # 37
         
   [-1, 1, MP, []],
   [-1, 1, Conv, [512, 1, 1]],
   [-3, 1, Conv, [512, 1, 1]],
   [-1, 1, Conv, [512, 3, 2]],
   [[-1, -3], 1, Concat, [1]],  # 42-P5/32  
   [-1, 1, Conv, [256, 1, 1]],
   [-2, 1, Conv, [256, 1, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [-1, 1, Conv, [256, 3, 1]],
   [[-1, -3, -5, -6], 1, Concat, [1]],
   [-1, 1, Conv, [1024, 1, 1]],  # 50
  ]

# yolov7 head
head:
  [[-1, 1, SPPCSPC, [512]], # 51
  
   [-1, 1, Conv, [256, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [37, 1, Conv, [256, 1, 1]], # route backbone P4
   [[-1, -2], 1, Concat, [1

以上是关于最新|全新风格原创YOLOv7YOLOv5和YOLOX网络结构解析图的主要内容,如果未能解决你的问题,请参考以下文章

乐高®跨界联动全新百老汇音乐剧,隆重揭幕纽约第五大道最新创意门店

最新资讯|Off-White&Chrome Hearts 2018全新联名连帽衫

YOLOv7YOLOv5改进之打印热力图可视化:适用于自定义模型,丰富实验数据

颜值不输黑白!Nike React Element 87 全新配色已经涨价了!

博客首页全新改版;博客代码片支持折叠;原创博文新增打赏功能……2022.1.17

红旗 Linux 桌面操作系统11来了:支持国产自主CPU,全新UI风格设计,兼容面广