Animation par scènes ou images clés

Post on 30-Dec-2015

42 views 6 download

description

Animation par scènes ou images clés. Interpolation de formes ou d’images. Tire son nom du système traditionnel de production développé par Walt Disney. Origine de l’animation par scènes clés. Dans ce système, les artistes principaux ne produisaient que les - PowerPoint PPT Presentation

Transcript of Animation par scènes ou images clés

Animation parscènes ou images clés

Interpolation de formes ou d’images

2

Origine de l’animation par scènes clésTire son nom du système traditionnel de production développé parWalt Disney.

Dans ce système, les artistes principaux ne produisaient que lesscènes les plus importantes; ensuite, les assistants dessinaient lesscènes intermédiaires.

Scènes clés

Scènes intermédiairesAvec l’animation par scènes clés sur ordinateur, c’est l’utilisateur quifait office d’animateur principal et le programme d’animation, celuid’assistant.

Scènes clés

3

Approche utiliséeL’utilisateur définit les objets, les lumières, la caméra, etc. de chaquescène clé.Le système graphique se charge alors de calculer les scènesintermédiaires en tenant compte de ces différents paramètres.La technique de calcul utilisée dans l’animation par scènes clés estl’interpolation : elle repose sur le fait que chaque objet est défini àpartir d’un nombre fini de points ou vecteursd’approximation,d’interpolation oude contrôle.

Daniel Thalmann, EPFL-LIG

2 stratégies :(a) Interpolation des

objets eux-mêmes

(b) Interpolationparamétrique

4

1. Interpolation des objets eux-mêmesLa correspondance entre scènes clés ne se fait pas point par point mais entre objets.

Rick Parent, Animatique Algorithmes et techniques. 2003, p. 122.

5

Différentes approches d’interpolationInterpolation linéaire

- Possibilités d’animation trop restreintes.- Trajectoires souvent non réalistes, manque de fluidité, discontinuités temporelles.

Exemple : Balle bondissante 1 3

2

Interpolation non linéaire

- On peut tenir compte de plusieurs scènes clés (au lieu des 2 directement touchées) pour spécifier les caractéristiques du mouvement entre 2 positions clés. Ex. : utilisation de B-Splines.

- Mouvement toujours non réaliste à moins de tenir compte de la vitesse et de l’accélération entre les scènes clés.

Hearn & Baker, Computer Graphics with OpenGL.2004, 857p.

6

Comment établir la correspondance entre les scènes clés ?

Le problème se complique lorsque 2 objets n’ont pas le même nombrede sommets.

Solution : Effectuer un pré-traitement pour égaliser le # de sommets.

Algorithme élémentaire

Soient m et n les nombres de sommets de 2 objets (m > n),

calculer R (m – 1) div (n – 1) ;

calculer S (m – 1) mod (n – 1) ;

ajouter R points aux S premiers segments etR – 1 aux autres.

7

Exemple de correspondance entre les scènes clés

Daniel Thalmann, EPFL-LIG

n = 7

m = 15

n' = 15

R = 2 = S

2 points aux 2 premiers segments

1 point aux 4 autres

8

Interpolation d’objets 3D : techniques basées sur des surfaces

Lorsque les objets sont modélisés en facettes, la technique est beaucoupplus complexe.

Pour assurer la correspondance entre facettes et sommets, il fautéventuellement ajouter des facettes et des sommets.

6 faces8 sommets

5 faces5 sommets

Daniel Thalmann, EPFL-LIG

Une fois cette opération effectuée, la procédure consiste à interpolersommet à sommet.

9

Interpolation d’objets 3D : techniques basées sur des surfaces

1er cas : Les 2 objets à interpoler partagent la même topologiesommet-arête.

Les objets sont transformés en interpolant simplement les positionsdes sommets, sommet par sommet.

Exemple : 2 surfaces de Bézier à m x n points de contrôle.

