talón Estimación de pose de IA en la aplicación Fitness - Unite.AI
Contáctanos

Healthcare

Estimación de pose de IA en la aplicación Fitness

mm

Publicado

 on

Por Maksym Tatarants, ingeniero de ciencia de datos en MobiDev.

La estimación de la pose humana se refiere a una tecnología, bastante nueva, pero que evoluciona rápidamente, que está desempeñando un papel importante en las aplicaciones de fitness y baile, lo que nos permite colocar contenido digital sobre el mundo real.

En resumen, el concepto de estimación de la postura humana es una tecnología basada en visión por computadora capaz de detectar y procesar la postura humana. La parte más importante y central de esta tecnología es el modelado del cuerpo humano. Tres modelos corporales son los más destacados dentro de los sistemas actuales de estimación de la postura humana: los basados ​​en el esqueleto, los basados ​​en el contorno y los basados ​​en el volumen.

Modelo basado en esqueleto

Este modelo está formado por un conjunto de articulaciones (puntos clave), como son las rodillas, los tobillos, las muñecas, los codos, los hombros y la orientación de las extremidades del cuerpo. Este modelo destaca por su flexibilidad y, como tal, es adecuado para la estimación de poses humanas tanto en 3 como en 2 dimensiones. Con el modelado tridimensional, la solución utiliza una imagen RGB y encuentra las coordenadas X, Y y Z de las articulaciones. Con el modelado bidimensional, es el mismo análisis de una imagen RGB, pero utilizando las coordenadas X e Y.

Modelo basado en contorno

Este modelo aprovecha los contornos del torso y las extremidades del cuerpo, así como su anchura aproximada. Aquí, la solución toma la silueta del marco del cuerpo y representa las partes del cuerpo como rectángulos y límites dentro de ese marco.

Modelo basado en volumen

Este modelo generalmente utiliza una serie de escaneos tridimensionales para capturar la forma del cuerpo y convertirlo en un marco de formas y mallas geométricas. Estas formas crean una serie 3D de poses y representaciones corporales.

Cómo funciona la estimación de la pose humana en 3D

Las aplicaciones de fitness tienden a basarse en la estimación de la pose humana tridimensional. Para estas aplicaciones, cuanta más información sobre la pose humana, mejor. Con esta técnica, el usuario de la aplicación se grabará participando en una rutina de ejercicios o ejercicios. Luego, la aplicación analizará los movimientos del cuerpo del usuario y ofrecerá correcciones por errores o inexactitudes.

El diagrama de flujo de este tipo de aplicación suele seguir este patrón:

  • En primer lugar, recopila datos sobre los movimientos del usuario mientras realiza el ejercicio.
  • A continuación, determine qué tan correctos o incorrectos fueron los movimientos del usuario.
  • Finalmente, muestra al usuario a través de la interfaz qué errores puede haber cometido.

En este momento, el estándar en tecnología de poses humanas es topología COCO. La topología COCO se compone de 17 puntos de referencia en todo el cuerpo, que van desde la cara hasta los brazos y las piernas. Tenga en cuenta que COCO no es el único marco de postura del cuerpo humano, simplemente el más utilizado.

Este tipo de proceso normalmente utiliza tecnología de aprendizaje automático profundo para la extracción de articulaciones al estimar la postura del usuario. Luego emplea algoritmos basados ​​en geometría para dar sentido a lo que encuentra (analizar las posiciones relativas de las uniones detectadas). Al utilizar un vídeo dinámico como fuente de datos, el sistema puede utilizar una serie de fotogramas, no solo una imagen, para capturar sus puntos clave. El resultado es una representación mucho más precisa de los movimientos reales del usuario, ya que el sistema puede utilizar información de los fotogramas adyacentes para resolver cualquier incertidumbre sobre la posición del cuerpo humano en el fotograma actual.

Fuera de las técnicas actuales para usar la estimación de pose 3D en aplicaciones de fitness, el enfoque más preciso es aplicar primero un modelo para detectar puntos clave 2D y luego procesar la detección 2D con otro modelo para convertirlos en predicciones de puntos clave 3D. 

En la investigación que publicamos recientemente, se utilizó una sola fuente de video, con redes neuronales convolucionales con convoluciones temporales dilatadas aplicadas para realizar la conversión de punto clave 2D -> 3D.

Después de analizar los modelos que existen actualmente, determinamos que VideoPose3D es la solución que mejor se adapta a las necesidades de la mayoría de las aplicaciones de fitness impulsadas por IA. La entrada que utiliza este sistema debe permitir la detección de un conjunto 2D de puntos clave, donde un modelo, previamente entrenado en el conjunto de datos COCO 2017, se aplica como un detector 2D. 

