Ultralytics YOLO27 :
Get Started

Apprends à exporter un modèle YOLO26 au format TFLite Edge TPU#

Déployer des modèles de vision par ordinateur sur des appareils à la puissance de calcul limitée, comme les systèmes mobiles ou embarqués, peut être compliqué. L’utilisation d’un format de modèle optimisé pour de meilleures performances simplifie le processus. Le format de modèle TensorFlow Lite Edge TPU, ou TFLite Edge TPU, est conçu pour consommer peu d’énergie tout en offrant des performances élevées pour les réseaux neuronaux.

La fonctionnalité d’export au format TFLite Edge TPU te permet d’optimiser tes modèles Ultralytics YOLO26 pour une inférence rapide et à faible consommation d’énergie. Dans ce guide, nous allons te montrer comment convertir tes modèles au format TFLite Edge TPU afin de faciliter leur exécution sur divers appareils mobiles et embarqués.

Pourquoi exporter au format TFLite Edge TPU ?#

L’export de modèles vers TensorFlow Edge TPU accélère et optimise les tâches d’apprentissage automatique. Cette technologie convient aux applications disposant de peu d’énergie, de ressources de calcul et de connectivité. L’Edge TPU est un accélérateur matériel développé par Google. Il accélère les modèles TensorFlow Lite sur les appareils en périphérie. L’image ci-dessous montre un exemple du processus.

TensorFlow Lite Edge TPU compilation workflow

L’Edge TPU fonctionne avec des modèles quantifiés. La quantification rend les modèles plus petits et plus rapides sans trop affecter leur précision. Elle convient parfaitement aux ressources limitées de l’informatique en périphérie : elle permet aux applications de répondre rapidement en réduisant la latence et en accélérant le traitement local des données, sans dépendre du cloud. Le traitement local protège également la confidentialité et la sécurité des données utilisateur, puisqu’elles ne sont pas envoyées à un serveur distant.

Principales fonctionnalités de TFLite Edge TPU#

Voici les principales fonctionnalités qui font de TFLite Edge TPU un excellent choix de format de modèle pour les développeurs :

  • Performances optimisées sur les appareils en périphérie : TFLite Edge TPU offre des performances élevées pour les réseaux neuronaux grâce à la quantification, à l’optimisation des modèles, à l’accélération matérielle et à l’optimisation du compilateur. Son architecture minimaliste contribue à réduire sa taille et son coût.

  • Débit de calcul élevé : TFLite Edge TPU combine une accélération matérielle spécialisée et une exécution efficace à l’exécution pour atteindre un débit de calcul élevé. Il convient parfaitement au déploiement de modèles d’apprentissage automatique soumis à des exigences de performances strictes sur les appareils périphériques.

  • Calculs matriciels efficaces : TensorFlow Edge TPU est optimisé pour les opérations matricielles, essentielles aux calculs des réseaux neuronaux. Cette efficacité est cruciale pour les modèles d’apprentissage automatique, en particulier ceux qui nécessitent de nombreuses multiplications et transformations matricielles complexes.

Options de déploiement avec TFLite Edge TPU#

Avant de voir comment exporter des modèles YOLO26 au format TFLite Edge TPU, comprenons où les modèles TFLite Edge TPU sont généralement utilisés.

TFLite Edge TPU propose diverses options de déploiement pour les modèles d’apprentissage automatique, notamment :

  • Déploiement sur l’appareil : les modèles TensorFlow Edge TPU peuvent être déployés directement sur des appareils mobiles et embarqués. Le déploiement sur l’appareil permet aux modèles de s’exécuter directement sur le matériel, sans nécessiter de connexion au cloud, soit en intégrant le modèle au paquet de l’application, soit en le téléchargeant à la demande.

  • Déploiement hybride : une approche hybride combine le déploiement sur l’appareil et dans le cloud, offrant une solution polyvalente et évolutive pour déployer des modèles d’apprentissage automatique. Elle permet notamment le traitement sur l’appareil pour des réponses rapides et le calcul dans le cloud pour des calculs plus complexes.

Tâches prises en charge#

