Zum Inhalt springen

Ultralytics YOLOv8 Modi

Ultralytics YOLO Ökosystem und Integrationen

Einführung

Ultralytics YOLOv8 ist nicht einfach nur ein weiteres Objekterkennungsmodell, sondern ein vielseitiges Framework, das den gesamten Lebenszyklus von Machine-Learning-Modellen abdeckt - von der Dateneingabe und dem Modelltraining bis hin zur Validierung, dem Einsatz und der Verfolgung in der realen Welt. Jeder Modus dient einem bestimmten Zweck und wurde entwickelt, um dir die Flexibilität und Effizienz zu bieten, die du für verschiedene Aufgaben und Anwendungsfälle brauchst.



Pass auf: Ultralytics Modi Tutorial: Trainieren, Validieren, Vorhersagen, Exportieren und Benchmarking.

Modi auf einen Blick

Um das Beste aus deinen Modellen herauszuholen, ist es wichtig, die verschiedenen Modi zu verstehen, die Ultralytics YOLOv8 unterstützt:

  • Trainingsmodus: Verfeinere dein Modell mit benutzerdefinierten oder vorab geladenen Datensätzen.
  • Val-Modus: Ein Kontrollpunkt nach dem Training, um die Leistung des Modells zu überprüfen.
  • Vorhersagemodus: Entfessle die Vorhersagekraft deines Modells auf realen Daten.
  • Exportmodus: Mache dein Modell in verschiedenen Formaten einsatzbereit.
  • Verfolgungsmodus: Erweitere dein Objekterkennungsmodell zu Echtzeit-Tracking-Anwendungen.
  • Benchmark-Modus: Analysiere die Geschwindigkeit und Genauigkeit deines Modells in verschiedenen Einsatzumgebungen.

Dieser umfassende Leitfaden soll dir einen Überblick und praktische Einblicke in jeden Modus geben und dir helfen, das volle Potenzial von YOLOv8 zu nutzen.

Zug

Der Train-Modus wird für das Training eines YOLOv8 Modells auf einem benutzerdefinierten Datensatz verwendet. In diesem Modus wird das Modell mit dem angegebenen Datensatz und den Hyperparametern trainiert. Beim Training werden die Parameter des Modells so optimiert, dass es die Klassen und Positionen der Objekte in einem Bild genau vorhersagen kann.

Beispiele für Züge

Val

Der Val-Modus wird verwendet, um ein YOLOv8 Modell zu validieren, nachdem es trainiert worden ist. In diesem Modus wird das Modell anhand einer Validierungsmenge bewertet, um seine Genauigkeit und Generalisierungsleistung zu messen. In diesem Modus können die Hyperparameter des Modells angepasst werden, um seine Leistung zu verbessern.

Val Beispiele

Vorhersage

Der Modus "Vorhersage" wird verwendet, um mit einem trainierten YOLOv8 Modell Vorhersagen für neue Bilder oder Videos zu treffen. In diesem Modus wird das Modell aus einer Checkpoint-Datei geladen, und der Nutzer kann Bilder oder Videos zur Verfügung stellen, um Schlussfolgerungen zu ziehen. Das Modell sagt die Klassen und Orte der Objekte in den eingegebenen Bildern oder Videos voraus.

Beispiele vorhersagen

exportieren

Der Exportmodus wird verwendet, um ein YOLOv8 Modell in ein Format zu exportieren, das für den Einsatz verwendet werden kann. In diesem Modus wird das Modell in ein Format umgewandelt, das von anderen Softwareanwendungen oder Hardwaregeräten verwendet werden kann. Dieser Modus ist nützlich, wenn das Modell in Produktionsumgebungen eingesetzt werden soll.

Beispiele exportieren

Track

Der Verfolgungsmodus wird für die Verfolgung von Objekten in Echtzeit mit einem YOLOv8 Modell verwendet. In diesem Modus wird das Modell aus einer Checkpoint-Datei geladen, und der Nutzer kann einen Live-Videostream bereitstellen, um eine Objektverfolgung in Echtzeit durchzuführen. Dieser Modus ist nützlich für Anwendungen wie Überwachungssysteme oder selbstfahrende Autos.

Track Beispiele

Benchmark

Der Benchmark-Modus wird verwendet, um ein Profil der Geschwindigkeit und Genauigkeit verschiedener Exportformate für YOLOv8 zu erstellen. Die Benchmarks liefern Informationen über die Größe des exportierten Formats, seine mAP50-95 Metriken (für Objekterkennung, Segmentierung und Pose) oder accuracy_top5 Metriken (für die Klassifizierung) und die Inferenzzeit in Millisekunden pro Bild für verschiedene Exportformate wie ONNX, OpenVINO, TensorRT und andere. Diese Informationen können den Nutzern helfen, das optimale Exportformat für ihren speziellen Anwendungsfall zu wählen, je nachdem, welche Anforderungen sie an Geschwindigkeit und Genauigkeit stellen.

