optimisation des formes: introductionla normale n de c vaut r (terme hyperbolique). et de c vaut div...
TRANSCRIPT
Introduction Functional Evolution Conclusion
Laboratoire de MathématiquesUniversité de Savoie UMR 5127
Optimisation des formes: introduction
Tristan Roussillon12
1LIRIS, Université de Lyon 2LAMA, Université de Savoie
Digital Snow
T. Roussillon Optimisation des formes 1/21
Introduction Functional Evolution Conclusion
Contexte
Post-doc projet ANR DigitalSnow
Etude à échelle microscopique la méthamorphose de la neige(air/glace/eau)
Simulation de méthamorphoses :
métamorphose d'isothermie : phénomène de diusion devapeur (mouvement par courbure moyenne avec conservationde volume)
métamorphose sous champs de gradients de températures :phénomène de condensation/sublimation (facettage/arrondi)
F. Flin (CEN)
T. Roussillon Optimisation des formes 2/21
Introduction Functional Evolution Conclusion
Key-words
E. Oudet (LJK)
phase elds, variational approach, functional, snake, deformablemodel level sets, langragian/eulerian approach, geodesic activecontour, implicit function, distance function, numerical method ofdiscretisation, Upwind scheme, ENO/WENO scheme, TVD RangeKutta scheme, CFL time step restriction,implicit/semi-implicit/explicit method, convection, diusion, meancurvature motion, Hamilton-Jacobi equation, hyperbolic term,parabolic term, EDP, EDO.
T. Roussillon Optimisation des formes 3/21
Introduction Functional Evolution Conclusion
Objectifs de la présentation
mots-clefs
références
principe :
1. fonctionnelle à minimiser
2. première variation donnant une EDP d'évolution
3. résolution numérique de l'EDP
T. Roussillon Optimisation des formes 4/21
Introduction Functional Evolution Conclusion
Plan
1 Introduction
2 Functional
3 Evolution
4 Conclusion
T. Roussillon Optimisation des formes 5/21
Introduction Functional Evolution Conclusion
Introduction
Données, notations, vocabulaire
Ω ⊆ R2 support, x ∈ Ω un point du support, D ⊆ Ω region,
Φ : Ω→ R fonction (implicite), D = x |Φ(x) ≤ 0),
∂D = C interface, C : [0, l ]→ Ω fonction (paramétrique),s ∈ [0, l ] abscisse curviligne, C (s) un point sur l'interface,N(s) sa normale, κ(s) sa courbure,
E : . . .→ R fonctionelle
T. Roussillon Optimisation des formes 6/21
Introduction Functional Evolution Conclusion
Exemples de fonctionnelles simples
1. aire (pondérée) d'une région :∫Df (x)dx
2. somme des variances intra-classes :∫D
(f (x)− µ1)2dx +∫
Ω\D(f (x)− µ2)2dx
3. longueur (pondérée) de l'interface :∫Cf (C (s))ds
4. alignement des normales aux gradients d'une fonction :∫C∇f (C (s)).N(s)ds
T. Roussillon Optimisation des formes 7/21
Introduction Functional Evolution Conclusion
Exemples de fonctionnelles en analyse d'images
.[Kass,Witkin,Terzopoulos 89] snake : critères abandonnés + 3
.[Cohen 91] snake + force ballon : 1
.[Kichenassamy 95], [Caselles 97] contour actif : 3 (+ 1)
.[Shan et Vese 02] : 2 + 3
.[Kimmel et Bruckstein 02], [Vasilevkyi et Siddiqi 02] : 4
Retour d'expérience
1 permet de goner ou dégoner la région2 est un bon terme d'attache aux données,permet de déplacer une région3 est un bon terme de régularisation (que 4 peut améliorer)
T. Roussillon Optimisation des formes 8/21
Introduction Functional Evolution Conclusion
Optimisation des formes
Problème à résoudre
arg minC E (C )
Calcul de la première variation
Soit V : [0, l ]→ Ω et ε ∈ R.δE(C)δV = d
dεE (C + εV )|ε=0 =∫Cγ(s,C , . . .)N(s).V (s)ds
Etat d'équilibre
C est un optimum pour E (C ) si :∫Cγ(s,C , . . .)N(s).V (s)ds = 0
T. Roussillon Optimisation des formes 9/21
Introduction Functional Evolution Conclusion
Descente de gradients
EDP d'évolution
Comme on ne sait pas résoudre l'équation ci-dessus, on part d'unesolution C quelconque qu'on modie en enlevant itérativementγ(s,C , . . .)N(s) pour chaque point C (s) :
∀s ∈ [0, l ], ∂C(s)∂t = −γ(s,C , . . . ; t)N(s)
Avec une notation plus concise :∂C∂t = −γ(C , . . . ; t)N
T. Roussillon Optimisation des formes 10/21
Introduction Functional Evolution Conclusion
Exemples d'EDP d'évolution
1. aire (pondérée) d'une région :∂C∂t = −f (C ).N
2. somme des variances intra-classes :∂C∂t = (µ2 − µ1)(f (C )− (µ2 + µ1)/2).N
3. longueur (pondérée) de l'interface :∂C∂t = (−κf (C ) +∇f .N).N
4. alignement des normales aux gradients d'une fonction :∂C∂t = −4f .N
T. Roussillon Optimisation des formes 11/21
Introduction Functional Evolution Conclusion
Plan
1 Introduction
2 Functional
3 Evolution
4 Conclusion
T. Roussillon Optimisation des formes 12/21
Introduction Functional Evolution Conclusion
Discrétisation spatiale
Interface (approche lagrangienne, fonction paramétrique)
dicilement extensible en dimension supérieure
dépendant de la paramétrisation
mauvaise adéquation aux données de l'image
gestion de la topologie dicile
Domaine (approche eulérienne, fonction implicite)
coût algorithmique important (qui peut être réduit)
T. Roussillon Optimisation des formes 13/21
Introduction Functional Evolution Conclusion
Equations Level-Sets
Soit Φ : Ω→ R une fonction (au moins Lipschitz continue), telleque D = x |Φ(x) ≤ 0 et C = x |Φ(x) = 0.La normale N de C vaut ∇Φ
|∇Φ| (terme hyperbolique).
La courbure moyenne κ de C vaut −div( ∇Φ|∇Φ|) (terme parabolique).
a Déplacement selon un champs de vecteurs vitesses externe(convection) : ∂Φ
∂t = −V .∇Φ = −VN |∇Φ|b Déplacement en direction de la normale et à une vitessedonnée (convection) : ∂Φ
∂t = −α|∇Φ|c Déplacement en direction de la normale et à une vitesseproportionnelle à la courbure (MCM) (diusion) :∂Φ∂t = div( ∇Φ
|∇Φ|)|∇Φ|d On peut aussi combiner a et c (convection-diusion)
T. Roussillon Optimisation des formes 14/21
Introduction Functional Evolution Conclusion
Fonction distance
Si Φ est une fonction distance signée Φ(x) = dist(x ,C ), alors ∀xsur C, |∇Φ(x)| = 1.La normale N de C vaut ∇Φ (terme hyperbolique).Et κ de C vaut −div(∇Φ) = −4Φ (terme parabolique).
Avantages
Simplie les formules (théorique)Résolution numérique plus stable et plus précise (pratique)
Inconvénients
Initialisation de la fonction distance.Recalcul de la fonction au cours des déformations.Fast marching method ou narrow-band level-set [Sethian 99]
T. Roussillon Optimisation des formes 15/21
Introduction Functional Evolution Conclusion
Discrétisation du terme hyperbolique
Forward/Backward dierence scheme
Pour chaque axe xi ,∂Φ∂xi≈ Φ(xi +∆x )−Φ(xi )
∆x= D+
i( ∂Φ∂xi
).
Pour chaque axe xi ,∂Φ∂xi≈ Φ(xi )−Φ(xi−∆x )
∆x= D−
i( ∂Φ∂xi
).
Upwind/Godunov scheme
Pour chaque axe xi , si on se déplace dans le sens de la normale,Di (
∂Φ∂xi
) = D−i
( ∂Φ∂xi
), sinon Di (∂Φ∂xi
) = D+i
( ∂Φ∂xi
).Erreur en O(∆x).
(W)ENO scheme [Shu et Osher 88]
Erreur en O((∆x)α) où α vaut 3-5.
T. Roussillon Optimisation des formes 16/21
Introduction Functional Evolution Conclusion
Discrétisation du terme parabolique
Central dierencing
Pour chaque axe xi ,∂Φ∂xi≈ Φ(xi +∆x )−Φ(xi−∆x )
2∆x= D0
i( ∂Φ∂xi
).
Pour chaque axe xi ,∂2Φ∂x2
i
≈ Φ(xi +∆x )−2Φ(xi )+Φ(xi−∆x )∆2
x
= D+−i
(∂2Φ∂x2
i
).
Exemple simple : 4Φ (fonction distance)
4Φ ≈∑
i(D+−
i(∂
2Φ∂x2
i
))
T. Roussillon Optimisation des formes 17/21
Introduction Functional Evolution Conclusion
Discrétisation du terme parabolique
Central dierencing
Pour chaque axe xi ,∂Φ∂xi≈ Φ(xi +∆x )−Φ(xi−∆x )
2∆x= D0
i( ∂Φ∂xi
).
Pour chaque axe xi ,∂2Φ∂x2
i
≈ Φ(xi +∆x )−2Φ(xi )+Φ(xi−∆x )∆2
x
= D+−i
(∂2Φ∂x2
i
).
Plus complexe : div( ∇Φ|∇Φ|) (fonction quelconque)
div( ∇Φ|∇Φ|) ≈
D01 ( ∂Φ
∂x1)2D+−
2 ( ∂2Φ
∂x22
)−2D01 ( ∂Φ
∂x1)D0
2 ( ∂Φ∂x2
)D0012 ( ∂2Φ
∂x1∂x2)+D0
2 ( ∂Φ∂x2
)2D+−1 ( ∂2Φ
∂x21
)
(∑
iD0
i( ∂Φ∂xi
)2)32
T. Roussillon Optimisation des formes 17/21
Introduction Functional Evolution Conclusion
Discrétisation temporelle explicite
Forward Euler scheme (explicite)
∂Φ∂t ≈
Φ(t+∆t)−Φ(t)∆t
.Erreur en O(∆t).
Exemple simple : force ballon (1, b)
équation : ∂Φ∂t = −α|∇Φ|
discrétisée : Φ(t + ∆t) = Φ(t) + ∆tα(∑
iDi (
∂Φ∂xi
)2)12
Sommes et mutliplications terme à terme de vecteurs : facile àimplémenter.
T. Roussillon Optimisation des formes 18/21
Introduction Functional Evolution Conclusion
Extension
TVD Runge-Kutta scheme [Shu et Osher 88]
Combinaison convexe de plusieurs solutions :
Calculer Φ(t + ∆t), puis Φ(t + 2∆t)
Déduire Φ(t + 1
2∆t) = 3
4Φ(t + ∆t) + 1
4Φ(t + 2∆t)
Calculer Φ(t + 3
2∆t)
Déduire Φ(t + ∆t) = 1
3Φ(t) + 2
3Φ(t + 3
2∆t)
Erreur en O((∆t)3).
T. Roussillon Optimisation des formes 19/21
Introduction Functional Evolution Conclusion
Qualité d'un schéma numérique de discrétisation
Convergent scheme
consistent : error tends to 0 as ∆t and ∆x tend to 0.
stable (CFL condition) : ∆x/∆t > max |V |
In the explicite case,If forward/backward dierences : ∆t est en O(∆x).But if central dierences : ∆t est en O((∆x)2).
Backward Euler scheme ((semi-)implicite)
Φ(t + ∆t) = Φ(t) + ∆tA.Φ(t + ∆t) (A matrice tridiagonale).Φ(t + ∆t) = Φ(t).(I −∆tA)−1.
Erreur en O(∆t) mais ∆t en O(∆x).
T. Roussillon Optimisation des formes 20/21
Introduction Functional Evolution Conclusion
Conclusion
Optimisation des formes
Formulation en une fonctionnelle à minimiser.Résolution par transformation en une EDP d'évolution.
Level sets
Utilisation d'une fonction implicite.Schémas numériques de discrétisation donnant la solutionphysiquement la plus pertinente (la solution de viscosité).
T. Roussillon Optimisation des formes 21/21