Para la predicción más precisa de la posición de una articulación o punto clave actual, VideoPose3D puede usar varios fotogramas en una secuencia de tiempo corta para generar información de pose 2D. 

Para aumentar aún más la precisión de la estimación de poses en 3D, más de una cámara puede recopilar puntos de vista alternativos del usuario que realiza el mismo ejercicio o rutina. Tenga en cuenta, sin embargo, que requiere una mayor potencia de procesamiento, así como una arquitectura de modelo especializada para manejar múltiples entradas de flujo de video.

Google recientemente dio a conocer su sistema BlazePose, un modelo orientado a dispositivos móviles para estimar la pose humana aumentando el número de puntos clave analizados a 33, un superconjunto del conjunto de puntos clave COCO y otras dos topologías: BlazePalm y BlazeFace. Como resultado, el modelo BlazePose puede producir resultados de predicción de posturas consistentes con los modelos de manos y rostros al articular la semántica del cuerpo.

Cada componente dentro de un sistema de estimación de pose humana basado en aprendizaje automático debe ser rápido, tomando un máximo de un par de milisegundos por cuadro para la detección de pose y los modelos de seguimiento. 

Debido al hecho de que la canalización de BlazePose (que incluye componentes de seguimiento y estimación de pose) tiene que operar en una variedad de dispositivos móviles en tiempo real, cada parte individual de la canalización está diseñada para ser muy eficiente desde el punto de vista computacional y ejecutarse a 200-1000 FPS. .

La estimación de poses y el seguimiento en el video donde no se sabe si la persona está presente y dónde se realiza normalmente en dos etapas. 

En la primera etapa, se ejecuta un modelo de detección de objetos para localizar la presencia de un humano o identificar su ausencia. Una vez detectada la persona, el módulo de estimación de pose puede procesar el área localizada que contiene a la persona y predecir la posición de los puntos clave.

Una desventaja de esta configuración es que requiere que se ejecuten módulos de detección de objetos y de estimación de pose para cada cuadro, lo que consume recursos computacionales adicionales. Sin embargo, los autores de BlazePose idearon una forma inteligente de solucionar este problema y utilizarlo de manera eficiente en otros módulos de detección de puntos clave como Malla facial y MediaPipe Mano.

La idea es que un módulo de detección de objetos (detector de rostros en el caso de BlazePose) se pueda usar solo para iniciar el seguimiento de la pose en el primer cuadro, mientras que el seguimiento posterior de la persona se puede realizar utilizando exclusivamente las predicciones de la pose después de alguna alineación de la pose. parámetros para los cuales se predicen utilizando el modelo de estimación de pose.

La cara produce la señal más fuerte en cuanto a la posición del torso para la red neuronal, como resultado de la variación relativamente pequeña en la apariencia y el alto contraste en sus rasgos. En consecuencia, es posible crear un sistema rápido y de bajo costo para la detección de poses a través de una serie de suposiciones justificables basadas en la idea de que la cabeza humana será localizable en cada caso de uso personal.

Superar los desafíos de la estimación de la postura humana

Hacer uso de la estimación de poses en las aplicaciones de acondicionamiento físico enfrenta el desafío del gran volumen de la gama de poses humanas, por ejemplo, los cientos de asanas en la mayoría de los regímenes de yoga. 

Además, el cuerpo a veces bloqueará ciertas extremidades capturadas por una cámara determinada, los usuarios pueden usar atuendos variados que oscurecen las características del cuerpo y la apariencia personal.

Al utilizar cualquier modelo previamente entrenado, tenga en cuenta que los movimientos corporales inusuales o los ángulos de cámara extraños pueden conducir a errores en la estimación de la pose humana. Podemos mitigar este problema hasta cierto punto utilizando datos sintéticos de un modelo 3D del cuerpo humano, o ajustando datos específicos del dominio en cuestión.

La buena noticia es que podemos evitar o mitigar la mayoría de las debilidades. La clave para hacerlo es seleccionar los datos de entrenamiento y la arquitectura del modelo correctos. Además, la tendencia de desarrollo en el campo de la tecnología de estimación de pose humana sugiere que algunos de los problemas que enfrentamos ahora serán menos relevantes en los próximos años.

La última palabra

La estimación de la pose humana tiene una variedad de posibles usos futuros fuera del área de las aplicaciones de fitness y el seguimiento de los movimientos humanos, desde juegos hasta animación, Realidad Aumentada y robótica. Eso no representa una lista completa de las posibilidades, pero destaca algunas de las áreas más probables en las que la estimación de la pose humana contribuirá a nuestro panorama digital.

Maksym está interesado en obtener nuevos conocimientos y experiencia en ciencia de datos y aprendizaje automático. Está particularmente interesado en las tecnologías basadas en Deep Learning y su aplicación a casos de uso empresarial.