深圳Yolo 视觉
深圳
立即加入

使用PaddlePaddle 集成导出Ultralytics YOLO11

了解如何使用PaddlePaddle 导出Ultralytics YOLO11 等Ultralytics YOLO11 模型,以便在边缘、移动和云平台上高效部署。

借助Ultralytics扩展您的计算机视觉项目

开始使用

随着人工智能 (AI) 的发展,机器在理解周围世界方面做得越来越好。推动这一进展的一个关键领域是计算机视觉,它是 AI 的一个分支,使机器能够根据视觉数据进行解释和决策。

从帮助汽车识别交通标志到检查零售店的货架,计算机视觉现在是许多日常工具的一部分。这些任务依赖于视觉 AI 模型,这些模型可以快速扫描照片或视频并识别重要的内容。

随着时间的推移,这些模型变得更快、更准确,在农业、医疗保健、安全和零售等领域大有用武之地。例如 Ultralytics YOLO11就是一个用于快速、精确地处理一系列计算机视觉任务的模型。它可以对物体进行detect 和classify ,track 运动track ,并估计身体姿势。

将计算机视觉从研究转化为实际应用的一个重要部分是部署。 一旦模型经过训练,下一步就是在手机、边缘硬件或云服务器等设备上运行它。 

图 1. 模型部署是任何计算机视觉项目的关键环节。

为了支持这一点,Ultralytics YOLO 模型(如YOLO11 )可以根据目标平台导出为各种格式。其中一种格式是PaddlePaddle,它是一个开源的人工智能框架,可以在各种设备和系统上实现高效的模型部署和推理。

在本文中,我们将探讨如何通过Ultralytics 支持的PaddlePaddle 集成来导出Ultralytics YOLO11 ,从而实现在各种平台上的高效部署。

什么是PaddlePaddle? 

在研究环境之外部署人工智能模型,比如在移动设备或边缘硬件上部署,有时会很棘手,尤其是当你需要它们高效运行并使用最少的资源时。PaddlePaddle 是一个深度学习框架,旨在帮助实现这一目标。

PaddlePaddle 是一个中文开源平台,其名称代表并行分布式深度学习(Parallel Distributed Deep Learning)。PaddlePaddle 由以人工智能和软件基础架构著称的百度公司开发,专门用于实际应用,而不仅仅是研究。

开发人员可以在服务器、边缘设备甚至移动硬件上运行PaddlePaddle 格式的模型。它还支持简化人工智能开发的工具,包括低代码和无代码选项。该平台拥有一个由 470 多万用户组成的强大的开发者社区,被广泛应用于医疗保健、农业、制造和金融等多个行业。

PaddlePaddle的主要功能

以下是帮助PaddlePaddle 在实际设备上更高效地运行模型的一些关键功能:

  • 動態到靜態圖轉換:此功能將靈活的模型轉換為運作更順暢且可預測的固定版本。 固定模型在進行預測時更容易優化且速度更快。
  • 操作员融合: PaddlePaddle 可以将模型中的多个步骤合并为一个步骤。这可以减少模型使用的内存,并帮助其更快地运行。想想看,这就像把多个任务合并成一个动作,以节省时间。
  • 量化 (Quantization) 这通过使用更简单的数字(例如四舍五入到更少的位数)来缩小模型尺寸。它有助于模型在功率有限的设备(如手机或智能相机)上运行,而不会损失太多精度。
图 2.使用PaddlePaddle 的优势。图片由作者提供。

使用PaddlePaddle部署YOLO11 的概述

Ultralytics 支持的PaddlePaddle 集成使从培训到部署变得更加容易。已经使用PaddlePaddle 工具的开发人员可以更轻松地将YOLO11 纳入他们的工作流程。

Ultralytics Python 软件包支持将YOLO11 模型直接导出为PaddlePaddle 格式,使开发人员无需额外工具或手动转换步骤即可部署训练有素的模型。 

导出过程可以使用命令行或Python 代码完成,因此开发人员可以选择最适合其工作流程的方法。这有助于保持简单,减少出现设置问题的几率。模型导出后,可用于对象检测、图像分类、姿势估计 和实例分割等计算机视觉任务

对于设备内存有限或需要快速处理的部署场景,它是一个不错的选择。导出的模型经过优化,即使在资源受限的系统上也能高效运行。 

如何将YOLO11 模型导出为PaddlePaddle 格式

只需几步就可将YOLO11 输出为PaddlePaddle 模型格式。

第一步是使用 "pip "之类的软件包管理器安装Ultralytics Python 软件包。在命令提示符或终端运行 "pip installultralytics"命令即可开始安装。