2ième cas : Les 2 objets sont des polyèdres en forme d’étoile.

Chaque objet renferme au moins un point de son noyau à partir duquel ilest possible de tracer un segment vers tout point de la surface de l’objetsans couper la surface de cet objet.

noyau

Exemple en 2D Les coordonnées sphériques peuvent êtreutilisées pour déduire les formes intermédiaires.

10

Interpolation 3D: polyèdres en forme d’étoile

Procédure :

1. Les surfaces des objets sont échantillonnées par une distributionrégulière de rayons émanant d’un point du noyau de l’objet.

2. Les sommets d’un objet intermédiaire sont construits en effectuantune interpolation entre les points d’intersection d’un rayon.

3. Les facettes d’un objet intermédiaire sont construites à partir dessommets selon la manière dont les rayons sont distribués dansl’espace sphérique :

x = sin cos

y = sin sin

z = cos

11

Interpolation 3D: polyèdres en forme d’étoile

Cela illustrel’échantillonnage etl’interpolation d’objetsen 2D.

Rick Parent, Animatique Algorithmes et techniques. 2003, p. 163.

12

Interpolation d’objets 3D : tranches axiales3ième cas : Tranches axiales

E. Chen & R. Parent, Shape Averaging and Its Application to Industrial Design. IEEE CGA, 9(1), 1989, p. 47-54.

Il s’agit d’interpoler des objets en forme d’étoile p / r à un axe central.L’animateur définit un axe qui passe par le milieu de chaque objet.À intervalles réguliers le long de cet axe, des tranches perpendiculairessont découpées dans l’un de ces objets.Ces tranches doivent être en forme d’étoile p / r au point d’intersectionentre l’axe et la tranche.

Rick Parent, Animatique Algorithmes et techniques. 2003, p. 164.

13

Interpolation d’objets 3D : tranches axiales

La partie de l’axe située à l’intérieur de chaque objet est paramétréede 0 à 1.L’animateur définit aussi un vecteur d’orientation perpendiculaire àl’axe.

Procédure :

1. Pour chaque pas s de 0 à 1, une tranche est prélevée sur chaque objet.

2. Les tranches 2D peuvent être interpolées par paires (une de chaqueobjet) en traçant des rayons qui émanent du point central et quiéchantillonnent la bordure à intervalles réguliers p / r au vecteurd’orientation.

Rick Parent, Animatique Algorithmes et techniques. 2003, p. 164.

14

Interpolation d’objets 3D : tranches axiales

Les points d’intersection d’un rayon-polygonecorrespondant à une paire de tranches sont interpolés.

15

Interpolation d’objets 3D : tranches axiales

3. Toutes les tranches d’un objet intermédiaire peuvent être utiliséespour construire cet objet.

E. Chen & R. Parent, Shape Averaging and Its Application to Industrial Design. IEEE CGA, 9(1), 1989, p. 47-54.

16

Interpolation d’objets 3D : projection sur une sphère

L’approche consiste à projeter les 2 objets à interpoler vers une surfacecommune, par ex., une sphère de rayon 1.J. Kent, W. Carlson & R. Parent, Shape Transformation for Polyhedral Objects. Computer Graphics, 26(2), p. 47-54, 1992.

Condition : la totalité de la surface de l’objet doit correspondre à latotalité de la sphère sans chevauchement.

À chaque point de la surface de l’objet correspond un et un seulpoint sur la sphère (application bijective).

Procédure :

1. Il s’agit de construire un maillage triangulaire pour chaque objet.

2. Il s’agit de projeter les sommets des triangles de chaque maillage surla sphère de rayon 1.

3. Il s’agit de découper chaque triangle projeté d’un maillage par rapportaux triangles projetés de l’autre maillage et vice versa.

On obtient ainsi un maillage combiné des deux précédents :les découpages extérieurs des 1er & 2ième maillages + la partie commune.

17

Interpolation d’objets 3D : projection sur une sphère

