YOLO Vision 2026:
集成

使用 ExecuTorch 集成部署 Ultralytics YOLO 模型

探索如何将 Ultralytics YOLO 模型(如 Ultralytics YOLO11)导出为 ExecuTorch 格式,以便在边缘和移动设备上进行高效的 PyTorch 原生部署。

ABAbirami Vina5 min read
通过 ExecuTorch 集成部署 Ultralytics YOLO 模型

某些computer vision应用程序,例如自动化质量检测、自主无人机或智能安全系统,在像Ultralytics YOLO11这样的Ultralytics YOLO模型在靠近捕获图像的传感器运行时代性能最佳。换句话说,这些模型需要在数据生成的地方——摄像头、无人机或嵌入式系统上——直接处理数据,而不是将其发送到云端。

这种方法被称为edge AI,它使模型能够在捕获数据的设备上直接执行推理。通过在本地处理信息而不是依赖远程服务器,系统即使在互联网连接有限或没有互联网连接的环境中也能实现更低的延迟、增强的数据隐私和更高的可靠性。

例如,每分钟检查数千个产品的制造摄像头,或在复杂环境中导航的无人机,都无法承受云端处理带来的延迟。直接在设备上运行Ultralytics YOLO11可以实现即时的端侧推理。

为了让在边缘运行Ultralytics YOLO模型更简单、更高效,由Ultralytics支持的新ExecuTorch integration提供了一种简化模型导出和直接部署到移动和嵌入式设备的方法。ExecuTorch是PyTorch Edge生态系统的一部分,提供了一个端到端的解决方案,用于直接在移动和边缘硬件(包括手机、可穿戴设备、嵌入式板卡和微控制器)上运行AI模型。

这一集成让你可以轻松地将 Ultralytics YOLO 模型(如 YOLO11)从训练阶段过渡到边缘设备部署。通过结合 YOLO11 的视觉能力与 ExecuTorch 的轻量级运行时及 PyTorch 导出管道,用户可以部署在边缘硬件上高效运行的模型,同时保留基于 PyTorch 推理的准确性和性能。

在本文中,我们将深入了解 ExecuTorch 集成的工作原理、它为何非常适合边缘 AI 应用,以及你该如何开始使用 ExecuTorch 部署 Ultralytics YOLO 模型。让我们开始吧!

什么是 ExecuTorch?#

通常,当你使用 PyTorch 训练模型时,它会在云端的强大服务器或图形处理单元 (GPU) 上运行。然而,将同一个模型部署到手机、无人机或微控制器等移动或嵌入式设备时,需要一种能够处理有限计算能力、内存和连接性的专门解决方案。

这正是 ExecuTorch 的作用所在。ExecuTorch 是作为 PyTorch Edge 生态系统的一部分开发的端到端解决方案,支持在移动、嵌入式和边缘平台进行高效的设备端推理。它将 PyTorch 的能力扩展到云端之外,让 AI 模型可以直接在本地设备上运行。

将 PyTorch 推理引入边缘#

其核心是,ExecuTorch 提供了一个轻量级的 C++ 运行时,允许 PyTorch 模型直接在设备上执行。ExecuTorch 使用 PyTorch ExecuTorch (.pte) 模型格式,这是一种专为更快加载、更小内存占用和更好可移植性而设计的优化导出格式。

它支持 XNNPACK 作为高效中央处理单元 (CPU) 推理的默认后端,并扩展了与多种硬件后端的兼容性,包括 CoreML、Metal、Vulkan、Qualcomm、MediaTek、Arm EthosU、OpenVINO 等。

这些后端能够在移动、嵌入式和专业边缘设备上实现优化的加速。ExecuTorch还与PyTorch导出管道集成,支持诸如quantization和动态形状处理等高级功能,以提高不同部署环境下的性能和适应性。

量化通过将高精度值(如 32 位浮点数)转换为低精度值来减小模型大小并提高推理速度,而动态形状处理则用于使模型能够高效处理可变的输入尺寸。这两个功能对于在资源受限的边缘设备上运行 AI 模型至关重要。

A look at how ExecuTorch works

