$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
La première exigence pour la méthode proposée est un système permettant de suivre avec précision la position des objets 3D et des mains. La configuration spécifique est illustrée à la figure 1A et utilise du matériel et des logiciels produits par la société de capture de mouvement Qualisys. Nous positionnons un établi dans un volume de suivi (100 cm x 100 cm x 100 cm), qui est imagé sous plusieurs angles par huit caméras de suivi et six caméras vidéo disposées sur un cadre cubique entourant l’espace de travail. Les caméras de suivi suivent la position 3D des marqueurs réfléchissants dans le volume de suivi à 180 images / s et avec une résolution spatiale 3D inférieure au millimètre. Nous utilisons des marqueurs réfléchissants de 4 mm, qui sont fixés aux objets et aux mains à l’aide de ruban adhésif double face respectueux de la peau. Les positions des marqueurs 3D sont traitées par le logiciel de capture de mouvement. La section de discussion examine également les systèmes de capture de mouvement alternatifs qui pourraient être utilisés avec la méthode proposée.
Pour obtenir des reconstructions 3D précises d’objets réels saisis et manipulés, nous proposons deux options. La première, qui est celle adoptée ici, consiste à partir d’un modèle objet 3D virtuel sous la forme d’un maillage polygonal. Ces modèles 3D peuvent être construits à l’aide d’un logiciel approprié (par exemple, Blender 3D44), puis imprimés en 3D (Figure 1B). La deuxième option consiste à prendre un objet 3D réel existant et à utiliser la technologie de numérisation 3D pour construire une réplique de modèle maillé de l’objet. Quelle que soit la stratégie, l’objectif final est d’obtenir à la fois un objet 3D réel et le modèle de maillage d’objet 3D virtuel correspondant. Il convient de noter que l’approche décrite ici ne fonctionne qu’avec des objets rigides (c’est-à-dire non déformables).
Une fois que la surface 3D d’un objet est disponible en tant que modèle de maillage, sa position doit être suivie et co-enregistrée (Figure 1C). Pour ce faire, quatre marqueurs réfléchissants non planaires sont fixés à la surface de l’objet réel et l’objet est placé dans le volume de suivi. Les positions 3D des marqueurs d’objet sont ensuite brièvement capturées. Cette capture est utilisée pour établir la correspondance entre les quatre marqueurs et les quatre sommets du modèle de maillage d’objets. Cela se fait à l’aide d’une route logicielle ad hoc simple écrite dans l’API Python de Blender. Dans la fenêtre d’affichage de Blender, le programme présente l’objet virtuel avec les positions des marqueurs qui sont représentées comme un objet à maillage unique composé d’une sphère pour chaque marqueur. L’utilisateur peut ensuite faire pivoter et traduire l’objet et/ou les marqueurs pour les aligner de manière à ce qu’ils co-alignent avec les marqueurs réels placés sur l’objet réel. Le programme enregistrera les rotations et la traduction qui sont appliquées pour calculer une seule roto-translation qui est finalement appliquée au maillage d’objet d’origine, fournissant un maillage d’objet qui est co-enregistré avec la définition de corps rigide dans QTM.
Après avoir établi la correspondance, chaque fois que l’objet réel est déplacé dans le volume de suivi, l’objet virtuel peut être placé dans la nouvelle position en calculant la roto-translation entre les marqueurs suivis et les quatre sommets de maillage correspondants. Pour enregistrer la dynamique de la préhension, un total de 24 marqueurs réfléchissants sphériques sont fixés sur différents repères de la main à l’aide de ruban adhésif double face (Figure 1D et Figure 2).
Au début d’un essai (Figure 1E), un participant pose sa main à plat sur l’établi, la paume tournée vers le bas, et ferme les yeux. L’expérimentateur place un objet cible sur l’établi devant le participant. Ensuite, un signal auditif signale au participant d’ouvrir les yeux et d’exécuter la saisie. Dans nos démonstrations, la tâche consiste à atteindre et à saisir l’objet cible, à le soulever verticalement d’environ 10 cm, à le poser et à remettre la main à sa position de départ. Un script écrit en Python 3.7 contrôle l’expérience. À chaque essai, le script sélectionne et communique les paramètres de condition actuels à l’expérimentateur (par exemple, l’identité et le positionnement de l’objet). Le script contrôle également le calendrier de l’essai, y compris les indices auditifs et le début et la fin des enregistrements de capture de mouvement.
Les membres ne sont pas seulement caractérisés par leur position dans l’espace 3D, mais aussi par leur pose. Ainsi, pour obtenir une reconstruction 3D complète d’une main humaine exécutant une prise réelle, nous avons besoin non seulement des positions de chaque articulation dans l’espace 3D mais aussi de la pose relative (translation et rotation) de chaque articulation par rapport à son articulation mère (Figure 1F). Les positions et les orientations des articulations squelettiques peuvent être déduites des positions des marqueurs à l’aide de la cinématique inverse. Pour ce faire, nous utilisons ici le solveur squelette fourni par le logiciel QTM. Pour que le solveur fonctionne, nous devons d’abord fournir une définition du squelette qui relie la position et l’orientation de chaque articulation à plusieurs positions de marqueur. Une définition du squelette est donc construite, et la plate-forme squelette est liée aux données du marqueur à l’aide du plugin QTM Connect pour Maya. Nous créons des définitions de squelette personnalisées pour chaque participant afin de maximiser la précision des ajustements du squelette aux données du marqueur. Pour chaque participant, nous ajustons manuellement un squelette de main à une seule image de données de capture de mouvement. Après avoir obtenu une définition du squelette spécifique au participant, nous exécutons ensuite le solveur de squelette pour estimer les poses des articulations squelettiques pour chaque image de chaque essai de l’expérience.
Pour chaque image de chaque essai d’une expérience, nous générons un maillage de main qui reconstruit la pose de main actuelle à l’aide de l’outil de génération de mailles de main open source et préentraîné, DeepHandMesh28 (Figure 1G). DeepHandMesh est un réseau d’encodeur-décodeur profond qui génère des maillages manuels personnalisés à partir d’images. Tout d’abord, l’encodeur estime la pose d’une main dans une image (c’est-à-dire les angles d’Euler articulaires). Ensuite, la pose de la main estimée et un vecteur d’identification personnalisé sont entrés dans le décodeur, qui estime un ensemble de trois correctifs additifs à un maillage de gabarit truqué. Enfin, le maillage du gabarit est déformé en fonction de la pose de la main estimée et des correctifs à l’aide d’un revêtement linéaire par mélange. Le premier correctif est un correctif de squelette dépendant de l’ID à travers lequel l’engin squelettique est ajusté pour incorporer les positions articulaires spécifiques à la personne. Les deux autres correctifs sont des correctifs de maillage à travers lesquels les sommets de maillage sont ajustés pour mieux représenter la surface de la main du participant. L’un des correctifs de maillage est un correctif de maillage dépendant de l’ID qui tient compte de la structure de surface de la main d’un participant individuel. Le correctif final du maillage est plutôt un correctif de sommet dépendant de la pose qui tient compte des déformations de la surface de la main dues à la pose actuelle de la main.
DeepHandMesh est formé en utilisant une supervision faible avec des points clés de joint 2D et des cartes de profondeur de scène. Ici, nous utilisons uniquement le décodeur DeepHandMesh préentraîné pour générer des reconstructions de maillage manuel, modifiées de la manière suivante (Figure 3). Tout d’abord, comme le réseau n’est pas formé sur des participants spécifiques, le correctif générique de maillage dépendant de l’ID fourni avec le modèle préentraîné est utilisé (figure 3A). De plus, le correctif du squelette dépendant de l’ID est dérivé à l’aide du solveur squelette QTM tel que décrit ci-dessus (Figure 3B). On suppose une mise à l’échelle proportionnelle de la main avec la longueur du squelette, et l’épaisseur de la maille est uniformément mise à l’échelle par un facteur dérivé de l’échelle relative du squelette de sorte que la maille se rapproche mieux de la taille de la main du participant (Figure 3C). Ce maillage modifié est entré dans le décodeur, avec la pose actuelle de la main (dérivée des données du marqueur) et la position et l’orientation 3D du poignet. Ainsi, le décodeur calcule le correctif actuel dépendant de la pose, applique tous les correctifs et roto-translations, et produit une reconstruction 3D du maillage de la main de la pose de la main actuelle dans le même cadre de coordonnées que le maillage d’objet suivi 3D (Figure 3D).