4. Il s’agit de projeter en sens inverse les sommets des triangles du maillage combiné sur la surface de chaque objet.

Cette opération crée un nouveau modèle pour chacune des formesd’origine à la différence près que les nouveaux modèles possèdentmaintenant des topologies identiques.

5. Ces nouvelles définitions des objets peuvent ensuite être transforméespar une interpolation sommet à sommet.

Note :

L’implantation de l’opération de découpage peut s’avérer difficilecar il faut tenir compte de plusieurs cas spéciaux.

Il existe plusieurs moyens de projeter un objet vers une sphère unitémais, aucune n’est valide pour tous les objets.À eux tous, ils permettent de satisfaire la condition précédente pour laplupart des objets sans trous.

18

Interpolation d’objets 3D : projection sur une sphère

Méthodes de projection :

Projeter chaque sommet de l’objet à partir d’un point central vers lasphère.

Ex. : polyèdres en forme d’étoile,polyèdres convexes.

Méthodes basées sur le mode de construction de l’objet(approche orienté-objet).

Ex. : surfaces de révolution.

etc.Voir J. Kent, W. Carlson & R. Parent, Shape Transformation for Polyhedral Objects. Computer Graphics, 26(2), p. 47-54, 1992.

19

Interpolation d’objets 3D : techniques basées sur des surfaces

Restrictions sur les techniques basées sur des surfaces :

Ces restrictions portent sur les types d’objets qu’ils sont capables detraiter, en particulier les objets dotés de trous.

L’interpolation de formes 3D reste une opération difficile à effectuer.

20

Technique des squelettesBurtnyk N., Wein . (1976) Interactive skeleton techniques for enhancing motion dynamics in key frame animation.

Comm. ACM 19(10) : 564 -569.

Pour faciliter l’application destechniques d’interpolation pour desobjets complexes, on considère unsquelette de l’objet au lieu de l’objetlui-même.

Cette forme simple permet dedécrire plus facilement et plusefficacement le mouvement souhaité.

21

Morphing 2D (technique de post-traitement d’image)

Méthode qui consiste à interpoler à partir d’images clés plutôt que lesobjets des scènes clés.

L’animateur doit spécifier les éléments correspondants dans les deuximages clés.

Ces correspondances sont utilisées pour contrôler la transformation.

22

Morphing 2D (technique de post-traitement d’image)

La méthode la plus simple consiste à plaquer une grille sur chacunedes images en plaçant judicieusement les sommets aux endroits clés :

Il s’agit ensuite de créer les images intermédiaires par interpolation li-néaire des sommets des 2 grilles pour former des grilles intermédiaires.

Technique basée sur des grilles de coordonnées définiespar l’animateur et superposées à chaque image

Les éléments correspondants des images doivent se trouver dans lescellules correspondantes des grilles.

L’utilisateur définit ces grilles en traçant le même nombre de pointsd’intersection de grille dans les 2 images.

Les grilles doivent être définies jusqu’aux bordures des imagespour en inclure la totalité.

23

Morphing 2D

Les grilles peuvent être régulièresou être définies à l’aide de splines.

L’interpolation pour former desgrilles intermédiaires peuts’effectuer :- de manière linéaire ou- les grilles d’images clés adjacentes peuvent être utilisées pour effectuer une interpolation d’ordre supérieur.

Des pixels des images source et dedestination sont étirés ou compressésen fonction de la grille intermédiaire.

24

Morphing 2DUne fusion pixel par pixel des 2 images est finalement réalisée.

Ce n’est rien d’autre qu’un mélange des couleurs des 2 pixelscorrespondants :

Cij = C1ij + (1 - ) C

2ij

Cas simple : est linéaire p / r au numéro d’image / # d’images.

Cas non linéaire : cela donne souvent des résultats visuels plus intéressants.

25

Morphing 2D (technique de post-traitement d’image)

Technique basée sur des lignes caractéristiquesdéfinies par l’animateur pour chaque image

