Contrôle vert
Lien copié dans le presse-papiers

Qu'est-ce que la segmentation des instances ? Un guide rapide

Rejoins-nous pour examiner de plus près ce qu'est la segmentation d'instance, comment elle fonctionne, son utilisation dans diverses applications de vision par ordinateur et l'impact qu'elle peut avoir.

Les applications de vision par ordinateur sont de plus en plus courantes dans notre vie quotidienne, qu'il s'agisse des caméras de circulation qui surveillent l'état des routes ou des systèmes d'auto-évaluation dans les magasins. En permettant aux machines de comprendre les données visuelles d'une manière similaire à celle des humains, l'IA de vision a un impact dans toute une série d'industries.

Beaucoup de ces applications reposent sur la détection d'objets, une tâche de vision par ordinateur qui place des boîtes de délimitation autour d'objets clés dans les images. Bien que cette approche fonctionne souvent bien, certaines solutions d'analyse d'images ont besoin d'une précision encore plus grande.

Par exemple, en imagerie médicale, il ne suffit pas de détecter une tumeur - il est crucial d'en dessiner la forme exacte. De même, en robotique, les machines doivent reconnaître les contours exacts d'un objet pour le saisir correctement. Pour relever ces défis, la segmentation des instances offre une solution plus précise.

La segmentation des instances est une tâche de vision par ordinateur conçue pour prendre en charge les cas d'utilisation où la détection des objets n'est pas suffisante - elle permet d'obtenir une précision au niveau du pixel. Les modèles de vision artificielle comme Ultralytics YOLO11 peuvent être utilisés pour appliquer facilement la segmentation d'instance aux images et aux vidéos. 

Fig 1. Exemple d'utilisation de YOLO11 pour la segmentation des instances.

Dans ce guide, nous allons décomposer le fonctionnement de la segmentation des instances, ses applications et la façon dont Ultralytics YOLO11 peut être formé sur mesure pour des tâches de segmentation spécifiques.

Qu'est-ce que la segmentation des instances ?

Disons qu'il y a une photo de groupe de personnes qui se tiennent proches les unes des autres. La détection d'objets peut aider à dessiner des boîtes autour de chaque personne, mais cela ne t'indique pas leur forme exacte. 

La segmentation des instances, en revanche, est similaire à un traçage minutieux autour de chaque personne afin que tu puisses voir leur contour complet, même s'ils se chevauchent. Au lieu de simplement marquer l'emplacement d'un objet avec une boîte, elle identifie la forme exacte de chaque objet au niveau des pixels, ce qui facilite la compréhension des images complexes.

Le résultat est un masque détaillé qui remplit la forme d'un objet, en indiquant exactement quels pixels lui appartiennent. Ce niveau de précision est utile dans de nombreuses applications du monde réel où il est important de comprendre la forme et les limites exactes des objets.

Fig 2. Présentation de la prise en charge de la segmentation des instances par YOLO11.

Segmentation des instances vs segmentation sémantique

En explorant la segmentation des instances, tu rencontreras peut-être le concept de segmentation sémantique.

Ces deux techniques aident les ordinateurs à comprendre les images au niveau des pixels, mais elles ont des objectifs différents. La segmentation sémantique étiquette chaque pixel en fonction de sa catégorie, en regroupant tous les objets du même type. Par exemple, dans une image comportant plusieurs voitures, la segmentation sémantique les marque toutes comme "voiture" sans faire de distinction entre les véhicules individuels.

La segmentation des instances, en revanche, va plus loin en identifiant chaque objet séparément. Elle attribue des étiquettes uniques aux instances individuelles et crée des masques précis autour de leurs formes. Ainsi, dans la même image, la segmentation par instance ne se contenterait pas de tout étiqueter comme "voiture", mais reconnaîtrait et décrirait chaque voiture individuellement.

La principale différence entre les deux est que la segmentation sémantique regroupe les objets par catégorie, tandis que la segmentation par instance distingue chaque objet en tant qu'entité unique avec des limites claires. Le choix de la tâche à utiliser dépend de l'application spécifique - s'il suffit de savoir ce qu'il y a dans une image ou s'il est important de différencier les objets individuels.

Fig 3. Segmentation des instances et segmentation sémantique (à droite et à gauche, respectivement).

Modèles de segmentation d'instances populaires

Il existe aujourd'hui différents modèles de segmentation des instances disponibles pour la communauté Vision AI. Certains sont plus rapides, d'autres plus précis et d'autres encore plus faciles à utiliser. 

Ces options, bien qu'utiles, peuvent conduire à la question suivante : laquelle est la bonne à utiliser pour une tâche spécifique ? Parmi les options, les modèlesYOLO d'Ultralytics sont assez populaires parce qu'ils mettent l'accent sur la vitesse et la précision. 

De plus, ces modèles ont beaucoup évolué au fil des ans. Par exemple , Ultralytics YOLOv5 a simplifié le déploiement à l'aide de frameworks tels que PyTorch, rendant l'IA de vision avancée accessible à un plus large public sans nécessiter d'expertise technique approfondie.

