Ultralytics YOLOv8 erkunden#
Übersicht#
YOLOv8 wurde am 10. Januar 2023 von Ultralytics veröffentlicht und bietet eine herausragende Leistung 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 verschiedene Aufgaben der Objekterkennung in zahlreichen Anwendungsbereichen machen.

Watch: Ultralytics YOLOv8 Model Overview
Erkunde und führe YOLOv8-Modelle direkt auf der Ultralytics Platform aus.
Wichtige Merkmale von YOLOv8#
- Fortschrittliche Backbone- und Neck-Architekturen: YOLOv8 verwendet hochmoderne Backbone- und Neck-Architekturen, was zu einer verbesserten Merkmalsextraktion und Objekterkennungsleistung führt.
- Ankerfreier geteilter Ultralytics-Head: YOLOv8 verwendet einen ankerfreien, geteilten Ultralytics-Head, der im Vergleich zu ankerbasierten Ansätzen zu höherer Genauigkeit und einem effizienteren Erkennungsprozess beiträgt.
- Optimales Verhältnis von Genauigkeit und Geschwindigkeit: Durch die Konzentration auf ein optimales Gleichgewicht zwischen Genauigkeit und Geschwindigkeit eignet sich YOLOv8 für Echtzeitaufgaben der Objekterkennung in verschiedenen Anwendungsbereichen.
- Vielfalt an vortrainierten Modellen: YOLOv8 bietet eine Reihe vortrainierter Modelle für unterschiedliche Aufgaben und Leistungsanforderungen, sodass du leichter das richtige Modell für deinen konkreten Anwendungsfall findest.
Unterstützte Aufgaben und Modi#
Die YOLOv8-Serie bietet eine vielfältige Auswahl an Modellen, die jeweils auf bestimmte Aufgaben im Bereich Computer Vision spezialisiert sind. Diese Modelle decken verschiedene Anforderungen ab – von der Objekterkennung bis hin zu komplexeren Aufgaben wie Instanzsegmentierung, Klassifizierung, der Erkennung von Posen und Schlüsselpunkten sowie der Erkennung orientierter Objekte.
Jede Variante der YOLOv8-Serie ist für ihre jeweilige Aufgabe optimiert und gewährleistet eine hohe Leistung und Genauigkeit. Außerdem sind diese Modelle mit verschiedenen Betriebsmodi wie Inference, Validation, Training und Export kompatibel, wodurch sie sich in unterschiedlichen Phasen der Bereitstellung und Entwicklung einsetzen lassen.
| Modell | Dateinamen | Aufgabe | Training | Validierung | Inferenz | Export |
|---|---|---|---|---|---|---|
| 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 bietet einen Überblick über die Modellvarianten von YOLOv8 und zeigt ihre Eignung für bestimmte Aufgaben sowie ihre Kompatibilität mit verschiedenen Betriebsmodi wie Inference, Validation, Training und Export. Sie veranschaulicht die Vielseitigkeit und Robustheit der YOLOv8-Serie, wodurch sich die Modelle für zahlreiche Anwendungen in der Computer Vision eignen.
Leistungsmetriken#
Beispiele zur Verwendung dieser auf COCO trainierten Modelle mit 80 vortrainierten Klassen findest du in der Dokumentation zur Erkennung.
Beispiele zur Verwendung von YOLOv8#
Dieses Beispiel enthält einfache Beispiele für das Training und die Inferenz mit YOLOv8. Die vollständige Dokumentation zu diesen und anderen Modi findest du auf den Dokumentationsseiten zu Predict, Train, Val und Export.
Beachte, dass das folgende Beispiel für YOLOv8-Detect-Modelle zur Objekterkennung gilt. Weitere unterstützte Aufgaben findest du in der Dokumentation zu Segment, Classify, Pose und OBB.
Vortrainierte *.pt-Modelle für PyTorch sowie Konfigurationsdateien *.yaml können an die Klasse YOLO() übergeben werden, um eine Modellinstanz in Python zu erstellen:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")Zitate und Danksagungen#
Ultralytics hat aufgrund der schnellen Weiterentwicklung der Modelle kein formelles Forschungspapier zu YOLOv8 veröffentlicht. Unser Fokus liegt darauf, die Technologie weiterzuentwickeln und ihre Nutzung zu vereinfachen, statt statische Dokumentation zu erstellen. Die aktuellsten Informationen zur YOLO-Architektur, zu den Funktionen und zur Verwendung findest du in unserem GitHub-Repository und in unserer Dokumentation.
Wenn du das YOLOv8-Modell oder eine 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}
}Bitte beachte, dass der DOI noch aussteht und dem Zitat hinzugefügt wird, sobald er verfügbar ist. YOLOv8-Modelle werden unter AGPL-3.0 und Enterprise-Lizenzen bereitgestellt.
FAQ#
YOLOv8 wurde entwickelt, um die Leistung der Echtzeit-Objekterkennung durch fortschrittliche Funktionen zu verbessern. Im Gegensatz zu früheren Versionen umfasst YOLOv8 einen ank freien geteilten Ultralytics-Head, hochmoderne Backbone- und Neck-Architekturen und bietet ein optimiertes Verhältnis von Genauigkeit und Geschwindigkeit, wodurch es sich ideal für vielfältige Anwendungen eignet. Weitere Einzelheiten findest du in den Abschnitten Übersicht und Wichtige Merkmale.
YOLOv8 unterstützt zahlreiche Aufgaben der Computer Vision, darunter Objekterkennung, Instanzsegmentierung, die Erkennung von Posen und Schlüsselpunkten, die Erkennung orientierter Objekte und Klassifizierung. Jede Modellvariante ist für ihre jeweilige Aufgabe optimiert und mit verschiedenen Betriebsmodi wie Inference, Validation, Training und Export kompatibel. Weitere Informationen findest du im Abschnitt Unterstützte Aufgaben und Modi.
YOLOv8-Modelle erzielen auf verschiedenen Benchmark-Datensätzen eine herausragende Leistung. Das Modell YOLOv8n erreicht beispielsweise eine 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.
Das Training eines YOLOv8-Modells kann mit Python oder CLI erfolgen. Im Folgenden findest du Beispiele für das Training eines Modells mit einem auf COCO vortrainierten YOLOv8-Modell auf dem COCO8-Datensatz über 100 Epochen:
Beispielfrom ultralytics import YOLO # Load a COCO-pretrained YOLOv8n model model = YOLO("yolov8n.pt") # Train the model on the COCO8 example dataset for 100 epochs results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Weitere Informationen findest du in der Dokumentation zum Training.
Ja, YOLOv8-Modelle können hinsichtlich Geschwindigkeit und Genauigkeit über verschiedene Exportformate hinweg einem Leistungsvergleich unterzogen werden. Für das Benchmarking kannst du PyTorch, ONNX, TensorRT und weitere Werkzeuge verwenden. Im Folgenden findest du Beispielbefehle für das Benchmarking mit Python und CLI:
Beispielfrom ultralytics.utils.benchmarks import benchmark # Benchmark on GPU benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, device=0)Weitere Informationen findest du im Abschnitt Leistungskennzahlen.