深圳Yolo 视觉
深圳
立即加入

导出并优化Ultralytics YOLOv8 ,以便在Intel OpenVINO上进行推理

Nuvola Ladi

2 分钟阅读

2024 年 5 月 24 日

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

在这篇博文中,我们将介绍如何导出和优化预训练或自定义训练的 Ultralytics YOLOv8模型进行 推理。如果您使用的是Intel系统,无论是CPU 还是GPU,本指南将向您展示如何以最小的代价大幅提高模型的速度。

为什么使用OpenVINO 优化YOLOv8 ?

使用YOLOv8 优化您的YOLOv8 模型 OpenVINO可以将推理任务的速度提高 3 倍,尤其是在使用Intel CPU情况下。这种性能提升可以在实时应用(从物体检测分割和安全系统)中发挥巨大作用。

导出和优化YOLOv8 模型的步骤

了解该过程

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

导出模型

跳转到Ultralytics 文档,我们发现导出YOLOv8 模型需要使用Ultralytics 框架中的导出方法。通过这种方法,我们可以将模型从PyTorch 转换为 ONNX,最后再针对OpenVINO 进行优化。这样,利用Intel的强大硬件,模型的运行速度明显加快。

安装依赖项

运行导出脚本前,需要确保安装了所有必要的依赖项。其中包括Ultralytics 库、ONNX 和OpenVINO。安装这些软件包的过程很简单,可以通过Python 软件包安装程序 pip 完成。

运行导出脚本

环境设置完成后,就可以运行导出脚本了。该脚本将把PyTorch 模型转换为ONNX ,然后再转换为OpenVINO。这个过程非常简单,只需调用一个函数即可完成导出。Ultralytics 框架可以轻松转换和优化模型,确保您以最少的麻烦获得最佳性能。

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

性能对比

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

实际应用和优势

使用OpenVINO 优化YOLOv8 模型对需要实时处理的应用特别有益。下面是几个例子:

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

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

总结

为OpenVINO 导出和优化YOLOv8 模型是利用Intel 硬件实现更快、更高效的人工智能应用的有力方法。只需几个简单的步骤,您就可以改变模型的性能,并将其有效地应用到实际场景中。

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

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

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

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

免费开始