Benchmark Beispiele

FAQ

Wie trainiere ich ein benutzerdefiniertes Objekterkennungsmodell mit Ultralytics YOLOv8 ?

Um ein benutzerdefiniertes Objekterkennungsmodell mit Ultralytics YOLOv8 zu trainieren, musst du den Trainingsmodus verwenden. Du brauchst einen Datensatz im Format YOLO , der Bilder und die entsprechenden Anmerkungsdateien enthält. Verwende den folgenden Befehl, um den Trainingsprozess zu starten:

Beispiel

from ultralytics import YOLO

# Train a custom model
model = YOLO("yolov8n.pt")
model.train(data="path/to/dataset.yaml", epochs=100, imgsz=640)
yolo train data=path/to/dataset.yaml epochs=100 imgsz=640

Ausführlichere Anweisungen findest du im Ultralytics Zugführer.

Welche Messwerte verwendet Ultralytics YOLOv8 , um die Leistung des Modells zu überprüfen?

Ultralytics YOLOv8 verwendet während des Validierungsprozesses verschiedene Metriken, um die Leistung des Modells zu bewerten. Dazu gehören:

  • mAP (mean Average Precision): Damit wird die Genauigkeit der Objekterkennung bewertet.
  • IOU (Intersection over Union): Misst die Überschneidung zwischen den vorhergesagten und den tatsächlichen Bounding Boxen.
  • Präzision und Rückruf: Die Präzision misst das Verhältnis der wahrhaftig positiven Erkennungen zur Gesamtzahl der entdeckten Positiven, während der Recall das Verhältnis der wahrhaftig positiven Erkennungen zur Gesamtzahl der tatsächlich positiven Erkennungen misst.

Du kannst den folgenden Befehl ausführen, um die Validierung zu starten:

Beispiel

from ultralytics import YOLO

# Validate the model
model = YOLO("yolov8n.pt")
model.val(data="path/to/validation.yaml")
yolo val data=path/to/validation.yaml

Weitere Informationen findest du im Validierungsleitfaden.

Wie kann ich mein YOLOv8 Modell für den Einsatz exportieren?

Ultralytics YOLOv8 bietet eine Exportfunktion, mit der du dein trainiertes Modell in verschiedene Formate konvertieren kannst, z.B. ONNX, TensorRT, CoreML, und mehr. Verwende das folgende Beispiel, um dein Modell zu exportieren:

Beispiel

from ultralytics import YOLO

# Export the model
model = YOLO("yolov8n.pt")
model.export(format="onnx")
yolo export model=yolov8n.pt format=onnx

Detaillierte Schritte für jedes Exportformat findest du in der Exportanleitung.

Wozu dient der Benchmark-Modus in Ultralytics YOLOv8 ?

Der Benchmark-Modus in Ultralytics YOLOv8 wird verwendet, um die Geschwindigkeit und Genauigkeit verschiedener Exportformate wie ONNX, TensorRT und OpenVINO zu analysieren. Er liefert Kennzahlen wie die Modellgröße, mAP50-95 für die Objekterkennung und die Inferenzzeit über verschiedene Hardwarekonfigurationen hinweg, damit du das am besten geeignete Format für deine Einsatzanforderungen auswählen kannst.

Beispiel

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolov8n.pt data='coco8.yaml' imgsz=640 half=False device=0

Weitere Informationen findest du im Benchmark-Leitfaden.

Wie kann ich mit Ultralytics YOLOv8 eine Objektverfolgung in Echtzeit durchführen?

Die Objektverfolgung in Echtzeit kann mit dem Verfolgungsmodus in Ultralytics YOLOv8 erreicht werden. Dieser Modus erweitert die Möglichkeiten der Objekterkennung, um Objekte über Videobilder oder Live-Feeds hinweg zu verfolgen. Verwende das folgende Beispiel, um die Verfolgung zu aktivieren:

Beispiel

from ultralytics import YOLO

# Track objects in a video
model = YOLO("yolov8n.pt")
model.track(source="path/to/video.mp4")
yolo track source=path/to/video.mp4

Ausführliche Anweisungen findest du im Track Guide.



Erstellt am 2023-11-12, Aktualisiert am 2024-07-04
Autoren: glenn-jocher (6)

Kommentare