Skip to content

Guide sur YOLO11 Exportation de modèles vers TFLite en vue d'un déploiement

Logo TFLite

Le déploiement de modèles de vision par ordinateur sur des appareils périphériques ou embarqués nécessite un format qui garantisse des performances sans faille.

Le format d'exportation TensorFlow Lite ou TFLite vous permet d'optimiser vos modèles pour des tâches telles que la détection d'objets et la classification d'images dans des applications basées sur des périphériques. Ultralytics YOLO11 pour des tâches telles que la détection d'objets et la classification d'images dans des applications basées sur des périphériques. Dans ce guide, nous décrivons les étapes à suivre pour convertir vos modèles au format TFLite, ce qui facilitera l'utilisation de vos modèles sur divers appareils périphériques.

Pourquoi exporter vers TFLite ?

Présenté par Google en mai 2017 dans le cadre de son framework TensorFlow , TensorFlow Lite, ou TFLite en abrégé, est un framework d'apprentissage profond open-source conçu pour l'inférence sur appareil, également connu sous le nom d'edge computing. Il donne aux développeurs les outils nécessaires pour exécuter leurs modèles formés sur des appareils mobiles, embarqués et IoT, ainsi que sur des ordinateurs traditionnels.

TensorFlow Lite est compatible avec une large gamme de plates-formes, y compris Linux embarqué, Android, iOS, et MCU. L'exportation de votre modèle vers TFLite rend vos applications plus rapides, plus fiables et capables de fonctionner hors ligne.

Caractéristiques principales des modèles TFLite

Les modèles TFLite offrent un large éventail de fonctionnalités clés qui permettent l'apprentissage automatique sur appareil en aidant les développeurs à exécuter leurs modèles sur des appareils mobiles, intégrés et périphériques :

  • Optimisation sur l'appareil: TFLite optimise la ML sur l'appareil, rĂ©duisant la latence en traitant les donnĂ©es localement, amĂ©liorant la confidentialitĂ© en ne transmettant pas les donnĂ©es personnelles et minimisant la taille du modèle pour Ă©conomiser de l'espace.

  • Prise en charge de plusieurs plates-formes: TFLite offre une compatibilitĂ© Ă©tendue avec les plates-formes, prenant en charge Android, iOS, Linux embarquĂ© et les microcontrĂ´leurs.

  • Prise en charge de divers langages: TFLite est compatible avec divers langages de programmation, notamment Java, Swift, Objective-C, C++ et Python.

  • Haute performance: Des performances supĂ©rieures grâce Ă  l'accĂ©lĂ©ration matĂ©rielle et Ă  l'optimisation des modèles.

Options de déploiement dans TFLite

Avant d'examiner le code permettant d'exporter les modèles YOLO11 au format TFLite, il convient de comprendre comment les modèles TFLite sont normalement utilisés.

TFLite propose diverses options de déploiement sur appareil pour les modèles d'apprentissage automatique, notamment :

  • DĂ©ploiement avec Android et iOS: Les applications Android et iOS avec TFLite peuvent analyser les flux de camĂ©ras et les capteurs basĂ©s sur les bords afin de dĂ©tecter et d'identifier des objets. TFLite propose Ă©galement des bibliothèques natives iOS Ă©crites en Swift et Objective-C. Le diagramme d'architecture ci-dessous montre le processus de dĂ©ploiement d'un modèle entraĂ®nĂ© sur les plateformes Android et iOS Ă  l'aide de TensorFlow Lite.

Architecture

  • Mise en Ĺ“uvre avec Linux embarquĂ©: Si l'exĂ©cution d'infĂ©rences sur un Raspberry Pi Ă  l'aide du guideUltralytics ne rĂ©pond pas aux exigences de vitesse de votre cas d'utilisation, vous pouvez utiliser un modèle TFLite exportĂ© pour accĂ©lĂ©rer les temps d'infĂ©rence. En outre, il est possible d'amĂ©liorer encore les performances en utilisant un dispositif Coral Edge TPU .

  • DĂ©ploiement avec des microcontrĂ´leurs: Les modèles TFLite peuvent Ă©galement ĂŞtre dĂ©ployĂ©s sur des microcontrĂ´leurs et d'autres appareils ne disposant que de quelques kilo-octets de mĂ©moire. Le noyau d'exĂ©cution tient dans 16 Ko sur un Arm Cortex M3 et peut faire fonctionner de nombreux modèles de base. Il ne nĂ©cessite pas de système d'exploitation, ni de bibliothèques C ou C++ standard, ni d'allocation dynamique de mĂ©moire.

