Aller au contenu
Libellus
LibellusLes dernières découvertes scientifiques, expliquées pour tousGratuit · Indépendant · Sans but lucratif · Traduit en 5 langues
Une danseuse de Bharatanatyam vue de dos dans un studio sombre, portant une jupe plissée traditionnelle et une blouse ornée, un pied relevé sur la pointe, avec des traînées lumineuses suggérant le mouvement entre postures maintenues sur un sol poli.

Une caméra de profondeur peut distinguer les danses Bharatanatyam en lisant ensemble poses et mouvements

9 min de lecture

Le Bharatanatyam est constitué d’unités répétées appelées adavus, chacune formant une chaîne chorégraphiée de poses maintenues et des mouvements qui les relient. Un système par caméra doit déterminer quelle unité le danseur exécute en suivant toute la séquence. Le point difficile n’est pas de nommer une pose ; c’est de suivre les petits changements de pied, les mains masquées et le costume tandis que des pas similaires se confondent.

En résumé

  • Un système qui lit les postures et mouvements ordonnés d’une performance Bharatanatyam atteint 98 % de précision sur 1645 séquences de test.
  • La reconnaissance des postures à partir d’images uniques dans le Bharatanatyam atteint 99,46 % sur 8943 images, la plupart des erreurs provenant de poses qui ne diffèrent que par une position de pied ou une main masquée.
  • La classification des mouvements atteint environ 84 % au total quand les classes comptent au moins 12 exemples.
  • Monter cette exigence à au moins 25 exemples par classe ne laisse que douze mouvements, mais la précision passe à 95,58 %.
  • Une approche par caméra peut soutenir la préservation et l’enseignement en transformant les motifs Bharatanatyam enregistrés en séquences consultables que les étudiants peuvent comparer avec des exemples canoniques.

Comment une danse est découpée en poses et en pas

Le Bharatanatyam est construit à partir de petites unités répétables appelées Adavus, et chaque unité a un rythme strict d’immobilité et de déplacement. Un danseur maintient une posture clé, passe par un mouvement de liaison, s’installe dans une autre posture, puis se déplace encore. La chaîne de reconnaissance commence en transformant cette performance en la même sorte de liste. Après avoir écarté les enregistrements mauvais ou incomplets, le jeu de données contient 13 types d’Adavu et 51 variations, tirés d’un ensemble plus large de 15 types et 58 variations. Il utilise aussi 182 classes de postures clés, qui sont les formes stationnaires nommées pouvant apparaître dans la danse.

Chaque vidéo est d’abord réduite à des images en niveaux de gris, puis un masque basé sur la profondeur supprime tout sauf le danseur. Un fichier d’annotation indique ensuite quelles plages d’images appartiennent aux postures et lesquelles appartiennent aux mouvements. En pratique, une longue vidéo est découpée en intervalles. Un intervalle contient une forme reconnaissable, tandis qu’un autre capture des membres ou un poids en train de changer. L’ordre compte parce qu’un Adavu est défini par cette liste ordonnée d’immobilités et de transitions.

Un segment de posture contient généralement plusieurs images presque identiques, si bien que n’importe quelle image peut représenter la même pose maintenue. Cela crée un petit choix à chaque arrêt dans la danse. Si un segment comporte dix images exploitables, le constructeur de séquences peut choisir des représentants différents sans changer l’Adavu sous-jacent. Le nombre de séquences alternées possibles est limité par le plus court segment de posture de cet Adavu, car chaque segment doit fournir au moins une image représentative. La première posture prête avant le début de la danse est retirée de la liste, si bien que la séquence commence avec le motif réel de mouvement plutôt qu’une position de départ neutre.

Les mouvements sont aussi traités comme des catégories séparées, mais seulement quand il existe suffisamment d’éléments enregistrés à leur sujet. Les classes comptant moins de 12 exemples sont mises de côté pour éviter l’apprentissage sur trop peu de données. Avec cette règle en place, 54 classes de mouvement restent exploitables sur un total de 334. Ce seuil compte parce que les mouvements de danse varient en longueur et beaucoup sont faciles à confondre. En ne conservant que des classes de mouvement mieux soutenues, le système construit une inventaire plus propre des pas avant d’essayer de les lire.

Lire les postures stationnaires à partir d’images uniques

