Pose Estimation
La estimación de pose localiza puntos clave, como las articulaciones, para describir la posición de un cuerpo o un objeto. Incluye métodos de arriba abajo, de abajo arriba y de una sola etapa, además de OKS.
La estimación de pose es la tarea de visión artificial que consiste en localizar un conjunto predefinido de puntos clave de un cuerpo u objeto, como los hombros, codos y rodillas de una persona, y conectarlos para formar un esqueleto que describa su postura. Un modelo genera las coordenadas de imagen de cada punto clave, o su posición en 3D, junto con una puntuación de confianza, de modo que las aplicaciones pueden medir ángulos articulares, contar repeticiones o reconocer acciones. La estimación de pose describe cómo está de pie o se mueve cada persona, algo que no capturan ni un cuadro delimitador de la detección de objetos ni una máscara de la segmentación de instancias.
Cómo funciona la estimación de pose#
Los estimadores de pose 2D para varias personas siguen una de estas tres estrategias; la tercera refleja los detectores de objetos de una etapa:
- De arriba abajo: Un detector de personas encuentra a todas las personas de la imagen y un modelo para una sola persona predice los puntos clave dentro de cada recorte, como en HRNet (2019) y ViTPose (2022). La precisión es alta con personas grandes y claramente visibles, y el coste aumenta con el número de personas.
- De abajo arriba: La red encuentra todos los puntos clave de la imagen a la vez y después los agrupa por persona. OpenPose (2017) conecta las articulaciones mediante campos de afinidad de partes, vectores 2D que apuntan a lo largo de cada extremidad, por lo que el coste apenas varía en multitudes.
- De una sola etapa: La red predice el cuadro de una persona y todos sus puntos clave desde la misma ubicación de la cuadrícula, en una sola pasada, sin necesidad de recortes ni de una etapa de agrupación. YOLO-Pose (2022) incorporó este diseño a YOLO.
Las ubicaciones de los puntos clave se obtienen mediante mapas de calor, uno por punto clave, cuyo pico marca la ubicación, o mediante la regresión directa de las coordenadas. Los mapas de calor dominaron las métricas de referencia durante años, pero consumen memoria y están limitados por la resolución del mapa. La estimación residual de log-verosimilitud (RLE) redujo la diferencia de la regresión en 2021 al aprender la distribución del error de predicción con un flujo normalizante. Los modelos de pose YOLO26 son regresores de una sola etapa entrenados con RLE: durante el entrenamiento, una rama adicional predice la incertidumbre de cada punto clave y un flujo RealNVP puntúa el error; ambas se eliminan cuando se fusiona el modelo para la inferencia, por lo que no añaden ningún coste de inferencia.
from ultralytics import YOLO
# Carga un modelo nano de pose YOLO26 entrenado con los 17 puntos clave corporales de COCO
model = YOLO("yolo26n-pose.pt")
# Encuentra a todas las personas y sus puntos clave en una sola pasada
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# La forma es (personas, puntos clave, xy); guarda la imagen con los esqueletos dibujados
print(result.keypoints.xy.shape)
result.save(filename="pose_result.jpg")La forma impresa indica el número de personas encontradas, multiplicado por 17 puntos clave y por 2 coordenadas de píxel; la imagen guardada muestra cada esqueleto sobre la persona correspondiente.
Estimación de pose 2D y 3D#
Los estimadores 2D devuelven coordenadas de píxeles. La estimación de pose humana 3D recupera las posiciones de las articulaciones en el espacio elevando una secuencia de puntos clave 2D con una segunda red, como en VideoPose3D, triangulando puntos clave observados desde varias cámaras calibradas o ajustando a la imagen una malla corporal paramétrica como SMPL. La estimación de pose de objetos es una tarea distinta: recupera la rotación y la traslación 3D de un objeto rígido, a menudo a partir de puntos clave de su superficie, para la manipulación robótica y la realidad aumentada.
Evaluación de la estimación de pose#
El benchmark COCO Keypoints, con unas 250 000 personas etiquetadas con 17 puntos clave, puntúa las predicciones mediante la similitud de puntos clave de objetos (OKS), el equivalente para puntos clave de la intersección sobre unión (IoU). Para cada punto clave etiquetado, la distancia d entre la predicción y la etiqueta se convierte en una similitud exp(-d²/(2s²k²)), donde s² es el área segmentada de la persona y k es una constante por punto clave medida según la consistencia con la que los anotadores colocaron ese punto clave. OKS calcula la media de estos términos para los puntos clave etiquetados, y la precisión media promedio (mAP) se calcula como la media de los umbrales OKS de 0.50 a 0.95.
import numpy as np
# COCO falloff constants: annotators place eyes far more consistently than hips
sigmas = {"eye": 0.025, "hip": 0.107}
area = 20_000 # person's segmented area in pixels (s squared)
error = 5.0 # predicted keypoint lies 5 pixels from its label
# Per-keypoint OKS term: exp(-d^2 / (2 s^2 k^2)) with k = 2 * sigma
for name, sigma in sigmas.items():
similarity = np.exp(-(error**2) / (2 * area * (2 * sigma) ** 2))
print(f"{name}: {similarity:.2f}")El mismo error de 5 píxeles obtiene una puntuación de 0,78 en un ojo y de 0,99 en una cadera. Otras pruebas de referencia emplean otras medidas: MPII informa de PCKh, la proporción de puntos clave que quedan a menos de la mitad del tamaño de la cabeza de su etiqueta, y las pruebas 3D, como Human3.6M, informan del error medio de posición por articulación en milímetros.
Aplicaciones en el mundo real#
- Análisis deportivo: Los entrenadores miden ángulos articulares, longitud de zancada y mecánica del swing a partir de vídeos normales, sin los marcadores reflectantes de la captura de movimiento de laboratorio.
- Rehabilitación: Las aplicaciones de fisioterapia siguen en casa la amplitud de movimiento y la técnica de los ejercicios, y los sistemas de detección de caídas vigilan si los puntos clave del cuerpo descienden hasta el nivel del suelo.
- Reconocimiento de acciones: Las secuencias de esqueletos son entradas compactas para clasificar acciones como saludar, caerse o levantar algo, y no tienen en cuenta la ropa ni el fondo.
- Investigación animal: Los conjuntos personalizados de puntos clave siguen la postura de los animales —por ejemplo, los 24 puntos clave por perro del conjunto de datos Dog-Pose— para estudiar su marcha y comportamiento.










