Minimisation de la variation totale
Dans ce TP, on consid`ere diff´erentes approches pour minimiser l’´energie :
Z
|Du|+1
2µkfuk2(1)
1 Fonctionnelle approch´ee
Dans cette premi`ere partie, on regarde l’approximation suivante du mod`ele
ROF : Zp|∇u|2+2+1
2µkfuk2(2)
1.1 Descente de gradient
Calculer l’´equation d’Euler-Lagrange associ´ee `a la fonctionnelle ci-dessus.
Calculer le minimiseur par une m´ethode de descente de gradient.
Choisir une image, la bruiter (et la sauver). D´eterminer empiriquement la
vitesse de convergence de l’algorithme.
1.2 M´ethode de type quasi-Newton
Utiliser la m´ethode de quasi-Newton pour minimiser la fonctionnelle. D´eterminer
empiriquement la vitesse de convergence de l’algorithme. On peut montrer
qu’une telle m´ethodde converge lin´eairement. N´eanmoins, en pratique, on ob-
serve souvent une vitesse de convergence quadratique.
2 Algorithmes de projection
On rappelle que la solution du mod`ele (1) est donn´ee par :
u=fPGµ(f) (3)
Il suffit donc de savoir calculer la projection sur la boule de rayon µdans G
pour calculer u.
2.1 Algorithme d’Antonin Chambolle
On peut calculer la projection en utilisant une m´ethode de point fixe `a partir
des relations de Kuhn et Tucker.
Le probl`eme discret `a r´esoudre pour calculer la projection est le suivant :
min kµdiv (p)fk2
X:p / |pi,j | ≤ 1i, j = 1, . . . , N(4)
1
On le r´esout par une m´ethode de point fixe : p0= 0, and
pn+1
i,j =pn
i,j +τ((div (pn)f))i,j
1 + τ|((div (pn)f))i,j |(5)
Si le param`etre τv´erifie τ < 1/8, alors µdiv (pn) converge vers PGµ(f)
lorsque n+.
En pratique, on observe la convergence pour τ < 1/4.
V´erifier num´eriquement ces assertions. Regarder la vitesse de convergence
empirique.
2.2 Algorithme de gradient projet´e
On peut aussi calculer la projection en utilisant un algorithme de gradient
projet´e.
vm=f
µ+ div pm
pm+1
i,j =pm
i,j +τ(vm)i,j
max{1,|pn
i,j +τ(vm)i,j |}
(6)
et si τ < 1/4, on montre que µvmconverge vers la solution de (1).
2.3 Extension au cas de la d´econvolution
On consid`ere le cas de la d´econvolution :
1
2µkAu fk2+Z
|Du|(7)
o`u Aest un op´erateur de flou (num´eriquement, on pourra prendre pour Aun
noyau gaussien).
On peut montrer que le sch´ema suivant permet de calculer la solution uavec
νkAAk ≤ 1 :
(vn=un+νA(fAun)
un+1 = argminu1
2µν kvnuk2+R|Du|(8)
Programmer cette m´ethode. Comparer sa vitesse avec les m´ethodes pour la
focntionnelle approch´ee.
3 Algorithme de Nesterov
Une nouvelle classe d’algorithme du premier ordre particuli`erement efficace
est apparue r´ecemment. L’algorithme suivant permet de calculer la solution de
(1).
1. Set k= 0, v0= 0, x0= 0, L=µkdiv k2= 8µ.
2. Set k=k+ 1, and compute ηk=−∇ (fµdiv (xk)).
3. Set yk=PK(xkηk/L), with K=xL2×L2/kxk ≤ 1.
2
4. Set vk=vk1+k+1
2ηk.
5. Set zk=PK(vk/L).
6. Set xk+1 =2
k+3 zk+k+1
k+2 yk.
7. The output of the algorithm is : u=fµdiv (ylim).
Programmer cette m´ethode. Comparer sa vitesse de convergence avec les
autres m´ethodes ´etudi´es dans ce TP.
3
1 / 3 100%