YOLO11 与YOLOv10:最新物体检测技术深度剖析
选择合适的计算机视觉模型是一项关键决策,它影响着人工智能应用的效率、准确性和可扩展性。本综合比较探讨了 Ultralytics YOLO11和YOLOv10 之间的技术细节。YOLOv10 引入了NMS 训练等学术创新,而YOLO11 则是Ultralytics YOLO 系列的巅峰之作,在速度、准确性和无与伦比的开发人员生态系统之间实现了稳健的平衡。
性能指标分析
推理延迟和检测精度之间的权衡决定了实时物体检测的前景。下表对不同模型规模下的平均精度(mAP)和速度指标进行了并列比较。
如图所示,YOLO11 始终能在标准硬件上提供卓越的性能。例如,YOLO11n模型在保持CPU 高速运行的同时,实现了极具竞争力的精确度,这使其在实时推理场景中非常有效。此外,YOLO11x等更大的变体在精确度方面也占据优势,这对于高保真任务来说至关重要。
| 模型 | 尺寸 (像素) | mAPval 50-95 | 速度 CPU ONNX (毫秒) | 速度 T4 TensorRT10 (毫秒) | 参数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
Ultralytics YOLO11:生产型人工智能的标准
Ultralytics YOLO11代表了视觉人工智能的最新发展,旨在支持从边缘人工智能到基于云的分析等各种实际应用。它由为您带来 YOLOv5和 YOLOv8的团队编写的,该模型注重实际可用性,同时不牺牲最先进的性能。
- 作者: Glenn Jocher, Jing Qiu
- 组织机构Ultralytics
- 日期: 2024-09-27
- GitHub:Ultralytics 资源库
- 文档:YOLO11 文档
架构和能力
YOLO11 通过增强的特征提取层和现代化的 C3k2 块设计,完善了前几代产品的架构基础。这些改进使模型能够以更高的精度捕捉复杂的视觉图案,同时优化计算流程。
YOLO11 的一个显著特点是它的多功能性。与许多专业模型不同,YOLO11 是一个多任务框架。它原生支持
生态系统和易用性
YOLO11 的真正优势在于其周边的Ultralytics 生态系统。开发人员受益于一个成熟、维护良好的环境,其中包括一个简化的 Python界面和强大的 CLI.这确保了从数据集到部署模型的无缝流程。
简化开发
Ultralytics 模型可以毫不费力地与Ultralytics HUB等工具集成,用于云培训和模型管理。这种集成消除了与学术资源库相关的 "模板疲劳",使您能够专注于解决业务问题,而不是调试培训循环。
YOLOv10:专注于延迟优化
清华大学研究人员开发的YOLOv10 采用了一种不同的方法,旨在消除后处理瓶颈。它引入了一种NMS训练策略,旨在减少端到端延迟。
- 作者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 组织机构: 清华大学清华大学
- 日期: 2024-05-23
- Arxiv:arXiv:2405.14458
- GitHub:YOLOv10 资源库
- 文档:YOLOv10 文档
建筑创新
YOLOv10 的突出特点是取消了推理过程中的非最大抑制(NMS)。通过在训练过程中使用一致的双重分配--结合一对多和一对一的标记策略--模型学会了在内部抑制冗余预测。这对于在硬件上运行的专业应用非常有利,因为在这些应用中,NMS 计算是一个重要的延迟因素。
然而,这种架构上的专注是有代价的。YOLOv10 主要用于对象检测,缺乏Ultralytics 管道中的本地多任务支持。
关键比较:生态系统为何重要
在比较YOLO11 和YOLOv10 时,原始指标只能说明问题的一部分。对于开发人员和工程师来说,"总体拥有成本"(包括开发时间、维护和部署复杂性)往往是决定性因素。
1.多功能性和任务支持
YOLO11是一款全面的视觉人工智能解决方案。无论您是需要清点传送带上的物品、segment 医学影像以检测肿瘤,还是通过姿势估计 track 运动员的运动情况,YOLO11 都能通过单一 API 进行处理。
YOLOv10相反,YOLOv10 严格来说是一个对象检测模型。如果您的项目需求发展到包括分割或分类,您就需要切换框架或集成不同的模型,从而增加管道的复杂性。
2.训练效率和记忆力
Ultralytics 模型针对训练效率进行了优化。与transformer替代方案和旧架构相比,YOLO11 在训练过程中的内存使用量通常较低。这种高效性使它可以用于更广泛的硬件,从标准 GPU 到高性能云实例。
预训练的权重随时可用,并经过严格测试,确保在自定义数据集上进行迁移学习能快速获得高质量的结果。
3.部署和维护
围绕YOLO11 的维护良好的生态系统怎么强调都不为过。Ultralytics 提供频繁更新,确保与最新版本的PyTorch、CUDA 和导出格式(如 TensorRT和 OpenVINO.
社区与支持
虽然YOLOv10 在学术上做出了巨大贡献,但它缺乏Ultralytics 专门、持续的支持结构。YOLO11 用户可以从大量的文档、活跃的社区论坛和专业的支持渠道中获益,从而大大降低了长期项目中的技术债务风险。
代码比较:易用性因素
Ultralytics 将开发人员友好的体验放在首位。下面是一个如何使用YOLO11 进行加载和预测的标准示例,突出了应用程序接口的简易性。
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
这种简洁的语法将复杂的预处理和后处理步骤抽象化,使开发人员只需使用最少的代码就能将复杂的人工智能集成到应用程序中。
理想用例
何时选择YOLO11
YOLO11 因其平衡性和支持性而成为绝大多数商业和研究应用的推荐选择。
- 智能城市与监控:适用于对准确性和可靠性要求极高的强大交通管理和安全监控。
- 工业自动化:非常适合需要检测、细分和分析的制造环境。 旋转框检测用于旋转部件。
- 消费者应用:轻便的 "Nano "型号非常适合通过CoreML 或TFLite 进行移动部署。
- 研发:在不同任务之间灵活切换(例如,从检测到分割)可加快实验速度。
何时考虑YOLOv10
- 学术研究:探索NMS 架构和损失函数创新。
- 严格的延迟限制:边缘情况下,NMS 的特定计算成本是主要瓶颈,不需要Ultralytics 的生态系统优势。
结论
这两个模型都代表了计算机视觉领域的重大成就。YOLOv10 在NMS 训练方面取得了有趣的理论进展。然而 Ultralytics YOLO11是实际部署的最佳选择。它结合了最先进的性能、多任务多功能性以及强大的、以用户为中心的生态系统,确保开发人员能够满怀信心地构建、训练和部署可扩展的人工智能解决方案。
如果您有兴趣了解YOLO11 与其他架构的比较,您可能会发现我们对YOLO11 与 YOLOv9和YOLO11 与RT-DETR的比较很有价值。