Un danseur Bharatanatyam peut maintenir une pose pendant plusieurs images, et le système considère que n’importe lequel de ces instants immobiles suffit pour nommer la posture. Avant la classification, chaque image vidéo est convertie en niveaux de gris, tandis que les informations de profondeur issues du Kinect suppriment tout ce qui se trouve derrière l’exécutant afin que seul le corps reste visible. Le réseau regarde ensuite directement cette image nettoyée, sans avoir besoin d’une séquence d’images ni d’un traceur de squelette séparé.

Le classifieur est délibérément petit par rapport aux grands modèles d’image à usage général. Il comporte deux couches de convolution, d’abord avec 32 canaux puis avec 64, suivies de trois couches entièrement connectées. La normalisation des couches, le pooling maximal, l’abandon aléatoire et les activations Leaky ReLU l’aident à apprendre des caractéristiques stables tout en réduisant la probabilité que certains neurones cessent de répondre. L’apprentissage s’arrête après 15 époques parce que la précision commençait à sur-apprendre au-delà de ce point. La couche softmax finale produit un score pour chacune des 182 classes de posture, si bien que chaque image est jugée par rapport à l’ensemble complet des postures clés stationnaires plutôt qu’à une poignée d’exemples.

Sur le jeu de test, le réseau a obtenu 8895 images correctes sur 8943, soit une précision de 99,46 %. Cela signifie que presque chaque image représentative unique a été affectée à la bonne posture. Quinze classes ont été reconnues parfaitement, et la plupart des autres ont obtenu plus de 95 %. Les échecs sont surtout des jumeaux visuels. Deux poses debout ne diffèrent que par le fait qu’un pied est à plat ou relevé sur les pointes. L’une de ces paires a atteint environ 57 % de précision parce que six images de test avaient été échangées avec son sosie. Un petit étirement de la jambe droite peut ressembler à une posture au genou plié, et quand le Kinect manque un relèvement de main, cette pose peut dériver vers une autre classe.

Suivre les segments en mouvement quand le costume masque le corps

Une fois qu’un passage vidéo a été marqué comme mouvement, la tâche consiste à déterminer quel mouvement nommé Bharatanatyam il contient. Cette partie du problème est plus difficile que nommer une pose figée parce que le corps d’un danseur continue de changer de forme tandis que la jupe, les manches et les bijoux peuvent couvrir de grandes parties des membres. Le processus de reconnaissance n’essaie donc pas de suivre chaque articulation dans le temps. Il construit plutôt une image résumée pour chaque segment en mouvement.

Ce résumé, appelé image d’historique de mouvement, commence comme une image vide et se remplit au fur et à mesure que le danseur bouge. Pour chaque nouvelle image, la silhouette du danseur est trouvée puis comparée à celle de l’image précédente. La différence entre ces deux silhouettes est ajoutée à l’image en cours d’accumulation. Après traitement complet du segment, les zones de changement montrent où le corps s’est déplacé, tandis que les régions vides marquent les endroits qui sont restés immobiles.

Avant la classification, cette grande image est réduite de 480 par 640 pixels à 120 par 160 pixels. La petite image est ensuite transformée en une longue liste de nombres décrivant la direction et l’intensité des bords dans différentes parties de l’image. Cette liste comporte 9576 valeurs, et une machine à vecteurs de support s’en sert pour choisir l’étiquette de mouvement la plus probable.

Parce que beaucoup de mouvements de danse n’apparaissent que rarement dans les enregistrements, la chaîne ne conserve que ceux qui comptent au moins douze exemples. Cette règle laisse 54 classes de mouvement exploitables sur un total de 334. Avec cet ensemble réduit, le classifieur a atteint environ 84 % de précision globale. Les erreurs étaient réparties finement entre les classes, car vingt-deux classes de mouvement ont été reconnues parfaitement, vingt en avaient une seule et douze en avaient deux ou trois.

Quand l’exigence est montée à au moins vingt-cinq exemples par classe, seules douze classes de mouvement sont restées, mais la précision est passée à 95,58 %. Ce bond montre que la principale limite n’est pas un classifieur faible ; c’est la petite quantité de matière d’apprentissage disponible pour beaucoup de mouvements.

Les erreurs les plus révélatrices viennent des parties du corps qu’un costume peut masquer ou brouiller. Un mouvement de montée et de descente peut être confondu avec un transfert de poids plus un tapage de pied, surtout quand les jambes sont couvertes par le tissu. Des versions en miroir de mouvements similaires peuvent aussi être échangées quand la caméra ne voit qu’un seul côté du corps. Un demi-tour autour du torse n’est pas toujours bien capté dans l’image résumée, si bien qu’il peut ressembler à un simple tapage de pied. Les très petits déplacements talon-pointe sont presque invisibles sauf si les mains bougent légèrement.

