yolov8网络结构

191 阅读1分钟

YOLOv8可以完成检测、分类、分割任务

1. yolov8网络结构

YOLOv8 image.png

2. 基础组件

2.1 C2f

  • C(Cross Stage Partial) :继承了 YOLOv5 中 CSP 的核心思想,即通过将特征图分为两部分并在不同阶段进行融合,以减少计算量并提升特征提取效率。
  • 2(2 convolutions) :表示在 C2F 模块中使用了 两个卷积层 来处理特征图。这两个卷积层分别用于特征的分割和融合。
  • F(Fusion) :强调了模块的核心功能是 特征融合,通过将不同阶段的特征图进行融合,增强模型的表达能力。 image.png

2.2 Bottleneck

shortcut=True

image.png

shortcut =False

image.png

2.3 SPPF

image.png

2.4 CBS

image.png

2.5 Detect

image.png

image.png

3. Backbone

骨干网络和 Neck 部分可能参考了 YOLOv7 ELAN 设计思想,将 YOLOv5 的 C3 结构换成了梯度流更丰富的 C2f 结构,并对不同尺度模型调整了不同的通道数。

3.1 c2f

所有的C3模块换成了C2f,使用了更多的跳层连接和额外的Split操作。

image.png image.png

4. Neck

image.png

image.png

5. Head

Head部分较yolov5而言有两大改进:1)换成了目前主流的解耦头结构(Decoupled-Head),将分类和检测头分离 2)同时也从 Anchor-Based 换成了 Anchor-Free

从原先的耦合头变成了解耦头,并且从 YOLOv5 的 Anchor-Based 变成了 Anchor-Free。

image.png

image.png

image.png

数据增强

数据增强方面和 YOLOv5 差距不大,只不过引入了 YOLOX 中提出的最后 10 个 epoch 关闭 Mosaic 的操作。