71
Extension aux quadrupèdes d’un moteur d’animation 3D de personnages Stage de Master 2 Recherche “Imagerie, Vision, Robotique” Nicolas Chaverou Sous la tutelle de Lionel Revéret Équipe EVASION-GRAVIR-IMAG 1/19

Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

  • Upload
    kail

  • View
    21

  • Download
    0

Embed Size (px)

DESCRIPTION

Extension aux quadrupèdes d’un moteur d’animation 3D de personnages. Stage de Master 2 Recherche “Imagerie, Vision, Robotique” Nicolas Chaverou Sous la tutelle de Lionel Revéret Équipe EVASION-GRAVIR-IMAG. 1/19. Introduction. Contexte : Besoin d’animer les animaux de manière réaliste. - PowerPoint PPT Presentation

Citation preview

Page 1: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Stage de Master 2 Recherche “Imagerie, Vision, Robotique”

Nicolas Chaverou

Sous la tutelle de Lionel Revéret

Équipe EVASION-GRAVIR-IMAG

1/19

Page 2: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Introduction Contexte :

Besoin d’animer les animaux de manière réaliste.

Capture de mouvements délicate.

Keyframe fastidieux et peu flexible : adapté à une morphologie de squelette adapté à un environnement spécifique.

Keyframe peu réutilisable (mélange)

Page 3: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contexte : MKM (Manageable Kinematic Motions), une librairie d’animation de bipèdes en temps-réel (SIAMES – IRISA)

Mélange de mouvements

Adaptation à l’environnement

Indépendant de la morphologie

Introduction

[Multon et al. 05]

Page 4: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Introduction

Objectif : MKMQuad, une librairie d’animation de quadrupèdes en temps-réel.

Proposer les mêmes fonctionnalités pour les quadrupèdes :

Mélange de mouvements

Adaptation à l’environnement

Indépendant de la morphologie

Page 5: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Problématique

Méthodes de MKM uniquement adaptées aux personnages bipèdes.

Un quadrupède ≠ 2 x 2 bipèdes ! [Cartmill et al. 02]

=> Adapter les méthodes existantes ou en trouver de nouvelles.

Page 6: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Plan

État de l’art Synchronisation

Le Contexte MKM

Contributions Squelette générique de quadrupèdes Nouvelle approche de la synchronisation

Conclusion et Perspectives

Page 7: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Plan

État de l’art Synchronisation

Le Contexte MKM

Contributions Squelette générique de quadrupèdes Nouvelle approche de la synchronisation

Conclusion et Perspectives

Page 8: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

État de l’art

SynchronisationCorrespondances entre mouvements

Utilisation des fréquences [Bruderlin et al. 95]

Framespace interpolation [Guo et al. 94]

Transitions entre postures Motion graphs

[Kovar et al. 02] [Ashraf et al. 01]

Page 9: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Plan

État de l’art Synchronisation

Le Contexte MKM

Contributions Squelette générique de quadrupèdes Nouvelle approche de la synchronisation

Conclusion et Perspectives

Page 10: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Présentation générale

Offline Temps-réel

Page 11: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Squelette normalisé

[Kulpa et al. 05]

Page 12: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Squelette normalisé : articulation intermédiaire

[Kulpa et al. 05]

Page 13: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Squelette normalisé : articulation intermédiaire

[Kulpa et al. 05]

Page 14: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Squelette normalisé : articulation intermédiaire

[Kulpa et al. 05]

Page 15: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Squelette normalisé : articulation intermédiaire

[Kulpa et al. 05]

Page 16: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Squelette normalisé : articulation intermédiaire

[Kulpa et al. 05]

Page 17: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Traitement Ajout de contraintes

[Menardais et al. 04]

Page 18: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 19: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 20: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 21: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 22: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 23: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 24: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 25: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 26: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation

Page 27: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation Synchronisation

[Menardais et al. 04]

Page 28: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation Synchronisation

[Menardais et al. 04]

Page 29: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Le Contexte MKM

Partie Animation Synchronisation

Soit Si(k) le k-ième élément de l’action Ai. Ai et Aj sont donc synchronisées sur nk phases si :

Si le résultat est différent de Err : OK Sinon, on modifie le mouvement

