65
1 Les Humanoïdes Présenté par : N’dri AHOUA – Décembre 2003

Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

1

Les Humanoïdes

Présenté par : N’dri AHOUA – Décembre 2003

Page 2: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

2

Plan de l’exposé

• Introduction

• Présentation des groupes de recherche et de leurs projets sur les humanoïdes

• Différents types d’humains virtuels

• Modélisation des humanoïdes

• Spécification 3D des humanoïdes

• Animation des humanoïdes

• Application des humanoïdes

• Conclusion et perspectives

Page 3: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

3

Introduction

Humanoïde = représentation graphique d'un être humain par un ordinateur

Reproduire l’être humain dans un environnement virtuel = simulation du mouvement humain : => tâche particulièrement complexe

Mise au point de nombreuses méthodes par différents groupes de recherche : H-Anim, IRISA, CRYO, Mirlab, XD PRODUCTION

CEDRIC…

Problèmes :

• intrinsèquement complexe

• de cohérence dans la combinaison de mouvements

• de complexité du mouvement du corps humain

Page 4: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

4

Groupes de recherche et leurs projets

• IRISA ( Institut de Recherche en Informatique et Systèmes Aléatoires) :

Projet SIAMES ( Synthèse d'Images, Animation, Modélisation et Simulation).

Simulation de systèmes dynamiques complexes afin de réaliser des outils de modélisation et de contrôle pour l’animateur.

• Cryo-Interactive de la société CRYO : projet «Humain Virtuel Temps-Réel»

Création d'un module d'animations interactives d'un humain virtuel.

– Les principales fonctions du module d'animation sont:

• la locomotion (marche, course), la préhension d'objet, le mouvement des habits, etc.

• Le working groupe H-Anim, créé dans le Symposium VRML 97.Spécifications de la représentation des humains virtuels et de ses comportements en VRML.

Page 5: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

5

Groupes de recherche et leurs projets (suite)

• MiraLab (Université de Genève)

Un laboratoire pluridisciplinaire travaillant sur la simulation humaine virtuelle et les mondes virtuels.

• XD PRODUCTION (Studio de création et d'animation d'images virtuelles)

– Domaine d’activité :

• Production (films en image de synthèse),

• Recherche et développement (Cyberdome: capture de mouvements, formes et textures),

• 3D sur Internet (XDNet : moteur 3d temps réel conçu pour s'intégrer aux navigateurs internet)

• CEDRIC (centre de recherche et d’études en informatique du CNAM)

Page 6: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

6

Les différents types d’humains virtuels

Quatre types d’humains virtuels : d’après D.Thalmann « A NewGeneration of Synthetic Actors »

• Les avatars

• Les acteurs guidés (manipulés par l'utilisateur « marionnette »)

• Les acteurs autonomes (représentent un service ou un programme « robot »)

• Les acteurs perceptifs et interactifs

Page 7: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

7

Une notion : les degrés de liberté (DDL)

• Nombre de variables pour spécifier un état physique

• Vecteur d’états

– ensemble de variables définissant toutes les configurations possibles

– forme une base dans l’espace d’états

– Animation : chemin dans l’espace d’états

Exemple :

Une phalange, le genou = 1 degré de liberté

Le poignet….. = 2 degrés de liberté

Le cou, base du pouce = 3 degrés de liberté

Page 8: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

8

Modélisation des humanoïdes : définition

Création de personnages dans un environnement virtuel en 3DIntégration des données de ces personnages pour l’animation lors

de la spécification des structures articulées

Une donnée = un nœud qui peut être manipulé pour modifier l’apparence d’un élément (une articulation).

Personnages modélisés = une structure articulée comportant 50 DDL.

La structure = {segments de longueur définie + des articulations de 1, 2 ou 3 DDL}.

Page 9: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

9

Modélisation du squelette humain

Il est composé :

• de segments (les os)

• des articulations (reliant les os)

os + articulations = structure articulée décrite par un graphe orienté de corps rigides reliés par des liaisons mécaniques qui définissent un schéma pour simuler les membres et les articulations.

Page 10: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

10

Modélisation des humanoïdes : synthèse

Représentation hiérarchique du squelette humain

Règle d’élaboration d’ un arbre de transformation

• Un nœud de l’arbre possède un père unique,

• Les nœuds frères ont un père commun,

• Un nœud sans fils est une feuille de l’arbre,

• Un nœud de l’arbre peut posséder des nœuds fils et des nœuds frères.

Racine

Noeud 0

Noeud 1 Noeud 2 Noeud N...

... ...Noeuds frères

Fils du noeuds 0

Feuille

Le squelette humain représenté par des nœuds de transformation dont l’ensemble constitue un arbre de transformation

Page 11: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

11

Spécification 3D des humanoïdes (d’après H-anim)

• L’ humanoïde : hiérarchie d’entités + différents comportements (rotation des articulations, la déformation, la translation)

• Deux étapes pour définir la structure de l’humanoïde :

– mise en place d'une hiérarchie

– définition d'une enveloppe corporelle (la peau)

Page 12: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

12

Spécification 3D des humanoïdes

Génération automatique de l'enveloppe corporelle

Une première couche composée d'un ensemble de metaballs modélisant les muscles vient s'additionner au squelette de départ.

L'enveloppe est alors générée à partir de ces primitives pour obtenir le résultat final lors du mouvement du squelette.le squelette humain défini au LIG (Lésions intra-

articulaires du genou) [source……]

Page 13: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

13

Un exemple : H-anim (VRML)

• Le corps humain ={ segments (bras, pied etc..)}. • Les segments sont reliés par une articulation (coude, poignet,

cheville). • L’animation = modification des angles des articulations. • Un fichier Humanoïde = {nœuds}• Chaque nœud est défini par un prototype (PROTO)

– Joint = une articulation du corps.– Segment = chaque partie élémentaire (non articulée) du

corps. – Site = emplacement de la caméra et/ou modélisation d’un

point de référence lors de l’animation de point d’ancrage d’un bijou.

– Displacer = représentation d’une action musculaire – Humanoid = le conteneur général

Page 14: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

14

Animation des humanoïdes

• Animer une image (cinéma, réalité virtuelle) ==> faire varier un phénomène dans le temps par une procédure.

• Changement ayant un effet visuel ==> objet d'animation

• Objet d'animation : l’évolution de la position de cet objet, de l'observateur ou d'une source lumineuse, modification de la forme, de la couleur, de la transparence ou de la texture.

Page 15: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

15

Animation des humanoïdes

Exemple d’humanoïde en mouvement

Page 16: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

16

Différents types de mouvements pouvant être simulés

- La locomotion

- Les mouvements corporels

- La préhension

- Les mouvements associés à des tâches complexes

- La génération de gestes

- Etc.

Page 17: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

17

Principes de l’animation en informatique

• Mouvement = une séquence d’animation (représentée à l’écran)

• Une séquence d’animation = succession d’images présentées les unes après les autres

• Elles donnent une impression de mouvement du fait de la persistance rétinienne de l’œil humain

• Pour une séquence d’animation il faut :– Une modification des objets du monde virtuel/temps– Transformer la représentation des objets et les afficher

Page 18: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

18

Description des états d’une séquence d’animation

Diagramme d’état d’une séquence d’animation

Différents états

• Calcul de l’image

• Modification de la configuration des objets en fonction du temps

• Affichage de l’image (processus du double « buffering »)

Page 19: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

19

Différentes méthodes utilisées en animation

• Trois principales méthodes sont utilisées

La cinématique (production d’effet sans se préoccuper des causes : comment le mouvement peut être représenté)

La dynamique (description des lois physiques qui lient les causes et les effets )

Calcul de mouvements à partir du mouvement (tout mouvement peut être décrit à partir d’une base de trajectoires préenregistrées)

Page 20: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

20

Différentes techniques d’animation

• Trois principales techniques d’animation

Animation par images clé « keyframing »

Animation par capture de mouvements « motion capture »

Animation par modèles physiques

Page 21: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

21

• Le « keyframing » = animation traditionnelle + interpolation entre scènes intermédiaires de deux images clés

• Le principe d’interpolation– Fournir des images à des instants donnés – Le programme calcule les images intermédiaires par interpolation (transformation d’une forme géométrique en une autre forme lors de l’animation)

• Règle de l’interpolation– Il faut certaines correspondances entre deux positions clés successives (entre image de départ et image d’arrivée)– Cas contraire : procéder à un prétraitement pour faire concorder les deux positions clés

Animation par images clé « keyframing » (1/2)

Page 22: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

22

Animation par images clé « keyframing » (2/2)

• Exemple: une transformation de formes (le morphing)

• Le « morphing » = animation par des images calculées à l’aide de fonctions continues (souvent linéaires)

Une interpolation 3D

Page 23: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

23

Mise en œuvre du « keyframing »

Pour mettre en œuvre le « keyframing » il faut :

• Une horloge pour cadencer le calcul de l’animation et spécifier la durée de l’animation

• Spécifier les moments clés de l’animation : c’est à dire les moments caractéristiques (début, fin, …)

• Spécifier les valeurs clés de l’animation : point de départ, arrivée, …)

• Un système d’interpolation : calcule à chaque moment les valeurs caractéristiques de l’objet à partir des valeurs clés

Page 24: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

24

Domaines d’utilisation du « keyframing »

K eyfram ing

L angage

E nvironnem ent 3D 3ds m ax

program m é Java 3D

décrit V R M L

Page 25: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

25

VRML

• VRML (Virtual Reality Modeling Language) = langage de description des scènes 3D adapté au web

• PrincipesL’unité de base est la scène.Le format de ficher : type texte.

• Concepts de base:• Nœud: unité basique d’un fichier VRML. • Prototype: patron pour construire un nouveau type de nœud.• Système d’événements: la possibilité d’émettre et/ou de recevoir des événements d’autres éléments de la scène.• Système de routage: permet la propagation des événements entre les objets.

Page 26: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

26

Exemple de fichier VRML uneTable.wrl

#VRML V2.0 utf8DEF T Transform {children [

Transform { # plateautranslation 0.0 0.4 0.0childrenShape {

appearance Appearance {material Material { diffuseColor 0.8 0.8 0.8 }

}geometry Box { size 1.3 0.15 1.3 }

}}

