深圳尤洛视觉
深圳
立即加入

YOLO12 详解:现实应用和用例

Abirami Vina

5 分钟阅读

2025年2月26日

探索最新的计算机视觉模型 YOLO12!了解其以注意力为中心的架构和 FlashAttention 技术如何增强各行业的对象检测任务。

计算机视觉是人工智能 (AI) 的一个分支,可帮助机器理解图像和视频。这是一个以惊人的速度发展的领域,因为人工智能研究人员和开发人员不断突破极限。人工智能社区始终致力于使模型更快、更智能、更高效。最新的突破之一是YOLO12,它是 YOLO(You Only Look Once)模型系列的最新成员,于 2025 年 2 月 18 日发布。

YOLO12 由纽约州立大学布法罗分校 (SUNY) 和中国科学院大学的研究人员开发。YOLO12 采用了一种独特的新方法,引入了注意力机制,使模型能够专注于图像中最重要的部分,而不是平等地处理所有内容。 

它还具有 FlashAttention,这是一种在减少内存使用的同时加快处理速度的技术,以及一种区域注意力机制,旨在模仿人类自然地关注中心对象的方式。

这些改进使 YOLO12n 比 YOLOv10n 准确率高 2.1%,YOLO12m 比 YOLO11m 准确率高 1.0%。然而,这也带来了一个权衡——YOLO12n 比 YOLOv10n 慢 9%,YOLO12m 比 YOLO11m 慢 3%。

__wf_reserved_inherit
图 1. 使用 YOLO12 检测目标的示例。

在本文中,我们将探讨 YOLO12 的不同之处,它与以前版本的比较,以及它可以应用在哪些领域。

YOLO12 的发布之路

YOLO模型系列是一系列专为实时目标检测而设计的计算机视觉模型,这意味着它们可以快速识别和定位图像和视频中的目标。随着时间的推移,每个版本在速度、准确性和效率方面都得到了改进。

例如,于 2020 年发布的 Ultralytics YOLOv5 因其快速且易于自定义训练和部署而被广泛使用。后来,Ultralytics YOLOv8 通过为计算机视觉任务(如实例分割和目标跟踪)提供额外的支持,在此基础上进行了改进。 

最近,Ultralytics YOLO11 专注于提高实时处理能力,同时保持速度和准确性之间的平衡。例如,YOLO11m 的参数比 YOLOv8m 少 22%,但在 COCO 数据集(一个广泛用于评估目标检测模型的基准)上,仍然提供了更好的检测性能。

在这些进步的基础上,YOLO12 引入了一种处理视觉信息方式的转变。它不是平等地对待图像的所有部分,而是优先考虑最相关的区域,从而提高检测精度。简而言之,YOLO12 在之前的改进基础上,力求更加精确。

YOLO12 的主要特性

YOLO12 引入了几项改进,在保持实时处理速度的同时,增强了计算机视觉任务。以下是 YOLO12 的主要功能概述:

  • 以注意力为中心的架构:YOLO12 并非平等对待图像的每个部分,而是专注于最重要的区域。这提高了准确性并减少了不必要的处理,即使在杂乱的图像中也能使检测更清晰、更高效。
  • FlashAttention: YOLO12 加快了图像分析速度,同时减少了内存使用。借助 FlashAttention(一种内存高效算法),它可以优化数据处理,减少硬件压力,并使实时任务更流畅、更可靠。
  • 残差高效层聚合网络 (R-ELAN):YOLO12 使用 R-ELAN 更有效地组织其层,从而改进了模型处理和学习数据的方式。这使得训练更加稳定,对象识别更加清晰,并且降低了计算要求,因此它可以在不同的环境中高效运行。

为了理解这些功能在现实生活中的运作方式,可以考虑一个购物中心。YOLO12 可以帮助跟踪购物者,识别商店装饰,如盆栽植物或促销标志,并发现放错位置或遗弃的物品。 

其以注意力为中心的架构有助于它专注于最重要的细节,而 FlashAttention 确保它快速处理所有内容而不会使系统过载。这使得商场运营商更容易提高安全性、组织商店布局并改善整体购物体验。

__wf_reserved_inherit
图 2. 使用 YOLO12 检测购物中心中的物体。

然而,YOLO12 也存在一些需要考虑的局限性:

  • 训练时间较长: 由于其架构,与 YOLO11 相比,YOLO12 需要更多的训练时间。
  • 导出挑战: 一些用户在导出 YOLO12 模型时可能会遇到困难,尤其是在将其集成到特定的部署环境中时。

理解 YOLO12 的性能基准

YOLO12 有多个变体,每个变体都针对不同的需求进行了优化。较小的版本(nano 和 small)优先考虑速度和效率,使其成为移动设备和边缘计算的理想选择。中型和大型版本在速度和准确性之间取得了平衡,而 YOLO12x(超大型)则专为高精度应用而设计,如工业自动化、医学影像和高级监控系统。

YOLO12 具有多种变体,可根据模型大小提供不同的性能水平。基准测试表明,YOLO12 的某些变体在准确性方面优于 YOLOv10 和 YOLO11,实现了更高的平均精度均值 (mAP)。 

