Ausgaben aus Ultralytics YOLOv8 extrahieren
Erfahre, wie du Begrenzungsrahmen, Masken, Keypoints und Klassenwahrscheinlichkeiten aus Ultralytics-YOLOv8-Results-Objekten extrahierst und sie in deinem eigenen Python-Code verwendest.
Nuvola Ladi3 Min. Lesezeit
Ultralytics YOLOv8 ist ein weit verbreitetes Computer-Vision-Modell für Aufgaben wie Objekterkennung, Segmentierung und Tracking. Egal, ob du ein erfahrener Entwickler oder neu im Bereich künstliche Intelligenz (AI) bist: Wenn du weißt, wie du Ergebnisse aus YOLOv8 effektiv extrahierst, kannst du deine Projekte deutlich verbessern. Dieser Blogbeitrag erklärt die praktischen Schritte, um Ergebnisse aus dem YOLOv8-Modell zu extrahieren und zu verwenden.
Ultralytics YOLOv8 einrichten#
Bevor du Ergebnisse extrahierst, musst du sicherstellen, dass dein Ultralytics-YOLOv8-Modell läuft. Wenn du neu dabei bist, kannst du dir unsere früheren Videos ansehen, in denen wir die Grundlagen der Einrichtung und der Verwendung von YOLO-Modellen für verschiedene Computer-Vision-Aufgaben erklären. Achte vor dem Extrahieren der Ergebnisse darauf, dass dein Modell richtig konfiguriert ist:
- Modellinitialisierung: Initialisiere das Ultralytics YOLOv8-Modell richtig und wähle eine Modellkonfiguration, die deinen konkreten Anforderungen entspricht – etwa für die Objekterkennung oder komplexere Aufgaben wie die Posenschätzung.
- Inferenz ausführen: Gib deine Daten in das Modell ein, um eine Inferenz durchzuführen. Dabei wird eine Liste von Results-Objekten erzeugt, eines pro Bild oder Frame. Über diese Objekte kannst du auf alle Erkennungsdaten zugreifen.
Das Ergebnisobjekt verstehen#
Jedes Results-Objekt in Ultralytics YOLOv8 enthält alle Erkennungsdaten, die du für dein Projekt benötigst, darunter:
- Begrenzungsrahmen: Mit
result.boxesgreifst du auf die Koordinaten erkannter Objekte zu. - Masken und Keypoints: Mit
result.masksgreifst du auf Segmentierungsmasken und mitresult.keypointsauf Keypoints für die Pose-Schätzung zu. - Klassenwahrscheinlichkeiten:
result.probsenthält die Klassenwahrscheinlichkeiten von Klassifizierungsmodellen, währendresult.boxes.confden Konfidenzwert jeder erkannten Box angibt. Damit lassen sich Erkennungen filtern.
Daten zur individuellen Verwendung extrahieren#
Gehe wie folgt vor, um diese Ausgaben in deinen Anwendungen zu verwenden:
- Daten zur Verarbeitung konvertieren: Wenn du dein Modell auf einer GPU ausführst, kannst du die Ausgaben mit
.cpu()ins CPU-Format konvertieren und weiterverarbeiten. - Koordinaten der Begrenzungsrahmen abrufen: Rufe die Koordinaten der Begrenzungsrahmen direkt aus dem Ergebnisobjekt ab und bearbeite sie. Dazu gehört der Zugriff auf normalisierte Koordinaten oder bestimmte Attribute wie Breite und Höhe.
- Klassifikationen verarbeiten: Extrahiere die Top-Klassifikationen, um Klassen-IDs und Konfidenzwerte effektiv zu nutzen.
Praktische Anwendung im Code#
Nicolai Nielsen zeigt, wie sich diese Konzepte in einem eigenen Python-Skript mit Visual Studio Code umsetzen lassen. Das Skript umfasst:
- Eine Erkennungsklasse einrichten: Initialisiere und konfiguriere dein Ultralytics YOLOv8-Modell in einer Klassenstruktur, damit es für die Eingabe von Live-Daten bereit ist.
- Ergebnisse extrahieren: Führe die Erkennung aus und extrahiere Begrenzungsrahmen, Masken und Klassifikationen direkt aus dem Ergebnisobjekt.
- Ausgaben nutzen: Konvertiere die Ergebnisse in nutzbare Formate wie JSON oder CSV oder verwende sie direkt, um Begrenzungsrahmen auf Bildern oder Videostreams einzuzeichnen.
Visualisierung und mehr#
Das Extrahieren von Rohdaten ist zwar entscheidend, doch die Visualisierung der Erkennungen kann unmittelbare Einblicke in die Leistung des Modells geben:
- Rechtecke einzeichnen: Verwende die Daten der Begrenzungsrahmen, um Rechtecke um erkannte Objekte in Bild- oder Videoausgaben einzuzeichnen.
- Direkte Darstellung: Nutze die integrierte Methode
result.plot(), um Erkennungen ohne zusätzlichen Code zu visualisieren.
Erweitere dein KI-Werkzeugset mit Ultralytics YOLOv8#
Wenn du die Extraktion von Ausgaben aus Ultralytics YOLOv8 beherrschst, erweiterst du nicht nur die Möglichkeiten deines Projekts, sondern vertiefst auch dein Verständnis von Objekterkennungssystemen.
Mit diesen Schritten kannst du Erkennungen von Ultralytics YOLOv8 an deine Anforderungen anpassen, egal, ob du fortschrittliche AI-Anwendungen entwickelst oder umfangreiche Datenanalysen durchführst.
Freu dich auf weitere Tutorials zu Ultralytics YOLOv8 und anderen AI-Technologien. Werde Teil unserer Community, um über die neuesten Entwicklungen auf dem Laufenden zu bleiben, und sieh dir unsere Dokumentation an, um mehr zu erfahren!
Verfasst von
Kommentare
Stelle eine Frage, teile deine Ergebnisse oder hilf anderen.










