La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 CHAPITRE V Modélisation géométrique de base. 2 Certains objets peuvent être représentés exactement grâce à quelques paramètres ou points. Le rayon et.

Présentations similaires


Présentation au sujet: "1 CHAPITRE V Modélisation géométrique de base. 2 Certains objets peuvent être représentés exactement grâce à quelques paramètres ou points. Le rayon et."— Transcription de la présentation:

1 1 CHAPITRE V Modélisation géométrique de base

2 2 Certains objets peuvent être représentés exactement grâce à quelques paramètres ou points. Le rayon et le centre dun cercle sont suffisants pour le représenter formellement. Par contre, un objet tel quune pomme ou un visage humain ne peut être représenté aussi simplement. Il existe différentes techniques permettant de modéliser une figure complexe : Les techniques dajustement (rarement applicable en infographie) Faire passer une courbe, une surface ou un volume non nécessairement par les points donnés, mais en minimisant les écarts entre lobjet et ces points. Min i = 0, 1, 2, …, n-1 Min (C(u) - P i ) * (C(u) - P i ) où a, b, c, … sont les a, b, c, … u [0, 1]coefficients de C(u). Exemple : Recherche dune courbe C(u) Problème doptimisation difficile à résoudre.

3 3 Modélisation géométrique de base Les méthodes dinterpolation Trouver une courbe, une surface ou un volume qui passe par un ensemble de points donnés. Les techniques de points de contrôle Calculer des courbes, des surfaces ou des volumes qui respectent la forme générale de la figure originale, en lui donnant un côté esthétique, mais en ne passant que par les extrémités de la figure originale. Ex. : Formes de Bézier, B-splines. Exemple : Soit la droite y = m x + b, il sagit de déterminer m et b de telle façon que lon minimise la distance entre cette droite et lensemble des points.

4 TECHNIQUES DINTERPOLATION Choisir une famille de courbes, de surfaces ou de volumes et sélectionner un objet de cette famille en exigeant que cet objet passe par chacun des points fournis. Faciles à résoudre mathématiquement mais donnent des résultats moins réalistes. Détermination dune courbe dinterpolation Première solution : utilisation de polynômes Interpolation polynomiale Soit (x 1,y 1 ), (x 2,y 2 ),..., (x n,y n ) une suite de n points dans le plan avec x i x j i j. On obtient facilement la formule d'un polynôme d'interpolation de degré n - 1: p n (x) = i=1,2,...,n y i j i (x - x j ) / (x i - x j ) avec y i = p n (x i ) i. Exemple : n = 3 p n (x) =y 1 (x – x 2 ) (x – x 3 ) + y 2 (x – x 1 ) (x – x 3 )+ y 3 (x – x 1 ) (x – x 2 ) (x 1 – x 2 ) (x 1 – x 3 )(x 2 – x 1 ) (x 2 – x 3 ) (x 3 – x 1 ) (x 3 – x 2 )

5 5 TECHNIQUES DINTERPOLATION Étant donné la suite de points (0,0), (1,3), (2,0), (3,0) et (4,0), on obtient comme polynôme dinterpolation : p(x) = -1/2 x (x - 2) (x - 3) (x - 4) Inconvénient # I : oscillation de la courbe polynomiale On serait peut-être intéressé à ce que le polynôme soit proche de 0 dans [2, 4] mais ce nest pas le cas. des courbes oscillant beaucoup

6 6 Avec cette technique, nous navons aucun contrôle local i.e. une modification locale se répercute sur toute la courbe. Inconvénient # II : Absence de contrôle local Pour remédier à cet inconvénient, nous pouvons utiliser une interpolation polynomiale par morceaux. Soient les 2 points (0,0) et (1,1) avec 0 et s comme pentes respectives, alors p(x) = (s-2) x 3 + (3-s) x 2 On ne peut pas produire des changements de direction brusques comme en b). On considère habituellement des fonctions polynomiales par morceaux : le domaine est subdivisé en intervalles et une courbe dinterpolation est définie pour chaque intervalle à partir des points définis dans cet intervalle.

7 7 Exemple de courbe dinterpolation par morceaux etc. I II III La subdivision du domaine en intervalles permet de réduire le degré des polynômes. Simplifie lévaluation des polynômes. Réduit loscillation des courbes polynômiales. Permet un contrôle local de la courbe. Permet dimposer des conditions de continuité aux extrémités des courbes. x p n (x)

8 8 SPLINE :DÉFINITION Une spline est une fonction polynomiale par morceaux: p(x) = p i (x), x [v i, v i+1 ], i = 0, 1, 2,..., k-1 avecp (j) i (v i ) = p (j) i+1 (v i ), j = 0, 1, 2,..., r-1i = 1, 2,..., k-1 oùv 0 = a v 1 v 2... v k-1 v k = b, p i (x) polynôme de degré m, p (0) i (x) p i (x) pour tout x [v i, v i+1 ], pour tout i, p (j) i (x) = d (j) p i (x) / d (j) x,j > 0. Problèmes rencontrés dans le choix dune spline : Comment subdivisez le domaine en petits intervalles ? Le choix dune spline dans un tel contexte général est très difficile : - la présence de plusieurs paramètres - la prise en compte des contraintes. En infographie, on recherche des courbes dinterpolation dans lespace 3D.