Transform { # pied 1translation -.5 0.0 -0.4childrenDEF Pied Shape {

appearance Appearance {material Material { diffuseColor 1.0 1.0 0.0 }

}geometry Cylinder { height 0.9 radius .075 }

}}

Transform { # pied 2

translation .5 0.0 -0.4

children USE Pied

}

Transform { # pied 3

translation -.5 0.0 0.4

children USE Pied

}

Transform { # pied 4

translation .5 0.0 0.4

children USE Pied

}

]

}

Page 27: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

27

Le « keyframing » en VRML

• La structure générale du « keyframing » en VRML

• Les différents interpolateurs VRML

Page 28: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

28

Animation en VRML

• Utilisation du mécanisme d'événements (eventIn eventOut..)

• Description des comportements dans un langage de programmation (utilisation du nœud «Script» : Java Javascriptou VRMLscript)

• Déclenchée par un événement utilisateur (détection d'un clic souris : «capteurs» ou une horloge «TimeSensor»)

• Interpolateurs (pour générer l’animation entre deux images)

Page 29: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

29

Animation en VRML : gestion des évènements

• Un événement = message contenant 1 valeur champ considéré).

• Un nœud VRML est composé de champs de type: – «eventIn» évènements en entrée – «eventOut» évènements en sortie– «exposedField » des évènements en E/S– «field» des champs en lecture seule

