YOLO Vision 2026 :
Intégrations

Optimisation des modèles Ultralytics YOLO avec l'intégration TensorRT

Apprends à exporter les modèles Ultralytics YOLO en utilisant l'intégration TensorRT pour des performances d'IA plus rapides et plus efficaces sur les GPU NVIDIA pour des applications en temps réel.

ABAbirami Vina5 min read
Optimisation des modèles Ultralytics YOLO avec l'intégration TensorRT

Imagine une voiture autonome circulant dans une rue animée avec seulement quelques millisecondes pour détecter un piéton quittant le trottoir. En même temps, elle pourrait devoir reconnaître un panneau stop partiellement caché par un arbre ou réagir rapidement à un véhicule à proximité se déportant sur sa voie. Dans de telles situations, la vitesse et les réponses en temps réel sont cruciales.

C'est ici que l'intelligence artificielle (IA), en particulier la vision par ordinateur, une branche de l'IA qui aide les machines à interpréter les données visuelles, joue un rôle clé. Pour que les solutions de vision par ordinateur fonctionnent de manière fiable dans des environnements réels, elles doivent souvent traiter les informations rapidement, gérer plusieurs tâches à la fois et utiliser la mémoire de manière efficace.

Une façon d'y parvenir est d'utiliser l'accélération matérielle, en recourant à des appareils spécialisés tels que les unités de traitement graphique (GPU) pour exécuter les modèles plus rapidement. Les GPU NVIDIA sont particulièrement reconnus pour de telles tâches, grâce à leur capacité à offrir une faible latence et un débit élevé.

Cependant, exécuter un modèle sur un GPU tel quel ne garantit pas toujours des performances optimales. Les modèles de vision par IA nécessitent généralement une optimisation pour tirer pleinement parti des capacités du matériel. Afin d'obtenir des performances optimales avec un matériel spécifique, nous devons compiler le modèle pour utiliser le jeu d'instructions propre à ce matériel.

Par exemple, TensorRT est un format d'exportation et une bibliothèque d'optimisation développés par NVIDIA pour améliorer les performances sur les machines haut de gamme. Il utilise des techniques avancées pour réduire considérablement le temps d'inférence tout en maintenant la précision.

NVIDIA TensorRT permet aux modèles de fonctionner de manière optimale sur les appareils NVIDIA

Fig 1. NVIDIA TensorRT permet aux modèles de fonctionner de manière optimale sur divers appareils NVIDIA.

Dans cet article, nous allons explorer l'intégration TensorRT prise en charge par Ultralytics et voir comment exporter ton modèle YOLO11 pour un déploiement plus rapide et plus efficace sur le matériel NVIDIA. C'est parti !

Aperçu de TensorRT#

TensorRT est une boîte à outils développée par NVIDIA pour aider les modèles d'IA à s'exécuter plus rapidement et plus efficacement sur les GPU NVIDIA. Il est conçu pour les applications réelles où la vitesse et les performances comptent vraiment, comme les voitures autonomes et le contrôle qualité dans l'industrie manufacturière et pharmaceutique.

TensorRT inclut des outils comme des compilateurs et des optimiseurs de modèles qui travaillent en arrière-plan pour garantir que tes modèles s'exécutent avec une faible latence et puissent gérer un débit plus élevé.

L'intégration TensorRT prise en charge par Ultralytics fonctionne en optimisant ton modèle YOLO pour qu'il s'exécute plus efficacement sur les GPU grâce à des méthodes telles que la réduction de la précision. Cela consiste à utiliser des formats de plus faible nombre de bits, tels que le format à virgule flottante 16 bits (FP16) ou l'entier 8 bits (INT8), pour représenter les données du modèle, ce qui réduit l'utilisation de la mémoire et accélère le calcul avec un impact minimal sur la précision.

De plus, les couches de réseaux neuronaux compatibles sont fusionnées dans les modèles TensorRT optimisés pour réduire l'utilisation de la mémoire, ce qui permet une inférence plus rapide et plus efficace.

Aperçu de la technique de fusion de couches de TensorRT

Fig 2. Aperçu de la technique de fusion de couches de TensorRT.

Fonctionnalités clés du format d'exportation TensorRT#

Avant de voir comment tu peux exporter Ultralytics YOLO11 grâce à l'intégration TensorRT, jetons un œil à quelques fonctionnalités clés du format de modèle TensorRT :

  • Intégration facile des frameworks : TensorRT prend en charge l'intégration directe avec des frameworks d'IA populaires comme PyTorch, Hugging Face et ONNX, offrant des performances jusqu'à 6 fois plus rapides. Il prend également en charge MATLAB, permettant le développement de moteurs d'IA à haute vitesse sur des plateformes telles que Jetson, NVIDIA DRIVE et les centres de données.

  • Déploiement évolutif avec Triton : Les modèles optimisés au format TensorRT peuvent être déployés à grande échelle à l'aide de NVIDIA Triton Inference Server, ce qui améliore l'efficacité grâce à des fonctionnalités telles que le regroupement par lots des entrées, l'exécution concurrente des modèles, la prise en charge d'ensembles de modèles et la diffusion audio/vidéo en temps réel.

  • Flexible sur tous les appareils : Des petits appareils de périphérie (edge devices) aux serveurs puissants, TensorRT fonctionne sur tout l'écosystème NVIDIA, prenant en charge des outils comme DeepStream pour la vidéo, Riva pour l'IA vocale, et d'autres pour la cybersécurité, les recommandations, et bien plus encore.

