Semantic Segmentation
Semantische Segmentierung weist jedem Pixel eine Klasse zu und gibt eine einzige dichte Klassenkarte zurück. So funktionieren die Modelle, so unterscheidet sich das Verfahren von der Instanzsegmentierung, und hier findest du Code.
Semantische Segmentierung ist eine Aufgabe der Computer Vision, bei der jedem Pixel eines Bildes ein Klassenlabel zugewiesen wird. Die Ausgabe ist eine dichte Klassenkarte mit derselben Höhe und Breite wie die Eingabe. Jeder Wert steht für eine Klassen-ID, etwa Straße, Gehweg, Gebäude, Himmel oder Person. Während die Bildklassifizierung ein Label pro Bild liefert und die Objekterkennung jedes Objekt mit einer Box umrahmt, beschreibt die semantische Segmentierung die gesamte Szene Region für Region. Dazu gehören auch amorphe Hintergrundbereiche wie Gras und Himmel, die keine zählbaren Instanzen aufweisen.
So funktioniert semantische Segmentierung#
Ein Modell für semantische Segmentierung klassifiziert jedes Pixel einzeln. Ein konvolutionales neuronales Netzwerk (CNN) oder ein Vision Transformer gibt für jede Klasse eine Bewertungsmap aus, üblicherweise mit verringerter Auflösung. Die Maps werden auf die Bildgröße hochskaliert und jedes Pixel erhält die Klasse mit der höchsten Bewertung. Beim Training wird die Vorhersage jedes Pixels mithilfe von Kreuzentropie mit einer gelabelten Maske verglichen. Pixel, die mit einem Ignorierwert – häufig 255 – markiert sind, fließen nicht in den Verlust ein.
Die zentrale Herausforderung besteht darin, dass die Erkennung einer Region ein großes rezeptives Feld und starkes Herunterskalieren erfordert, während präzise Begrenzungen feine räumliche Details voraussetzen. Vollständig konvolutionale Netzwerke (FCN) wandelten Klassifizierungsnetzwerke 2014 erstmals in dichte Vorhersagemodelle um. Encoder-Decoder-Architekturen wie U-Net stellten anschließend Begrenzungen wieder her, indem sie hochauflösende Encoder-Merkmale über Skip-Verbindungen an den Decoder weitergaben. DeepLab verwendete dilatierte (Atrous-)Faltungen, um den Kontext zu erweitern, ohne die Merkmalskarte zu verkleinern. Echtzeitmodelle verschmelzen groben Kontext auf diese Weise mit feinen Details:
Die Modelle zur semantischen Segmentierung von Ultralytics YOLO26, erkennbar am Suffix -sem, folgen diesem Muster: Sie klassifizieren Pixel anhand von Neck-Merkmalen im Maßstab 1/8, die bereits fusionierten Kontext enthalten, und skalieren die Logits anschließend um das Achtfache auf die Eingabegröße hoch. Sie sind mit den 19 Klassen von Cityscapes oder den 150 ADE20K-Klassen vortrainiert und werden mit Maskenbildern oder YOLO-Polygonlabels trainiert, die während des Trainings direkt in Masken umgewandelt werden.
from ultralytics import YOLO
# Load a YOLO26 semantic segmentation model trained on the 19 Cityscapes classes
model = YOLO("yolo26n-sem.pt")
# Predict one class ID for every pixel of a street image
results = model("https://ultralytics.com/images/bus.jpg")
class_map = results[0].semantic_mask.data
# Measure how much of the image each class covers
ids, counts = class_map.unique(return_counts=True)
for class_id, count in zip(ids.tolist(), counts.tolist()):
print(f"{results[0].names[class_id]}: {count / class_map.numel():.1%}")Die Ausgabe listet jede vorhandene Klasse und ihren Anteil am Bild auf. Alle Personen auf dem Foto fallen in einen einzigen Personenanteil, da die Klassenkarte für jedes Pixel eine Klasse speichert, aber keine Information darüber enthält, zu welchem Objekt ein Pixel gehört.
Semantische Segmentierung, Instanzsegmentierung und panoptische Segmentierung#
Die semantische Segmentierung ist eine von drei Aufgaben der Bildsegmentierung:
- Instanzsegmentierung: Weist jedem zählbaren Objekt eine eigene Maske und ID zu. Drei Autos werden so zu Auto 1, Auto 2 und Auto 3. Hintergrundpixel bleiben ungelabelt.
- Panoptische Segmentierung: Weist wie die semantische Segmentierung jedem Pixel eine Klasse zu und ergänzt Pixeln zählbarer Objekte eine Instanz-ID.
Semantische Segmentierung eignet sich für Szenen, in denen Regionen wichtiger sind als Objektzahlen, etwa befahrbare Straßenflächen oder die Bodenbedeckung.
Wenn du Hilfe bei der Wahl zwischen semantischer Segmentierung und Instanzsegmentierung brauchst, lies den Leitfaden zu semantischer und Instanzsegmentierung. Die Lektion der Ultralytics Academy Semantic Segmentation: Label Every Pixel führt durch die Beschriftung von Daten und das Training eines Modells für diese Aufgabe.
Anwendungen in der Praxis#
- Autonome Fahrzeuge: Fahrsysteme segmentieren Kamerabilder in Straßen, Gehwege, Fahrbahnmarkierungen, Fahrzeuge und Fußgänger, um befahrbare Flächen und Hindernisse zu erkennen.
- Medizinische Bildgebung: Modelle umranden Organe, Tumore und Läsionen in CT- und MRT-Aufnahmen, damit Ärztinnen und Ärzte Volumen messen und Behandlungen planen können. U-Net wurde ursprünglich für biomedizinische Bilder entwickelt.
- Analyse von Satellitenbildern: Bodenbedeckungskarten labeln jedes Pixel als Wasser, Wald, Ackerland oder bebaute Fläche, um Abholzung und Städtewachstum zu verfolgen.
- Landwirtschaft: Feldroboter und Drohnen klassifizieren Pixel als Nutzpflanze, Unkraut oder Boden, damit Sprühgeräte nur das Unkraut behandeln.
Benchmarks und Metriken#
Modelle werden anhand des mittleren Schnitts über Vereinigungsmenge (IoU), kurz mIoU, ausgewertet: Für jede Klasse wird die Überlappung zwischen vorhergesagten und tatsächlichen Pixeln berechnet und anschließend gemittelt. Dadurch zählen seltene Klassen wie Pfähle und Verkehrsschilder genauso viel wie Straßen und Himmel. ADE20K umfasst 150 Innen- und Außenklassen für die allgemeine Szenenanalyse. Cityscapes, der bekannteste Benchmark für autonomes Fahren, enthält 5.000 Straßenbilder aus 50 Städten mit präzisen Labels auf Pixelebene. Die Rangfolge richtet sich nach der mIoU über 19 Auswertungsklassen.