Faire correspondre la séquence complète pour nommer un adavu

Un adavu Bharatanatyam est plus qu’une collection de poses jolies. C’est un motif ordonné dans lequel les postures clés immobiles et les mouvements entre elles alternent. Pour nommer l’adavu, le système ne demande pas si une image ressemble à une pose connue ou si un extrait ressemble à un mouvement connu. Il construit une séquence complète d’étiquettes à partir de la vidéo et compare cette séquence aux motifs stockés pour des adavus candidats.

Chaque posture et chaque mouvement prédits deviennent un élément dans cette liste. La comparaison utilise la distance d’édition, une mesure du nombre de substitutions, d’insertions ou de suppressions nécessaires pour transformer une séquence en une autre. Si la liste prédite est proche d’un motif stocké, cet adavu l’emporte. Dans des tests sur 1645 séquences, cette correspondance de danse complète a atteint 98 % de précision. Ce résultat compte parce que les étiquettes de mouvement individuelles étaient moins fiables, autour de 84 %, et pourtant la séquence plus longue pointait quand même vers l’unité chorégraphique correcte la plupart du temps.

Le système doit aussi gérer une petite ambiguïté à l’intérieur de chaque segment de posture. Une pose stationnaire peut durer plusieurs images, et n’importe quelle image peut tenir lieu de cette pose. En conséquence, une seule vidéo peut produire plus d’une liste alternée plausible. Le nombre de candidats est limité par le plus court segment de posture dans l’adavu, si bien que la recherche reste gérable. La posture initiale prête avant le début de la danse est laissée de côté, parce qu’elle appartient à la préparation plutôt qu’au motif nommé.

Cette approche basée sur les séquences explique pourquoi ajouter des mouvements change le résultat. Des systèmes antérieurs qui n’utilisaient que des postures avaient obtenu 77,51 % sur le même jeu de test. Leurs échecs étaient concentrés dans une famille d’adavus dont l’ordre des postures était identique, souvent une pose unique répétée. Les poses seules ne pouvaient pas séparer ces variations. Quand les deux familles d’une comparaison antérieure ont été testées séparément, la précision est devenue 100 %, ce qui montre que les erreurs restantes venaient de listes de postures véritablement indiscernables plutôt que d’une lecture d’image faible.

Une danse devient une séquence lisible

Le résultat le plus fort est que le Bharatanatyam peut être reconnu comme une performance ordonnée, plutôt que comme une collection d’images séparées. Une caméra capture le danseur, les images immobiles sont lues pour la posture, les segments en mouvement sont compressés en historiques de mouvement, et les étiquettes résultantes sont comparées aux motifs Adavu connus. Quand l’ordre complet correspond suffisamment près, la danse reçoit son nom. La reconnaissance de danse complète atteint 98 % sur une grande partie du répertoire standard, ce qui est impressionnant parce que les mouvements individuels sont plus difficiles à classifier que des postures figées.

La promesse plus large est la préservation et l’enseignement. Une bibliothèque d’Adavus enregistrés peut devenir une archive consultable, où les étudiants comparent leur propre mouvement avec des séquences canoniques et où les enseignants peuvent pointer des écarts précis. La méthode suggère aussi que d’autres danses classiques pourraient être traitées de la même manière dès qu’il existe assez d’exemples étiquetés. Cela transformerait la performance visuelle en données qui peuvent être étudiées, corrigées et transmises sans reposer uniquement sur la mémoire.

Les obstacles sont tout aussi clairs. Beaucoup de mouvements apparaissent trop rarement pour un apprentissage fiable, les costumes masquent des parties du corps, et certaines postures diffèrent par une position de pied ou un angle de main que les capteurs manquent. L’installation actuelle dépend aussi de conditions d’enregistrement contrôlées, et la performance en temps n’a pas encore été rapportée en détail. Plus de données, un meilleur traitement des occlusions et une inférence plus rapide seraient nécessaires avant que de tels outils passent du laboratoire à la salle de classe.

Si une danse peut être lue comme une séquence, qu’est-ce d’autre pourrait devenir lisible pour les machines ?

Poursuivre la lecture

Continuer vers l’article suivant

Continuer vers l’article suivant

Continuer vers l’article suivant