Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
集成

使用 OpenVINO™ 轻松部署 Ultralytics YOLO11

了解如何将 Ultralytics YOLO11 导出为 OpenVINO™ 格式,并通过 Python 或 OpenVINO Runtime 在 Intel CPU、GPU 和 NPU 上实现更快的推理。

Abirami VinaAbirami Vina7 分钟阅读
在 Intel 硬件上使用 OpenVINO 部署 YOLO11

AI 的普及取决于 AI 解决方案是否易于获取,而其中很重要的一点,是让这些解决方案能够轻松部署到人们现有的硬件上。使用 GPU(图形处理器)运行 AI 模型,是充分发挥性能和并行处理能力的好选择。

然而,现实情况是,并非每个人都能使用高端 GPU,尤其是在边缘环境或日常使用的笔记本电脑上。因此,优化模型以便在更普遍的硬件上高效运行至关重要,例如中央处理器(CPUs)、集成 GPU 和神经处理器(NPUs)。

例如,计算机视觉是 AI 的一个分支,可让机器实时分析并理解图像和视频流。Ultralytics YOLO11等视觉 AI 模型支持对象检测和实例分割等关键任务,为零售分析到医学诊断等应用提供支持。

Ultralytics YOLO11 在零售商店中检测并分割对象

图 1。使用 Ultralytics YOLO11 在零售商店中检测并分割对象。

为了让计算机视觉更易于普及,Ultralytics 发布了与 OpenVINO 工具套件的更新版集成。OpenVINO 是一个用于优化并在 CPU、GPU 和 NPU 上运行 AI 推理的开源项目。

借助这项集成,你可以更轻松地导出和部署 YOLO11 模型,在 CPU 上实现最高 3 倍的推理速度,并在 Intel GPU 和 NPU 上获得加速性能。本文将介绍如何使用 Ultralytics Python 包将 YOLO11 模型导出为 OpenVINO 格式,并用其进行推理。

Ultralytics YOLO11 概览#

在深入了解 Ultralytics 支持的 OpenVINO 集成之前,我们先来看看 YOLO11 为何是一款可靠且实用的计算机视觉模型。本文撰写时,YOLO11 是 Ultralytics YOLO 系列的最新模型(此后已由 Ultralytics YOLO26 接替),在速度和精度方面都有显著提升。

YOLO11 的一大亮点是高效。例如,Ultralytics YOLO11m 的参数量比 Ultralytics YOLOv8m 少 22%,但在 COCO 数据集上的平均精度均值 (mAP) 更高。这意味着它运行速度更快,目标检测也更准确,非常适合性能和响应速度至关重要的实时应用。

Ultralytics YOLO11 性能基准测试

图 2. Ultralytics YOLO11 的性能基准测试。

除了目标检测,YOLO11 还支持多种高级计算机视觉任务,例如实例分割、图像分类、姿态估计、旋转框检测和目标跟踪。YOLO11 也便于开发者使用,Ultralytics Python 包为模型训练、评估和部署提供了简单且一致的接口。

此外,Ultralytics Python 包还支持多种集成和多种导出格式,包括 OpenVINO、ONNX 和 TorchScript,让你能够轻松将 YOLO11 集成到各种部署流水线中。无论你的目标是云基础设施、边缘设备还是嵌入式系统,导出流程都简单易用,并能适应你的硬件需求。

什么是 OpenVINO™?#

OpenVINO™(开放视觉推理与神经网络优化)是一个开源工具套件,可在各种硬件上优化和部署 AI 推理。它让开发者能够在多种 Intel 平台上高效运行高性能推理应用,包括 CPU、集成和独立 GPU、NPU 以及现场可编程门阵列 (FPGAs)。

OpenVINO 提供统一的运行时接口,通过特定设备的插件屏蔽硬件差异。这意味着开发者只需编写一次代码,就能通过一致的 API 将程序部署到多种 Intel 硬件上。

以下是 OpenVINO 适合部署的一些主要特性:

  • 模型转换器:此工具可转换并准备来自 PyTorch、ONNX、TensorFlow、PaddlePaddle 等热门框架的模型,以便针对 Intel 硬件进行优化,实现高效推理。
  • 异构执行:你无需针对不同的 Intel 硬件重写代码。OpenVINO 可以轻松地在任何受支持的硬件上运行同一模型,从 CPU 到 GPU 都适用。
  • 量化支持:此工具套件支持 FP16(默认)和 INT8 等低精度格式,有助于减小模型体积并加快推理速度,同时不会对准确性造成明显影响。

