Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Ultralytics YOLO

Prendre en main YOLO-World

Découvre YOLO-World, un modèle de détection d’objets à vocabulaire ouvert et en temps réel qui repère les objets à partir d’instructions textuelles, ainsi que ses applications et un exemple de code rapide.

Abirami VinaAbirami Vina9 min de lecture
Découvre YOLO-World, un modèle de détection d’objets à vocabulaire ouvert et en temps réel qui repère les objets à partir d’instructions textuelles, ainsi que ses applications et un exemple de code rapide.

Les projets de vision par ordinateur nécessitent souvent beaucoup de temps pour annoter les données et entraîner des modèles de détection d’objets. Mais cela pourrait bientôt changer. Le laboratoire d’IA de Tencent a publié YOLO-World, un modèle de détection d’objets à vocabulaire ouvert en temps réel, le 31 janvier 2024. YOLO-World est un modèle zero-shot, ce qui signifie que tu peux lancer l’inférence de détection d’objets sur des images sans avoir à l’entraîner.

Les modèles zero-shot pourraient changer notre façon d’aborder les applications de vision par ordinateur. Dans cet article, nous allons voir comment fonctionne YOLO-World, explorer ses utilisations possibles et te proposer un exemple de code pratique pour démarrer.

Aperçu de YOLO-World#

Tu peux fournir au modèle YOLO-World une image et une invite textuelle décrivant les objets recherchés. Par exemple, si tu veux trouver « une personne portant une chemise rouge » dans une photo, YOLO-World reçoit cette entrée et se met au travail.

L’architecture unique du modèle combine trois éléments principaux :

  • Un détecteur basé sur le modèle de détection d’objets Ultralytics YOLOv8, qui analyse le contenu visuel de l’image.
  • Un encodeur de texte préentraîné par CLIP d’OpenAI, spécialement conçu pour comprendre ton prompt textuel.
  • Un réseau, le réseau d’agrégation de chemins vision-langage reparamétrable (RepVL-PAN), qui intègre les données d’image traitées aux données textuelles.

Le détecteur YOLO analyse l’image fournie pour repérer les objets potentiels. L’encodeur de texte transforme ta description en un format compréhensible par le modèle. Ces deux flux d’informations sont ensuite fusionnés par RepVL-PAN grâce à une fusion multimodale à plusieurs niveaux. YOLO-World peut ainsi détecter et localiser avec précision, dans l’image, les objets décrits dans ton invite.

Exemple de résultats de YOLO-World

Exemple de résultats de YOLO-World.

Avantages de YOLO-World#

L’un des principaux avantages de YOLO-World, c’est que tu n’as pas besoin d’entraîner le modèle pour une classe précise. Il a déjà appris à partir de paires d’images et de textes, et sait donc trouver des objets à partir de descriptions. Tu peux ainsi éviter des heures de collecte et d’annotation de données, ainsi que l’entraînement sur des GPU coûteux.

Voici d’autres avantages de YOLO-World :

  • Performances en temps réel - YOLO-World offre des performances en temps réel, tout comme l’architecture YOLO d’origine. Il convient parfaitement aux applications qui nécessitent une détection immédiate des objets, comme les véhicules autonomes et les systèmes de surveillance.
  • Segmentation d’instances – La version originale de YOLO-World comprend des variantes de segmentation ; dans le package Ultralytics, YOLO-World effectue la détection, et YOLOE ajoute la segmentation d’instances à vocabulaire ouvert.
  • Efficacité - YOLO-World associe une grande précision à une faible charge de calcul, ce qui le rend adapté aux applications du monde réel. Son architecture rationalisée permet de détecter rapidement les objets sans solliciter excessivement la puissance de calcul.

Applications de YOLO-World#

Les modèles YOLO-World peuvent servir à une grande variété d’applications. Découvrons-en quelques-unes.

Contrôle qualité dans la fabrication#

Les produits fabriqués sur une chaîne de montage font l’objet d’une inspection visuelle pour repérer les défauts avant leur emballage. Cette détection des défauts est souvent réalisée manuellement, ce qui prend du temps et peut entraîner des erreurs. Ces erreurs peuvent occasionner des problèmes comme des coûts élevés et la nécessité de réparations ou de rappels. Pour y remédier, des caméras spécialisées de vision industrielle et des systèmes d’IA ont été conçus pour effectuer ces contrôles.