然而,像YOLO12m、YOLO12l和YOLO12x等一些模型处理图像的速度比YOLO11慢,这表明检测精度和速度之间存在权衡。尽管如此,YOLO12仍然高效,所需的参数比许多其他模型少,但仍然比YOLO11多。这使得它成为精度比原始速度更重要的应用程序的绝佳选择。

__wf_reserved_inherit
图 3. Ultralytics YOLO11 和 YOLO12 的比较。

通过 Ultralytics Python 包使用 YOLO12

Ultralytics Python 包支持 YOLO12,并且易于使用,这使得初学者和专业人士都可以轻松使用它。只需几行代码,用户就可以加载预训练模型,在图像和视频上运行各种计算机视觉任务,还可以在自定义数据集上训练 YOLO12。Ultralytics Python 包简化了流程,无需复杂的设置步骤。

例如,以下是您 使用 YOLO12 进行目标检测 的步骤:

  • 安装 Ultralytics 包: 首先,安装 Ultralytics Python 包,该包提供了有效运行 YOLO12 所需的工具。这确保所有依赖项都已正确设置。
  • 加载预训练的YOLO12模型: 根据任务所需的准确性和速度级别,选择合适的YOLO12变体(nano、small、medium、large或extra large)。
  • 提供图像或视频: 输入您想要分析的图像或视频文件。YOLO12 还可以处理实时视频流以进行实时检测。
  • 运行检测过程:模型扫描视觉数据,识别对象,并在它们周围放置边界框。它用预测的类别和置信度分数标记每个检测到的对象。
  • 调整检测设置: 您还可以修改置信度阈值等参数,以微调检测准确性和性能。
  • 保存或使用输出: 处理后的图像或视频(现在包含检测到的对象)可以保存或集成到应用程序中,以进行进一步的分析、自动化或决策。

这些步骤使 YOLO12 易于用于各种应用,从监控和零售跟踪到医学成像和自动驾驶汽车。

YOLO12 的实际应用

由于 YOLO12 支持目标检测、实例分割、图像分类、姿态估计和定向目标检测 (OBB),因此可以用于各种实际应用。 

__wf_reserved_inherit
图 4. YOLO12 支持诸如目标检测和实例分割之类的任务。

然而,正如我们前面讨论的那样,YOLO12 模型优先考虑准确性而不是速度,这意味着与早期版本相比,它们处理图像的时间稍长。这种权衡使 YOLO12 成为精度比实时速度更重要的应用的理想选择,例如:

  • 医学影像:可以对 YOLO12 进行自定义训练,以高精度检测 X 射线和 MRI 中的肿瘤或异常情况,使其成为需要精确图像分析以进行诊断的医生和放射科医生的有用工具。
  • 制造业中的质量控制:它可以帮助识别生产过程中的产品缺陷,确保只有高质量的产品进入市场,同时减少浪费并提高效率。
  • 法医分析:执法机构可以微调 YOLO12 以分析监控录像并收集证据。在刑事调查中,精确识别关键细节至关重要。
  • 精准农业: 农民可以使用 YOLO12 分析作物健康状况,检测疾病或虫害,并监测土壤状况。准确的评估有助于优化耕作策略,从而提高产量和资源管理水平。

YOLO12 入门

在运行 YOLO12 之前,请务必确保您的系统满足必要的配置要求。

从技术上讲,YOLO12 可以在任何专用 GPU(图形处理器) 上运行。默认情况下,它不需要 FlashAttention,因此可以在大多数没有它的 GPU 系统上工作。但是,当处理大型数据集或高分辨率图像时,启用 FlashAttention 尤其有用,因为它可以帮助防止速度减慢、减少内存使用并提高处理效率。 

要使用 FlashAttention,您需要以下系列之一的 NVIDIA GPU:Turing (T4, Quadro RTX)、Ampere (RTX 30 系列, A30, A40, A100)、Ada Lovelace (RTX 40 系列) 或 Hopper (H100, H200)。

考虑到可用性和可访问性,Ultralytics Python 包目前尚不支持 FlashAttention 推理,因为它的安装在技术上可能非常复杂。要了解更多关于 YOLO12 入门和优化其性能的信息,请查看Ultralytics 官方文档

主要要点

随着计算机视觉的进步,模型正变得越来越精确和高效。YOLO12 通过以注意力为中心的处理和 FlashAttention 改进了对象检测、实例分割和图像分类等计算机视觉任务,从而提高了准确性,同时优化了内存使用。

与此同时,计算机视觉比以往任何时候都更容易获得。YOLO12 可以通过 Ultralytics Python 包轻松使用,并且由于它侧重于精度而不是速度,因此非常适合医疗成像、工业检测和机器人技术 - 在这些应用中,精度是关键。

对 AI 感兴趣吗?访问我们的 GitHub 仓库 并与 我们的社区 互动。在我们的解决方案页面上探索 自动驾驶汽车中的 AI农业中的计算机视觉 等领域的创新。查看 我们的许可选项,让您的视觉 AI 项目成为现实。🚀

让我们一起构建人工智能的未来!

开启您的机器学习未来之旅

免费开始
链接已复制到剪贴板