Tirer parti de ce succès, Ultralytics YOLOv8 a introduit une meilleure prise en charge des tâches de vision artificielle telles que la segmentation des instances, l'estimation de la pose et la classification des images. 

Aujourd'hui, YOLO11 atteint un nouveau niveau de performance. Il atteint une précision moyenne plus élevée (mAP) sur l'ensemble de données COCO avec 22 % de paramètres en moins que YOLOv8m, ce qui signifie qu'il peut reconnaître les objets avec plus de précision tout en utilisant moins de ressources.

Fig 4. Analyse comparative de YOLO11.

En termes simples, YOLO11 offre une précision de pointe sans compromettre l'efficacité, ce qui change la donne sur le terrain.

Comprendre le fonctionnement de la segmentation des instances

Ensuite, examinons comment fonctionne généralement la segmentation des instances. Les anciens modèles de vision par ordinateur utilisent une approche en deux étapes. 

Tout d'abord, ils détectent les objets en dessinant des boîtes de délimitation autour d'eux. Ensuite, ils génèrent un masque au niveau des pixels pour définir la forme exacte de chaque objet. Un exemple bien connu est le R-CNN de masque, qui s'appuie sur les modèles de détection d'objets en ajoutant une étape de prédiction de masque. Bien que cette méthode soit efficace, elle peut être lente car elle traite l'image en plusieurs étapes, ce qui complique les applications en temps réel.

Pendant ce temps, des modèles comme YOLO11 traitent les images en une seule fois, en prédisant simultanément les boîtes de délimitation des objets et les masques de segmentation des instances. Cette approche rationalisée la rend beaucoup plus rapide tout en conservant une grande précision. Par conséquent, elle est particulièrement utile pour les applications en temps réel telles que la conduite autonome, l'analyse vidéo et la robotique, où la vitesse et la précision sont cruciales.

Formation personnalisée YOLO11 pour la segmentation des instances

YOLO11 est livré avec un modèle pré-entraîné. Il a été entraîné sur l'ensemble de données COCO-Seg, qui couvre les objets de tous les jours pour la segmentation d'instances. Cependant, le package Ultralytics Python prend en charge l'entraînement personnalisé, ce qui est essentiel pour les applications spécialisées où des objets uniques doivent être segmentés.

Pourquoi la formation personnalisée ou l'affinement d'un modèle sont-ils importants ? La formation personnalisée tire parti de l'apprentissage par transfert en s'appuyant sur les connaissances déjà intégrées dans les modèles pré-entraînés. Plutôt que de partir de zéro, il adapte un modèle existant à de nouvelles tâches en utilisant des ensembles de données plus petits et moins de ressources informatiques, tout en conservant une grande précision.

Comment personnaliser la formation YOLO11

Voici un examen plus approfondi des étapes nécessaires pour affiner YOLO11 pour la segmentation des instances : 

  • Préparation des données : Collecte et annote les images en fonction de ton application spécifique. Ultralytics prend en charge plusieurs ensembles de données d'images, mais tu peux aussi t'entraîner à l'aide de ton propre ensemble de données en préparant les images et les annotations dans le format YOLO requis.
  • Utiliser un modèle pré-entraîné : Au lieu de partir de zéro, utilise un modèleYOLO11 d Ultralytics pré-entraîné.
  • Entraînement du modèle : Ajuste les paramètres vitaux de l'entraînement comme la taille du lot (images traitées par itération), la taille de l'image (résolution d'entrée cible) et les époques (nombre total de cycles d'entraînement) et entraîne le modèle.
  • Évaluation des performances : Une fois l'entraînement du modèle terminé, tu peux tester la précision du modèle en utilisant des mesures de performance comme le mAP. Le package Ultralytics Python fournit également des fonctions intégrées pour l'évaluation des modèles.

Applications de segmentation d'instances rendues possibles par YOLO11

La segmentation des instances peut être utilisée pour résoudre des défis du monde réel en aidant les machines à voir et à comprendre les objets avec plus de précision. De l'amélioration de l'automatisation à la protection de l'environnement, elle joue un rôle clé dans de nombreux domaines. Voyons quelques exemples de domaines dans lesquels elle a un impact.

Sécurité et surveillance des chantiers de construction à l'aide de YOLO11

La segmentation des instances peut être un élément essentiel pour assurer la sécurité et l'efficacité sur les chantiers de construction. Par exemple, elle peut être utilisée pour surveiller les machines lourdes. 

YOLO11 peut être affiné pour segmenter et identifier avec précision différents types d'équipements, tels que les grues, les excavateurs et les bulldozers, et suivre leurs positions en temps réel. Cela permet aux responsables de chantier de s'assurer que les machines fonctionnent strictement dans les zones désignées et n'empiètent pas sur les zones où des travailleurs sont présents ou des dangers existent. 

De plus, l'intégration de ces solutions à des systèmes d'alerte en temps réel permet de prendre rapidement des mesures correctives. En outre, les informations recueillies peuvent aider à optimiser l'aménagement du site et le déroulement des opérations, ce qui réduit encore les risques et stimule la productivité.

