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

导出和优化 Ultralytics YOLOv8 以在 Intel OpenVINO 上进行推理

Nuvola Ladi

2 分钟阅读

2024 年 5 月 24 日

使用 OpenVINO 优化您的 Ultralytics YOLOv8 模型以进行推理。 请按照我们的指南将 PyTorch 模型转换为 ONNX 并对其进行优化,以用于实时应用程序。

在这篇博文中,我们将了解如何导出和优化您的预训练或自定义训练的Ultralytics YOLOv8模型,以便使用 OpenVINO 进行推理。 如果您使用的是基于 Intel 的系统(无论是 CPU 还是 GPU),本指南将向您展示如何以最小的努力显着加快您的模型速度。

为什么要使用 OpenVINO 优化 YOLOv8?

使用OpenVINO优化您的 YOLOv8 模型可以在推理任务上提供高达 3 倍的速度提升,特别是如果您运行的是 Intel CPU。 这种性能提升可以在实时应用中产生巨大的差异,从目标检测分割和安全系统。

导出和优化 YOLOv8 模型的步骤

了解该过程

首先,让我们分解一下这个过程。我们将把 PyTorch 模型转换为 ONNX 格式,然后使用 OpenVINO 进行优化。这个过程包括几个简单的步骤,可以应用于各种模型和格式,包括 TensorFlow、PyTorch、Caffe 和 ONNX。

导出模型

查阅 Ultralytics 文档,我们发现导出 YOLOv8 模型需要使用 Ultralytics 框架中的 export 方法。此方法允许我们将模型从 PyTorch 转换为 ONNX 格式,最后针对 OpenVINO 进行优化。最终得到的模型运行速度会显著提高,充分利用了英特尔强大的硬件性能。

安装依赖项

在运行导出脚本之前,您需要确保已安装所有必要的依赖项,包括 Ultralytics 库、ONNX 和 OpenVINO。通过 Python 包安装程序 pip 可以轻松安装这些包。

运行导出脚本

环境设置完成后,即可运行导出脚本。此脚本会将您的 PyTorch 模型转换为 ONNX 格式,然后再转换为 OpenVINO 格式。此过程非常简单,只需调用一个函数即可处理导出。Ultralytics 框架可以轻松转换和优化您的模型,确保您以最小的代价获得最佳性能。

__wf_reserved_inherit
图 1. Nicolai Nielsen 概述了如何运行导出脚本。

性能对比

导出后,务必对比原始模型和优化模型的性能。通过对两个模型的推理时间进行基准测试,您可以清楚地看到性能提升。通常,与原始 PyTorch 模型相比,OpenVINO 模型在推理时间上会有显著减少。对于较大的模型,性能提升尤为明显。

实际应用和优势

对于需要实时处理的应用,使用 OpenVINO 优化 YOLOv8 模型尤其有益。以下是一些示例:

  • 安全系统:实时目标检测可以立即提醒安保人员,从而提高安全性和响应速度。
  • 自动驾驶车辆: 更快的推理速度可以提高自动驾驶系统的响应速度,使其更安全、更可靠。
  • 医疗保健: 用于诊断工具的快速图像处理可以通过提供更快的结果来挽救生命,从而实现及时的干预。

通过实施这些优化,您不仅可以提高性能,还可以提高应用程序的可靠性和效率。这可以带来更好的用户体验、更高的生产力和更具创新性的解决方案。

总结

导出 YOLOv8 模型并使用 OpenVINO 进行优化,是利用英特尔硬件实现更快、更高效的 AI 应用的强大方法。只需几个简单的步骤,您就可以改变模型的性能,并有效地将其应用于实际场景。

请务必查看 Ultralytics 的更多教程和指南,以不断增强您的 AI 项目。访问我们的 GitHub 仓库 并加入 Ultralytics 社区,以获取更多见解和更新。让我们一起创新!

请记住,优化模型不仅仅是为了提高速度,更是为了释放新的可能性,并确保您的 AI 解决方案是稳健、高效且面向未来的。 

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

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

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