• «Route» (Routage) = aiguillage des nœuds d’ E/S de même type

• «TimeSensor» = génération des événements correspondant àdes tics d'horloge à intervalles réguliers.

Page 30: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

30

Animation en VRML : les instructions

Interpolateurs de VRMLCalcul d'interpolation

Champ keyValue d'un interpolateurValeurs clés

Champ key d'un interpolateurMoments clés

Champ cycleInterval de TimeSensorDurée de l'animation

TimeSensorHorloge

Instructions VRML correspondantesFONCTION «keyframing »

Page 31: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

31

Animation en VRML : un exemple

• Conception– humanoïde de sexe féminin conçu par le groupe H-anim

– Il est debout sur un terrain plat (position initiale)

– Un menu horizontal : Stop, Marcher, Courir, Sauter, Marche_cercle

– La modification du pointeur = présence d’événement àl’option.

– Un clic sur une option ==> déclenchement de l’événement associé à cette option

Page 32: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

32

Animation en VRML

• Démonstration

Page 33: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

33

Java 3D : définition

• Java 3D = bibliothèque de classes pour créer des scènes 3D (utilisation de formes complexes, d'éclairages, de textures, d'animations, de sons)

• Le package Java 3D : extension du langage Java

• Utilisation des bibliothèques graphiques 3D existantes (les standards OpenGL, DirectX … )