Fig 5. Surveillance de machines lourdes à l'aide de YOLO11.

Surveillance des animaux avec segmentation et YOLO11

La surveillance du comportement des animaux aide les chercheurs, les agriculteurs et les défenseurs de l'environnement à mieux s'occuper des animaux dans différents environnements. La segmentation des instances joue un rôle utile dans ces systèmes en identifiant et en segmentant les animaux individuels dans les fermes, les zoos et les habitats naturels. Contrairement à la détection traditionnelle d'objets qui utilise des boîtes de délimitation, la segmentation d'instance fournit une délimitation au niveau du pixel de chaque animal, ce qui est particulièrement utile lorsque les animaux sont très proches les uns des autres.

Une segmentation détaillée facilite un suivi plus précis des mouvements et des comportements. Les animaux qui se chevauchent ou qui sont étroitement regroupés peuvent être reconnus distinctement et fournir une analyse plus précise des interactions, des évaluations de santé et des modèles d'activité. Dans l'ensemble, des connaissances plus approfondies sur le comportement des animaux permettent d'améliorer les pratiques de soins et de gestion des animaux.

Fig 6. Surveillance du bétail à l'aide de la segmentation des instances.

YOLO11 dans l'analyse sportive et le suivi des joueurs.

Le suivi précis des joueurs et des événements constitue une part importante de l'analyse sportive. Les méthodes de suivi traditionnelles reposent sur l'étiquetage manuel, qui ne permet pas toujours de saisir les interactions détaillées. La vision par ordinateur peut être utilisée pour segmenter les détails comme chaque joueur, chaque ballon et chaque événement clé au niveau du pixel afin d'obtenir des informations détaillées.

Par exemple, la segmentation des instances peut aider à détecter des événements comme les fautes ou les incidents hors balle en séparant clairement chaque joueur et chaque objet. Ce suivi granulaire permis par des modèles comme YOLO11 offre aux analystes des informations plus claires pour étudier les schémas de mouvement, le positionnement spatial et les interactions avec une grande précision. L'un des principaux avantages de ces informations est qu'elles aident les équipes à affiner leurs stratégies et à stimuler les performances globales.

Avantages et inconvénients de la segmentation des instances

Voici quelques-uns des principaux avantages que la segmentation des instances peut apporter à diverses industries :

  • Amélioration de l'automatisation : En automatisant des tâches telles que le contrôle de la qualité et la surveillance de la sécurité, la segmentation des instances réduit le besoin d'intervention manuelle et minimise les erreurs humaines.
  • Une meilleure compréhension de la scène: En délimitant précisément chaque objet, la segmentation des instances contribue à une meilleure compréhension des scènes complexes, favorisant ainsi une prise de décision plus éclairée.
  • Post-traitement efficace: La sortie au niveau du pixel simplifie les tâches telles que la suppression de l'arrière-plan, le comptage d'objets et l'analyse spatiale, réduisant ainsi le besoin d'étapes de traitement supplémentaires.

Si ces avantages mettent en évidence l'impact de la segmentation des instances sur les différents cas d'utilisation, il est également essentiel de prendre en compte les défis liés à sa mise en œuvre. 

Voici quelques-unes des principales limites de la segmentation par instance :

  • Défis liés à la transparence : La segmentation d'objets transparents ou réfléchissants comme le verre et l'eau est difficile, ce qui entraîne des limites imprécises.
  • Frais généraux de maintenance : Pour que les modèles restent précis et pertinents, des mises à jour et des ajustements continus sont nécessaires à mesure que les conditions environnementales et les ensembles de données changent.
  • Effort d'annotation élevé : L'entraînement des modèles de segmentation des instances nécessite des annotations détaillées au niveau des pixels, ce qui augmente considérablement le temps et les coûts liés à la préparation des données.

Principaux enseignements

La segmentation des instances permet de distinguer les objets individuels avec précision, même lorsqu'ils se chevauchent. En saisissant les limites des objets au niveau des pixels, elle permet de mieux comprendre les données visuelles par rapport aux tâches traditionnelles de vision par ordinateur telles que la détection d'objets.

Les progrès récents en matière de vision par ordinateur ont rendu la segmentation des instances plus rapide et plus facile à utiliser. En particulier, les modèles de vision par ordinateur comme Ultralytics YOLO11 simplifient le processus, permettant une segmentation en temps réel avec une configuration minimale, ce qui le rend plus accessible pour diverses industries et applications.

Curieux d'en savoir plus sur l'IA ? Visite notre dépôt GitHub et connecte-toi avec notre communauté pour continuer à explorer. Découvre des innovations comme l'IA dans les voitures auto-conduites et l'IA de vision dans l'agriculture sur nos pages de solutions. Vérifie nos options de licence et lance-toi dans un projet de vision par ordinateur !

Logo FacebookLogo de TwitterLogo LinkedInSymbole du lien de copie

Lire la suite dans cette catégorie

Construisons ensemble le futur
de l'IA !

Commence ton voyage avec le futur de l'apprentissage automatique.