La correspondance entre images se fait en traçant des lignescaractéristiques sur les 2 images.

T. Beier & S. Neely, Feature-Based Image Metamorphosis. Computer Graphics, 26, 2, 35-42, 1992.

Ces lignes caractéristiques sont ensuite interpolées pour former un jeude lignes caractéristiques intermédiaires.

L’interpolation peut s’appuyer soit sur les extrémités des segments,soit sur les points centraux et l’orientation des segments.

26

Morphing 2D (technique de post-traitement d’image)

T. Beier & S. Neely, Feature-Based Image Metamorphosis. Computer Graphics, 26, 2, 35-42, 1992.

Les coordonnées de chaque pixel sur l’image intermédiaire sontobtenues pour chaque ligne caractéristique interpolée.

Soient P1 et P2 les extrémités d’une ligne caractéristique,

Cela définit un système de coordonnées 2D (U, V) sur l’image,où P1 est l’origine, la direction unitaire V est (P2 - P1) / || P2 - P1 ||,et la direction unitaire U est (Vy, - Vx).

Nous pouvons alors en déduire les coordonnées d’un pixel enposition P = (u, v).

27

Morphing 2D (technique de post-traitement d’image)

Rick Parent, Animatique Algorithmes et techniques.2003, 530p.

Localiser le pixel de l’image source qui correspond à celui de l’imageintermédiaire pour chaque ligne caractéristique interpolée.

Compte tenu de la ligne caractéristique correspondante dansl’image source définie par les points Q1 et Q2,un système de coordonnées (S, T) similaire est établi.La position correspondante dans l’image source du pixel (u, v) est :

Q = Q1 + u S + v T.

28

Morphing 2D (technique de post-traitement d’image)

Un facteur de pondération est calculé indiquant l’influence que cetteligne caractéristique doit avoir sur le pixel.

Cette localisation est utilisée afin de déterminer la couleur du pixel del’image intermédiaire.

La même procédure est appliquée sur l’image de destination pourformer son image intermédiaire.

Une fusion pixel par pixel des 2 images est finalement réalisée pour former l’image intermédiaire finale.

Ce n’est rien d’autre qu’un mélange des couleurs des 2 pixelscorrespondants :

Cij = C1ij + (1 - ) C

2ij

Chaque facteur est utilisé pour calculer la moyenne des localisationsde l’image source générées par plusieurs lignes caractéristiques versune localisation d’image source finale.

29

Morphing 2D (technique de post-traitement d’image)

Comment déterminer un facteur de pondération ?Note :T. Beier & S. Neely, Feature-Based Image Metamorphosis. Computer Graphics, 26, 2, 35-42, 1992.

Les auteurs proposent le facteur de pondération f suivant :

f(Q) = || Q2 – Q1||p

b

a + dist(Q, segment de droite d’extrémités Q1 et Q2)où :- les paramètres a, b et p offrent un certain contrôle à l’animateur,- Q1 et Q2 : les extrémités de la ligne caractéristique de l’image source.

Ces paramètres peuvent varier d’une ligne caractéristique à une autre.

Pour calculer la moyenne des localisations à partir de ces facteurs depondération, on doit : cumuler les localisations pondérées et

diviser par les pondérations cumulées.

Le choix des lignes caractéristiques est important. Si ces lignes secroisent, cela peut donner lieu à des résultats indésirables.

30

2. Interpolation paramétriqueIl s’agit d’interpoler les paramètres du modèle de l’objet plutôt quel’objet lui-même :

- l’animateur doit spécifier l’ensemble des valeurs de chaque paramètre,- la valeur de chaque paramètre à l’instant t est obtenue par interpolation,- l’objet à l’instant t est construit via les valeurs interpolées.

Objetclé k

Objetclé k+1

Valeur spécifiée par l’animateurTriangle construit

Courbe d’interpolation

Valeur interpolée

Ex. :