Ultralytics 软件包为一系列计算机视觉任务提供了训练、评估、微调、输出和部署模型的工具。如果在安装过程中遇到任何问题,请查看常见问题指南,了解故障排除技巧。

环境设置完成后,您可以加载并导出预先训练好YOLO11 模型,例如 "yolo11n.pt",如下图所示。您也可以导出自己自定义训练的YOLO11 模型。

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="paddle")

将模型转换为PaddlePaddle 格式后,就可以在不同类型的硬件上进行各种部署。

例如,在下面的示例中,我们正在加载一个导出为PaddlePaddle 格式的YOLO11 模型,并用它进行预测。这个过程被称为运行推理,简单来说就是使用模型分析新数据。在这里,我们使用两只狗的图像对其进行测试。

paddle_model = YOLO("./yolo11n_paddle_model")

paddle_model("https://images.pexels.com/photos/33287/dog-viszla-close.jpg", save=True)

运行代码后,包含模型预测结果的输出图像将自动保存在 "runs/detect/predict "文件夹中。

图 3.使用导出的YOLO11 模型detect 图像中的物体。图片由作者提供。

使用PaddlePaddle 框架部署YOLO11

PaddlePaddle 提供多种部署工具,每种工具都适合不同的设备和使用案例,如云环境、嵌入式系统和网络应用。以下是一些主要的部署选项

  • Paddle Serving: 它有助于将模型部署为 REST API,使其成为需要版本控制和在线测试等功能的云或服务器环境的理想选择。
  • PaddleInference API:
  • Paddle Lite: 它专为在移动设备、平板电脑和嵌入式系统上进行轻量级部署而设计。 它针对较小的模型进行了优化,并可在资源有限的硬件上实现更快的推理。
  • Paddle.js: 它允许您使用 WebGL 和 WebAssembly 等技术在 Web 浏览器中运行 AI 模型,这对于交互式演示和基于浏览器的工具非常有用。
图 4.PaddlePaddle 支持的部署选项。图片由作者提供。

选择适合您设置的工具后,您就可以加载导出的模型。PaddlePaddle 引擎会负责接下来的步骤。它会加载模型、处理输入图像并返回结果。

什么时候应该选择PaddlePaddle 集成?

Ultralytics Python 软件包还支持其他各种导出格式,因此你可能会问,什么时候选择PaddlePaddleUltralytics 合适?PaddlePaddle 什么时候是正确的选择?

当你希望在资源有限的设备(如智能手机、嵌入式系统或边缘硬件)上部署模型时,PaddlePaddle 是一个可靠的选择。它也非常适合需要快速、高效性能的实时应用,如移动应用中的物体检测、智能摄像头中基于视觉的监控,或在没有云支持的情况下直接在设备上运行的姿势估计 。

除此之外,如果项目需要离线运行或在低连接性环境中运行,可以考虑使用PaddlePaddle 集成。制造业中的视觉检测工具、用于现场勘测的手持设备或支持人工智能的零售扫描仪等应用,都可以受益于PaddlePaddle的轻量级运行时间和灵活的部署选项。 

需要考虑的PaddlePaddle 限制

虽然PaddlePaddle 提供了有趣的部署功能,但也有一些限制因素需要注意:

  • 较小的全球社区: 在中国以外,用户和贡献者群体相对较小。这可能会使寻找社区支持、已解决的 GitHub 问题或 Stack Overflow 答案变得更加困难。
  • 非百度工具的学习曲线较长:PaddlePaddle 可与百度生态系统顺利集成,但在此背景之外使用它可能需要额外的配置和设置步骤。
  • 与主流 ML 工具的集成较少:PaddlePaddle 与Hugging Face Transformers、MLflow 或Kubernetes 原生 AI 服务等常用工具的兼容性有限。

主要要点

Ultralytics 支持的PaddlePaddle 集成可以轻松地在各种设备上导出和部署YOLO11 模型。对于需要在设备上实现高效性能的项目(如移动应用程序、智能相机或嵌入式系统),它尤其有用。

只需几个步骤,您就可以将强大的视觉模型带入现实世界的应用中。随着计算机视觉技术的不断进步,像YOLO 和PaddlePaddle 这样的工具使得构建从消费设备到工业工具的快速智能系统变得前所未有的简单。

立即加入我们不断壮大的社区!通过探索我们的GitHub 仓库,更深入地了解人工智能。想要构建您自己的计算机视觉项目吗?探索我们的许可选项。访问我们的解决方案页面,了解医疗保健领域中的计算机视觉如何提高效率,并探索人工智能在零售业的影响!

让我们携手共创人工智能的未来!

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