Exporter vers TFLite : Conversion de votre modèle YOLO11

Vous pouvez améliorer l'efficacité de l'exécution des modèles sur l'appareil et optimiser les performances en les convertissant au format TFLite.

Installation

Pour installer les paquets nécessaires, exécutez :

Installation

# Install the required package for YOLO11
pip install ultralytics

Pour des instructions détaillées et les meilleures pratiques liées au processus d'installation, consultez notre guide d'installationUltralytics . Lors de l'installation des paquets requis pour YOLO11, si vous rencontrez des difficultés, consultez notre guide des problèmes courants pour obtenir des solutions et des conseils.

Utilisation

Avant de plonger dans les instructions d'utilisation, il est important de noter que si tous les modèlesUltralytics YOLO11 sont disponibles pour l'exportation, vous pouvez vous assurer que le modèle que vous sélectionnez prend en charge la fonctionnalité d'exportation ici.

Utilisation

from ultralytics import YOLO

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

# Export the model to TFLite format
model.export(format="tflite")  # creates 'yolo11n_float32.tflite'

# Load the exported TFLite model
tflite_model = YOLO("yolo11n_float32.tflite")

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

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

Pour plus de détails sur le processus d'exportation, consultez la page de documentationUltralytics sur l'exportation.

Déploiement des modèles exportés YOLO11 TFLite

Après avoir exporté avec succès vos modèles Ultralytics YOLO11 au format TFLite, vous pouvez maintenant les déployer. La première étape recommandée pour exécuter un modèle TFLite consiste à utiliser la méthode YOLO("model.tflite"), comme indiqué dans l'extrait de code précédent. Toutefois, pour obtenir des instructions détaillées sur le déploiement de vos modèles TFLite dans d'autres contextes, consultez les ressources suivantes :

  • Android: Un guide de dĂ©marrage rapide pour l'intĂ©gration de TensorFlow Lite dans les applications Android , fournissant des Ă©tapes faciles Ă  suivre pour la mise en place et l'exĂ©cution de modèles d'apprentissage automatique.

  • iOS: Consultez ce guide dĂ©taillĂ© pour les dĂ©veloppeurs sur l'intĂ©gration et le dĂ©ploiement des modèles TensorFlow Lite dans les applications iOS , offrant des instructions et des ressources Ă©tape par Ă©tape.

  • Exemples de bout en bout: Cette page fournit une vue d'ensemble des diffĂ©rents exemples de TensorFlow Lite, prĂ©sentant des applications pratiques et des tutoriels conçus pour aider les dĂ©veloppeurs Ă  mettre en Ĺ“uvre TensorFlow Lite dans leurs projets d'apprentissage automatique sur les appareils mobiles et pĂ©riphĂ©riques.

Résumé

Dans ce guide, nous nous sommes concentrés sur la manière d'exporter au format TFLite. En convertissant vos modèles Ultralytics YOLO11 au format de modèle TFLite, vous pouvez améliorer l'efficacité et la vitesse des modèles YOLO11 , ce qui les rend plus efficaces et plus adaptés aux environnements d'informatique de pointe.

Pour plus de détails sur l'utilisation, consultez la documentation officielle de TFLite.

Par ailleurs, si vous êtes curieux de découvrir d'autres intégrations de Ultralytics YOLO11 , n'oubliez pas de consulter notre page de guide d'intégration. Vous y trouverez des tonnes d'informations et de conseils utiles.

FAQ

Comment exporter un modèle YOLO11 au format TFLite ?

Pour exporter un modèle YOLO11 au format TFLite, vous pouvez utiliser la bibliothèque Ultralytics . Tout d'abord, installez le paquetage requis en utilisant :

