YOLOv11目标检测创新改进与实战案例专栏
点击查看文章目录: YOLOv11创新改进系列及项目实战目录 包含卷积,主干 注意力,检测头等创新机制 以及 各种目标检测分割项目实战案例
点击查看专栏链接: YOLOv11目标检测创新改进与实战案例
2024年9月30日,Ultralytics在他们的YOLOVision活动上正式发布了YOLOv11。YOLOv11是由位于美国和西班牙的Ultralytics团队开发的YOLO模型的最新迭代版本。
YOLOv11 有哪些新特性?
与YOLOv10相比,YOLOv11带来了大量改进,包括但不限于以下几点:
-
模型架构的增强:模型的架构经过优化,更好地处理输入图像并进行预测。通过改进的架构,模型在图像处理和推理阶段表现更加高效。
-
GPU优化:符合现代机器学习模型的趋势,YOLOv11在GPU上进行了优化训练。与之前版本相比,GPU训练不仅提高了模型的训练速度,还显著提升了模型的精度。
-
速度提升:没错,速度是YOLOv11的一大亮点。通过GPU优化和架构改进,YOLOv11的训练和推理速度比以往版本快得多,延迟减少高达25%。
-
参数减少:模型参数的减少使得YOLOv11运行更加高效,速度更快,同时保持高精度,几乎不影响准确性。
-
更强的适应性和更多支持任务:YOLOv11支持更多类型的任务、更多种类的目标检测和处理更多不同类型的图像。这使得YOLOv11的应用场景更加广泛,几乎可以胜任任何图像识别任务。
YOLOv11 带来了什么?
YOLOv11 提供了多个模型,涵盖了以下功能:
- 目标检测:经过训练后,能够检测图像中的目标物体。
- 图像分割:不仅能够进行目标检测,还能将图像中的物体进行精确分割。
- 姿态估计:通过训练后可以绘制人体姿态,使用点和线来标识关节和肢体。
- 旋转边界框(OBB):与目标检测类似,但边界框可以进行旋转,适用于具有方向性的物体检测。
- 图像分类:经过训练后能够对图像进行类别分类。
通过Ultralytics库,这些模型还可以进行以下优化:
- 对象跟踪:能够跟踪物体的路径和运动轨迹。
- 便捷导出:该库支持多种格式的模型导出,适用于不同的应用场景。
- 多场景支持:可以针对不同的对象和图像类型进行训练,适应多样化的任务需求。
此外,Ultralytics还将推出企业级YOLOv11模型,计划于10月31日发布。这些企业级模型将与开源YOLOv11模型并行发布,但会使用更大的Ultralytics专有数据集进行训练。
YOLOv11包含哪些模型?
YOLOv11包括以下模型:
- 边界框检测模型(无后缀)
- 实例分割模型(后缀 -seg)
- 姿态估计模型(后缀 -pose)
- 旋转边界框模型(后缀 -obb)
- 图像分类模型(后缀 -cls)
这些模型还分为不同的尺寸版本:Nano (n)、Small (s)、Medium (m)、Large (l)、Extra-Large (x)。
YOLOv11 的性能数据
目标检测:
从数据来看,Nano 模型在 YOLOv11 上的 mAPval 为 39.5,而在 YOLOv10 上也是 39.5;Small 模型分别为 47.0 对 46.8;Medium 模型是 51.5 对 51.3;Large 模型在两个版本中均为 53.4;Extra Large 模型为 54.7 对 54.4。这些看似细微的提升,尤其是 mAPval 上的小数点增长,在机器学习模型中往往能带来显著的性能提升。总的来说,YOLOv11 在 mAPval 上超越了 YOLOv10 约 0.3。
接下来我们来看看速度。在延迟方面,Nano 模型在 YOLOv11 上的延迟为 1.55,而在 YOLOv10 上是 1.84;Small 模型分别为 2.46 对 2.49;Medium 模型是 4.70 对 4.74;Large 模型为 6.16 对 7.28;而 Extra Large 模型则为 11.31 对 10.70。延迟越低越好,除了 Extra Large 模型表现稍差之外,YOLOv11 其他尺寸的延迟都比前代低。
总体而言,Nano 模型在速度方面表现极佳,同时性能相当。而 Extra Large 模型尽管性能有所提升,但延迟表现不佳。
图像分割:
总的来看,YOLOv11 的图像分割模型在 Large 和 Extra Large 模型上相比之前的 YOLOv8 和 YOLOv9 表现更优。YOLOv9 并没有提供延迟方面的统计数据,而 YOLOv11 相比 YOLOv8 的延迟大幅降低。YOLOv11 还引入了大量的 GPU 优化,因此在 CPU 测试的基准之外,GPU 上的速度预计会更快。
姿态估计:
YOLOv11 在 mAP50–95 的统计数据上较 YOLOv8 有小幅提升(Large 模型除外)。然而在速度方面,YOLOv11 的姿态估计模型在延迟上有显著改善,某些延迟数据甚至是前代的四分之一!由于这些模型是针对 GPU 训练优化的,因此预计实际性能会比展示的数据更好。
旋转边界框:
在 mAP50 的统计数据上,旋转边界框模型的提升相对较小,甚至比目标检测的细微改进还要少。然而,YOLOv11 在速度上却提升了一倍,显示出 YOLOv11 为提升速度做出了巨大努力。
图像分类:
在精度上,从 YOLOv8 到 YOLOv11 的改进微乎其微,但在速度上,YOLOv11 模型在 CPU 上的表现有了巨大的提升。
YOLOv8 vs YOLOv11: 各模型性能比较
用于比较的关键指标
-
**模型版本(n、s、m、l、x):
Ultralytics 开发的 YOLO 模型有不同的尺寸,即纳米(n)、小(s)、中(m)、大(l)和超大(x)。较大的模型往往更复杂、更强大,但它们也需要更多资源并且运行速度较慢。**
-
mAP(平均精度):
mAP分数告诉我们模型检测物体的准确度。*计算基于模型识别与图像中实际物体不同重叠度的物体的能力。平均精度 (mAP) 越高,表示模型的准确度越高,表明其检测和准确定位图像中物体的能力越强。* -
速度(以毫秒为单位):
速度告诉我们模型处理图像的速度。速度有两种类型,
*CPU 速度:这衡量了它在普通计算机处理器 (CPU) 上的运行速度;
GPU 速度:这衡量了它在特定 NVIDIA GPU(例如 A100 或 T4)上的运行速度,这些 GPU 通常用于高性能 AI 任务。* -
Params(M):
表示特定模型的参数数量(以百万为单位)。模型越大,参数越多。 -
FLOPs(B):
FLOPs(浮点运算)表示模型的计算复杂度。FLOP 越高,表示模型需要的计算资源越多。*以十亿为单位。*
YOLOv8n 与 YOLOv11n:
最小、最快、参数最少的模型:
-
性能:YOLOv11n 在精度上超越了 YOLOv8n,平均精度(mAP)为 39.5,而 YOLOv8n 为 37.3,表明 YOLOv11n 在图像中的目标检测能力更强。
-
速度:在标准 CPU 上,YOLOv11n 的运行速度更快,延迟为 56.1 毫秒,但在高性能 GPU 上则略微较慢。
-
效率:YOLOv11n 在保持较高精度的同时,使用了更少的参数和更低的浮点运算次数(FLOPs),展现出比 YOLOv8n 更高的效率。
YOLOv8s 与 YOLOv11s:
这些模型稍大,旨在平衡速度和精度:
-
性能:YOLOv11s 在精度方面优于 YOLOv8s,平均精度(mAP)为 47.0,而 YOLOv8s 为 44.9,因此在需要高精度的场景下,YOLOv11s 是更好的选择。
-
速度:YOLOv11s 在 CPU 上表现出色,而 YOLOv8s 则在诸如 A100 等高性能 GPU 上表现更快。
-
效率:由于 YOLOv11s 的参数数量更少且计算需求更低,它能够以较少的计算资源提供更高的精度,展示出更高的效率。
YOLOv8m 与 YOLOv11m
中型模型在小型和大型版本之间提供了折衷选择:
-
性能:YOLOv11m 在精度上相比 YOLOv8m 有轻微的提升。
-
速度:YOLOv11m 在 CPU 上的运行速度更快,但在 GPU 上的表现较慢,这可能会影响其在特定应用中的表现。
-
效率:YOLOv11m 使用了较少的参数和浮点运算次数(FLOPs),同时保持了更高的精度,突显了其在任务管理中的高效性。
YOLOv8l 与 YOLOv11l
这些大型模型专为需要精度优先于速度的任务而设计:
-
性能:尽管精度差异较小,YOLOv11l 仍保持着轻微的优势。
-
速度:YOLOv11l 在 CPU 上表现更快,但在 GPU 上的速度明显较慢。
-
效率:YOLOv11l 在资源消耗更少的情况下取得了更好的结果,拥有更少的参数和浮点运算次数(FLOPs),仍然超越了 YOLOv8l。
YOLOv8x 与 YOLOv11x
超大型模型是最为精确的,但也消耗最多的资源:
-
性能:YOLOv11x 的精度略微超越了 YOLOv8x,尽管优势不大。
-
速度:YOLOv11x 在 CPU 和 GPU 上的表现较慢,优先考虑精度而非速度。
-
效率:YOLOv11x 在完成相同任务时消耗了更少的资源,使用显著更少的浮点运算次数(FLOPs)和参数,同时实现了更高的精度。