Figure 3 : Modifications apportées au décodeur DeepHandMesh préentraîné. (A) Correction de maillage fixe et générique dépendante de l’ID. (B) Correctif du squelette dépendant de l’ID dérivé de la cinématique inverse à l’étape 10. (C) La taille de la maille des mains est mise à l’échelle par le même facteur que les articulations squelettiques. (D) Reconstruction finale en maille de main 3D de la pose de main actuelle. Veuillez cliquer ici pour voir une version agrandie de cette figure.
Après avoir reconstruit des modèles de maillage 3D pour la main d’un participant et un objet saisi, les régions de contact main-objet peuvent être estimées en calculant l’intersection entre les mailles main et objet (Figure 1H). L’hypothèse derrière cela est que la vraie main est déformée par contact avec la surface, ce qui signifie que le squelette peut se rapprocher de la surface que ce qui serait possible si la main était rigide, ce qui permet à des parties du maillage de la main de passer à travers le maillage de l’objet. En conséquence, les zones de contact peuvent être approchées comme les régions de chevauchement entre les deux mailles.
Plus précisément, pour calculer ces régions de chevauchement, nous définissons les sommets de maillage d’objets contenus dans le volume 3D du maillage de la main comme étant en contact avec la main. Ces sommets sont identifiés à l’aide d’une approche standard de raytracing45. Pour chaque sommet du maillage d’objet, un rayon est projeté à partir de ce sommet vers un point 3D arbitraire à l’extérieur du maillage manuel. Nous évaluons ensuite le nombre d’intersections qui se produisent entre le rayon coulé et les triangles composant la surface de la main. Si le nombre d’intersections est impair, le sommet de l’objet est contenu à l’intérieur du maillage de la main. Si le nombre d’intersections est pair, le sommet de l’objet se trouve à l’extérieur du maillage manuel. Les régions de contact à la surface de l’objet peuvent donc être approchées comme l’ensemble des faces triangulaires dont les sommets sont tous contenus dans le maillage de la main. Nous pouvons appliquer le même raisonnement aux sommets du maillage manuel contenus dans le volume 3D du maillage d’objet pour estimer les régions de contact à la surface de la main. Notamment, des approches plus avancées des opérations de maillage booléen pourraient également être utilisées31.
La vidéo 1 montre une vidéo d’une main, de points suivis et d’un maillage co-enregistré se déplaçant côte à côte au cours d’une seule saisie d’une figurine de chat imprimée en 3D. La figure 4A montre plutôt une seule image au moment du contact main-objet d’une poignée à un croissant imprimé en 3D, ainsi que les reconstructions du maillage main-objet (Figure 4B) et les régions de contact estimées à la surface du croissant (Figure 4C).

Figure 4 : Régions de contact entre la main et l’objet. (A) Main et objet suivis vus par l’une des caméras de suivi lors d’une saisie. (B) Maillage manuel reconstruit et maillage d’objets suivis rendus du même point de vue que la caméra de suivi. (C) Régions de contact sur la surface de l’objet vu de plusieurs points de vue. Veuillez cliquer ici pour voir une version agrandie de cette figure.
Vidéo 1 : Reconstitutions en mailles de la main et de l’objet. Animation Gif de la main, des marqueurs suivis et des reconstructions de mailles de la main et de l’objet au cours d’une seule prise vue du même point de vue de la caméra. Veuillez cliquer ici pour télécharger cette vidéo.