OpenVINO 为不同硬件提供多样化部署选项

图 3. OpenVINO 提供多样化的部署选项。

探索 Ultralytics 与 OpenVINO 的集成#

了解 OpenVINO 及其重要性之后,接下来我们来看看如何将 Ultralytics YOLO11 模型导出为 OpenVINO 格式,并在 Intel 硬件上高效运行推理。

第 1 步:安装 Ultralytics Python 包#

要将模型导出为 OpenVINO 格式,你首先需要安装 Ultralytics Python 软件包。此软件包提供训练、评估和导出 YOLO 模型(包括 YOLO11)所需的一切工具。

你可以在终端或命令提示符中运行命令 pip install ultralytics 来安装。如果你在 Jupyter Notebook 或 Google Colab 等交互式环境中操作,只需在命令前加上感叹号。

此外,如果你在安装或导出时遇到问题,Ultralytics 文档和故障排除指南都是很好的资源,可以帮你解决问题。

第 2 步:将 Ultralytics YOLO11 模型导出为 OpenVINO 格式#

设置好 Ultralytics 软件包后,下一步是加载 YOLO11 模型,并将其转换为兼容 OpenVINO 的格式。

在下面的示例中,我们使用一个预训练 YOLO11 模型(“yolo11n.pt”)。通过导出功能,我们可以将它转换为 OpenVINO 格式。运行这段代码后,转换后的模型将保存在名为“yolo11n_openvino_model”的新目录中。

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.export(format="openvino")

第 3 步:使用导出的模型运行推理#

将 YOLO11 模型导出为 OpenVINO 格式后,你可以通过两种方式运行推理:使用 Ultralytics Python 软件包,或使用原生 OpenVINO Runtime。

使用 Ultralytics Python 软件包#

如下方代码片段所示,你可以使用 Ultralytics Python 软件包轻松部署导出的 YOLO11 模型。这种方法非常适合快速试验,以及在 Intel 硬件上简化部署流程。

你还可以根据系统上可用的 Intel 硬件,指定用于推理的设备,例如“intel:cpu”、“intel:gpu”或“intel:npu”。

ov_model = YOLO("yolo11n_openvino_model/")
results = ov_model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")

若要将标注后的输出图像保存到 "runs/detect/predict" 目录,请在推理调用中添加 save=True。

导出的 Ultralytics YOLO11 模型检测图像中的目标

图 4. 使用导出的 Ultralytics YOLO11 模型检测图像中的目标。

使用原生 OpenVINO Runtime#

如果你希望以可自定义的方式运行推理,尤其是在生产环境中,OpenVINO Runtime 能让你更好地控制模型的执行方式。它支持异步执行(并行运行多个推理请求)和负载均衡(在 Intel 硬件上高效分配推理工作负载)等高级功能。

要使用原生运行时,你需要导出的模型文件:一个 .xml 文件(定义网络架构)和一个 .bin 文件(存储模型训练得到的权重)。你还可以根据应用配置输入维度或预处理步骤等其他参数。

典型的部署流程包括初始化 OpenVINO 核心、为目标设备加载并编译模型、准备输入以及执行推理。有关详细示例和分步指导,请参阅 Ultralytics 官方 OpenVINO 文档,或查看 Ultralytics Academy 关于在 CPU 上运行 OpenVINO的课程。

为什么选择 Ultralytics 与 OpenVINO 的集成?#

在探索 Ultralytics 集成时,你会发现 Ultralytics Python 软件包支持将 YOLO11 模型导出为多种格式,例如 TorchScript、CoreML、TensorRT 和 ONNX。那么,为什么要选择 OpenVINO 集成?

