Monitoraggio degli allenamenti con Ultralytics YOLO26

Apri il monitoraggio degli allenamenti in Colab

Il monitoraggio degli allenamenti tramite la stima della posa con Ultralytics YOLO26 migliora la valutazione degli esercizi tracciando accuratamente in tempo reale i principali punti di riferimento corporei e le articolazioni. Questa tecnologia fornisce un feedback immediato sulla postura durante l'esercizio, tiene traccia delle routine di allenamento e misura le metriche delle prestazioni, ottimizzando le sessioni di allenamento sia per gli utenti che per i trainer.



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

Vantaggi del monitoraggio degli allenamenti

  • Prestazioni ottimizzate: Personalizzazione degli allenamenti basata sui dati di monitoraggio per ottenere risultati migliori.
  • Raggiungimento degli obiettivi: Monitora e adegua i tuoi obiettivi di fitness per progressi misurabili.
  • Personalizzazione: Piani di allenamento personalizzati basati sui dati individuali per la massima efficacia.
  • Consapevolezza della salute: Rilevamento precoce di pattern che indicano problemi di salute o sovrallenamento.
  • Decisioni informate: Decisioni basate sui dati per regolare le routine e stabilire obiettivi realistici.

Applicazioni nel mondo reale

Monitoraggio degli allenamentiMonitoraggio degli allenamenti
Conteggio dei piegamenti con YOLO tramite stima della posaConteggio delle trazioni con YOLO tramite stima della posa
Conteggio dei piegamentiConteggio delle trazioni
Monitoraggio degli allenamenti con 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]"

Mappa dei KeyPoints

Diagramma dell'ordine dei keypoint della stima della posa con YOLO

Argomenti AIGym

Ecco una tabella con gli argomenti di AIGym:

ArgomentoTipoPredefinitoDescrizione
modelstrNonePercorso verso un file modello Ultralytics YOLO.
up_anglefloat145.0Soglia dell'angolo per la posa 'up'.
down_angleint90Soglia dell'angolo per la posa 'down'.
kptslist[int]'[6, 8, 10]'Elenco di tre indici dei punti chiave utilizzati per monitorare gli allenamenti. Questi punti chiave corrispondono alle articolazioni o parti del corpo, come spalle, gomiti e polsi, per esercizi come piegamenti, trazioni, squat e addominali.

La soluzione AIGym supporta anche una serie di parametri di tracciamento degli oggetti:

ArgomentoTipoPredefinitoDescrizione
trackerstr'botsort.yaml'Specifica l'algoritmo di tracciamento da utilizzare, ad esempio bytetrack.yaml o botsort.yaml.
conffloat0.1Imposta la soglia di confidenza per i rilevamenti; valori più bassi consentono il tracciamento di più oggetti ma potrebbero includere falsi positivi.
ioufloat0.7Imposta la soglia di Intersection over Union (IoU) per filtrare i rilevamenti sovrapposti.
classeslistNoneFiltra i risultati per indice di classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate.
verboseboolTrueControlla la visualizzazione dei risultati di tracciamento, fornendo un output visivo degli oggetti tracciati.
devicestrNoneSpecifica il dispositivo per l'inferenza (ad esempio cpu, cuda:0 o 0). Consente agli utenti di scegliere tra CPU, una specifica GPU o altri dispositivi di calcolo per l'esecuzione del modello.

Inoltre, possono essere applicate le seguenti impostazioni di visualizzazione:

ArgomentoTipoPredefinitoDescrizione
showboolFalseSe True, visualizza le immagini o i video annotati in una finestra. Utile per un feedback visivo immediato durante lo sviluppo o il test.
line_widthint or NoneNoneSpecifica lo spessore della linea dei riquadri di delimitazione. Se None, lo spessore viene regolato automaticamente in base alla dimensione dell'immagine. Fornisce personalizzazione visiva per maggiore chiarezza.
show_confboolTrueVisualizza il punteggio di confidenza per ogni rilevamento accanto all'etichetta. Offre informazioni sulla certezza del modello per ogni rilevamento.
show_labelsboolTrueVisualizza le etichette per ogni rilevamento nell'output visivo. Fornisce una comprensione immediata degli oggetti rilevati.

FAQ

Come posso monitorare i miei allenamenti utilizzando Ultralytics YOLO26?

Per monitorare i tuoi allenamenti con Ultralytics YOLO26, puoi utilizzare le funzionalità di stima della posa per tracciare e analizzare in tempo reale i principali punti di riferimento corporei e le articolazioni. Questo ti consente di ricevere un feedback immediato sulla tua postura durante l'esercizio, contare le ripetizioni e misurare le metriche delle prestazioni. Puoi iniziare utilizzando l'esempio di codice fornito per piegamenti, trazioni o allenamenti addominali, come mostrato:

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()

Per ulteriori personalizzazioni e impostazioni, puoi fare riferimento alla sezione AIGym nella documentazione.

Quali sono i vantaggi dell'utilizzo di Ultralytics YOLO26 per il monitoraggio degli allenamenti?

L'utilizzo di Ultralytics YOLO26 per il monitoraggio degli allenamenti offre diversi vantaggi chiave:

  • Prestazioni ottimizzate: Personalizzando gli allenamenti in base ai dati di monitoraggio, puoi ottenere risultati migliori.
  • Raggiungimento degli obiettivi: Monitora e adegua facilmente gli obiettivi di fitness per progressi misurabili.
  • Personalizzazione: Ottieni piani di allenamento personalizzati basati sui tuoi dati individuali per un'efficacia ottimale.
  • Consapevolezza della salute: Rilevamento precoce di pattern che indicano potenziali problemi di salute o sovrallenamento.
  • Decisioni informate: Prendi decisioni basate sui dati per regolare le routine e stabilire obiettivi realistici.

Puoi guardare una dimostrazione video su YouTube per vedere questi vantaggi in azione.

Quanto è preciso Ultralytics YOLO26 nel rilevamento e nel tracciamento degli esercizi?

Ultralytics YOLO26 è estremamente preciso nel rilevare e tracciare gli esercizi grazie alle sue funzionalità all'avanguardia di stima della posa. È in grado di tracciare accuratamente i principali punti di riferimento del corpo e le articolazioni, fornendo un feedback in tempo reale sulla postura durante l'esercizio e sulle metriche delle prestazioni. I pesi preaddestrati del modello e la sua architettura robusta garantiscono alta precisione e affidabilità. Per esempi reali, consulta la sezione applicazioni nel mondo reale nella documentazione, che mostra il conteggio di piegamenti e trazioni.

Posso utilizzare Ultralytics YOLO26 per routine di allenamento personalizzate?

Sì, Ultralytics YOLO26 può essere adattato a routine di allenamento personalizzate. La classe AIGym supporta diversi tipi di posa come pushup, pullup e abworkout. Puoi specificare i keypoint e gli angoli per rilevare esercizi specifici. Ecco un esempio di configurazione:

from ultralytics import solutions

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

Per ulteriori dettagli sull'impostazione degli argomenti, fai riferimento alla sezione Argomenti AIGym. Questa flessibilità ti permette di monitorare vari esercizi e personalizzare le routine in base ai tuoi obiettivi di fitness.

Come posso salvare l'output del monitoraggio degli allenamenti con Ultralytics YOLO26?

Per salvare l'output del monitoraggio, puoi modificare il codice includendo un video writer che salva i fotogrammi elaborati. Ecco un esempio:

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()

Questa configurazione scrive il video monitorato in un file di output, permettendoti di rivedere le tue prestazioni di allenamento in un secondo momento o di condividerle con i trainer per un feedback aggiuntivo.

Commenti