Les modèles YOLO-World représentent une avancée majeure dans ce domaine. Grâce à leurs capacités zero-shot, ils peuvent repérer des défauts dans des produits même s’ils n’ont pas été entraînés pour ce problème précis. Par exemple, une usine qui fabrique des bouteilles d’eau peut utiliser YOLO-World pour distinguer une bouteille correctement scellée avec un bouchon d’une bouteille dont le bouchon est absent ou défectueux.

Caméra de vision industrielle au-dessus d’une ligne d’embouteillage, avec un agrandissement signalant une bouteille dont le bouchon n’est pas complètement scellé

Exemple d’inspection de bouchons de bouteille.

Robotique#

Les modèles YOLO-World permettent aux robots d’interagir avec des environnements inconnus. Même sans avoir été entraînés sur les objets susceptibles de se trouver dans une pièce, ils peuvent repérer les objets présents. Imaginons qu’un robot entre dans une pièce où il n’est jamais allé. Grâce à un modèle YOLO-World, il peut tout de même reconnaître et identifier des objets comme des chaises, des tables ou des lampes, même s’il n’a pas été spécifiquement entraîné sur ces objets.

En plus de détecter les objets, YOLO-World peut aussi déterminer leur état grâce à sa fonctionnalité « inviter puis détecter ». Par exemple, en robotique agricole, il peut servir à distinguer les fruits mûrs des fruits qui ne le sont pas, en programmant le robot pour les détecter.

L’IA dans l’industrie automobile#

L’industrie automobile comporte de nombreux éléments mobiles, et YOLO-World peut être utilisé pour différentes applications automobiles. Par exemple, pour l’entretien des voitures, la capacité de YOLO-World à reconnaître une grande variété d’objets sans étiquetage manuel ni préentraînement approfondi est très utile. YOLO-World peut servir à identifier les pièces automobiles à remplacer. Il pourrait même automatiser des tâches comme les contrôles qualité en repérant les défauts ou les pièces manquantes sur les voitures neuves.

La détection d’objets zero-shot dans les voitures autonomes constitue une autre application. Les capacités de détection zero-shot de YOLO-World peuvent améliorer l’aptitude d’un véhicule autonome à détecter et à classer en temps réel les objets sur la route, comme les piétons, les panneaux de signalisation et les autres véhicules. Il peut ainsi contribuer à repérer les obstacles et à prévenir les accidents pour des trajets plus sûrs.

Exemple de détection d’objets sur une route

Exemple de détection d’objets sur une route.

Gestion des stocks des commerces de détail#

L’identification des objets sur les rayons des magasins est essentielle pour suivre les stocks, maintenir les niveaux d’inventaire et automatiser les processus. La détection à vocabulaire ouvert d’Ultralytics YOLO-World est également utile pour la gestion des stocks.

Par exemple, pour la gestion des stocks, YOLO-World peut repérer et catégoriser rapidement les articles en rayon, comme différentes marques de boissons énergisantes. Les commerces de détail peuvent ainsi tenir un inventaire précis, gérer efficacement les niveaux de stock et fluidifier les opérations de la chaîne d’approvisionnement.

Toutes ces applications sont différentes et montrent l’étendue des possibilités offertes par YOLO-World. Passons maintenant à la pratique avec YOLO-World et découvrons un exemple de code.

Parcours du code#

Comme nous l’avons mentionné, YOLO-World peut détecter différentes pièces d’une voiture pour en faciliter l’entretien. Une application de vision par ordinateur destinée à repérer les réparations nécessaires consisterait à prendre une photo de la voiture, à identifier ses pièces, à examiner chacune d’elles pour détecter les dommages et à recommander des réparations. Chaque composant de ce système ferait appel à différentes techniques et approches d’IA. Pour ce parcours du code, concentrons-nous sur la détection des pièces automobiles.

Avec YOLO-World, tu peux identifier différentes pièces automobiles dans une image en moins de 5 minutes. Tu peux aussi étendre ce code pour tester différentes applications avec YOLO-World ! Pour commencer, nous devons installer le package Ultralytics avec pip, comme indiqué ci-dessous.

pip install ultralytics

Pour obtenir davantage d’instructions et de bonnes pratiques sur le processus d’installation, consulte notre guide Installation d’Ultralytics. Si tu rencontres des difficultés lors de l’installation des packages nécessaires à YOLOv8, consulte notre guide des problèmes courants, qui propose des solutions et des conseils.

Une fois le package nécessaire installé, nous pouvons télécharger une image depuis Internet pour y effectuer nos inférences. Nous allons utiliser l’image ci-dessous.

Berline blanche garée dans une rue de ville, image d’entrée de l’exemple YOLO-World

Notre image d’entrée.

