Académique Documents
Professionnel Documents
Culture Documents
Alexandre Meyer
http://bat710.univ-lyon1.fr/~ameyer/cours
1
Synthèse d’images
1. Camera
photons
photons
Image
Oeil (pixels)
Image Image
Oeil (pixels) Oeil (pixels)
h
d
Image Image
Oeil (pixels) Oeil (pixels)
Ap A
oeil
Pipeline
1. Clipping des polygones en 3D suivant la pyramide de vue
2. Projection des points sur le plan image
3. Remplissage des triangles (Rasterizing) dans l’image
a. Suppression des parties cachées : Z-Buffer
b. Calcul de la couleur : illumination
Cours de synthèse d’images 7
Plan
Rendu par lancé de rayons (ray-Tracing)
Rendu projectif
Clipping
Projection
Remplissage des polygones
Suppression des parties cachées
Illumination
oeil
Image
h
d
Image
CDP
Plan image y x
Si d = 1 ⇒ y' = et x' =
z z
d=distance focale
Cours de synthèse d’images 13
Matrice de projection : MI←C
1 0 0 0
0 1 0 0
M I ←C =
0 0 1 0
0 0 1/ d
0
oeil
la région de clipping
p4 p2
p3
Résultat peut être NULL si
le polygone est en dehors
Généralisation possible à
des régions non
rectangulaires
etc
Cours de synthèse d’images 17
Clipping suivant une région
Pour construire le nouveau polygone
Itération sur les arêtes c P0
(par exemple de P0 à P4 pour le poly ci contre)
P1
Construction d’une nouvelle
séquence de points P4
P
2
Initialisation avec une séquence vide P
3
p
1 p
Entièrement à l’intérieur 0
-> ajouter P1
OUT IN
P est le point d’intersection
Cours de synthèse d’images 19
Sutherland-Hodgman
Un exemple:
P0 P’4 P’0
P’4 P’0
P1
P1
P4
P4 P
P 2
2
Etape 0: vide P
P Etape 1: ? 3
3 …
Exercice
P0 P’4 P’0
P’4 P’0
P1
P1
P4
P4 P
P 2
2
Etape 0: vide P
P Etape 1: P’0 P1 3
3 Etape 2: P’0 P1 P2
Etape 3: P’0 P1 P2 P3
Etape 3: P’0 P1 P2 P3 P4
Etape 4: P’0 P1 P2 P3 P4 P’4
Clipping de Sutherland-Hodgman en 3D
puis projection
V
View plane
+1
P2
P1
Q2
N
O
COP
Q1
-1
oeil
Simple
Aucune intersection d’arêtes
Simple Convexe
Convexe
Chaque angle intérieur Pi-1PiPi+1<Pi
Arbitraire ou complexe
Cours de synthèse d’images 27
Intérieur?
extérieur
Remplir un polygone
Faire un test d’ "intérieur" pour chaque pixel de l’image
OK mais lent
On utilise la cohérence
Arête y=ax+b
yi = i = axi + b
xi
yi−1 = i −1 = axi−1 + b yi=i
xi-1
yi-1=i-1
1
xi = xx−1 +
a
Cours de synthèse d’images 30
Principe général : exemple
Algo
Pour chaque ligne y
Récupère les arêtes actives de la ligne y
depuis la table des arêtes (Edge Table)
Pour chaque aretes active, mettre à jour les valeurs
de x (avec x= intersection entre l’arête et la ligne y)
8
Tri les arêtes actives
7
On remplie les espaces 6
5
entre 2 arêtes successive a b
4
3
d c
2
1
0
0 1 2 3 4 5 6 7 8
Cours de synthèse d’images 31
Initialisation : Edge Table (ET)
Ordre de description d’une arête
Être sur que y1<y2 pour chaque arête (x1,y1) (x2,y2)
Attention
Les sommets Maximum ne sont pas dessinés
Cas particulier quand un polygones partages
des arêtes avec un polygone voisin
Ap A
oeil
Pipeline
1. Clipping des polygones en 3D suivant la pyramide de vue
2. Projection des points sur le plan image
3. Remplissage des triangles (Rasterizing) dans l’image
a. Suppression des parties cachées : Z-Buffer
b. Calcul de la couleur : illumination
Cours de synthèse d’images 39
Cours de synthèse d’images 40
Cablé sur les cartes graphiques modernes