Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
tensorflow
GitHub Repository: tensorflow/docs-l10n
Path: blob/master/site/es-419/lite/models/pose_estimation/overview.md
25118 views

Estimación de la pose

La estimación de la pose es la tarea de usar un modelo ML para estimar la pose de una persona a partir de una imagen o un vídeo mediante la estimación de las ubicaciones espaciales de las articulaciones clave del cuerpo (puntos clave).

Empecemos

Si es nuevo en TensorFlow Lite y trabaja con Android o iOS, explore las siguientes aplicaciones de ejemplo que pueden ayudarle a empezar.

Ejemplo de Android Ejemplo de iOS

Si está familiarizado con las APIs TensorFlow Lite, descargue el modelo de estimación de pose MoveNet de inicio y los archivos de apoyo.

Descargue el modelo inicial

Si desea probar la estimación de pose en un navegador web, eche un vistazo a la TensorFlow JS Demo.

Descripción del modelo

Cómo funciona

La estimación de la pose se refiere a las técnicas de visión por computadora que detectan figuras humanas en imágenes y vídeos, de forma que se pueda determinar, por ejemplo, dónde aparece el codo de alguien en una imagen. Es importante ser consciente del hecho de que la estimación de la pose se limita a estimar dónde están las articulaciones clave del cuerpo y no reconoce quién aparece en una imagen o un vídeo.

Los modelos de estimación de la pose toman como entrada una imagen de cámara procesada y emiten información sobre los puntos clave. Los puntos clave detectados se indexan mediante un ID de pieza, con una puntuación de confianza entre 0.0 y 1.0. Las puntuaciones de confianza indican la probabilidad de que exista un punto clave en esa posición.

Proporcionamos la implementación de referencia de dos modelos de estimación de la pose de TensorFlow Lite:

  • MoveNet: el modelo de estimación de poses más avanzado disponible en dos versiones: Lighting y Thunder. Vea una comparación entre estos dos en la sección siguiente.

  • PoseNet: el modelo de estimación de la pose de la generación anterior lanzado en 2017.

Las distintas articulaciones del cuerpo detectadas por el modelo de estimación de la pose se tabulan a continuación:

Id Parte
0 nose
1 leftEye
2 rightEye
3 leftEar
4 rightEar
5 leftShoulder
6 rightShoulder
7 leftElbow
8 rightElbow
9 leftWrist
10 rightWrist
11 leftHip
12 rightHip
13 leftKnee
14 rightKnee
15 leftAnkle
16 rightAnkle

A continuación se muestra un ejemplo de salida:

Animación que muestra la estimación de poses

Puntos de referencia del rendimiento

MoveNet está disponible en dos versiones:

  • MoveNet.Lightning es más pequeño, más rápido pero menos preciso que la versión Thunder. Puede funcionar en tiempo real en los smartphones modernos.

  • MoveNet.Thunder es la versión más precisa pero también más grande y lenta que Lightning. Es útil para los casos de uso que requieren una precisión más alta.

MoveNet supera a PoseNet en diversos conjuntos de datos, especialmente en las imágenes de acciones de fitness. Por lo tanto, recomendamos usar MoveNet en lugar de PoseNet.

Los números de referencia del rendimiento se generan con la herramienta descrita aquí. Las cifras de precisión (mAP) se miden en un subconjunto del conjunto de datos COCO en el que filtramos y recortamos cada imagen para que contenga una sola persona .

Modelo Tamaño (MB) mAP Latencia (ms)
Pixel 5 - 4 hilos de CPU Pixel 5 - GPU Raspberry Pi 4 - 4 hilos de CPU
MoveNet.Thunder (FP16 cuantizado) 12.6 MB 72.0 155 ms 45 ms 594 ms
MoveNet.Thunder (INT8 cuantizado) 7.1 MB 68.9 100 ms 52 ms 251 ms
MoveNet.Lightning (FP16 cuantizado) 4.8 MB 63.0 60 ms 25 ms 186 ms
MoveNet.Lightning (INT8 cuantizado) 2.9 MB 57.4 52 ms 28 ms 95 ms
PoseNet(MobileNetV1 backbone, FP32) 13.3 MB 45.6 80 ms 40 ms 338 ms

Lecturas y recursos complementarios

  • Visite este artículo de blog para saber más sobre la estimación de la pose usando MoveNet y TensorFlow Lite.

  • Consulte este artículo de blog para saber más sobre la estimación de la pose en la web.

  • Vea este tutorial para aprender a ejecutar MoveNet en Python usando un modelo de TensorFlow Hub.

  • Coral/EdgeTPU puede hacer que la estimación de la pose se ejecute mucho más rápido en los dispositivos periféricos. Consulte EdgeTPU-optimized models para más detalles.

  • Lea el documento de PoseNet aquí

Además, eche un vistazo a estos casos de uso de la estimación de la pose.