Comment fonctionne l'intégration TensorRT ?#

Exporter des modèles Ultralytics YOLO comme Ultralytics YOLO11 vers le format de modèle TensorRT est un jeu d'enfant. Voyons les étapes à suivre.

Pour commencer, tu peux installer le paquet Python d'Ultralytics à l'aide d'un gestionnaire de paquets tel que ‘pip.’ Pour ce faire, exécute la commande “pip install ultralytics” dans ton invite de commande ou ton terminal.

Après avoir installé avec succès le paquet Python d'Ultralytics, tu peux entraîner, tester, affiner, exporter et déployer des modèles pour diverses tâches de vision par ordinateur, telles que la détection d'objets, la classification et la segmentation d'instances. Si tu rencontres des difficultés lors de l'installation du paquet, tu peux consulter le guide des problèmes courants pour trouver des solutions et des astuces.

Pour l'étape suivante, tu auras besoin d'un appareil NVIDIA. Utilise l'extrait de code ci-dessous pour charger et exporter YOLO11 au format de modèle TensorRT. Il charge une variante nano pré-entraînée du modèle YOLO11 (yolo11n.pt) et l'exporte en tant que fichier moteur TensorRT (yolo11n.engine), le rendant prêt à être déployé sur des appareils NVIDIA.

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.export(format="engine")

Après avoir converti ton modèle au format TensorRT, tu peux le déployer pour diverses applications.

L'exemple ci-dessous montre comment charger le modèle YOLO11 exporté (yolo11n.engine) et effectuer une inférence avec celui-ci. L'inférence consiste à utiliser le modèle entraîné pour effectuer des prédictions sur de nouvelles données. Dans ce cas, nous utiliserons une image d'entrée représentant un chien pour tester le modèle.

