Monitorización de entrenamientos usando Ultralytics YOLO26
La monitorización de entrenamientos mediante la estimación de poses con Ultralytics YOLO26 mejora la evaluación del ejercicio al rastrear con precisión los puntos clave del cuerpo y las articulaciones en tiempo real. Esta tecnología proporciona información instantánea sobre la forma física, registra rutinas de entrenamiento y mide métricas de rendimiento, optimizando las sesiones de entrenamiento tanto para usuarios como para entrenadores.
Watch: How to Monitor Workout Exercises with Ultralytics YOLO | Squats, Leg Extension, Pushups and More
Ventajas de la monitorización de entrenamientos
- Rendimiento optimizado: Adaptación de los entrenamientos basándose en datos de monitorización para obtener mejores resultados.
- Logro de objetivos: Realiza un seguimiento y ajusta los objetivos de fitness para lograr un progreso medible.
- Personalización: Planes de entrenamiento personalizados basados en datos individuales para mayor eficacia.
- Concienciación sobre la salud: Detección temprana de patrones que indiquen problemas de salud o sobreentrenamiento.
- Decisiones informadas: Decisiones basadas en datos para ajustar rutinas y establecer objetivos realistas.
Aplicaciones en el mundo real
| Monitorización de entrenamientos | Monitorización de entrenamientos |
|---|---|
![]() | ![]() |
| Contador de flexiones | Contador de dominadas |
# 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]"Mapa de puntos clave

Argumentos de AIGym
Aquí tienes una tabla con los argumentos de AIGym:
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
model | str | None | Ruta a un archivo de modelo Ultralytics YOLO. |
up_angle | float | 145.0 | Umbral de ángulo para la pose 'arriba'. |
down_angle | int | 90 | Umbral de ángulo para la pose 'abajo'. |
kpts | list[int] | '[6, 8, 10]' | Lista de tres índices de puntos clave utilizados para monitorear ejercicios. Estos puntos clave corresponden a articulaciones o partes del cuerpo, como hombros, codos y muñecas, para ejercicios como flexiones, dominadas, sentadillas y ejercicios abdominales. |
La solución AIGym también admite una variedad de parámetros de seguimiento de objetos:
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Especifica el algoritmo de seguimiento a utilizar, p. ej., bytetrack.yaml o botsort.yaml. |
conf | float | 0.1 | Establece el umbral de confianza para las detecciones; valores más bajos permiten el seguimiento de más objetos pero pueden incluir falsos positivos. |
iou | float | 0.7 | Establece el umbral de Intersection over Union (IoU) para filtrar detecciones solapadas. |
classes | list | None | Filtra los resultados por índice de clase. Por ejemplo, classes=[0, 2, 3] solo sigue las clases especificadas. |
verbose | bool | True | Controla la visualización de los resultados de seguimiento, proporcionando una salida visual de los objetos seguidos. |
device | str | None | Especifica el dispositivo para la inferencia (p. ej., cpu, cuda:0 o 0). Permite a los usuarios seleccionar entre CPU, una GPU específica u otros dispositivos de computación para la ejecución del modelo. |
Además, se pueden aplicar los siguientes ajustes de visualización:
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
show | bool | False | Si es True, muestra las imágenes o vídeos anotados en una ventana. Útil para obtener información visual inmediata durante el desarrollo o las pruebas. |
line_width | int or None | None | Especifica el ancho de línea de las cajas delimitadoras. Si es None, el ancho de línea se ajusta automáticamente según el tamaño de la imagen. Proporciona personalización visual para mayor claridad. |
show_conf | bool | True | Muestra la puntuación de confianza para cada detección junto a la etiqueta. Ofrece información sobre la certeza del modelo para cada detección. |
show_labels | bool | True | Muestra etiquetas para cada detección en el resultado visual. Proporciona una comprensión inmediata de los objetos detectados. |
Preguntas frecuentes
¿Cómo monitorizo mis entrenamientos usando Ultralytics YOLO26?
Para monitorizar tus entrenamientos usando Ultralytics YOLO26, puedes utilizar las capacidades de estimación de pose para rastrear y analizar puntos clave del cuerpo y articulaciones en tiempo real. Esto te permite recibir información instantánea sobre tu forma de realizar ejercicios, contar repeticiones y medir métricas de rendimiento. Puedes empezar usando el código de ejemplo proporcionado para flexiones, dominadas o ejercicios de abdominales, tal como se muestra:
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()Para una mayor personalización y ajustes, puedes consultar la sección AIGym en la documentación.
¿Cuáles son los beneficios de usar Ultralytics YOLO26 para la monitorización de entrenamientos?
Usar Ultralytics YOLO26 para la monitorización de entrenamientos ofrece varios beneficios clave:
- Rendimiento optimizado: Al adaptar los entrenamientos basándote en datos de monitorización, puedes obtener mejores resultados.
- Logro de objetivos: Realiza un seguimiento y ajusta fácilmente tus objetivos de fitness para lograr un progreso medible.
- Personalización: Obtén planes de entrenamiento personalizados basados en tus datos individuales para lograr una eficacia óptima.
- Concienciación sobre la salud: Detección temprana de patrones que indiquen posibles problemas de salud o sobreentrenamiento.
- Decisiones informadas: Toma decisiones basadas en datos para ajustar rutinas y establecer objetivos realistas.
Puedes ver una demostración en vídeo de YouTube para ver estos beneficios en acción.
¿Qué tan preciso es Ultralytics YOLO26 detectando y rastreando ejercicios?
Ultralytics YOLO26 es altamente preciso en la detección y seguimiento de ejercicios gracias a sus capacidades de vanguardia en estimación de pose. Puede rastrear con precisión puntos clave del cuerpo y articulaciones, proporcionando información en tiempo real sobre la forma y métricas de rendimiento. Los pesos preentrenados del modelo y su arquitectura robusta garantizan una alta precisión y fiabilidad. Para ver ejemplos del mundo real, consulta la sección de aplicaciones del mundo real en la documentación, donde se muestra el conteo de flexiones y dominadas.
¿Puedo usar Ultralytics YOLO26 para rutinas de entrenamiento personalizadas?
Sí, Ultralytics YOLO26 se puede adaptar a rutinas de entrenamiento personalizadas. La clase AIGym admite diferentes tipos de pose como pushup, pullup y abworkout. Puedes especificar puntos clave y ángulos para detectar ejercicios específicos. Aquí tienes una configuración de ejemplo:
from ultralytics import solutions
gym = solutions.AIGym(
line_width=2,
show=True,
kpts=[6, 8, 10], # For pushups - can be customized for other exercises
)Para más detalles sobre cómo establecer los argumentos, consulta la sección Argumentos AIGym. Esta flexibilidad te permite monitorizar diversos ejercicios y personalizar tus rutinas en función de tus objetivos de fitness.
¿Cómo puedo guardar la salida de la monitorización de entrenamientos con Ultralytics YOLO26?
Para guardar la salida de la monitorización de entrenamientos, puedes modificar el código para incluir un escritor de vídeo que guarde los fotogramas procesados. Aquí tienes un ejemplo:
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()Esta configuración escribe el vídeo monitorizado en un archivo de salida, lo que te permite revisar tu rendimiento en el entrenamiento más tarde o compartirlo con entrenadores para obtener información adicional.