Nous allons ensuite importer le package nécessaire, initialiser notre modèle et définir les classes recherchées dans l’image d’entrée. Dans cet exemple, nous nous intéressons aux classes suivantes : voiture, roue, portière, rétroviseur et plaque d’immatriculation.

Nous utiliserons ensuite la méthode predict en lui fournissant le chemin de l’image, ainsi que les paramètres du nombre maximal de détections et les seuils d’intersection sur l’union (IoU) et de confiance (conf), afin d’exécuter l’inférence sur l’image. Enfin, les objets détectés sont enregistrés dans un fichier nommé result.jpg.

from ultralytics import YOLOWorld

# Initialiser un modèle YOLO-World
model = YOLOWorld("yolov8s-worldv2.pt")

# Définir les classes personnalisées à détecter
model.set_classes(["car", "wheel", "car door", "car mirror", "license plate"])

# Exécuter l’inférence avec un nombre maximal de détections et des seuils d’IoU et de confiance
results = model.predict("path/to/image.jpg", max_det=100, iou=0.5, conf=0.25)

# Enregistrer le résultat annoté
results[0].save("result.jpg")

L’image de sortie suivante sera enregistrée dans tes fichiers.

Résultat de YOLO-World sur la berline blanche, avec des boîtes autour de la voiture, de ses roues, d’un rétroviseur latéral et de la plaque d’immatriculation

Notre image de sortie.

Si tu préfères découvrir ce que YOLO-World peut faire sans coder, tu peux te rendre sur la page de démonstration de YOLO-World, téléverser une image d’entrée et saisir les classes personnalisées.

Consulte notre page de documentation sur YOLO-World pour apprendre à enregistrer le modèle avec les classes personnalisées afin de pouvoir le réutiliser directement plus tard, sans avoir à saisir ces classes à chaque fois.

Tu as remarqué que les portières n’ont pas été détectées ?#

Si tu regardes à nouveau l’image de sortie, tu verras que la classe personnalisée « portière » n’a pas été détectée. Malgré ses grandes avancées, YOLO-World présente certaines limites. Pour les contourner et utiliser efficacement le modèle YOLO-World, il est important d’employer les bons types d’invites textuelles.

Voici quelques conseils :

  • YOLO-World n’a peut-être pas besoin de niveaux de confiance élevés pour produire des prédictions précises. Réduire les seuils de confiance peut donc améliorer les taux de détection.
  • Ajoute les classes qui ne t’intéressent pas. Cela aidera à améliorer la détection des objets principaux en réduisant les faux positifs pour les objets secondaires.
  • Détecter d’abord les objets les plus grands, puis se concentrer sur les détails plus petits, peut améliorer la précision de détection.
  • Précise les couleurs dans tes classes pour détecter les objets à partir d’indices de couleur.
  • Décrire la taille des objets dans les invites peut également aider YOLO-World à identifier plus précisément des objets spécifiques.
  • Les méthodes de post-traitement, comme le filtrage des prédictions par taille ou l’ajustement des niveaux de confiance pour chaque classe, peuvent encore améliorer les résultats de détection d’objets.

Les possibilités sont infinies#

Dans l’ensemble, les modèles YOLO-World peuvent devenir des outils puissants grâce à leurs capacités avancées de détection d’objets. Ils offrent une grande efficacité et une excellente précision, et contribuent à automatiser différentes tâches dans de nombreuses applications, comme l’exemple de l’identification des pièces automobiles que nous avons présenté en pratique.

N’hésite pas à parcourir notre dépôt GitHub pour en savoir plus sur nos contributions à la vision par ordinateur et à l’IA. Si tu veux découvrir comment l’IA transforme des secteurs comme les technologies de la santé, consulte nos pages de solutions. YOLO-World ouvre de nombreuses possibilités inédites pour l’IA visuelle.

Écrit par

Abirami Vina
Abirami Vina

Créateur de contenu · Ultralytics

Après avoir commencé sa carrière comme ingénieure en vision par ordinateur, Abirami Vina a acquis de solides bases en IA visuelle et en apprentissage automatique. Elle est créatrice de contenu chez Ultralytics, ainsi que fondatrice et rédactrice en chef de Scribe of AI, où elle conçoit du contenu technique de grande qualité pour des entreprises spécialisées en IA. Animée par la volonté de rendre l’IA à la fois compréhensible et captivante, elle fait le lien entre les technologies de pointe et leurs retombées concrètes.

Commentaires

Pose une question, partage tes résultats ou aide quelqu’un.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique