Connect with us

Santé

Estimation de la pose par IA dans les applications de fitness

mm

Par Maksym Tatariants, ingénieur en science des données chez MobiDev.

L’estimation de la pose humaine fait référence à une technologie – relativement nouvelle, mais évoluant rapidement – qui joue un rôle important dans les applications de fitness et de danse, nous permettant de superposer du contenu numérique sur le monde réel.

En bref, le concept d’estimation de la pose humaine est une technologie basée sur la vision par ordinateur capable de détecter et de traiter la posture humaine. La partie la plus importante et centrale de cette technologie est la modélisation du corps humain. Trois modèles de corps sont les plus couramment utilisés dans les systèmes d’estimation de la pose humaine – basés sur le squelette, le contour et le volume.

Modèle basé sur le squelette

Ce modèle est constitué d’un ensemble d’articulations (points clés), telles que les genoux, les chevilles, les poignets, les coudes, les épaules et l’orientation des membres du corps. Ce modèle est notable pour sa flexibilité et convient donc à la fois à l’estimation de la pose humaine en 3 dimensions et en 2 dimensions. Avec la modélisation 3D, la solution utilise une image RVB et trouve les coordonnées X, Y et Z des articulations. Avec la modélisation 2D, c’est la même analyse d’une image RVB, mais en utilisant les coordonnées X et Y.

Modèle basé sur le contour

Ce modèle utilise les contours du torse et des membres du corps, ainsi que leur largeur approximative. Ici, la solution prend le contour du corps et représente les parties du corps sous forme de rectangles et de limites dans ce cadre.

Modèle basé sur le volume

Ce modèle utilise généralement une série de scans 3D pour capturer la forme du corps et la convertir en un cadre de formes et de maillages géométriques. Ces formes créent une série 3D de poses et de représentations du corps.

Fonctionnement de l’estimation de la pose humaine 3D

Les applications de fitness s’appuient généralement sur l’estimation de la pose humaine 3D. Pour ces applications, plus d’informations sur la pose humaine, mieux c’est. Avec cette technique, l’utilisateur de l’application enregistrera lui-même en train de pratiquer un exercice ou une routine d’entraînement. L’application analysera ensuite les mouvements du corps de l’utilisateur, offrant des corrections pour les erreurs ou les inexactitudes.

Le diagramme de flux de ce type d’application suit généralement ce modèle :

  • Tout d’abord, collecter des données sur les mouvements de l’utilisateur pendant qu’il effectue l’exercice.
  • Ensuite, déterminer à quel point les mouvements de l’utilisateur étaient corrects ou incorrects.
  • Enfin, montrer à l’utilisateur via l’interface les erreurs qu’il a pu commettre.

Actuellement, la norme dans la technologie de pose humaine est la topologie COCO. La topologie COCO est composée de 17 repères sur tout le corps, allant du visage aux bras aux jambes. Notez que COCO n’est pas le seul cadre de pose du corps humain, mais simplement celui le plus couramment utilisé.

Ce type de processus utilise généralement une technologie d’apprentissage automatique profond pour l’extraction des articulations dans l’estimation de la pose de l’utilisateur. Il utilise ensuite des algorithmes basés sur la géométrie pour analyser ce qu’il a trouvé (analyser les positions relatives des articulations détectées). Alors qu’il utilise une vidéo dynamique comme données source, le système peut utiliser une série de trames, et non une seule image, pour capturer ses points clés. Le résultat est une représentation beaucoup plus précise des mouvements réels de l’utilisateur, car le système peut utiliser des informations provenant des trames adjacentes pour résoudre les incertitudes concernant la position du corps humain dans la trame actuelle.

Parmi les techniques actuelles pour utiliser l’estimation de la pose 3D dans les applications de fitness, l’approche la plus précise consiste à appliquer d’abord un modèle pour détecter les points clés 2D, puis à traiter la détection 2D avec un autre modèle pour les convertir en prédictions de points clés 3D.

Dans la recherche que nous avons publiée récemment, une seule source de vidéo a été utilisée, avec des réseaux de neurones convolutifs à convolutions temporelles dilatées appliquées pour effectuer la conversion de points clés 2D-3D.

Après avoir analysé les modèles actuellement disponibles, nous avons déterminé que VideoPose3D est la solution la mieux adaptée aux besoins de la plupart des applications de fitness basées sur l’IA. La saisie de données à l’aide de ce système devrait permettre de détecter un ensemble de points clés 2D, où un modèle, pré-entraîné sur le jeu de données COCO 2017, est appliqué en tant que détecteur 2D.

Pour la prédiction la plus précise de la position d’une articulation ou d’un point clé actuel, VideoPose3D peut utiliser plusieurs trames sur une courte séquence de temps pour générer des informations de pose 2D.