• Importation des graphes de scènes VRML

• Indépendant du matériel

Page 34: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

34

Principe d’animation en Java 3D

• On a besoin de créer :– Un «TransformGroup pour gérer des transformations des objets

3D – Un objet «Alpha» précisant le nombre de tours et la vitesse du

mouvement– Un «Interpolator» (sous classe de Behavior) construction d’une

interpolation du temps entre deux valeurs– «Bounding» indiquant la zone modifiée

Syntaxe :Les deux premiers sont reliés par :RotationInterpolator(Alpha alpha, TransformGroup target)puis void setSchedulingBounds(Bounds region)lancé sur un «Behavior»

Page 35: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

35

Interpolation en Java 3D

• Système d’interpolation

Alpha Interpolateur Objet (TG)intervalle Valeurs

• Organisation d’une animation

Page 36: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

36

Les différents types d’interpolateurs

Interpolation linéaire entre deux positions définissant la composante de translation du TransformGroup cible

PositionIterpolator

Interpolation linéaire entre deux valeurs définissant la composante de mise à l'échelle uniforme du TransformGroupcible

ScalarInterpolator

Interpolation linéaire entre deux valeurs définissant la composante angulaire de rotation du TransformGroup cible.

RotationInterpolator

permet l’interpolation entre les différentes valeurs.

PathInterpolator

Interpolation entre deux couleurs définissant la composante diffuse du matériau cible

ColorInterpolator

Page 37: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

37

Les transformations en Java 3D

• Transformations : utilisées pour positionner et animer une forme 3D dans l'espace

• La classe «Transform3D» décrit une opération de translation, de rotation ou d'homothétie

• Cette opération est associée à une instance de la classe «TransformGroup» et ajoutée à l’arbre de la scène pour l'appliquer sur une forme

Page 38: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

38

Procédure d’animation d’un objet en Java 3D

• Après la création de « TransformGroup » :• On crée un objet « Alpha » (fonction de rotation au cours du

temps : Alpha(int nombreDeBoucles, long duree) )• On crée un interpolateur (faisant référence à Alpha et l’objet

cible)– RotationInterpolator rotator = new

RotationInterpolator(…);

• On crée un « scheduling » (région du mouvement )– BoundingSphere bounds = new BoundingSphere( new

Point3d(0.0,0.0,0.0), 100.0);• Ajout de l’interpolateur au graphe de scène

– rotator.setSchedulingBounds(bounds); pour fixer la région du mouvement de rotation à cette sphère

Page 39: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

39

Un outil d’animation : 3d smax

• Logiciel de création, de modélisation, d’animation et de rendu d’objet 3D

• C’est une application indépendante tournant sous le système windows

• Il permet la création des objets d'une scène, la modification deces objets ainsi que leur manipulation.

• Les constituants fondamentaux d'une scène sont :– La géométrie– La lumière– Les caméras

Page 40: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

40

Interface de 3ds max

• L'interface du logiciel contient les informations relatives à:

– La modélisation et l'édition

– La définition des matériaux

– L'animation

– Le rendu

• L'interface de 3D Studio Max contient huit zones principales detravail