L’export Edge TPU prend en charge six des sept tâches Ultralytics. La segmentation sémantique est disponible uniquement avec YOLO26, la seule famille à inclure cette tête. L’estimation de profondeur n’est pas prise en charge, car son modèle INT8 émet un opérateur EXP v2 que le compilateur Edge TPU ne peut pas analyser.

TâcheYOLOv8YOLO11YOLO26
Détecter✅✅✅
Segmenter✅✅✅
Sémantique❌❌✅
Profondeur❌❌❌
Classifier✅✅✅
Pose✅✅✅
OBB✅✅✅

Le compilateur Edge TPU associe les opérations qu’il prend en charge à l’accélérateur et laisse les autres s’exécuter sur le CPU ; la prise en charge d’une tâche ne signifie donc pas que toutes les opérations s’exécutent sur le TPU.

Exporter des modèles YOLO26 vers TFLite Edge TPU#

Tu peux élargir la compatibilité des modèles et la flexibilité du déploiement en convertissant les modèles YOLO26 au format TensorFlow Edge TPU.

Installation#

Pour installer le package requis, exécute :

Installation
# Install the required package for YOLO26
pip install ultralytics

Pour obtenir des instructions détaillées et connaître les bonnes pratiques liées à l’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, qui propose des solutions et des conseils.

Utilisation#

Tous les modèles Ultralytics YOLO26 sont conçus pour prendre en charge l’exportation dès leur installation, ce qui facilite leur intégration à ton flux de déploiement préféré. Tu peux consulter la liste complète des formats d’exportation pris en charge et des options de configuration pour choisir la configuration la mieux adaptée à ton application.

Le format TFLite Edge TPU prend en charge les modes Export, Predict et Validate. L’inférence et la validation s’exécutent sur du matériel Coral Edge TPU. Exporte ton modèle, puis charge le modèle exporté pour effectuer l’inférence ou valider sa précision.

Export
from ultralytics import YOLO

# Charger un modèle YOLO26
model = YOLO("yolo26n.pt")

# Exporter le modèle au format TFLite Edge TPU
model.export(format="edgetpu")  # crée 'yolo26n_saved_model/yolo26n_full_integer_quant_edgetpu.tflite'
Prédiction
from ultralytics import YOLO

# Charger le modèle TFLite Edge TPU exporté
model = YOLO("yolo26n_saved_model/yolo26n_full_integer_quant_edgetpu.tflite")

# Exécuter l’inférence
results = model("https://ultralytics.com/images/bus.jpg")
Valider
from ultralytics import YOLO

# Charger le modèle TFLite Edge TPU exporté
model = YOLO("yolo26n_saved_model/yolo26n_full_integer_quant_edgetpu.tflite")

# Valider la précision sur le jeu de données COCO8
metrics = model.val(data="coco8.yaml")

Arguments d’exportation#

ArgumentTypeValeur par défautDescription
formatstr'edgetpu'Format cible du modèle exporté, qui définit sa compatibilité avec différents environnements de déploiement.
imgszint ou tuple640Taille 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 définir des dimensions spécifiques.
quantizeint ou str8/autoPrécision de quantification. 8 (INT8) est requis et activé automatiquement pour Edge TPU ; il compresse le modèle et accélère l’inférence avec une perte minimale de précision sur les appareils périphériques. Remplace les options obsolètes half/int8.
opsetintNoneSpécifie la version d’opset ONNX du graphe ONNX intermédiaire. Si elle n’est pas définie, la dernière version prise en charge est utilisée.
datastrNoneChemin vers le fichier YAML du jeu de données, indispensable à la quantification ; pour la classification, un répertoire de jeu de données ou le nom d’un jeu de données intégré est requis. Si quantize=8 n’est pas indiqué, Ultralytics sélectionne le jeu de données de calibration par défaut correspondant à la tâche du modèle.
fractionfloat, int ou list1.0Sous-ensemble de calibration exprimé en ratio, en nombre d’images ou en listes [train, val, test] de ratios/de nombres. Les listes de deux éléments laissent test complet, tandis que 0 l’ignore.
devicestrNoneIndique l’appareil utilisé pour l’exportation : CPU (device=cpu).
Conseil

