Instanzsegmentierung und Tracking mit Ultralytics YOLO26#
Was ist Instanzsegmentierung?#
Instanzsegmentierung ist eine Computer-Vision-Aufgabe, bei der einzelne Objekte in einem Bild auf Pixelebene erkannt und abgegrenzt werden. Im Gegensatz zur semantischen Segmentierung, die Pixel lediglich einer Kategorie zuordnet, kennzeichnet und grenzt die Instanzsegmentierung jede einzelne Objektinstanz eindeutig ab. Das ist entscheidend für Anwendungen, die ein detailliertes räumliches Verständnis erfordern, etwa medizinische Bildgebung, autonomes Fahren und industrielle Automatisierung.
Ultralytics YOLO26 bietet leistungsstarke Funktionen zur Instanzsegmentierung, die eine präzise Erkennung von Objektgrenzen ermöglichen und zugleich die Geschwindigkeit und Effizienz beibehalten, für die YOLO-Modelle bekannt sind.
Im Ultralytics-Paket stehen zwei Arten des Trackings bei der Instanzsegmentierung zur Verfügung:
-
Instanzsegmentierung mit Klassenobjekten: Jedes Klassenobjekt erhält eine eindeutige Farbe, damit es visuell klar von den anderen unterscheidbar ist.
-
Instanzsegmentierung mit Objekttracks: Jeder Track wird durch eine eigene Farbe dargestellt, sodass Objekte über Videoframes hinweg leicht identifiziert und verfolgt werden können.
Ansehen: Instanzsegmentierung mit Objektverfolgung mit Ultralytics YOLO26
Beispiele#
| Instanzsegmentierung | Instanzsegmentierung + Objektverfolgung |
|---|---|
![]() | ![]() |
| Ultralytics-Instanzsegmentierung 😍 | Ultralytics-Instanzsegmentierung mit Objektverfolgung 🔥 |
Segmentieren und verfolgen mit YOLO26#
Die Lösung InstanceSegmentation führt auf jedem Frame ein YOLO26-Segmentierungsmodell aus, zeichnet Masken für die einzelnen Objekte und färbt jede Instanz separat ein, sodass du einzelne Objekte über ein Video hinweg verfolgen kannst. Lade ein -seg-Modell und führe es anschließend mit der Python-API oder der CLI für deine Quelle aus.
# Instance segmentation using Ultralytics YOLO26
yolo solutions isegment show=True
# Pass a source video
yolo solutions isegment source="path/to/video.mp4"
# Monitor the specific classes
yolo solutions isegment classes="[0, 5]"Argumente für InstanceSegmentation#
Hier ist eine Tabelle mit den Argumenten für InstanceSegmentation:
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
model | str | None | Pfad zu einer Ultralytics-YOLO-Modelldatei. |
line_width | int | 2 | Linienstärke für die Boxen, Keypoints und Zählwerte, die von der Lösung eingezeichnet werden. |
verbose | bool | True | Aktiviert das Protokoll der Lösung für jedes Bild, das Eingabeform, Klassenanzahlen und Verarbeitungsgeschwindigkeit enthält. Der Tracking-Aufruf selbst gibt grundsätzlich keine Meldungen aus. |
Du kannst auch die Argumente track innerhalb der Lösung InstanceSegmentation verwenden:
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
tracker | str | 'tracktrack.yaml' | Legt den zu verwendenden Verfolgungsalgorithmus fest. Integrierte Optionen: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Legt den Konfidenzschwellenwert für Erkennungen fest. Niedrigere Werte ermöglichen die Verfolgung weiterer Objekte, können aber auch falsch positive Ergebnisse einschließen. |
iou | float | 0.7 | Legt den Schwellenwert für die Schnittmenge über Vereinigung (IoU) fest, um überlappende Erkennungen herauszufiltern. |
classes | list | None | Filtert die Ergebnisse nach Klassenindex. Beispielsweise verfolgt classes=[0, 2, 3] nur die angegebenen Klassen. |
device | str | None | Legt das Gerät für die Inferenz fest (z. B. cpu, cuda:0 oder 0). So kannst du für die Modellausführung zwischen CPU, einer bestimmten GPU oder anderen Rechengeräten wählen. |
imgsz | int or tuple | 640 | Zielbildgröße für die Inferenz: eine Ganzzahl für ein quadratisches Bild oder ein (height, width)-Paar. Die Formen werden an den Modellschritt angepasst. |
max_det | int | 300 | Maximale Anzahl der Erkennungen, die pro Bild vor der Verfolgung beibehalten werden. Dadurch wird die Anzahl der Objekte begrenzt, die eine Lösung in dichten Szenen verarbeitet. |
quantize | int or str | None | Inferenzgenauigkeit: 16 (FP16) oder 32/nicht festgelegt (FP32) für PyTorch- und TorchScript-Modelle; andere Formate verwenden die Genauigkeit, die durch ihr Artefakt und ihre Laufzeitumgebung festgelegt wird. Ersetzt das veraltete Flag half. |
Außerdem stehen die folgenden Visualisierungsargumente zur Verfügung:
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
show | bool | False | Wenn True aktiviert ist, werden die annotierten Bilder oder Videos in einem Fenster angezeigt. Nützlich für unmittelbares visuelles Feedback während der Entwicklung oder beim Testen. |
show_conf | bool | True | Zeigt neben der Bezeichnung den Konfidenzwert jeder Erkennung an. Gibt Aufschluss darüber, wie sicher sich das Modell bei der jeweiligen Erkennung ist. |
show_labels | bool | True | Zeigt für jede Erkennung eine Bezeichnung in der visuellen Ausgabe an. So lassen sich erkannte Objekte sofort erkennen. |
show_boxes | bool | True | Zeichnet Begrenzungsrahmen um erkannte Objekte. Unverzichtbar, um Objekte in Bildern oder Videobildern visuell zu identifizieren und zu lokalisieren. |
Anwendungsbereiche der Instanzsegmentierung#
Die Instanzsegmentierung mit YOLO26 hat zahlreiche praktische Anwendungen in verschiedenen Branchen:
Abfallwirtschaft und Recycling#
YOLO26 kann in Abfallentsorgungsanlagen eingesetzt werden, um verschiedene Materialarten zu erkennen und zu sortieren. Das Modell kann Kunststoffabfälle, Karton, Metall und andere Wertstoffe mit hoher Präzision segmentieren. So können automatisierte Sortiersysteme Abfälle effizienter verarbeiten. Das ist besonders wichtig, da weltweit nur etwa 10 % der 7 Milliarden Tonnen Kunststoffabfälle recycelt werden.
Autonome Fahrzeuge#
In selbstfahrenden Autos hilft die Instanzsegmentierung dabei, Fußgänger, Fahrzeuge, Verkehrsschilder und andere Elemente der Straße auf Pixelebene zu erkennen und zu verfolgen. Dieses präzise Verständnis der Umgebung ist entscheidend für Navigations- und Sicherheitsentscheidungen. Dank seiner Echtzeitleistung eignet sich YOLO26 ideal für Anwendungen, bei denen es auf schnelle Reaktionen ankommt.
Medizinische Bildgebung#
Die Instanzsegmentierung kann Tumore, Organe oder Zellstrukturen in medizinischen Aufnahmen erkennen und abgrenzen. Dank der präzisen Abgrenzung von Objektgrenzen ist YOLO26 für die medizinische Diagnostik und Behandlungsplanung besonders nützlich.
Überwachung von Baustellen#
Auf Baustellen kann die Instanzsegmentierung schwere Maschinen, Arbeiter und Materialien verfolgen. So lässt sich die Sicherheit gewährleisten, indem die Position von Geräten überwacht und erkannt wird, wenn Arbeiter Gefahrenbereiche betreten. Gleichzeitig können Arbeitsabläufe und die Zuweisung von Ressourcen optimiert werden.
Häufig gestellte Fragen#
Um mit Ultralytics YOLO26 eine Instanzsegmentierung durchzuführen, initialisiere das YOLO-Modell mit einer Segmentierungsversion von YOLO26 und verarbeite damit die Videoframes. Hier ist ein vereinfachtes Codebeispiel:
import cv2 from ultralytics import solutions cap = cv2.VideoCapture("path/to/video.mp4") assert cap.isOpened(), "Error reading video file" # Video-Writer w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS)) video_writer = cv2.VideoWriter("instance-segmentation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h)) # Instanzsegmentierung initialisieren isegment = solutions.InstanceSegmentation( show=True, # # Ausgabe anzeigen model="yolo26n-seg.pt", # model="yolo26n-seg.pt" zur Objektsegmentierung mit YOLO26. ) # Video verarbeiten while cap.isOpened(): success, im0 = cap.read() if not success: print("Video frame is empty or processing is complete.") break results = isegment(im0) video_writer.write(results.plot_im) cap.release() video_writer.release() cv2.destroyAllWindows()Weitere Informationen zur Instanzsegmentierung findest du in der Ultralytics YOLO26-Anleitung.
Die Instanzsegmentierung erkennt und umgrenzt einzelne Objekte in einem Bild und weist jedem Objekt ein eindeutiges Label und eine Maske zu. Die Objektverfolgung erweitert diese Funktion, indem sie Objekten über Videoframes hinweg beständige IDs zuweist. So können dieselben Objekte kontinuierlich über die Zeit verfolgt werden. Bei der Kombination beider Funktionen, wie in YOLO26, kannst du Objektbewegungen und -verhalten in Videos umfassend analysieren und zugleich präzise Grenzinformationen beibehalten.
Ultralytics YOLO26 bietet im Vergleich zu anderen Modellen wie Mask R-CNN oder Faster R-CNN Echtzeitleistung, überlegene Genauigkeit und eine einfache Bedienung. YOLO26 verarbeitet Bilder in einem einzigen Durchlauf (einstufige Erkennung) und ist dadurch deutlich schneller, ohne an Präzision einzubüßen. Außerdem lässt sich das Modell nahtlos in die Ultralytics Platform integrieren, sodass du Modelle, Datensätze und Trainingspipelines effizient verwalten kannst. Für Anwendungen, bei denen Geschwindigkeit und Genauigkeit gleichermaßen wichtig sind, bietet YOLO26 eine optimale Balance.
Ja, Ultralytics bietet mehrere Datensätze an, die sich zum Trainieren von YOLO26-Modellen für die Instanzsegmentierung eignen. Dazu gehören COCO-Seg, COCO8-Seg (eine kleinere Teilmenge für schnelle Tests), Package-Seg und Crack-Seg. Diese Datensätze enthalten die für Instanzsegmentierungsaufgaben erforderlichen Annotationen auf Pixelebene. Für speziellere Anwendungen kannst du auch eigene Datensätze im Ultralytics-Format erstellen. Vollständige Informationen zu den Datensätzen und Anweisungen zur Verwendung findest du in der Ultralytics-Datensatzdokumentation.

