跳转至内容

学习如何将YOLO11模型导出为TFLite Edge TPU格式。

在计算能力有限的设备(如移动或嵌入式系统)上部署计算机视觉模型可能很棘手。使用针对更快性能优化的模型格式可以简化此过程。TensorFlow LiteEdge TPU 或 TFLite Edge TPU 模型格式旨在以最小的功耗为神经网络提供快速性能。

导出到 TFLite Edge TPU 格式的功能允许您优化 Ultralytics YOLO11 模型,以实现高速、低功耗的推理。在本指南中,我们将引导您将模型转换为 TFLite Edge TPU 格式,从而使您的模型更容易在各种移动和嵌入式设备上表现出色。

为什么你应该导出到TFLite Edge TPU?

将模型导出到 TensorFlow Edge TPU 可以使 机器学习 任务快速高效。这项技术适用于功率、计算资源和连接性有限的应用。Edge TPU 是 Google 提供的硬件加速器,可加速边缘设备上的 TensorFlow Lite 模型。下图显示了所涉及过程的示例。

TFLite Edge TPU

Edge TPU 适用于量化模型。量化使模型更小、更快,而不会损失太多准确性。它非常适合边缘计算的有限资源,通过减少延迟并允许在本地快速处理数据而无需云依赖性,从而使应用程序能够快速响应。本地处理还可以保护用户数据的隐私和安全,因为它不会发送到远程服务器。

TFLite Edge TPU 的主要特性

以下是使TFLite Edge TPU成为开发者优秀模型格式选择的关键特性:

  • 边缘设备上的优化性能: TFLite Edge TPU 通过量化、模型优化、硬件加速和编译器优化,实现了高速神经网络性能。其极简架构有助于实现更小的尺寸和更高的成本效益。

  • 高计算吞吐量:TFLite Edge TPU结合了专用硬件加速和高效运行时执行,以实现高计算吞吐量。它非常适合在边缘设备上部署具有严格性能要求的机器学习模型。

  • 高效矩阵计算: TensorFlow Edge TPU 针对矩阵运算进行了优化,这对于神经网络计算至关重要。这种效率是机器学习模型的关键,特别是那些需要大量复杂矩阵乘法和变换的模型。

使用TFLite Edge TPU的部署选项

在我们深入了解如何将 YOLO11 模型导出到 TFLite Edge TPU 格式之前,让我们先了解 TFLite Edge TPU 模型通常用于何处。

TFLite Edge TPU 为机器学习模型提供了多种部署选项,包括:

  • 设备端部署:TensorFlow Edge TPU模型可以直接部署到移动和嵌入式设备上。设备端部署允许模型直接在硬件上执行,通过将模型嵌入到应用程序包中或按需下载,从而消除了对云连接的需求。

  • 使用云 TensorFlow TPU 进行边缘计算: 在边缘设备处理能力有限的情况下,TensorFlow Edge TPU 可以将推理任务卸载到配备 TPU 的云服务器上。

  • 混合部署:混合方法结合了设备端和云端部署,为部署机器学习模型提供了一种通用且可扩展的解决方案。优点包括用于快速响应的设备端处理和用于更复杂计算的云计算

将 YOLO11 模型导出到 TFLite Edge TPU

通过将 YOLO11 模型转换为 TensorFlow Edge TPU,您可以扩展模型的兼容性和部署灵活性。

安装

要安装所需的软件包,请运行:

安装

# Install the required package for YOLO11
pip install ultralytics

有关安装过程的详细说明和最佳实践,请查看我们的 Ultralytics 安装指南。如果在为 YOLO11 安装所需软件包时遇到任何困难,请查阅我们的 常见问题指南以获取解决方案和提示。

用法

所有Ultralytics YOLO11 模型都设计为支持开箱即用的导出,从而可以轻松地将其集成到您首选的部署工作流程中。您可以查看支持的导出格式和配置选项的完整列表,以选择最适合您应用程序的设置。

用法

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

导出参数

参数类型默认值描述
formatstr'edgetpu'导出模型的目标格式,定义与各种部署环境的兼容性。
imgszinttuple640模型输入的所需图像大小。 可以是正方形图像的整数或元组 (height, width) 用于指定特定维度。
devicestrNone指定导出设备:CPU(device=cpu)。

提示

导出到 EdgeTPU 时,请确保使用 x86 Linux 机器。

有关导出过程的更多详细信息,请访问Ultralytics 文档页面上的导出

部署导出的 YOLO11 TFLite Edge TPU 模型

成功将您的 Ultralytics YOLO11 模型导出为 TFLite Edge TPU 格式后,您现在可以部署它们。运行 TFLite Edge TPU 模型的主要且推荐的第一步是使用 YOLO("model_edgetpu.tflite") 方法,如之前的用法代码片段中所述。

然而,有关部署您的TFLite Edge TPU模型的深入说明,请查阅以下资源:

总结

在本指南中,我们学习了如何将Ultralytics YOLO11模型导出为TFLite Edge TPU格式。通过遵循上述步骤,您可以提高您的计算机视觉应用程序的速度和性能。

有关使用详情,请访问 Edge TPU 官方网站

此外,有关其他 Ultralytics YOLO11 集成的更多信息,请访问我们的集成指南页面。在那里,您将发现有价值的资源和见解。

常见问题

如何将 YOLO11 模型导出为 TFLite Edge TPU 格式?

要将 YOLO11 模型导出为 TFLite Edge TPU 格式,您可以按照以下步骤操作:

用法

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

有关将模型导出为其他格式的完整详细信息,请参阅我们的导出指南

将 YOLO11 模型导出到 TFLite Edge TPU 有哪些好处?

将 YOLO11 模型导出到 TFLite Edge TPU 具有以下优势:

  • 优化性能:以最小的功耗实现高速神经网络性能。
  • 减少延迟:快速本地数据处理,无需依赖云。
  • 增强隐私:本地处理可确保用户数据的私密性和安全性。

这使其非常适合边缘计算中的应用,在边缘计算中,设备的功率和计算资源有限。了解更多关于为什么要导出的信息。

我可以在移动和嵌入式设备上部署 TFLite Edge TPU 模型吗?

是的,TensorFlow Lite Edge TPU 模型可以直接部署在移动和嵌入式设备上。这种部署方法允许模型直接在硬件上执行,从而提供更快、更高效的推理。有关集成示例,请查看我们的在 Raspberry Pi 上部署 Coral Edge TPU 的指南

TFLite Edge TPU 模型有哪些常见的用例?

TFLite Edge TPU 模型的常见用例包括:

  • 智能相机:增强实时图像和视频分析。
  • 物联网设备: 实现智能家居和工业自动化。
  • 医疗保健: 加速医学影像和诊断。
  • 零售业: 改善库存管理和客户行为分析。

这些应用受益于 TFLite Edge TPU 模型的高性能和低功耗。了解更多关于使用场景的信息。

在导出或部署 TFLite Edge TPU 模型时,如何排查问题?

如果在导出或部署 TFLite Edge TPU 模型时遇到问题,请查阅我们的常见问题指南以获取故障排除技巧。本指南涵盖了常见问题和解决方案,以帮助您确保顺利运行。如需额外支持,请访问我们的帮助中心



📅 1 年前创建 ✏️ 1 个月前更新
glenn-jocherlakshanthadUltralyticsAssistantMatthewNoyceRizwanMunawarBurhan-Qabirami-vina

评论