Veille à utiliser une machine Linux x86 pour exporter vers Edge TPU.

Pour en savoir plus sur le processus d’export, consulte la page de la documentation Ultralytics consacrée à l’export.

Déployer des modèles YOLO26 TFLite Edge TPU exportés#

Après avoir exporté avec succès tes modèles Ultralytics YOLO26 au format TFLite Edge TPU, tu peux maintenant les déployer. La première étape recommandée pour exécuter un modèle TFLite Edge TPU consiste à utiliser la méthode YOLO("model_edgetpu.tflite"), comme indiqué dans l’extrait de code d’utilisation précédent.

Pour obtenir des instructions détaillées sur le déploiement de tes modèles TFLite Edge TPU, consulte les ressources suivantes :

Résumé#

Dans ce guide, nous avons appris à exporter des modèles Ultralytics YOLO26 au format TFLite Edge TPU. En suivant les étapes ci-dessus, tu peux accélérer et améliorer l’efficacité énergétique de tes applications de vision par ordinateur.

Pour en savoir plus sur l’utilisation, consulte le site officiel de Coral Edge TPU.

Pour en savoir plus sur les autres intégrations Ultralytics YOLO26, consulte également notre page du guide des intégrations. Tu y trouveras des ressources et des informations utiles.

FAQ#

  • Pour exporter un modèle YOLO26 au format TFLite Edge TPU, suis les étapes suivantes :

    Utilisation
    from ultralytics import YOLO
    
    # Charger un modèle YOLO26
    model = YOLO("yolo26n.pt")
    
    # Exporter le modèle au format TFLite Edge TPU
    model.export(format="edgetpu")  # crée 'yolo26n_saved_model/yolo26n_full_integer_quant_edgetpu.tflite'
    
    # Charger le modèle TFLite Edge TPU exporté
    edgetpu_model = YOLO("yolo26n_saved_model/yolo26n_full_integer_quant_edgetpu.tflite")
    
    # Exécuter l’inférence
    results = edgetpu_model("https://ultralytics.com/images/bus.jpg")

    Pour obtenir tous les détails sur l’exportation de modèles vers d’autres formats, consulte notre guide d’exportation.

  • L’exportation de modèles YOLO26 vers TFLite Edge TPU offre plusieurs avantages :

    • Performances optimisées : obtiens des performances élevées pour les réseaux neuronaux avec une consommation électrique minimale.
    • Latence réduite : traite rapidement les données localement, sans dépendre du cloud.
    • Confidentialité renforcée : le traitement local garantit la confidentialité et la sécurité des données utilisateur.

    Cela en fait une solution idéale pour les applications d’informatique en périphérie, où les appareils disposent de ressources limitées en énergie et en calcul. Découvre pourquoi tu devrais exporter.

  • Oui, les modèles TensorFlow Lite Edge TPU peuvent être déployés directement sur des appareils mobiles et embarqués. Cette approche permet aux modèles de s’exécuter directement sur le matériel, pour une inférence plus rapide et plus efficace. Pour des exemples d’intégration, consulte notre guide de déploiement de Coral Edge TPU sur Raspberry Pi.

  • Les cas d’utilisation courants des modèles TFLite Edge TPU comprennent :

    • Caméras intelligentes : amélioration de l’analyse des images et des vidéos en temps réel.
    • Appareils IoT : automatisation intelligente des maisons et des installations industrielles.
    • Santé : accélération de l’imagerie médicale et du diagnostic.
    • Commerce de détail : amélioration de la gestion des stocks et de l’analyse du comportement des clients.

    Ces applications tirent parti des performances élevées et de la faible consommation électrique des modèles TFLite Edge TPU. Découvre d’autres scénarios d’utilisation.

  • Si tu rencontres des problèmes lors de l’exportation ou du déploiement de modèles TFLite Edge TPU, consulte notre guide des problèmes courants pour obtenir des conseils de dépannage. Ce guide présente les problèmes fréquents et leurs solutions afin de t’aider à garantir un fonctionnement sans heurts. Pour obtenir de l’aide supplémentaire, consulte notre Centre d’aide.

Commentaires