问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

YOLO11 沉浸式讲解 YOLOV11网络结构以及代码剖析

创作时间:
作者:
@小白创作中心

YOLO11 沉浸式讲解 YOLOV11网络结构以及代码剖析

引用
CSDN
1.
https://blog.csdn.net/qq_64693987/article/details/142668985

YOLO11作为YOLO系列的最新版本,通过改进的骨干和颈部架构,以及优化的训练流程,在保持高精度的同时实现了更快的处理速度。本文将深入解析YOLO11的网络结构,包括C3K2和C2PSA模块的设计原理,以及head部分的深度可分离卷积应用。

1. Ultralytics YOLO11相比于之前版本的主要改进有哪些?

Ultralytics YOLO11在其前身基础上引入了几项重要进步。主要改进包括:

  1. 增强的特征提取:YOLO11采用改进的骨干和颈部架构,增强了特征提取能力,提高了物体检测的精确度。
  2. 优化的效率和速度:精炼的架构设计和优化的训练流程实现了更快的处理速度,同时保持了准确性和性能之间的平衡。
  3. 更高的准确性与更少的参数:YOLO11m在COCO数据集上实现了更高的均值平均精度(mAP),同时使用比YOLOv8m少22%的参数,使其在不妥协准确性的情况下更加计算高效。
  4. 环境适应性强:YOLO11可以在多种环境中部署,包括边缘设备、云平台以及支持NVIDIA GPU的系统。
  5. 支持广泛的任务:YOLO11支持多种计算机视觉任务,如物体检测、实例分割、图像分类、姿态估计和定向物体检测(OBB)。

我们先来看一下其网络结构有什么变化,可以看出,相比较于YOLOv8模型,其将CF2模块改成C3K2,同时在SPPF模块后面添加了一个C2PSA模块,且将YOLOv10的head思想引入到YOLO11的head中,使用深度可分离的方法,减少冗余计算,提高效率。下面我们来详细看一下这两个模块的结构是怎么构成的,以及它们为什么要这样设计

2. C3K2的网络结构

从下面图中我们可以看到,C3K2模块其实就是C2F模块转变出来的,它代码中有一个设置,就是当c3k这个参数为FALSE的时候,C3K2模块就是C2F模块,也就是说它的Bottleneck是普通的Bottleneck;反之当它为true的时候,将Bottleneck模块替换成C3模块。

3. C2PSA的网络结构

C2PSA是对C2f模块的扩展,它结合了PSA(Pointwise Spatial Attention)块,用于增强特征提取和注意力机制。通过在标准C2f模块中引入 PSA 块,C2PSA实现了更强大的注意力机制,从而提高了模型对重要特征的捕捉能力。

3.1. C2f 模块回顾:

C2f模块是一个更快的 CSP(Cross Stage Partial)瓶颈实现,它通过两个卷积层和多个 Bottleneck 块进行特征提取。相比传统的 CSPNet,C2f 优化了瓶颈层的结构,使得计算速度更快。在 C2f中,cv1是第一个 1x1 卷积,用于减少通道数;cv2是另一个 1x1 卷积,用于恢复输出通道数。而n是一个包含 Bottleneck 块的数量,用于提取特征。

3.2. C2PSA 模块的增强

C2PSA扩展了C2f,通过引入PSA(Position-Sensitive Attention),旨在通过多头注意力机制和前馈神经网络来增强特征提取能力。它可以选择性地添加残差结构(shortcut)以优化梯度传播和网络训练效果。同时,使用FFN 可以将输入特征映射到更高维的空间,捕获输入特征的复杂非线性关系,允许模型学习更丰富的特征表示。

4. head部分

YOLO11在head部分的cls分支上使用深度可分离卷积,具体代码如下,cv2边界框回归分支,cv3分类分支。

self.cv2 = nn.ModuleList(
    nn.Sequential(Conv(x, c2, 3), Conv(c2, c2, 3), nn.Conv2d(c2, 4 * self.reg_max, 1)) for x in ch
)
self.cv3 = nn.ModuleList(
    nn.Sequential(
        nn.Sequential(DWConv(x, x, 3), Conv(x, c3, 1)),
        nn.Sequential(DWConv(c3, c3, 3), Conv(c3, c3, 1)),
        nn.Conv2d(c3, self.nc, 1),
    )
    for x in ch
)

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号