Recalage d’images non rigide
Guillaume Charpiat
1 Introduction
On dipose de deux images,AetB, que l’on voudrait recaler, c’est-`a-dire d´eformer de fa¸con `a ce qu’elles se superposent convenablement. Pour cela, on cherche la d´eformation h qui, appliqu´ee `a l’image A, la fait ressembler `aB.
2 Mod´ elisation
Les images sont des fonctions de R2 dans R, ou, plus exactement, si l’on se res- treint `a un domaine rectangulaire Ω du plan, des fonctions de Ω dans R.
Nous imposerons (choix arbitraire) que lors du recalage, le bord de l’image reste fixe. Appliquer une d´eformation h `a une image A signifie consid´erer l’image com- pos´eeA◦h; une d´eformation h est donc une fonction de Ω dans Ω, valant l’identit´e sur le bord de l’image ∂Ω.
Que signifie, pour deux images (recal´ees) donn´eesBetC, qu’elles se ressemblent ? On peut choisir de d´efinir un crit`ere de similarit´e S(B, C) entre ces images, par exemple
S(B, C) =kB−Ck2L2(Ω,R) = Z
Ω
(B(−→x)−C(−→x))2d−→x
qui sera d’autant plus faible que les intensit´es pixel par pixel des deux images seront proches.
Quel type de d´eformation s’autorise-t-on ? On souhaiterait obtenir une d´eformation assez lisse, la plus r´eguli`ere et la plus faible possible. On peut d´efinir un crit`ere de r´egularit´e pour une d´eformation h :
R(h) =kh−IdΩk2H1(Ω,R2) = Z
Ω
kh(−→x)− −→xk22 + kDh(−→x)−Id2×2k22 d−→x o`u IdΩ est la fonction identit´e de Ω, qui `a −→x associe −→x, ce qui correspond `a le d´eformation la plus «faible » possible ; et o`u Id2×2 est la matrice identit´e 2×2.
Ainsi, on cherche la fonctionhqui minimise le crit`ereE(A, B, h) = S(A◦h, B) + R(h).
1
Question 1 : Relire attentativement l’expression du crit`ere E afin de saisir le sens physique de chacune de ses composantes (kA◦h−BkL2(Ω,R),kh−IdΩkL2(Ω,R2) etkD(h−IdΩ)kL2(Ω,M2,2)).
Question 2 : Consid´erons une petite d´eformation infinit´esimaleδh. Expliciter la partie lin´eaire enδhde R(h+δh)− R(h).
Question 3 : De mˆeme, expliciter la partie lin´eaire enδhdeS(A◦(h+δh), B)− S(A◦h, B).
Question 4 : On d´efinit le gradient d’une fonctionnelle suffisamment r´eguli`ere F(h) comme ´etant le champ∇F, de Ω dansR2, satisfaisant, pour toute d´eformation infinit´esimaleδh,h∇F |δhiL2(Ω,R2)=F(h+δh)−F(h)+o(δh). Calculer les gradients des fonctionnelles S(A◦h, B) et R(h).
Question 5 : En fait, on ajoute des poids (r´eels positifs fixes) devant chacun des trois termes composant le crit`ere `a minimiser, afin de pouvoir modifier l’importance relative de chacun de ces termes. Montrer que minimiser ce nouveau crit`ere par rapport `ah revient `a suivre l’´evolution d´ecrite par l’EDP :
∂th=α(Id−h) + β ∆h + (B−A◦h) ( (∇A)◦h) o`u α etβ sont deux constantes r´eelles.
3 Discr´ etisation et impl´ ementation
Question 6 : Discr´etiser l’EDP selon le sch´ema explicite. Pour le calcul deA◦h, on interpoleraA entre les quatre pixels les plus proches deh(−→x) (h(−→x) n’´etant pas un couple d’entiers mais de r´eels), le poids d’un plus proche pixel ´etant inversement proportionnel `a sa distance `ah(−→x). De mˆeme, pour le gradient deA◦h, on pond`erera de mani`ere analogue les gradients de A calcul´es en les plus proches pixels deh(−→x).
Question 7 : Etudier la stabilit´´ e L2 de la partie du sch´ema explicite relative `a la composante de r´egulatisation ∂th =α (Id−h) + β ∆h par analyse de Fourier bidimensionnelle. On pourra ´etudier l’´evolution de u = h−Id plutˆot que celle de h elle-mˆeme. En particulier, donner la condition de stabilit´e. En d´eduire les plages raisonnables des valeurs deα,β et dt, si l’on choisit dx=dy= 1.
Question 8 : Impl´ementer l’EDP de recalage avec un pas fixe (c’est-`a-dire qu’on divise la partie droite de l’EDP par sa norme L∞ sur l’image, afin qu’`a chaque pas de temps, la norme de la vitesse du point de h qui bouge le plus vale exactement le pas en question). Choisir un pas inf´erieur au pixel. Ne pas oublier de fixer h = Id sur le bord de l’image.
Question 9 : Tester l’algorithme sur un couple de petites images artificielles et lisses, par exemple donn´ees par les fonctions −→x ∈ [0,20] ×[0,20] −→ G(−→x −
2
(12,10), 5) et G(−→x −(9,10),5), o`uG(−→x − −→a , σ) est la gaussienne de centre−→a et d’´ecart-type σ. Regarder l’influence des param`etres α etβ.
Question 10 (facultative) : Tester l’algorithme sur de vraies images. Consta- ter des probl`emes dˆus aux minima locaux. R´eessayer avec les mˆemes images, mais pr´ealablement liss´ees par des filtres gaussiens de largeurs diverses.
3