Zum Inhalt springen

How to Export to TF GraphDef from YOLO11 for Deployment

When you are deploying cutting-edge computer vision models, like YOLO11, in different environments, you might run into compatibility issues. Google's TensorFlow GraphDef, or TF GraphDef, offers a solution by providing a serialized, platform-independent representation of your model. Using the TF GraphDef model format, you can deploy your YOLO11 model in environments where the complete TensorFlow ecosystem may not be available, such as mobile devices or specialized hardware.

In this guide, we'll walk you step by step through how to export your Ultralytics YOLO11 models to the TF GraphDef model format. By converting your model, you can streamline deployment and use YOLO11's computer vision capabilities in a broader range of applications and platforms.

TensorFlow GraphDef

Warum solltest du auf TF GraphDef exportieren?

TF GraphDef is a powerful component of the TensorFlow ecosystem that was developed by Google. It can be used to optimize and deploy models like YOLO11. Exporting to TF GraphDef lets us move models from research to real-world applications. It allows models to run in environments without the full TensorFlow framework.

Das Format GraphDef stellt das Modell als serialisierten Berechnungsgraphen dar. Dies ermöglicht verschiedene Optimierungstechniken wie Konstantenfaltung, Quantisierung und Graphentransformationen. Diese Optimierungen sorgen für eine effiziente Ausführung, einen geringeren Speicherbedarf und eine schnellere Inferenzgeschwindigkeit.

GraphDef models can use hardware accelerators such as GPUs, TPUs, and AI chips, unlocking significant performance gains for the YOLO11 inference pipeline. The TF GraphDef format creates a self-contained package with the model and its dependencies, simplifying deployment and integration into diverse systems.

Die wichtigsten Merkmale der Modelle TF GraphDef

TF GraphDef offers distinct features for streamlining model deployment and optimization.

Hier ein Blick auf seine wichtigsten Merkmale:

  • Modellserialisierung: TF GraphDef bietet eine Möglichkeit, TensorFlow Modelle in einem plattformunabhängigen Format zu serialisieren und zu speichern. Diese serialisierte Darstellung ermöglicht es dir, deine Modelle ohne die ursprüngliche Python Codebasis zu laden und auszuführen, was die Bereitstellung erleichtert.

  • Graph-Optimierung: TF GraphDef ermöglicht die Optimierung von Berechnungsgraphen. Diese Optimierungen können die Leistung steigern, indem sie den Ausführungsablauf straffen, Redundanzen reduzieren und die Operationen an die jeweilige Hardware anpassen.

  • Flexibilität bei der Bereitstellung: Modelle, die in das Format GraphDef exportiert wurden, können in verschiedenen Umgebungen eingesetzt werden, z. B. auf Geräten mit eingeschränkten Ressourcen, in Webbrowsern und auf Systemen mit spezieller Hardware. Das eröffnet Möglichkeiten für einen breiteren Einsatz deiner TensorFlow Modelle.

  • Schwerpunkt Produktion: GraphDef ist für den Einsatz in der Produktion konzipiert. Sie unterstützt eine effiziente Ausführung, Serialisierungsfunktionen und Optimierungen, die sich an realen Anwendungsfällen orientieren.

Einsatzoptionen mit TF GraphDef

Before we dive into the process of exporting YOLO11 models to TF GraphDef, let's take a look at some typical deployment situations where this format is used.

Hier erfährst du, wie du TF GraphDef effizient über verschiedene Plattformen hinweg einsetzen kannst.

  • TensorFlow Dienen: Dieses Framework wurde entwickelt, um TensorFlow Modelle in Produktionsumgebungen einzusetzen. TensorFlow Serving bietet Modellmanagement, Versionierung und die Infrastruktur für effizientes Model-Serving in großem Maßstab. So kannst du deine GraphDef-basierten Modelle nahtlos in produktive Webservices oder APIs integrieren.

  • Mobile und eingebettete Geräte: Mit Tools wie TensorFlow Lite kannst du TF GraphDef Modelle in Formate konvertieren, die für Smartphones, Tablets und verschiedene eingebettete Geräte optimiert sind. Deine Modelle können dann für die Inferenz auf dem Gerät verwendet werden, wo sie lokal ausgeführt werden, was oft zu Leistungssteigerungen und Offline-Fähigkeiten führt.

  • Web Browsers: TensorFlow.js enables the deployment of TF GraphDef models directly within web browsers. It paves the way for real-time object detection applications running on the client side, using the capabilities of YOLO11 through JavaScript.

  • Spezialisierte Hardware: TF GraphDef ist plattformunabhängig und kann daher benutzerdefinierte Hardware, wie z. B. Beschleuniger und TPUs (Tensor Processing Units), nutzen. Diese Geräte können Leistungsvorteile für rechenintensive Modelle bieten.

Exporting YOLO11 Models to TF GraphDef

You can convert your YOLO11 object detection model to the TF GraphDef format, which is compatible with various systems, to improve its performance across platforms.

Installation

Um das benötigte Paket zu installieren, führe es aus:

Installation

# Install the required package for YOLO11
pip install ultralytics

For detailed instructions and best practices related to the installation process, check our Ultralytics Installation guide. While installing the required packages for YOLO11, if you encounter any difficulties, consult our Common Issues guide for solutions and tips.

Verwendung

Before diving into the usage instructions, it's important to note that while all Ultralytics YOLO11 models are available for exporting, you can ensure that the model you select supports export functionality here.

Verwendung

from ultralytics import YOLO

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

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo11n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")

# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF GraphDef format
yolo export model=yolo11n.pt format=pb  # creates 'yolo11n.pb'

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

Weitere Details zu den unterstützten Exportoptionen findest du auf der Ultralytics Dokumentationsseite zu den Bereitstellungsoptionen.

Deploying Exported YOLO11 TF GraphDef Models

Once you've exported your YOLO11 model to the TF GraphDef format, the next step is deployment. The primary and recommended first step for running a TF GraphDef model is to use the YOLO("model.pb") method, as previously shown in the usage code snippet.

Weitere Informationen zum Einsatz deiner TF GraphDef Modelle findest du in den folgenden Ressourcen:

  • TensorFlow Serving: A guide on TensorFlow Serving that teaches how to deploy and serve machine learning models efficiently in production environments.

  • TensorFlow Lite: Auf dieser Seite wird beschrieben, wie du mit TensorFlow Lite Modelle für maschinelles Lernen in ein Format konvertierst, das für Inferenzen auf dem Gerät optimiert ist.

  • TensorFlow.js: Ein Leitfaden zur Modellkonvertierung, der zeigt, wie man TensorFlow oder Keras-Modelle in das TensorFlow.js-Format konvertiert, um sie in Webanwendungen zu verwenden.

Zusammenfassung

In this guide, we explored how to export Ultralytics YOLO11 models to the TF GraphDef format. By doing this, you can flexibly deploy your optimized YOLO11 models in different environments.

Weitere Einzelheiten zur Verwendung findest du in der offiziellen DokumentationTF GraphDef .

For more information on integrating Ultralytics YOLO11 with other platforms and frameworks, don't forget to check out our integration guide page. It has great resources and insights to help you make the most of YOLO11 in your projects.

FAQ

How do I export a YOLO11 model to TF GraphDef format?

Ultralytics YOLO11 models can be exported to TensorFlow GraphDef (TF GraphDef) format seamlessly. This format provides a serialized, platform-independent representation of the model, ideal for deploying in varied environments like mobile and web. To export a YOLO11 model to TF GraphDef, follow these steps:

Verwendung

from ultralytics import YOLO

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

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo11n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")

# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF GraphDef format
yolo export model="yolo11n.pt" format="pb"  # creates 'yolo11n.pb'

# Run inference with the exported model
yolo predict model="yolo11n.pb" source="https://ultralytics.com/images/bus.jpg"

Weitere Informationen zu den verschiedenen Exportoptionen findest du in der Ultralytics Dokumentation zum Modellexport.

What are the benefits of using TF GraphDef for YOLO11 model deployment?

Exporting YOLO11 models to the TF GraphDef format offers multiple advantages, including:

  1. Plattformunabhängigkeit: TF GraphDef bietet ein plattformunabhängiges Format, so dass die Modelle in verschiedenen Umgebungen eingesetzt werden können, z. B. auf mobilen Geräten und in Webbrowsern.
  2. Optimierungen: Das Format ermöglicht verschiedene Optimierungen wie Konstantenfaltung, Quantisierung und Graphenumwandlung, die die Ausführungseffizienz erhöhen und den Speicherverbrauch reduzieren.
  3. Hardware-Beschleunigung: Modelle im Format TF GraphDef können Hardware-Beschleuniger wie GPUs, TPUs und KI-Chips zur Leistungssteigerung nutzen.

Mehr über die Vorteile erfährst du im AbschnittTF GraphDef in unserer Dokumentation.

Why should I use Ultralytics YOLO11 over other object detection models?

Ultralytics YOLO11 offers numerous advantages compared to other models like YOLOv5 and YOLOv7. Some key benefits include:

  1. State-of-the-Art Performance: YOLO11 provides exceptional speed and accuracy for real-time object detection, segmentation, and classification.
  2. Benutzerfreundlichkeit: Eine benutzerfreundliche API für das Training, die Validierung, die Vorhersage und den Export des Modells macht es sowohl für Anfänger als auch für Experten zugänglich.
  3. Breite Kompatibilität: Unterstützt mehrere Exportformate, darunter ONNX, TensorRT, CoreML und TensorFlow, für vielseitige Einsatzmöglichkeiten.

Explore further details in our introduction to YOLO11.

How can I deploy a YOLO11 model on specialized hardware using TF GraphDef?

Once a YOLO11 model is exported to TF GraphDef format, you can deploy it across various specialized hardware platforms. Typical deployment scenarios include:

  • TensorFlow Serving: Nutze TensorFlow Serving für eine skalierbare Modellbereitstellung in Produktionsumgebungen. Es unterstützt die Modellverwaltung und effizientes Serving.
  • Mobile Geräte: Konvertiere TF GraphDef Modelle in TensorFlow Lite, das für mobile und eingebettete Geräte optimiert ist und On-Device-Inferenz ermöglicht.
  • Webbrowser: Setze Modelle mit TensorFlow.js für die clientseitige Inferenz in Webanwendungen ein.
  • KI-Beschleuniger: Nutze TPUs und benutzerdefinierte KI-Chips für beschleunigte Inferenzen.

Ausführliche Informationen findest du im Abschnitt Einsatzoptionen.

Where can I find solutions for common issues while exporting YOLO11 models?

For troubleshooting common issues with exporting YOLO11 models, Ultralytics provides comprehensive guides and resources. If you encounter problems during installation or model export, refer to:

These resources should help you resolve most issues related to YOLO11 model export and deployment.


📅 Created 6 months ago ✏️ Updated 7 days ago

Kommentare