Comment exporter vers TF GraphDef depuis YOLO26 pour le déploiement#
Lorsque tu déploies des modèles de vision par ordinateur de pointe, comme YOLO26, dans différents environnements, tu peux rencontrer des problèmes de compatibilité. Le TensorFlow GraphDef de Google, ou TF GraphDef, offre une solution en fournissant une représentation sérialisée et indépendante de la plateforme de ton modèle. En utilisant le format de modèle TF GraphDef, tu peux déployer ton modèle YOLO26 dans des environnements où l'écosystème TensorFlow complet n'est pas disponible, comme les appareils mobiles ou le matériel spécialisé.
Dans ce guide, nous allons te montrer étape par étape comment exporter tes modèles Ultralytics YOLO26 vers le format de modèle TF GraphDef. En convertissant ton modèle, tu peux simplifier le déploiement et utiliser les capacités de vision par ordinateur de YOLO26 dans un éventail plus large d'applications et de plateformes.
Pourquoi exporter vers TF GraphDef ?#
TF GraphDef est un composant puissant de l'écosystème TensorFlow, développé par Google. Il peut être utilisé pour optimiser et déployer des modèles comme YOLO26. L'exportation vers TF GraphDef te permet de faire passer des modèles de la recherche aux applications concrètes. Elle permet aux modèles de s'exécuter dans des environnements dépourvus du framework TensorFlow complet.
Le format GraphDef représente le modèle sous la forme d'un graphe de calcul sérialisé. Cela permet d'appliquer différentes techniques d'optimisation, comme le repliement des constantes, la quantification et les transformations de graphe. Ces optimisations garantissent une exécution efficace, une consommation mémoire réduite et des vitesses d'inférence accrues.
Les modèles GraphDef peuvent utiliser des accélérateurs matériels tels que les GPU, les TPU et les puces d'IA, ce qui permet d'obtenir des gains de performances considérables pour le pipeline d'inférence de YOLO26. Le format TF GraphDef crée un paquet autonome contenant le modèle et ses dépendances, ce qui simplifie le déploiement et l'intégration dans divers systèmes.
Principales fonctionnalités des modèles TF GraphDef#
TF GraphDef offre des fonctionnalités spécifiques pour simplifier le déploiement des modèles et leur optimisation.
Voici un aperçu de ses principales caractéristiques :
-
Sérialisation des modèles : TF GraphDef permet de sérialiser et de stocker les modèles TensorFlow dans un format indépendant de la plateforme. Cette représentation sérialisée te permet de charger et d'exécuter tes modèles sans le code source Python d'origine, ce qui facilite le déploiement.
-
Optimisation des graphes : TF GraphDef permet d'optimiser les graphes de calcul. Ces optimisations peuvent améliorer les performances en rationalisant le flux d'exécution, en réduisant les redondances et en adaptant les opérations au matériel ciblé.
-
Flexibilité du déploiement : les modèles exportés au format GraphDef peuvent être utilisés dans divers environnements, notamment sur des appareils aux ressources limitées, dans des navigateurs web et sur des systèmes dotés de matériel spécialisé. Cela ouvre la voie à un déploiement plus large de tes modèles TensorFlow.
-
Orientation production : GraphDef est conçu pour le déploiement en production. Il prend en charge une exécution efficace, des fonctionnalités de sérialisation et des optimisations adaptées aux cas d'utilisation réels.
Options de déploiement avec TF GraphDef#
Avant d'aborder le processus d'exportation des modèles YOLO26 vers TF GraphDef, examinons quelques situations de déploiement courantes dans lesquelles ce format est utilisé.
Voici comment déployer efficacement avec TF GraphDef sur différentes plateformes.
-
TensorFlow Serving : ce framework est conçu pour déployer des modèles TensorFlow dans des environnements de production. TensorFlow Serving fournit la gestion des modèles, la gestion des versions et l'infrastructure nécessaires à leur mise à disposition efficace à grande échelle. C'est un moyen simple d'intégrer tes modèles basés sur GraphDef à des services web ou des API de production.
-
Appareils mobiles et intégrés : avec des outils comme LiteRT, tu peux convertir des modèles TF GraphDef dans des formats optimisés pour les smartphones, les tablettes et divers appareils intégrés. Tes modèles peuvent ensuite être utilisés pour l'inférence sur l'appareil, où l'exécution se fait localement, ce qui offre souvent de meilleures performances et des fonctionnalités hors ligne.
-
Navigateurs web : TensorFlow.js permet de déployer des modèles TF GraphDef directement dans les navigateurs web. Cela ouvre la voie à des applications de détection d'objets en temps réel exécutées côté client, qui exploitent les capacités de YOLO26 via JavaScript.
-
Matériel spécialisé : la nature indépendante de la plateforme de TF GraphDef lui permet de cibler du matériel personnalisé, comme des accélérateurs et des TPU (unités de traitement tensoriel). Ces appareils peuvent offrir des gains de performances pour les modèles exigeant une puissance de calcul importante.
Tâches prises en charge#
L'exportation TF GraphDef prend en charge six des sept tâches Ultralytics. La segmentation sémantique et l'estimation de profondeur sont disponibles uniquement avec YOLO26, la seule famille qui inclut ces têtes. Les modèles de pose peuvent être exportés, mais l'inférence GraphDef d'Ultralytics n'est actuellement pas prise en charge pour ces modèles.
| Tâche | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Détection | ✅ | ✅ | ✅ |
| Segmentation | ✅ | ✅ | ✅ |
| Sémantique | ❌ | ❌ | ✅ |
| Profondeur | ❌ | ❌ | ✅ |
| Classification | ✅ | ✅ | ✅ |
| Pose | ✅ | ✅ | ✅ |
| OBB | ❌ | ❌ | ❌ |
Exporter des modèles YOLO26 vers TF GraphDef#
Tu peux convertir ton modèle YOLO26 au format TF GraphDef, compatible avec différents systèmes, afin d'améliorer ses performances sur plusieurs plateformes.
Installation#
Pour installer le package requis, exécute :
# Install the required package for YOLO26
pip install ultralyticsPour obtenir des instructions détaillées et les bonnes pratiques relatives au processus d'installation, consulte notre guide d'installation Ultralytics. Si tu rencontres des difficultés lors de l'installation des packages requis pour YOLO26, consulte notre guide des problèmes courants pour trouver des solutions et des conseils.
Utilisation#
Tous les modèles Ultralytics YOLO26 sont conçus pour prendre en charge l’exportation directement, ce qui facilite leur intégration à ton workflow de déploiement préféré. Tu peux consulter la liste complète des formats d’exportation et des options de configuration pris en charge pour choisir la meilleure configuration pour ton application.
Le format TF GraphDef prend en charge les modes Export, Predict et Validate, sauf que les modèles de pose ne prennent actuellement en charge que l'exportation. Exporte ton modèle, puis charge le modèle exporté pour exécuter l'inférence ou valider sa précision.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Arguments d'exportation#
| Argument | Type | Valeur par défaut | Description |
|---|---|---|---|
format | str | 'pb' | Format cible du modèle exporté, définissant sa compatibilité avec différents environnements de déploiement. |
imgsz | int ou tuple | 640 | Taille d’image souhaitée pour l’entrée du modèle. Peut être un entier pour les images carrées ou un tuple (height, width) pour des dimensions spécifiques. |
quantize | int ou str | None | Export FP32 fixe. GraphDef ne prend pas en charge la conversion de précision FP16, INT8 ou W8A16 au moment de l'exportation. |
opset | int | None | Spécifie la version de l’opset ONNX pour le graphe ONNX intermédiaire. Si elle n’est pas définie, la dernière version prise en charge est utilisée. |
batch | int | 1 | Indique la taille du lot d'inférence du modèle exporté ou le nombre maximal d'images que le modèle exporté traitera simultanément en mode predict. |
device | str | None | Indique l'appareil utilisé pour l'exportation : CPU (device=cpu), MPS pour le silicium Apple (device=mps). |
Pour plus de détails sur le processus d’exportation, consulte la page de la documentation Ultralytics consacrée à l’exportation.
Déployer les modèles YOLO26 TF GraphDef exportés#
Une fois ton modèle YOLO26 exporté au format TF GraphDef, l'étape suivante consiste à le déployer. La première étape principale et recommandée pour exécuter un modèle TF GraphDef consiste à utiliser la méthode YOLO("model.pb"), comme indiqué précédemment dans l'extrait de code d'utilisation.
Cependant, pour plus d'informations sur le déploiement de tes modèles TF GraphDef, consulte les ressources suivantes :
-
TensorFlow Serving : un guide sur TensorFlow Serving qui explique comment déployer et servir efficacement des modèles d'apprentissage automatique dans des environnements de production.
-
TensorFlow Lite : cette page décrit comment convertir des modèles d'apprentissage automatique dans un format optimisé pour l'inférence sur l'appareil avec TensorFlow Lite.
-
TensorFlow.js : un guide sur la conversion de modèles qui explique comment convertir des modèles TensorFlow ou Keras au format TensorFlow.js pour les utiliser dans des applications web.
Résumé#
Dans ce guide, nous avons expliqué comment exporter des modèles Ultralytics YOLO26 au format TF GraphDef. Cela te permet de déployer de manière flexible tes modèles YOLO26 optimisés dans différents environnements.
Pour plus de détails sur l'utilisation, consulte la documentation officielle de TF GraphDef.
Pour plus d'informations sur l'intégration d'Ultralytics YOLO26 à d'autres plateformes et frameworks, consulte notre page consacrée au guide d'intégration.
FAQ#
L'exportation des modèles YOLO26 au format TF GraphDef offre plusieurs avantages, notamment :
- Indépendance vis-à-vis de la plateforme : TF GraphDef fournit un format indépendant de la plateforme, ce qui permet de déployer les modèles dans différents environnements, notamment sur mobile et dans les navigateurs web.
- Optimisations : le format permet d'appliquer plusieurs optimisations, comme le repliement des constantes, la quantification et les transformations de graphe, qui améliorent l'efficacité de l'exécution et réduisent la consommation mémoire.
- Accélération matérielle : les modèles au format TF GraphDef peuvent tirer parti d'accélérateurs matériels tels que les GPU, les TPU et les puces d'IA pour améliorer leurs performances.
Pour en savoir plus sur ces avantages, consulte la section TF GraphDef de notre documentation.
Ultralytics YOLO26 offre de nombreux avantages par rapport à d'autres modèles comme YOLOv5 et YOLOv7. Parmi ses principaux atouts :
- Performances de pointe : YOLO26 offre une vitesse et une précision exceptionnelles pour la détection d'objets en temps réel, la segmentation d'instances, la segmentation sémantique et la classification.
- Facilité d'utilisation : il dispose d'une API intuitive pour l'entraînement, la validation, la prédiction et l'exportation des modèles, ce qui le rend accessible aux débutants comme aux experts.
- Large compatibilité : il prend en charge plusieurs formats d'exportation, notamment ONNX, TensorRT, CoreML et TensorFlow, pour offrir des options de déploiement variées.
Pour plus de détails, consulte notre introduction à YOLO26.
Une fois un modèle YOLO26 exporté au format TF GraphDef, tu peux le déployer sur différentes plateformes matérielles spécialisées. Les scénarios de déploiement courants comprennent :
- TensorFlow Serving : utilise TensorFlow Serving pour déployer des modèles à grande échelle dans des environnements de production. Il prend en charge la gestion des modèles et leur mise à disposition efficace.
- Appareils mobiles : convertis les modèles TF GraphDef en TensorFlow Lite, optimisé pour les appareils mobiles et intégrés, afin de permettre l'inférence sur l'appareil.
- Navigateurs web : déploie les modèles avec TensorFlow.js pour effectuer l'inférence côté client dans les applications web.
- Accélérateurs d'IA : exploite les TPU et les puces d'IA personnalisées pour accélérer l'inférence.
Consulte la section options de déploiement pour obtenir des informations détaillées.
Pour résoudre les problèmes courants liés à l'exportation des modèles YOLO26, Ultralytics fournit des guides et des ressources complets. Si tu rencontres des difficultés lors de l'installation ou de l'exportation du modèle, consulte :
- Guide des problèmes courants : il propose des solutions aux problèmes fréquemment rencontrés.
- Guide d'installation : il fournit des instructions étape par étape pour configurer les paquets requis.
Ces ressources devraient t'aider à résoudre la plupart des problèmes liés à l'exportation et au déploiement des modèles YOLO26.
Les modèles Ultralytics YOLO26 peuvent être exportés facilement au format TensorFlow GraphDef (TF GraphDef). Ce format fournit une représentation sérialisée et indépendante de la plateforme du modèle, idéale pour le déploiement dans divers environnements, notamment sur mobile et sur le web. Pour exporter un modèle YOLO26 vers TF GraphDef, suis les étapes suivantes :
Pour plus d'informations sur les différentes options d'exportation, consulte la documentation Ultralytics sur l'exportation des modèles.