Page 41: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

41

L’animation dans 3ds max

• Utilisation des modificateurs d’objets pour l’animation dans unescène

• Enregistrement des paramètres de modifications

• Des outils permettant de manipuler les clés d’animation– La vue piste: « Track View »– La configuration du temps pour déterminer et mesurer la

durée de l’animation

• Des contrôleurs pour générer l’animation

Page 42: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

42

Le « keyframing » dans 3ds max

• 3ds max permet l’animation par image clé « keyframing »

• Chaque image clé est défini par l’utilisateur

• Le programme calcule l’ensemble des images intermédiaires en tenant compte des paramètres

• La technique de calcul utilisée est l’interpolation générée par les différents contrôleurs

Page 43: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

43

Les contrôleurs dans 3ds max

• Les contrôleurs = fonctions spécifiques qui gèrent des données d’animation– le stockage des valeurs d’animation– Prise en charge des interpolations d’une valeur à une autre

• Un contrôleur est associé à un objet dont les paramètres (spécifiés par le composant central) sont animés

• exception de « transformation » toujours affecté à tout nouvel objet au moment de sa création

• Exemple : « Linear » (linéaire), « Smooth » (lissage)

Page 44: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

44

Structure générique pour l’animation de type « keyframing »

• Une structure générique des trois systèmes :– VRML, Java 3D, 3ds max

Horloge Interpolateur Objet animé

Durée Moments clés

Valeurs clés

Intervalles Valeurs

Page 45: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

45

Conclusion «keyframing »

• Contrôle de l’animation par l’utilisateur

• Demande une compétence de l’animateur

• Manque de fluidité dans le mouvement

Page 46: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

46

Animation par capture de mouvements « motion capture »

• Capture de mouvements = filmer un acteur dans un costume de capteur effectuant des mouvements spécifiques

• Chaque geste des articulations (représentées sur le costume) indique les postures clés du mouvement

• L’animateur analyse les mouvements et les adapte aux modèles 3D

• Un système de capture = – { senseurs alimentant les données de position et

d’orientation à un ordinateur } – Des caméras – Du matériel et des logiciels de traitement

Page 47: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

47

Animation par capture de mouvements « motion capture » : un exemple

• Exemple d’animation par capture de mouvements

Capture du mouvement par la méthode optique et retranscription au modèle 3D

Page 48: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

48

Animation par capture de mouvements « motion capture » : principe

• Enregistrement des actions de l’acteur

• Analyse des actions

• Réplication sur un objet 3D– Directe (le bras humain contrôlant le mouvement du bras du

personnage 3D)– Indirecte (contrôler la tête d’un personnage par la souris)

Page 49: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

49

Les différentes étapes de la capture de mouvements « motion capture »

• Planification du processus de capture

• La capture de mouvement

• Nettoyage des données capturées

• Édition du mouvement

• Application du mouvement au personnage 3D animé. « Motion Mapping »

Page 50: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

50

Domaines d’utilisation de la capture de mouvements

Optique

Capture de mouvements

Système de capture de mouvements

Traitement des données capturées

Magnétique

Mécanique

Mocap

Page 51: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

51

Capture de mouvements : Système mécanique

• Des capteurs capables d’enregistrer leur propre position.

• Ce sont des exosquelettes

• Chaque articulations est munie d’un potentiomètre mesurant l’angle au niveau des articulations

• Fonctionne sans fil

• Pas de perturbation due à l’environnement.

• Exemple

Un capteur mécanique de mouvements, le système « Gipsy2 » de Analogus

Page 52: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

52

Capture de mouvements : Système optique

• Exemples : capture avec marqueurs

Le cyberdome d’Angoulême muni de caméra

Acteur en action la reconstitution des mouvements

Page 53: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

53

Capture de mouvements : Système magnétique

• Capteurs magnétiques (6 à 11)

• Enregistrement des positions des marqueurs dans l'espace à l'aide de détecteurs.

• Pas de problèmes de masquage

• Limitation d’espace

• Encombrement des filsGypsy Motion Capture System

Page 54: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