图 1. ExecuTorch 工作原理概览(Source

边缘硬件的统一层#

除了运行时之外,ExecuTorch 还充当了多个硬件后端的统一抽象层。简而言之,它抽象了硬件细节,并管理模型如何与不同的处理单元交互,包括 CPU、GPU 和神经网络处理单元 (NPU)。

一旦模型导出,就可以配置 ExecuTorch 以针对给定设备最合适的后端。开发者无需编写特定设备的自定义代码或维护单独的转换工作流,即可在多样化的硬件上高效部署模型。

由于其模块化、可移植的设计和无缝的 PyTorch 集成,ExecuTorch 是将 Ultralytics YOLO11 等计算机视觉模型部署到移动和嵌入式系统的绝佳选择。它弥合了模型训练与实际部署之间的差距,使边缘 AI 变得更快、更高效且更易于实施。

ExecuTorch 的主要特点#

在我们了解如何将 Ultralytics YOLO 模型导出为 ExecuTorch 格式之前,先来看看是什么让 ExecuTorch 成为部署边缘 AI 的可靠选择。

以下是其部分主要特点:

  • 量化支持: ExecuTorch 支持模型量化,这是一种将高精度值转换为低精度值以减小模型大小并加速推理的技术。这有助于模型在边缘设备上更快运行并消耗更少内存,同时保持几乎相同的准确度。
  • 内存高效利用: ExecuTorch 的最大优势之一是其处理内存的方式。ExecuTorch 不依赖可能导致延迟和功耗开销的动态内存分配,而是使用预先计算 (AOT) 的内存规划。在导出过程中,它会分析模型图并预先计算每个操作所需的内存量。这使得运行时能够使用静态内存计划来执行模型,确保可预测的性能,并防止在 RAM 或处理能力受限的设备上出现减速或崩溃。
  • 内置模型元数据:在使用由 Ultralytics 支持的集成导出时,每个模型都包含一个 YAML 文件,其中包含重要的元数据,如输入图像尺寸、类别名称和配置参数。这个额外的文件简化了模型在各种应用中的集成,并确保在不同边缘平台上的行为一致。

如何将 Ultralytics YOLO 模型导出为 ExecuTorch 格式#

既然我们已经对 ExecuTorch 的优势有了更好的了解,现在让我们看看如何将 Ultralytics YOLO 模型导出为 ExecuTorch 格式。

第 1 步:安装 Ultralytics Python 软件包#

要开始使用,你需要使用作为包安装程序的 pip 安装Ultralytics Python package。你可以在终端或命令提示符中运行“pip install ultralytics”来完成此操作。

如果你在 Jupyter Notebook 或 Google Colab 环境中工作,只需在命令前加上感叹号,如 “!pip install ultralytics”。安装完成后,Ultralytics 包提供了你训练、测试和导出包括 Ultralytics YOLO11 在内的计算机视觉模型所需的所有工具。

如果在安装过程中或导出模型时遇到任何问题,官方的 Ultralytics 文档和Common Issues guide提供了详细的故障排除步骤和最佳实践,帮助你顺利上手并运行。

第 2 步:导出 Ultralytics YOLO11#

安装 Ultralytics 包后,你可以加载一个 YOLO11 模型变体并将其export到 ExecuTorch 格式。例如,你可以使用诸如“yolo11n.pt”的预训练模型,并通过调用将格式设置为“executorch”的 export 函数来导出它。

这会创建一个名为 “yolo11n_executorch_model” 的目录,其中包含优化后的模型文件 (.pte) 和一个包含图像尺寸及类别名称等重要信息的独立元数据 YAML 文件。

以下是导出模型的代码:

from ultralytics import YOLO

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

第 3 步:导出模型后运行推理#

导出后,模型即可使用 ExecuTorch 运行时部署在边缘和移动设备上。导出的 .pte 模型文件可以加载到你的应用中,无需云连接即可运行实时设备端推理。

例如,下面的代码片段展示了如何加载导出的模型并运行推理。推理简单来说就是使用训练好的模型对新数据进行预测。这里,模型是在一张来自公共 URL 的公交车图像上进行测试的。

executorch_model = YOLO("yolo11n_executorch_model")
results = executorch_model.predict("https://ultralytics.com/images/bus.jpg", save=True)

运行代码后,你将在 “runs/detect/predict” 文件夹中找到带有检测到的目标的输出图像。

使用 ExecuTorch 格式导出的 Ultralytics YOLO11 模型进行目标检测

图 2. 使用 ExecuTorch 格式导出的 Ultralytics YOLO11 模型进行目标检测。

使用 ExecuTorch 集成的好处#

在探索 Ultralytics 支持的不同导出选项时,你可能想知道是什么让 ExecuTorch 集成变得独特。关键区别在于它将性能、简洁性和灵活性结合得非常出色,使得直接在移动和边缘设备上部署强大的 AI 模型变得轻而易举。

以下是使用 ExecuTorch 集成的一些主要优势:

  • 灵活的部署选项: ExecuTorch 模型可以部署在移动应用、嵌入式系统、物联网 (IoT) 设备和专用边缘 AI 硬件上。这种灵活性使开发者能够构建可在不同平台和环境中一致执行的可扩展 AI 解决方案。
  • 经基准测试证实的性能: 在Raspberry Pi 5等设备上的测试表明,导出为ExecuTorch格式的Ultralytics YOLO11模型运行速度大约比其PyTorch对应模型快2倍,且精度几乎完全相同。
  • 灵活的集成 API: ExecuTorch 为 iOS、Android 和嵌入式 Linux 提供了 C++、Kotlin 和 Objective-C API,允许开发者将 YOLO 模型直接集成到原生应用中。
  • 硬件加速支持: ExecuTorch 支持多种硬件加速后端,包括用于移动 GPU 的 Vulkan 和 Metal,并可选集成 OpenCL 和其他供应商特定的 API。它还可以利用 NPU 和 DSP 等专用加速器,实现比仅使用 CPU 推理显著的提速。

Ultralytics YOLO11 和 ExecuTorch 导出的实际应用#

最近,Ultralytics 被评为PyTorch ExecuTorch success story,突显了我们对设备端推理的早期支持以及对 PyTorch 生态系统的持续贡献。这一认可反映了一个共同的目标:让高性能 AI 在移动和边缘平台上更容易获得。

从云端到边缘:ExecuTorch 与 Ultralytics YOLO11 如何让视觉 AI 焕发活力#

实际上,这表现为从智能手机到嵌入式系统等各种设备上高效运行的真实视觉 AI 解决方案。例如,在制造业中,边缘设备在实时监控生产线和检测缺陷方面发挥着至关重要的作用。

使用 Ultralytics YOLO11 分析制造装配线

图 3. 使用 Ultralytics YOLO11 分析制造装配线的示例。(来源)

ExecuTorch集成使Ultralytics YOLO11模型能够直接在本地硬件上运行,而无需将图像或传感器数据发送到云端进行处理(这可能会引入延迟并依赖互联网连接)。这意味着工厂可以即时检测质量问题、减少停机时间并维护数据隐私,同时在计算资源有限的情况下运行。

以下是 ExecuTorch 集成和 Ultralytics YOLO 模型如何被应用的几个其他示例:

  • 智慧城市: 通过使用ExecuTorch在本地运行Ultralytics YOLO11模型,城市可以做出更快、基于数据的决策,从检测交通拥堵到识别危险,从而改善整体出行和安全。
  • 零售与仓储: 通过设备端推理,零售商可以自动化货架监控、追踪库存并快速安全地检查包裹,而无需依赖云连接。
  • Robotics and drones 经过边缘优化的Ultralytics YOLO11模型使机器人和无人机即使在没有网络连接的情况下也能识别物体、导航环境并做出实时决策。

Detecting and counting cars in traffic using Ultralytics YOLO11

图 4. 使用 YOLO11 检测和统计交通中的汽车(Source

关键要点#

将 Ultralytics YOLO 模型导出为 ExecuTorch 格式,可以轻松地将计算机视觉模型部署到许多设备上,包括智能手机、平板电脑和 Raspberry Pi 等嵌入式系统。这意味着可以在不依赖云连接的情况下运行优化的设备端推理,从而提高了速度、隐私性和可靠性。

除了 ExecuTorch,Ultralytics 还支持多种集成,包括 TensorRT、OpenVINO、CoreML 等,为开发者提供了跨平台运行模型的灵活性。随着视觉 AI 的普及,这些集成简化了构建在现实条件下高效运行的智能系统的部署。

对 AI 感兴趣?查看我们的GitHub repository,加入our community,并探索我们的licensing options来启动你的视觉 AI 项目。访问我们的解决方案页面,了解更多关于AI in retailcomputer vision in logistics等创新的信息。

Explore solutions

Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多
Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多
Real-time AI that works with your team

机器人技术中的 AI

使用 Ultralytics YOLO 模型为智能机器赋能。机器人技术中的视觉 AI 可推动自主导航、感知、物体跟踪和实时控制。
了解更多
Real-time AI that works with your team

物流中的 AI

使用 Ultralytics YOLO 模型简化物流。视觉 AI 可实现包裹检查、分拣、车辆跟踪和实时仓库安全监控。
了解更多
Real-time AI that works with your team

零售业 AI

使用 Ultralytics YOLO 模型重塑零售业。视觉 AI 推动库存跟踪、货架监控、队列管理和更智能的客户洞察。
了解更多
Real-time AI that works with your team

医疗保健中的 AI

利用 Ultralytics YOLO 模型构建医疗保健解决方案。医疗保健中的视觉 AI 可助力更快速的医学影像分析、更智能的诊断和患者监测。
了解更多
Real-time AI that works with your team

制造业中的 AI

使用 Ultralytics YOLO 模型优化制造业。视觉 AI 推动质量控制、缺陷检测、PPE 合规性和装配线自动化。
了解更多
Real-time AI that works with your operation

汽车中的 AI

将计算机视觉应用于汽车行业,并配合 Ultralytics YOLO 模型。汽车视觉 AI 可提升道路安全、辅助驾驶和车辆自动化,打造更智能的道路。
了解更多
Real-time AI tailored to your operation

农业中的 AI

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。赋能作物监测、牲畜追踪和精准农业,实现更高、更智能的产量。
了解更多

让我们一起构建 AI 的未来!

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