tensorrt_model = YOLO("yolo11n.engine")
results = tensorrt_model("https://images.pexels.com/photos/1254140/pexels-photo-1254140.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)

Lorsque tu exécuteras ce code, l'image de sortie suivante sera enregistrée dans le dossier runs/detect/predict.

Exécution d'une inférence avec le modèle Ultralytics YOLO11 exporté au format TensorRT

Fig 3. Résultat d'une inférence effectuée à l'aide du modèle Ultralytics YOLO11 exporté au format TensorRT.

Quand utiliser l'intégration TensorRT#

Le paquet Python d'Ultralytics prend en charge diverses intégrations qui permettent d'exporter des modèles YOLO vers différents formats tels que TorchScript, CoreML, ONNX et TensorRT. Alors, quand devrais-tu choisir d'utiliser l'intégration TensorRT ?

Voici quelques facteurs qui distinguent le format de modèle TensorRT des autres options d'intégration d'exportation :

  • Taille de modèle réduite : Exporter un modèle YOLO vers le format TensorRT avec une précision INT8 peut réduire considérablement la taille du modèle. La quantification de FP32 à INT8 peut entraîner une réduction de 4x de la taille du modèle, ce qui permet des temps de téléchargement plus rapides, des besoins en stockage plus faibles et une empreinte mémoire réduite lors du déploiement.

  • Consommation d'énergie réduite : La quantification INT8 non seulement réduit la taille du modèle, mais diminue également la consommation d'énergie. Les opérations en précision réduite pour les modèles YOLO exportés en INT8 peuvent consommer moins d'énergie par rapport aux modèles FP32, ce qui est particulièrement avantageux pour les appareils alimentés par batterie comme les drones, les smartphones ou les appareils de périphérie.

  • Performances plus rapides : Combiner l'architecture efficace de YOLO avec l'optimisation INT8 de TensorRT peut améliorer les vitesses d'inférence.

Applications d'Ultralytics YOLO11 et du format de modèle TensorRT#

Les modèles Ultralytics YOLO exportés au format TensorRT peuvent être déployés dans un large éventail de scénarios réels. Ces modèles optimisés sont particulièrement utiles là où des performances d'IA rapides et efficaces sont essentielles. Explorons quelques exemples intéressants de la manière dont ils peuvent être utilisés.

Caisses de paiement intelligentes dans les magasins de détail#

Un large éventail de tâches dans les magasins de détail, comme scanner les codes-barres, peser les produits ou emballer les articles, est toujours effectué manuellement par le personnel. Cependant, dépendre uniquement des employés peut ralentir les opérations et entraîner la frustration des clients, surtout lors du passage en caisse. Les longues files d'attente sont gênantes tant pour les clients que pour les propriétaires de magasins. Les caisses de paiement en libre-service intelligentes sont une excellente solution à ce problème.

Ces compteurs utilisent la vision par ordinateur et les GPU pour accélérer le processus, ce qui permet de réduire les temps d'attente. La vision par ordinateur permet à ces systèmes de voir et de comprendre leur environnement grâce à des tâches telles que la détection d'objets. Des modèles avancés comme Ultralytics YOLO11, lorsqu'ils sont optimisés avec des outils comme TensorRT, peuvent s'exécuter beaucoup plus rapidement sur les appareils équipés de GPU.

Ces modèles exportés conviennent parfaitement aux installations de vente au détail intelligentes utilisant des appareils matériels compacts mais puissants tels que le NVIDIA Jetson Nano, conçus spécifiquement pour les applications d'IA en périphérie (edge AI).

Exemple de comptoir de caisse intelligent

Fig 4. Exemple de comptoir de caisse intelligent.

Détection automatisée des défauts dans l'industrie manufacturière#

Un modèle de vision par ordinateur tel qu'Ultralytics YOLO11 peut être entraîné sur mesure pour détecter des produits défectueux dans l'industrie manufacturière. Une fois entraîné, le modèle peut être exporté au format TensorRT pour être déployé dans des installations équipées de systèmes d'IA haute performance.

À mesure que les produits avancent sur les bandes transporteuses, des caméras capturent des images et le modèle Ultralytics YOLO11, exécuté au format TensorRT, les analyse en temps réel pour repérer les défauts. Cette configuration permet aux entreprises de détecter les problèmes rapidement et avec précision, réduisant ainsi les erreurs et améliorant l'efficacité.

De même, des industries telles que la pharmacie utilisent ces types de systèmes pour identifier les défauts dans l'emballage médical. En fait, le marché mondial des systèmes de détection des défauts intelligents devrait atteindre 5 milliards de dollars d'ici 2026.

Utilisation de YOLO pour détecter des défauts dans l'industrie pharmaceutique

Fig 5. Utilisation de YOLO pour détecter des défauts dans l'industrie pharmaceutique.

Considérations à garder à l'esprit lors de l'utilisation de TensorRT#

Bien que l'intégration TensorRT apporte de nombreux avantages, comme des vitesses d'inférence plus rapides et une latence réduite, voici quelques limitations à garder à l'esprit :

  • Légère baisse de la précision : Lorsque tu exportes ton modèle au format TensorRT, ton modèle exporté peut ne pas être aussi précis que l'original. Les métriques de performance telles que la précision (precision), le rappel (recall) et la capacité du modèle à détecter des objets (scores mAP) peuvent baisser légèrement. Cela peut être atténué en utilisant un jeu de données représentatif lors de la quantification.

  • Complexité de débogage accrue : Les optimisations effectuées par TensorRT peuvent rendre plus difficile le traçage des erreurs ou la compréhension d'un comportement inattendu, surtout lors de la comparaison des résultats avec le modèle original.

  • Sensibilité à la taille des lots (batch size) : Les gains de performance de TensorRT sont plus prononcés avec des tailles de lots plus grandes. Pour les applications traitant des images uniques ou de petits lots, les améliorations de performance pourraient être moins significatives.

Points clés#

Exporter les modèles Ultralytics YOLO vers le format TensorRT les rend beaucoup plus rapides et efficaces, ce qui les rend idéaux pour les tâches en temps réel comme la détection de défauts dans les usines, l'alimentation des systèmes de caisse intelligents ou la surveillance des zones urbaines très fréquentées.

Cette optimisation aide les modèles à être plus performants sur les GPU NVIDIA en accélérant les prédictions et en réduisant l'utilisation de la mémoire et de l'énergie. Bien qu'il existe quelques limitations, l'augmentation des performances fait de l'intégration TensorRT un excellent choix pour quiconque construit des systèmes de vision par ordinateur à haute vitesse sur du matériel NVIDIA.

Tu veux en savoir plus sur l'IA ? Explore notre dépôt GitHub, connecte-toi avec notre communauté et consulte nos options de licence pour lancer ton projet de vision par ordinateur. Découvre-en plus sur des innovations telles que l'IA dans la fabrication et la vision par ordinateur dans l'industrie de la logistique sur nos pages de solutions.

Explore solutions

Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA permet l'inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.
En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.
En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.
En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

Applique la vision par ordinateur dans l'automobile avec les modèles Ultralytics YOLO. L'IA de vision améliore la sécurité routière, l'assistance à la conduite et l'automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre l'IA de vision à l'agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l'agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus
Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA permet l'inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.
En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.
En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.
En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

Applique la vision par ordinateur dans l'automobile avec les modèles Ultralytics YOLO. L'IA de vision améliore la sécurité routière, l'assistance à la conduite et l'automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre l'IA de vision à l'agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l'agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus
Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA permet l'inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.
En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.
En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.
En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

Applique la vision par ordinateur dans l'automobile avec les modèles Ultralytics YOLO. L'IA de vision améliore la sécurité routière, l'assistance à la conduite et l'automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre l'IA de vision à l'agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l'agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble le futur de l'IA !

Commence ton aventure avec le futur de l'apprentissage automatique