54

Édition des mouvements capturés

• Pourquoi a-t’on besoin d’éditer les données capturées ?

– La réutilisation

– La création de mouvements difficilement faisables

– L’imperfection de la réalité

– Changement d’intention

Page 55: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

55

Structure générique pour la capture de mouvements

Mapping Données Objet animé

Caméras Marionnette

Modèle Acteur

Page 56: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

56

Animation par capture de mouvements « motion capture »

• Démonstration

Page 57: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

57

Animation par modèles physiques

• Définition des « lois du mouvement » et permettre le programme d’engendrer le mouvement

• Les « lois du mouvement » :– Une procédure à exécuter (équation de la trajectoire)

• V = Fpas * Lpas (v = vitesse, Fpas Lpas = fréquence et longueur des pas)

• Des lois de la physique (y =100 –5t2)

• Des lois comportementales

Page 58: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

58

Domaines d’utilisation du modèle physique

Modèle physique

Type d’animation

Environnement d’animation Renderware

Procédurale

Par contrainte

Page 59: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

59

L'animation procédurale

• Description du mouvement par un programme• Prise en compte des espaces physiques et dynamiques des

mouvements• On distingue :

– Les méthodes « cinématiques » (reproduction des mouvements sans connaître les causes)

– Modèle « dynamique » (qui s’intéresse aux causes)

– Le calcul de mouvement à partir d’autres mouvements (tout mouvement peut être décrit à partir d’une base de trajectoires préenregistrées)

Page 60: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

60

L'animation par contrainte

• Cinématique : – Incorporation de positions clés– Fonction de comportement permettant au personnage de

réagire à l’environnement– La dynamique inverse pour déterminer les forces au

mouvement

• Énergétique (fonction énergétique)• Dynamique (spécification des contraintes géométriques)• Espaces-temps : « comment » (spécification du mouvement,

exécution du mouvement, la structure physique)

Page 61: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

61

Application des Humains virtuels

• Sur le web

Première apparition d'une présentatrice virtuelle d'informations sur internet (19 avril 2000)

http://www.ananova.com

• Environnement léger

The Personal Virtual Human Assistant

Virtual Reality Lab (VRlab), EPFL

Page 62: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

62

Conclusion et perspectives

• Intégration effective des humanoïdes dans la 3D• Les problèmes de mouvements sont en passe d’être résolus

– Par la combinaison des différentes techniques d’animation – Par la performance des outils

• L’idéal serait de créer des avatars autonomes, intelligents, capables de simuler le comportement humain

• La possibilité d’utiliser ces avatars sur les environnements légers

Page 63: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

63

Bibliographie

• [Far 03] J.M. Farinone, Java et le multimédia, 2003

• [AaAVH1998] : Tolga K. Capin, I. S. Pandzic, N. Magnenat Thalmann, D. Thalmann, Realistic Avatars and Autonomous Virtual Humans in VLNET Networked Virtual Environments, (1) Computer Graphics Laboratory, Lausanna, 1999

• http://cedric.cnam.fr/~farinone/CCAM/java3D.pdf

• http://cedric.cnam.fr/~farinone/CCAM/java3D.pdf

• http://www.motion-capture-systems.com/magnetic_motion_capture_km_kk.html

• http://www.ananova.com

• http://ligwww.epfl.ch/

Page 64: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

64

Les humanoïdes

• Questions ??????????

Page 65: Les Humanoïdes - deptinfo.cnam.frdeptinfo.cnam.fr/Enseignement/DEACAM/animation... · 4 Groupes de recherche et leurs projets • IRISA ( Institut de Recherche en Informatique et

65

Annexes

Exemple d’interpolation : A B et B A• On fournit le point de départ A, point d’arrivée B, puis celui de A • Le programme calcule les points intermédiaires de la trajectoire• Animation de 10s : Si A-- B =5s, et XA =0, XB =10

t = 0 x = 0, t = 5 x = 10 ==> x = 2tt = 5 x = 10, t = 10 x = 0 ===> x = -2(t-5)+10 (linéaire car x = at+b)