Skip to main content

Workouts Monitoring mit Ultralytics YOLO26

Open Workouts Monitoring In Colab

Monitoring von Workouts durch Pose Estimation mit Ultralytics YOLO26 verbessert die Übungsbewertung durch die präzise Echtzeit-Verfolgung wichtiger Körper-Landmarken und Gelenke. Diese Technologie liefert sofortiges Feedback zur Übungsausführung, protokolliert Workout-Routinen und misst Leistungsmetriken, wodurch Trainingseinheiten für Nutzer und Trainer gleichermaßen optimiert werden.



Watch: How to Monitor Workout Exercises with Ultralytics YOLO | Squats, Leg Extension, Pushups and More

Vorteile des Workouts Monitoring

  • Optimierte Leistung: Anpassung von Workouts basierend auf Monitoring-Daten für bessere Ergebnisse.
  • Zielerreichung: Verfolge und passe Fitnessziele für messbaren Fortschritt an.
  • Personalisierung: Maßgeschneiderte Trainingspläne basierend auf individuellen Daten für mehr Effektivität.
  • Gesundheitsbewusstsein: Frühzeitige Erkennung von Mustern, die auf gesundheitliche Probleme oder Übertraining hindeuten.
  • Fundierte Entscheidungen: Datengestützte Entscheidungen zur Anpassung von Routinen und Festlegung realistischer Ziele.

Anwendungen in der realen Welt

TrainingsüberwachungTrainingsüberwachung
YOLO Liegestütze zählen mit Pose EstimationYOLO Klimmzüge zählen mit Pose Estimation
Liegestütze zählenKlimmzüge zählen
Workouts Monitoring mit Ultralytics YOLO
# Run a workout example
yolo solutions workout show=True

# Pass a source video
yolo solutions workout source="path/to/video.mp4"

# Use keypoints for pushups
yolo solutions workout kpts="[6, 8, 10]"

KeyPoints Karte

YOLO Pose Estimation Keypoints Reihenfolge Diagramm

AIGym Argumente

Hier ist eine Tabelle mit den AIGym Argumenten:

ArgumentTypStandardBeschreibung
modelstrNonePfad zu einer Ultralytics YOLO-Modelldatei.
up_anglefloat145.0Winkelschwellenwert für die 'up'-Pose.
down_angleint90Winkelschwellenwert für die 'down'-Pose.
kptslist[int]'[6, 8, 10]'Liste von drei Keypoint-Indizes, die zur Überwachung von Workouts verwendet werden. Diese Keypoints entsprechen Körpergelenken oder Teilen, wie Schultern, Ellbogen und Handgelenken, für Übungen wie Liegestütze, Klimmzüge, Kniebeugen und Bauchmuskelübungen.

Die AIGym Lösung unterstützt auch eine Reihe von Object Tracking Parametern:

ArgumentTypStandardBeschreibung
trackerstr'botsort.yaml'Gibt den zu verwendenden Tracking-Algorithmus an, z. B. bytetrack.yamlSAM 2.1botsort.yaml.
conffloat0.1Setzt den Konfidenzschwellenwert für Erkennungen; niedrigere Werte ermöglichen das Tracking von mehr Objekten, können aber zu falsch-positiven Ergebnissen führen.
ioufloat0.7Setzt den Intersection over Union (IoU) Schwellenwert zum Filtern überlappender Erkennungen.
classeslistNoneFiltert Ergebnisse nach Klassenindex. Zum Beispiel classes=[0, 2, 3] trackt nur die angegebenen Klassen.
verboseboolTrueSteuert die Anzeige der Tracking-Ergebnisse und liefert eine visuelle Ausgabe der getrackten Objekte.
devicestrNoneGibt das Gerät für die Inferenz an (z. B. cpu, cuda:0SAM 2.10). Ermöglicht Nutzern die Auswahl zwischen CPU, einer spezifischen GPU oder anderen Rechengeräten für die Modellausführung.

Zusätzlich können die folgenden Visualisierungseinstellungen angewendet werden:

ArgumentTypStandardBeschreibung
showboolFalseWenn True, werden die annotierten Bilder oder Videos in einem Fenster angezeigt. Nützlich für sofortiges visuelles Feedback während der Entwicklung oder des Tests.
line_widthint or NoneNoneGibt die Linienbreite der Begrenzungsboxen an. Wenn None, wird die Linienbreite automatisch basierend auf der Bildgröße angepasst. Bietet visuelle Anpassung für Klarheit.
show_confboolTrueZeigt den Konfidenzwert für jede Erkennung neben der Beschriftung an. Gibt Einblick in die Sicherheit des Modells für jede Erkennung.
show_labelsboolTrueZeigt Beschriftungen für jede Erkennung in der visuellen Ausgabe an. Bietet sofortiges Verständnis der erkannten Objekte.