pip install ultralytics

Ensuite, utilisez l'extrait de code suivant pour exporter votre modèle :

from ultralytics import YOLO

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

# Export the model to TFLite format
model.export(format="tflite")  # creates 'yolo11n_float32.tflite'

Pour les utilisateurs de CLI , vous pouvez le faire avec :

yolo export model=yolo11n.pt format=tflite  # creates 'yolo11n_float32.tflite'

Pour plus de détails, consultez le guide d'exportationUltralytics .

Quels sont les avantages de l'utilisation de TensorFlow Lite pour ledéploiement du modèle YOLO11 ?

TensorFlow Lite (TFLite) est un cadre d'apprentissage profond open-source conçu pour l'inférence sur appareil, ce qui le rend idéal pour déployer des modèles YOLO11 sur des appareils mobiles, embarqués et IoT. Ses principaux avantages sont les suivants :

  • Optimisation sur l'appareil: Minimiser la latence et amĂ©liorer la confidentialitĂ© en traitant les donnĂ©es localement.
  • CompatibilitĂ© avec les plates-formes: Compatible avec Android, iOS, Linux embarquĂ© et MCU.
  • Performance: Utilise l'accĂ©lĂ©ration matĂ©rielle pour optimiser la vitesse et l'efficacitĂ© du modèle.

Pour en savoir plus, consultez le guide TFLite.

Est-il possible de faire fonctionner les modèles YOLO11 TFLite sur Raspberry Pi ?

Oui, vous pouvez exécuter les modèles YOLO11 TFLite sur Raspberry Pi pour améliorer la vitesse d'inférence. Tout d'abord, exportez votre modèle au format TFLite comme expliqué ici. Ensuite, utilisez un outil comme TensorFlow Lite Interpreter pour exécuter le modèle sur votre Raspberry Pi.

Pour des optimisations plus poussées, vous pouvez envisager d'utiliser Coral Edge TPU. Pour les étapes détaillées, reportez-vous à notre guide de déploiement Raspberry Pi.

Puis-je utiliser les modèles TFLite sur les microcontrôleurs pour les prédictions YOLO11 ?

Oui, TFLite peut être déployé sur des microcontrôleurs aux ressources limitées. Le moteur d'exécution de TFLite ne nécessite que 16 Ko de mémoire sur un Arm Cortex M3 et peut exécuter les modèles de base YOLO11 . Il peut donc être déployé sur des appareils dotés d'une puissance de calcul et d'une mémoire minimales.

Pour commencer, consultez le guide TFLite Micro pour microcontrĂ´leurs.

Quelles sont les plateformes compatibles avec les modèles YOLO11 exportés par TFLite ?

TensorFlow Lite offre une compatibilité étendue avec les plates-formes, ce qui vous permet de déployer les modèles YOLO11 sur une large gamme d'appareils, notamment

  • Android et iOS: Prise en charge native par les bibliothèques TFLite Android et iOS .
  • Linux embarquĂ©: IdĂ©al pour les ordinateurs monocartes tels que le Raspberry Pi.
  • MicrocontrĂ´leurs: Convient aux MCU dont les ressources sont limitĂ©es.

Pour plus d'informations sur les options de déploiement, consultez notre guide de déploiement détaillé.

Comment résoudre les problèmes courants lors de l'exportation d'un modèle YOLO11 vers TFLite ?

Si vous rencontrez des erreurs lors de l'exportation des modèles YOLO11 vers TFLite, les solutions les plus courantes sont les suivantes :

  • VĂ©rifier la compatibilitĂ© des paquets: Assurez-vous que vous utilisez des versions compatibles de Ultralytics et TensorFlow. Reportez-vous Ă  notre guide d'installation.
  • Prise en charge du modèle: VĂ©rifiez que le modèle spĂ©cifique de YOLO11 prend en charge l'exportation TFLite en cochant cette case.

Pour obtenir des conseils de dépannage supplémentaires, consultez notre guide des problèmes courants.

📅C réé il y a 9 mois ✏️ Mis à jour il y a 2 mois

Commentaires