La segmentation sémantique est une tâche fondamentale de la vision par ordinateur (VA) qui consiste à attribuer une étiquette de classe spécifique à chaque pixel d'une image. Contrairement à d'autres tâches de vision qui peuvent identifier des objets ou classer l'ensemble de l'image, la segmentation sémantique fournit une compréhension dense, au niveau des pixels, du contenu de la scène. Cela signifie qu'elle ne se contente pas de détecter la présence d'une voiture, mais qu'elle détermine précisément quels pixels appartiennent à la catégorie des voitures, en les différenciant des pixels appartenant à la route, au ciel ou aux piétons. Il vise à diviser une image en régions significatives correspondant à différentes catégories d'objets, offrant ainsi une compréhension complète de l'environnement visuel.
Principales différences avec les autres tâches de segmentation
Il est important de distinguer la segmentation sémantique des tâches connexes de vision par ordinateur:
- Classification d'images: Attribue une seule étiquette à l'ensemble de l'image (par exemple, "cette image contient un chat"). Elle ne localise pas les objets et n'en dessine pas les contours.
- Détection d'objets: Identifie et localise les objets à l'aide de boîtes de délimitation. Elle te dit où se trouvent les objets mais ne fournit pas leur forme exacte au niveau du pixel.
- Segmentation par instance: Va plus loin que la segmentation sémantique en ne se contentant pas de classer chaque pixel, mais en distinguant également les différentes instances d'une même classe d'objets. Par exemple, elle attribue un identifiant et un masque uniques à chaque voiture de la scène. Voir ce guide comparant la segmentation par instance et la segmentation sémantique pour plus de détails.
- Segmentation panoptique: Combine la segmentation sémantique et la segmentation par instance, en fournissant à la fois une étiquette de catégorie pour chaque pixel et des identifiants d'instance uniques pour les objets dénombrables ("choses") tout en regroupant les régions d'arrière-plan non dénombrables ("choses") comme le ciel ou la route.
Applications dans le monde réel
La compréhension détaillée de la scène fournie par la segmentation sémantique est cruciale pour de nombreuses applications du monde réel :
- Conduite autonome: Les voitures autonomes utilisent la segmentation sémantique pour comprendre précisément leur environnement. En classant les pixels appartenant aux routes, aux voies, aux trottoirs, aux piétons, aux autres véhicules et aux obstacles, le système de conduite autonome peut prendre des décisions de navigation plus sûres. Il s'agit là d'un élément clé des solutions d'IA pour l'automobile.
- Analyse d'images médicales: Dans le domaine de la santé, la segmentation sémantique aide à analyser les scans médicaux tels que les IRM ou les CT. Elle permet de délimiter automatiquement les organes, d'identifier et de mesurer les tumeurs ou les lésions, et de mettre en évidence les anomalies avec une précision au niveau du pixel. Par exemple, les modèlesYOLO d'Ultralytics peuvent être utilisés pour la détection des tumeurs, aidant ainsi les radiologues à poser des diagnostics et à planifier des traitements sur la base de techniques d'imagerie médicale détaillées.
- Analyse de l'imagerie satellitaire: Utilisée pour la classification de la couverture terrestre, le suivi de la déforestation, la planification urbaine et les applications agricoles. Elle permet de différencier les forêts, les plans d'eau, les champs et les zones bâties à partir de photos satellites, comme le montrent les exemples de l'Observatoire de la Terre de la NASA. Explore davantage l'utilisation de la vision par ordinateur pour analyser les images satellites.
- Robotique: Permet aux robots de percevoir et d'interagir plus efficacement avec leur environnement en comprenant la disposition et les objets d'une scène. Renseigne-toi sur l'intégration de la vision par ordinateur dans la robotique.
Modèles et outils
La segmentation sémantique emploie souvent des modèles d'apprentissage profond, en particulier des architectures dérivées des CNN.
Comment fonctionne la segmentation sémantique ?
L'objectif principal de la segmentation sémantique est de classer chaque pixel d'une image dans un ensemble prédéfini de catégories. Par exemple, dans une image contenant plusieurs voitures, piétons et arbres, un modèle de segmentation sémantique qualifierait tous les pixels composant une voiture de "voiture", tous les pixels d'un piéton de "piéton" et tous les pixels d'un arbre d'"arbre". Il traite toutes les instances d'une même classe d'objets de manière identique.
La segmentation sémantique moderne s'appuie fortement sur l'apprentissage profond, en particulier les réseaux neuronaux convolutifs (CNN). Ces modèles sont généralement formés à l'aide de techniques d'apprentissage supervisé, ce qui nécessite de grands ensembles de données avec des annotations détaillées au niveau des pixels. Le processus consiste à alimenter une image dans le réseau, qui sort ensuite une carte de segmentation. Cette carte est essentiellement une image où la valeur de chaque pixel (souvent représentée par une couleur) correspond à son étiquette de classe prédite, séparant visuellement différentes catégories telles que "route", "bâtiment", "personne", etc. La qualité de l'étiquetage des données est cruciale pour former des modèles précis.