以下是 OpenVINO 导出格式适合在 Intel 硬件上部署模型的一些原因:

  • 性能提升:在 Intel CPU 上,你可以体验最高3× 的推理加速;集成 GPU 和 NPU 还能进一步加速。
  • 无需重新训练:你可以直接将现有的 Ultralytics YOLO11 模型导出为 OpenVINO 格式,无需修改或重新训练模型。
  • 专为规模化部署而设计:同一个导出模型可以部署到低功耗边缘设备和大型云基础设施,简化可扩展的 AI 部署。

你还可以在 OpenVINO™ Model Hub 上评估 Ultralytics YOLO11 模型在多种 Intel® 平台上的性能基准测试结果。OpenVINO Model Hub为开发者提供了在 Intel 硬件上评估 AI 模型的资源,让你了解 OpenVINO 在 Intel CPU、内置 GPU、NPU 和独立显卡上的性能优势。

OpenVINO Model Hub 上 Ultralytics YOLO11 在多种 Intel 平台上的基准测试

图 5. OpenVINO™ Model Hub:Ultralytics YOLO11 模型在多种 Intel® 平台上的性能基准测试。

Ultralytics YOLO11 和 OpenVINO 导出格式的应用#

借助 OpenVINO 集成,在真实场景中将 Ultralytics YOLO11 模型部署到各种 Intel 硬件上会简单得多。

智能零售就是一个很好的例子。Ultralytics YOLO11 可以帮助实时检测空货架、跟踪哪些商品库存不足,并分析顾客在店内的移动路线。这有助于零售商改进库存管理,并优化店铺布局,从而提升顾客参与度。

同样,在智慧城市中,YOLO11 可以通过实时统计车辆、跟踪行人和检测闯红灯行为来监控交通。这些洞察有助于优化交通流、提高道路安全,并支持自动化执法系统。

使用 Ultralytics YOLO11 统计交通中的车辆

图 6. 使用 YOLO11 统计车辆数量。

另一个有趣的用例是工业检测:你可以将 Ultralytics YOLO11 部署到生产线上,自动检测缺少零件、错位或表面损坏等外观缺陷。这有助于提高效率、降低成本并改善产品质量。

使用 OpenVINO 工具套件时需要考虑的关键因素#

使用 OpenVINO 部署 Ultralytics YOLO11 模型时,请牢记以下几点,以获得最佳效果:

  • 检查硬件兼容性:确认你的 Intel 硬件(无论是 CPU、集成 GPU 还是 NPU)受 OpenVINO 支持,以确保模型高效运行。
  • 安装正确的驱动程序:如果你使用 Intel GPU 或 NPU,请确认所需的所有驱动程序均已正确安装且为最新版本。
  • 了解精度方面的权衡:OpenVINO 支持 FP32、FP16 和 INT8 模型精度,你可以在导出时通过 quantize 参数(例如 quantize="int8")选择精度。每种精度都需要在速度和准确性之间进行权衡,因此应根据性能目标和可用硬件选择合适的方案。

要点#

将 Ultralytics YOLO11 导出为 OpenVINO 格式,就能轻松地在 Intel 硬件上运行快速、高效的视觉 AI 模型。你可以将模型部署到 CPU、GPU 和 NPU 上,无需重新训练或修改代码。这是提升性能,同时保持简单易用和可扩展性的好方法。

Ultralytics Python 软件包已内置支持,因此使用 OpenVINO 导出模型和运行推理都十分简单。只需几个步骤,你就可以优化模型,并在多种 Intel 平台上运行。无论你从事智能零售、交通监控还是工业检测,这套工作流都能帮你快速、自信地从开发走向部署。

加入 YOLO 社区,并访问 Ultralytics GitHub 仓库,进一步了解 Ultralytics 支持的集成。此外,也可以查看 Ultralytics 许可选项,立即开始使用计算机视觉!

访问 OpenVINO 网站,了解用于大规模优化和部署 AI 的工具。

作者

Abirami Vina
Abirami Vina

内容创作者 · Ultralytics

Abirami Vina 职业生涯始于计算机视觉工程师,由此在视觉 AI 和机器学习领域打下了坚实基础。她是 Ultralytics 的内容创作者,也是 Scribe of AI 的创始人兼首席撰稿人,为专注 AI 的公司撰写高质量技术内容。她热衷于让 AI 更易理解、更具吸引力,通过自己的作品连接前沿技术与现实影响。

评论

提出问题、分享你的结果,或帮助其他人。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来