9 En pratique … Soient P 0, P 1, P 2, …, P n-1, n points 3D fournis par lusager, et t 0 le vecteur tangent à la courbe dinterpolation à P 0, On recherche dabord un polynôme de degré 3 passant par P 0, P 1 et P 2 avec t 0 comme vecteur tangent à P 0, de la forme suivante : Q(u) =M 0 + u M 1 + u 2 M 2 + u 3 M 3 Il faut alors trouver M i, i = 0, 1, 2, À u = 0, on pose Q(0) P 0 M 0 = P À u = 0, on posedQ(0) t 0 du M 1 = t À u = 1, on pose Q(1) P 2 M 2 + M 3 = P 2 – P 0 – t À u = ½, on pose Q(½) P 1 ¼ M 2 + 1/8 M 3 = P 1 – P 0 – ½ t 0. Q(u) = P 0 + u t 0 + u 2 (-7P 0 + 8P 1 – P 2 – 3t 0 ) + u 3 (6P 0 - 8P 1 + 2P 2 + 2t 0 )

10 En pratique … Ce polynôme coïncide avec le 1 er morceau de la spline. Pour le 2 ième morceau, on considère les points dinterpolation P 2, P 3 et P 4 ; lusager na pas à fournir le vecteur tangent à lextrémité initiale; il sagit de calculer le vecteur tangent à lextrémité terminale du 1 e morceau. Il sagit de calculer dQ(1). du dQ(u) = t 0 + 2u (-7P 0 + 8P 1 – P 2 – 3t 0 ) + 3u 2 (6P 0 - 8P 1 + 2P 2 + 2t 0 ) du À u = 1, on obtient : 4P 0 - 8P 1 + 4P 2 + t 0 On procède de la même façon pour les morceaux suivants.

11 11 Surfaces d interpolation La détermination dune surface dinterpolation polynômiale passant par la grille de points suivante : P ij, i = 0, 1, 2, …, m; j = 0, 1, 2, …, n est un problème plutôt difficile à résoudre dans le contexte de la synthèse dimages. Approche I : Pour chaque i variant de 0 à m-1, pour chaque j variant de 0 à n-1, construire une surface bilinéaire à partir des points P i,j, P i+1,j, P i,j+1 et P i+1,j+1. Approche II : Pour chaque i variant de 0 à m, construire une courbe dinterpolation par morceaux C i passant par les pointsP i,0, P i,1, P i,2, …, P i,n. Pour chaque i variant de 0 à m-1, construire une surface guidée à partir des courbes dinterpolation par morceaux C i et C i+1.

12 12 Approche III : Pour chaque i variant de 0 à m, construire une courbe dinterpolation par morceaux H i passant par les pointsP i,0, P i,1, P i,2, …, P i,n. Pour chaque j variant de 0 à n, construire une courbe dinterpolation par morceaux V j passant par les pointsP 0,j, P 1,j, P 2,j, …, P m,j. Pour chaque i variant de 0 à m-1, pour chaque j variant de 0 à n-1, construire une surface de Coons linéaire à partir des 4 courbes suivantes : - le j ième morceau de H i, - le j ième morceau de H i+1, - le i ième morceau de V j, - le i ième morceau de V j+1.

13 13 Évaluation dune fonction polynomiale

14 14 Évaluation dune fonction polynomiale Évaluation dun polynôme Règle de Horner Soit p(u) = a 0 + a 1 u + a 2 u 2 + … + a n u n lévaluation se fait alors comme suit : p(u) = ((…(a n u + a n-1 )u + a n-2 )u + …. + a 1 )u + a 0 # additions : n # multiplications : n Méthodes dincrémentation Évaluation dun polynôme à des intervalles constants. 1er cas: p(u) = c u + d Calculer les valeurs p i = p(i ), 0 i n et = 1 / n. Sachant que p i+1 - p i = c, et que c est une constante, une opération daddition seulement est nécessaire pour calculer chaque p i.

15 15 Évaluation dun polynôme 2ième cas: Polynôme de degré 3: p(u) = a 0 + a 1 u + a 2 u 2 + a 3 u 3 Posons 1,i = p i+1 - p i = p((i+1) ) - p(i ) 2,i = 1,i+1 - 1,i = p((i+2) ) - 2p((i+1) ) + p(i ) 3,i = 2,i+1 - 2,i 1,i = a 3 3 (3i 2 + 3i + 1) + a 2 2 (2i + 1) + a 1 2,i = a 3 3 (6i + 6) + 2a 2 2 3,i = 6a 3 3 = constante Étape 0 p a 0 1 a a a 1 2 6a a a 3 3 traitement de p = p 0 Étape 1 Pour tout i de 0 à n-1 pp + 1 // p i+1 = p i + 1,i // 1,i+1 = 1,i + 2,i // 2,i+1 = 2,i + 3,i traitement de p = p i+1.


Télécharger ppt "1 CHAPITRE V Modélisation géométrique de base. 2 Certains objets peuvent être représentés exactement grâce à quelques paramètres ou points. Le rayon et."

Présentations similaires


Annonces Google