[Menardais et al. 04]

Page 30: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Plan

État de l’art Synchronisation

Le Contexte MKM

Contributions Squelette générique de quadrupèdes Nouvelle approche de la synchronisation

Conclusion et Perspectives

Page 31: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Représentation générique de quadrupèdesMorphable model of Quadruped Skeletons

Petits Cauchemars Entre Amis (2006 - 192Kbps)

[Revéret et al. 05]

Page 32: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Différentes locomotions

Nécessité d’un nouveau squelette générique

Page 33: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Encodage des articulations intermédiaires

Page 34: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 35: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 36: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 37: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 38: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 39: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 40: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 41: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 42: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdes Décodage des articulations intermédiaires

Page 43: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Squelette générique de quadrupèdesVidéo

Page 44: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Relation algébrique de MKM

Relation algébrique pour les bipèdesMatrice 4x4, 2 cas d’erreurs

Page 45: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Relation algébrique de MKM

Relation algébrique pour les bipèdesMatrice 4x4, 2 cas d’erreurs

Page 46: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Relation algébrique de MKM

Relation algébrique pour les bipèdesMatrice 4x4, 2 cas d’erreurs

Relation algébrique pour les quadrupèdesMatrice 16x16

Page 47: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Relation algébrique de MKM

Relation algébrique pour les bipèdesMatrice 4x4, 2 cas d’erreurs

Relation algébrique pour les quadrupèdesMatrice 16x16, 110 cas d’erreurs

Page 48: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Nouvelle approche

Relation algébrique de MKM non extensible

=> Étude au niveau anatomique 9 Allures [Howell 44]

Représentation sous forme d’automates

Page 49: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Nouvelle approche

Représentation des allures sous forme d’automates

Marche Galop

Page 50: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

Page 51: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

[Favreau, in progress]

Page 52: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

[Favreau, in progress]

Marche

Page 53: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

[Favreau, in progress]

Marche

Galop

Page 54: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

[Favreau, in progress]

Marche

GalopTransition

Page 55: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

[Favreau, in progress]

Page 56: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

Marche Galop

Page 57: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

Marche Galop

appui unipodal

Page 58: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

Synchronisation Étude de cas

Transition

Marche Galop

réunion des appuis

Page 59: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation

Marche Trot

Page 60: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation

Marche Trot

Page 61: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : trouver un chemin valide

Marche Trot

Page 62: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : trouver un chemin valide

Marche Trot

Patte Patte

Pa

tte

Pa

tte

Page 63: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : trouver un chemin valide

E1 – E2 = au moins un appui antérieur

Marche Trot

Patte Patte

Pa

tte

Pa

tte

=

=

-

-

Page 64: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : trouver un chemin valide

E1 – E2 = au moins un appui antérieur

Marche Trot

Patte Patte

Pa

tte

Pa

tte

=

=

-

-

Page 65: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : calculer les états T1 et T2

Marche Trot

Patte Patte

Pa

tte

Pa

tte

E1

E2

Page 66: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : calculer les états T1 et T2

Marche Trot

Patte Patte

Pa

tte

Pa

tte

E1

E2

T1 = E1 – E2

T1

Page 67: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Contributions

SynchronisationGénéralisation : calculer les états T1 et T2

Marche Trot

Patte Patte

Pa

tte

Pa

tte

E1

E2

T1 = E1 – E2T2 = T1 + E2

T1

T2

Page 68: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Plan

État de l’art Synchronisation

Le Contexte MKM

Contributions Squelette générique de quadrupèdes Une nouvelle approche de la synchronisation

Conclusion et Perspectives

Page 69: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Conclusions

MKM => MKMQuad : Contributions

Adaptation du squelette générique Encodage/Décodage des pattes

Nouvelle approche de la synchronisation Modèle de génération de transitions entre allures

Page 70: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Perspectives

Génération automatique d’allures

Synthèse de recherches : Travaux sur les allures : [Abourachid 03], [Maes 06]

Corrélation avec le morphable quadruped. [Revéret et al. 05]

=> Définitions de nouveaux animaux.

Page 71: Extension aux quadrupèdes d’un moteur d’animation 3D de personnages

Merci de votre attention