Entdecke Ultralytics YOLOv8#
Übersicht#
YOLOv8 wurde am 10. Januar 2023 von Ultralytics veröffentlicht und bietet eine Spitzenleistung in Bezug auf Genauigkeit und Geschwindigkeit. Aufbauend auf den Fortschritten früherer YOLO-Versionen führte YOLOv8 neue Funktionen und Optimierungen ein, die das Modell zur idealen Wahl für vielfältige Aufgaben der Objekterkennung in zahlreichen Anwendungsbereichen machen.

Ansehen: Überblick über das Ultralytics-YOLOv8-Modell
Entdecke und nutze YOLOv8-Modelle direkt auf der Ultralytics Platform.
Wichtige Merkmale von YOLOv8#
- Moderne Backbone- und Neck-Architekturen: YOLOv8 verwendet hochmoderne Backbone- und Neck-Architekturen, die zu einer verbesserten Merkmalsextraktion und einer höheren Leistung bei der Objekterkennung führen.
- Ankerfreier, geteilter Ultralytics-Head: YOLOv8 verwendet einen ankerfreien, geteilten Ultralytics-Head, der im Vergleich zu anskerbasierten Ansätzen zu einer höheren Genauigkeit und einem effizienteren Erkennungsprozess beiträgt.
- Optimales Verhältnis von Genauigkeit und Geschwindigkeit: Durch den Fokus auf ein optimales Gleichgewicht zwischen Genauigkeit und Geschwindigkeit eignet sich YOLOv8 für Objekterkennungsaufgaben in Echtzeit und vielfältigen Anwendungsbereichen.
- Vielfältige vortrainierte Modelle: YOLOv8 bietet eine Auswahl vortrainierter Modelle für verschiedene Aufgaben und Leistungsanforderungen. So findest du leichter das passende Modell für deinen konkreten Anwendungsfall.
Unterstützte Aufgaben und Modi#
Die YOLOv8-Reihe bietet eine große Auswahl an Modellen, die jeweils auf bestimmte Aufgaben der Computer Vision spezialisiert sind. Die Modelle decken verschiedene Anforderungen ab – von der Objekterkennung bis hin zu komplexeren Aufgaben wie der Instanzsegmentierung, Klassifizierung, Pose-/Schlüsselpunkterkennung und Erkennung orientierter Objekte.
Jede Variante der YOLOv8-Reihe ist für ihre jeweilige Aufgabe optimiert und bietet dadurch hohe Leistung und Genauigkeit. Außerdem sind diese Modelle mit verschiedenen Betriebsmodi kompatibel, darunter Inferenz, Validierung, Training und Export. So lassen sie sich in verschiedenen Phasen der Bereitstellung und Entwicklung einsetzen.
| Modell | Dateinamen | Aufgabe | Training | Validierung | Inferenz | Exportieren |
|---|---|---|---|---|---|---|
| YOLOv8 | yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt | Erkennung | ✅ | ✅ | ✅ | ✅ |
| YOLOv8-seg | yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt | Instanzsegmentierung | ✅ | ✅ | ✅ | ✅ |
| YOLOv8-cls | yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt | Klassifizierung | ✅ | ✅ | ✅ | ✅ |
| YOLOv8-pose | yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt | Pose/Schlüsselpunkte | ✅ | ✅ | ✅ | ✅ |
| YOLOv8-obb | yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt | Erkennung orientierter Objekte | ✅ | ✅ | ✅ | ✅ |
Diese Tabelle gibt einen Überblick über die YOLOv8-Modellvarianten, ihre Eignung für bestimmte Aufgaben und ihre Kompatibilität mit verschiedenen Betriebsmodi wie Inferenz, Validierung, Training und Export. Sie veranschaulicht die Vielseitigkeit und Robustheit der YOLOv8-Reihe und macht deutlich, dass sich die Modelle für zahlreiche Anwendungen in der Computer Vision eignen.
Leistungskennzahlen#
Unter Dokumentation zur Erkennung findest du Anwendungsbeispiele für diese mit COCO trainierten Modelle, die 80 vortrainierte Klassen umfassen.
YOLOv8-Anwendungsbeispiele#
Dieses Beispiel zeigt einfache Beispiele für Training und Inferenz mit YOLOv8. Die vollständige Dokumentation zu diesen und weiteren Modi findest du auf den Dokumentationsseiten zu Vorhersage, Training, Validierung und Export.
Das folgende Beispiel gilt für YOLOv8-Modelle zur Erkennung von Objekten. Weitere unterstützte Aufgaben findest du in der Dokumentation zu Segmentierung, Klassifizierung, Pose und OBB.
Vortrainierte PyTorch-Modelle *.pt sowie Konfigurationsdateien *.yaml kannst du an die Klasse YOLO() übergeben, um eine Modellinstanz in Python zu erstellen:
from ultralytics import YOLO
# Ein mit COCO vortrainiertes YOLOv8n-Modell laden
model = YOLO("yolov8n.pt")
# Modellinformationen anzeigen (optional)
model.info()
# Das Modell 100 Epochen lang mit dem COCO8-Beispieldatensatz trainieren
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Mit dem YOLOv8n-Modell eine Inferenz auf dem Bild 'bus.jpg' ausführen
results = model("path/to/bus.jpg")Zitate und Danksagungen#
Ultralytics hat aufgrund der rasanten Weiterentwicklung der Modelle kein formelles Forschungspapier zu YOLOv8 veröffentlicht. Unser Fokus liegt darauf, die Technologie weiterzuentwickeln und ihre Nutzung zu erleichtern, statt statische Dokumentation zu erstellen. Die aktuellsten Informationen zur YOLO-Architektur, zu Funktionen und zur Verwendung findest du in unserem GitHub-Repository und in unserer Dokumentation.
Wenn du das YOLOv8-Modell oder andere Software aus diesem Repository in deiner Arbeit verwendest, zitiere sie bitte im folgenden Format:
@software{yolov8_ultralytics,
author = {Glenn Jocher and Ayush Chaurasia and Jing Qiu},
title = {Ultralytics YOLOv8},
version = {8.0.0},
year = {2023},
url = {https://github.com/ultralytics/ultralytics},
orcid = {0000-0001-5950-6979, 0000-0002-7603-6750, 0000-0003-3783-7069},
license = {AGPL-3.0}
}Beachte, dass die DOI noch aussteht und der Quellenangabe hinzugefügt wird, sobald sie verfügbar ist. YOLOv8-Modelle werden unter den Lizenzen AGPL-3.0 und Enterprise bereitgestellt.
Häufig gestellte Fragen#
YOLOv8 wurde entwickelt, um die Leistung der Objekterkennung in Echtzeit mithilfe fortschrittlicher Funktionen zu verbessern. Im Gegensatz zu früheren Versionen bietet YOLOv8 einen ankerfreien, geteilten Ultralytics-Head, hochmoderne Backbone- und Neck-Architekturen sowie ein optimiertes Verhältnis von Genauigkeit und Geschwindigkeit. Damit eignet sich YOLOv8 ideal für vielfältige Anwendungen. Weitere Einzelheiten findest du in den Abschnitten Überblick und Wichtige Merkmale.
YOLOv8 unterstützt zahlreiche Computer-Vision-Aufgaben, darunter Objekterkennung, Instanzsegmentierung, Klassifizierung, Pose-/Schlüsselpunkterkennung und Erkennung orientierter Objekte. Jede Modellvariante ist auf ihre jeweilige Aufgabe optimiert und mit verschiedenen Betriebsmodi wie Inferenz, Validierung, Training und Export kompatibel. Weitere Informationen findest du im Abschnitt Unterstützte Aufgaben und Modi.
YOLOv8-Modelle erzielen Spitzenleistungen auf verschiedenen Benchmark-Datensätzen. Beispielsweise erreicht das YOLOv8n-Modell einen mAP (mittlere durchschnittliche Präzision) von 37,3 auf dem COCO-Datensatz und eine Geschwindigkeit von 0,99 ms auf A100 TensorRT. Detaillierte Leistungskennzahlen für jede Modellvariante über verschiedene Aufgaben und Datensätze hinweg findest du im Abschnitt Leistungskennzahlen.
Du kannst ein YOLOv8-Modell entweder mit Python oder über die CLI trainieren. Unten findest du Beispiele für das Training eines mit COCO vortrainierten YOLOv8-Modells auf dem COCO8-Datensatz über 100 Epochen:
Beispielfrom ultralytics import YOLO # Ein mit COCO vortrainiertes YOLOv8n-Modell laden model = YOLO("yolov8n.pt") # Das Modell 100 Epochen lang mit dem COCO8-Beispieldatensatz trainieren results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Weitere Einzelheiten findest du in der Trainingsdokumentation.
Ja, du kannst die Leistung von YOLOv8-Modellen in Bezug auf Geschwindigkeit und Genauigkeit mit verschiedenen Exportformaten benchmarken. Dafür kannst du PyTorch, ONNX, TensorRT und weitere Formate verwenden. Unten findest du Beispielbefehle für das Benchmarking mit Python und der CLI:
Beispielfrom ultralytics.utils.benchmarks import benchmark # Benchmark auf der GPU benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, device=0)Weitere Informationen findest du im Abschnitt Leistungskennzahlen.