FAQ

Wie überwache ich meine Workouts mit Ultralytics YOLO26?

Um deine Workouts mit Ultralytics YOLO26 zu überwachen, kannst du das Pose-Estimation-Fähigkeiten nutzen, um wichtige Körper-Landmarken und Gelenke in Echtzeit zu verfolgen und zu analysieren. Dies ermöglicht dir sofortiges Feedback zu deiner Übungsausführung, das Zählen von Wiederholungen und das Messen von Leistungsmetriken. Du kannst mit dem bereitgestellten Beispielcode für Liegestütze, Klimmzüge oder Bauchmuskeltraining beginnen, wie hier gezeigt:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))

gym = solutions.AIGym(
    line_width=2,
    show=True,
    kpts=[6, 8, 10],
)

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or processing is complete.")
        break
    results = gym(im0)

cv2.destroyAllWindows()

Für weitere Anpassungen und Einstellungen kannst du dich auf die AIGym-Abschnitt in der Dokumentation an.

Was sind die Vorteile von Ultralytics YOLO26 für das Workouts Monitoring?

Die Nutzung von Ultralytics YOLO26 für das Workouts Monitoring bietet mehrere entscheidende Vorteile:

  • Optimierte Leistung: Durch die Anpassung von Workouts basierend auf Monitoring-Daten kannst du bessere Ergebnisse erzielen.
  • Zielerreichung: Verfolge und passe Fitnessziele einfach für messbaren Fortschritt an.
  • Personalisierung: Erhalte maßgeschneiderte Trainingspläne basierend auf deinen individuellen Daten für optimale Effektivität.
  • Gesundheitsbewusstsein: Frühzeitige Erkennung von Mustern, die auf potenzielle gesundheitliche Probleme oder Übertraining hinweisen.
  • Fundierte Entscheidungen: Triff datengestützte Entscheidungen, um Routinen anzupassen und realistische Ziele zu setzen.

Du kannst dir ein YouTube-Video zur Demonstration ansehen, um diese Vorteile in Aktion zu sehen.

Wie genau ist Ultralytics YOLO26 bei der Erkennung und Verfolgung von Übungen?

Ultralytics YOLO26 ist bei der Erkennung und Verfolgung von Übungen dank seiner hochmodernen Pose-Schätzung Fähigkeiten äußerst präzise. Es kann wichtige Körper-Landmarken und Gelenke genau verfolgen und bietet Echtzeit-Feedback zu Übungsausführung und Leistungsmetriken. Die vortrainierten Gewichte und die robuste Architektur des Modells gewährleisten hohe präzisions- und Zuverlässigkeit. Für Beispiele aus der Praxis schau dir den Abschnitt real-world applications in der Dokumentation an, der das Zählen von Liegestützen und Klimmzügen zeigt.

Kann ich Ultralytics YOLO26 für benutzerdefinierte Workout-Routinen verwenden?

Ja, Ultralytics YOLO26 kann an benutzerdefinierte Workout-Routinen angepasst werden. Die AIGym Klasse unterstützt verschiedene Pose-Typen wie pushup, pullup, und abworkout. Du kannst Keypoints und Winkel festlegen, um spezifische Übungen zu erkennen. Hier ist ein Beispiel-Setup:

from ultralytics import solutions

gym = solutions.AIGym(
    line_width=2,
    show=True,
    kpts=[6, 8, 10],  # For pushups - can be customized for other exercises
)

Für weitere Details zum Festlegen von Argumenten beziehe dich auf den Abschnitt Arguments AIGym . Diese Flexibilität erlaubt es dir, verschiedene Übungen zu überwachen und Routinen basierend auf deinen Fitnesszielen.

Wie kann ich die Ergebnisse des Workouts Monitoring mit Ultralytics YOLO26 speichern?

Um die Ergebnisse des Workouts Monitoring zu speichern, kannst du den Code so modifizieren, dass ein Video-Writer enthalten ist, der die verarbeiteten Frames speichert. Hier ist ein Beispiel:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
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("workouts.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

gym = solutions.AIGym(
    line_width=2,
    show=True,
    kpts=[6, 8, 10],
)

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or processing is complete.")
        break
    results = gym(im0)
    video_writer.write(results.plot_im)

cap.release()
video_writer.release()
cv2.destroyAllWindows()

Dieses Setup schreibt das überwachte Video in eine Ausgabedatei, sodass du deine Trainingsleistung später überprüfen oder sie für zusätzliches Feedback mit Trainern teilen kannst.

Kommentare