Pour améliorer encore la précision de l’estimation de la pose 3D, plus d’une caméra peut capturer des vues alternatives de l’utilisateur effectuant le même exercice ou la même routine. Notez, cependant, qu’il nécessite une puissance de traitement plus importante ainsi qu’une architecture de modèle spécialisée pour gérer plusieurs flux vidéo.

Récemment, Google a présenté son système BlazePose, un modèle orienté appareil mobile pour estimer la pose humaine en augmentant le nombre de points clés analysés à 33, un sur-ensemble de l’ensemble de points clés COCO et deux autres topologies – BlazePalm et BlazeFace. En conséquence, le modèle BlazePose peut produire des résultats de prédiction de pose cohérents avec les modèles de main et de visage en articulant la sémantique du corps.

Chaque composant d’un système d’estimation de la pose humaine basé sur l’apprentissage automatique doit être rapide, prenant un maximum de quelques millisecondes par trame pour les modèles de détection et de suivi de pose.

En raison du fait que le pipeline BlazePose (qui comprend les composants de détection et de suivi de pose) doit fonctionner sur une variété d’appareils mobiles en temps réel, chaque partie individuelle du pipeline est conçue pour être très efficace sur le plan computationnel et fonctionner à 200-1000 FPS.

L’estimation de la pose et le suivi dans la vidéo où il n’est pas connu si et où la personne est présente sont généralement effectués en deux étapes.

À la première étape, un modèle de détection d’objet est exécuté pour localiser la présence d’un humain ou pour identifier son absence. Après que la personne a été détectée, le module d’estimation de la pose peut traiter la zone localisée contenant la personne et prédire la position des points clés.

Un inconvénient de cette configuration est qu’elle nécessite que les modules de détection d’objet et d’estimation de la pose fonctionnent pour chaque trame, ce qui consomme des ressources computationnelles supplémentaires. Les auteurs de BlazePose, cependant, ont trouvé un moyen astucieux de contourner ce problème et de l’utiliser efficacement dans d’autres modules de détection de points clés tels que FaceMesh et MediaPipe Hand.

L’idée est qu’un module de détection d’objet (détecteur de visage dans le cas de BlazePose) peut être utilisé uniquement pour lancer le suivi de la pose dans la première trame, tandis que le suivi ultérieur de la personne peut être effectué en utilisant exclusivement les prédictions de pose après un certain alignement de pose, dont les paramètres sont prédits à l’aide du modèle d’estimation de la pose.

Le visage produit le signal le plus fort concernant la position du torse pour le réseau de neurones, en raison de la variance relativement faible d’apparence et du contraste élevé de ses caractéristiques. Par conséquent, il est possible de créer un système rapide et à faible surcharge pour la détection de la pose via une série d’hypothèses justifiables fondées sur l’idée que la tête humaine sera localisable dans chaque cas d’utilisation personnel.

Surmonter les défis de l’estimation de la pose humaine

L’utilisation de l’estimation de la pose dans les applications de fitness est confrontée au défi du volume important de poses humaines, par exemple les centaines de postures dans la plupart des régimes de yoga.

De plus, le corps peut parfois bloquer certaines extrémités capturées par n’importe quelle caméra, les utilisateurs peuvent porter des tenues variées qui obscurcissent les caractéristiques du corps et les apparences personnelles.

Lors de l’utilisation de modèles pré-entraînés, notez que les mouvements inhabituels du corps ou les angles de caméra inhabituels peuvent entraîner des erreurs dans l’estimation de la pose humaine. Nous pouvons atténuer ce problème dans une certaine mesure en utilisant des données synthétiques à partir d’un modèle de corps humain 3D, ou en affinant avec des données spécifiques au domaine en question.

La bonne nouvelle est que nous pouvons éviter ou atténuer la majorité des faiblesses. La clé pour y parvenir est de choisir les bonnes données d’entraînement et l’architecture du modèle. De plus, la tendance du développement dans le domaine de la technologie d’estimation de la pose humaine suggère que certaines des problèmes que nous rencontrons actuellement seront moins pertinents dans les années à venir.

Le mot de la fin

L’estimation de la pose humaine présente un certain nombre d’utilisations futures potentielles en dehors du domaine des applications de fitness et du suivi des mouvements humains, allant des jeux aux animations, à la réalité augmentée et à la robotique. Cela ne représente pas une liste exhaustive des possibilités, mais met en évidence certaines des zones les plus susceptibles de bénéficier de l’estimation de la pose humaine dans notre paysage numérique.

Maksym est impatient de acquérir de nouvelles connaissances et expériences en Data Science et Machine Learning. Il est particulièrement intéressé par les technologies basées sur le Deep Learning et leur application à des cas d'utilisation commerciaux.