Découvrez la puissance de la segmentation sémantique : classify chaque pixel des images pour une compréhension précise de la scène. Explorez les applications et les outils dès maintenant !
La segmentation sémantique est une technique fondamentale de la vision par ordinateur (VA) qui implique l'attribution d'une une étiquette de classe spécifique à chaque pixel d'une image. Contrairement aux tâches plus simples qui consistent à catégoriser l'ensemble d'une image ou de placer une boîte de délimitation autour d'un objet, la segmentation sémantique fournit une carte parfaite de la scène. Ce niveau Ce niveau de détail granulaire permet aux machines de comprendre les limites et les formes précises des objets, en classant des régions distinctes telles que la "route", le "chemin" ou la "route". régions distinctes telles que "route", "personne", "ciel" ou "tumeur". En traitant une une image comme une collection de pixels classés plutôt que comme une simple somme d'objets, cette méthode offre une du contexte visuel, ce qui est essentiel pour les systèmes avancés d'intelligence systèmes avancés d'intelligence artificielle (IA) qui interagissent avec des environnements complexes.
Le processus de segmentation sémantique s'appuie fortement sur des modèles d'apprentissage profond (DL), en particulier des architectures basées sur réseaux neuronaux convolutifs (CNN). Ces modèles sont entraînés sur de grands grands ensembles de données annotées où des annotateurs humains experts ont étiqueté chaque pixel. Au cours de la formation, le réseau apprend à associer des caractéristiques de bas niveau telles que les textures et les bords à des concepts sémantiques de haut niveau.
Un modèle architectural courant implique une structure codeur-décodeur:
Les architectures pionnières telles que les réseaux entièrement convolutifs (Fully Convolutional Networks - FCN) ont ont jeté les bases en remplaçant les couches entièrement connectées par des couches convolutives pour produire des cartes spatiales. Des conceptions plus plus spécialisés, tels que les U-Net, utilisent des sauts de connexion pour pour préserver les détails les plus fins, ce qui les rend très efficaces pour les tâches nécessitant une grande précision.
Pour choisir l'outil adéquat pour un projet, il est essentiel de distinguer la segmentation sémantique des autres tâches de vision par ordinateur. tâches de vision par ordinateur:
La possibilité d'analyser les scènes au niveau du pixel a stimulé l'innovation dans de nombreux secteurs :
Les frameworks modernes tels que PyTorch et TensorFlow fournissent les outils nécessaires à la construction de modèles de segmentation. Cependant, les bibliothèques de haut niveau bibliothèques de haut niveau simplifient considérablement le processus. Les bibliothèques de haut niveau simplifient considérablement le processus. Ultralytics YOLO11 prennent en charge les tâches de segmentation, offrant un équilibre entre vitesse et précision de vitesse et de précision adapté à l'inférence l 'inférence en temps réel.
L'exemple suivant montre comment charger un modèle de segmentation YOLO11 pré-entraîné et effectuer une inférence sur une image à l'aide de l'outil d'inférence YOLO11 .
à l'aide de l'outil ultralytics paquet python .
from ultralytics import YOLO
# Load a pre-trained YOLO11 segmentation model
model = YOLO("yolo11n-seg.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Visualize the segmentation mask results
results[0].show()
Pour les développeurs qui souhaitent créer des solutions personnalisées, des outils d'annotation tels que LabelMe ou CVAT sont sont essentiels pour préparer les données de formation. Une fois formés, ces modèles peuvent être déployés sur des appareils périphériques à l'aide de la technologie OpenCV ou des formats optimisés comme ONNX pour une performance efficace dans les environnements de production.