4.2 Algorithme de recalage multimodal
4.2.3 Minimisation de l’information mutuelle n´ egative
Estimer la transformation T revient en pratique `a estimer les param`etres d’un mod`ele de d´eformation qui engendre cette transformation.
En imagerie m´edicale, le mod`ele affine est un mod`ele de d´eformation courant et beaucoup s’int´eressent ´egalement au mod`ele ´elastique. C’est pourquoi nous consid´erons dans cette ´etude ces deux mod`eles de d´eformation. Pour une ´echelle donn´ee, les param`etres du mod`ele de d´eformation sont mis `a jour en calculant leur variation `a l’it´eration n. Nous expliquons maintenant comment cette variation est calcul´ee `a partir de N M I (I1, T (I2)) pour chacun de ces deux mod`eles.
4.2.3.1 Minimisation de la NMI pour le mod`ele affine
Le mod`ele affine se d´efinit par une matrice M, compos´ee de six param`etres :
M = m11 m12 0 m21 m22 0 m31 m32 1 . (4.4)
Comme nous l’avons exprim´e dans l’´equation (2.39), chaque composante mij, i, j = {1, 2}, est
une combinaison de rotation d’angle θ, de facteur d’´echelle scx1 et scx2 et de cisaillement shx1 et
shx2. m31 et m32 repr´esentent quant `a eux les translations dans les directions lat´erale et axiale.
La correspondance entre ces types de transformations et les ´el´ements mij de la matrice M est la
suivante :
m11= scx2cos(θ), m12= shx1sin(θ),
m21= shx2sin(θ), m22= scx1cos(θ),
m31= tx2, m32= tx1.
(4.5) L’algorithme par descente de gradient est it´eratif, ce qui signifie que l’on va faire varier pro- gressivement les param`etres M jusqu’`a atteindre la valeur minimale de la fonction de coˆut, qui est la NMI. Initialement, aucune transformation n’est appliqu´ee `a l’image flottante : M0 ´equivaut `a la
matrice identit´e. La mise `a jour des param`etres de d´eformation se fait donc `a l’it´eration n ≥ 0 selon la relation suivante :
Mn+1X = MnX − γf
0
n(MnX) , (4.6)
o`u X est une matrice N × 3 contenant les coordonn´ees homog`enes des N pixels de l’image, γ est le pas initial d’optimisation (que nous avons fix´e `a 1) et fn0 (MnX) = ∇(N M I)nrepr´esente les d´eriv´es
spatiales de la mesure `a l’it´eration n aux coordonn´ees MnX. Ainsi, il est possible de calculer δMn
par moindres carr´es :
δMn= X · XT
−1
4.2.3.2 Minimisation de la NMI pour le mod`ele B-spline
En ce qui concerne le mod`ele ´elastique, les param`etres de d´eformation que l’on manipule sont les positions des points de contrˆole du maillage. Contrairement au mod`ele affine, pour qui tous les param`etres s’appliquaient `a l’image enti`ere, un point de contrˆole n’a une influence que sur les pixels qui constituent son voisinage. Un exemple d’effet obtenu est illustr´e par la figure 4.3.
Figure 4.3 – Exemple de d´eformation ´elastique pour une translation lat´erale des points de contrˆole situ´es au centre de l’image.
Pour g´en´erer cette d´eformation, les points de contrˆole situ´es sur la ligne centrale du maillage ont subi un d´eplacement de 64 pixels vers la droite. On remarque que seuls les pixels situ´es autour de cette ligne dans l’image ont subi un d´ecalage. Plus le pixel est ´eloign´e du point de contrˆole, moins celui-ci subira l’influence du d´eplacement de ce point de contrˆole. C’est pourquoi on raisonnera en termes depatches. La transformation T (x) d’un pixel `a la position x est calcul´ee en fonction des
positions des points de contrˆole voisins du maillage. Cette transformation est donn´ee par l’´equation :
T (x) = 3 X l=0 3 X m=0 Bl(υ − bυc) Bm(ν − bνc) Pki+l,j+m, (4.8)
o`u Pk est une matrice de taille NP C × 2 contenant les positions des points de contrˆole du patch
k, avec NP C ´etant le nombre de points de contrˆoles dans ce patch. Pki,j est la position du point de
contrˆole `a la ligne i et `a la colonne j du patch k. υ = x1/δx1, ν = x2/δx2, avec δxi la distance entre
deux points de contrˆole dans la direction xi. υ est la position du pixel au sein du patch. i = bυc − 1,
j = bνc − 1 et l’op´erateur b•c est la partie enti`ere de •. Finalement, Bl repr´esente la le fonction de
B0(υ) = (1 − υ)3/6,
B1(υ) = 3υ3− 6υ2+ 4 /6,
B2(υ) = −3υ3+ 3υ2+ 3υ + 1 /6,
B3(υ) = υ3/6.
(4.9)
Pour le mod`ele B-spline, la variation des param`etres de d´eformation est repr´esent´ee par le d´ecalage des points de contrˆole. Pour obtenir le d´ecalage de tous les pixels d’un patch, on intro- duit la matrice F, qui est une matrice Npx× NP C contenant les coefficients des polynˆomes B-spline
des NP C points de contrˆole pour les Npxpixels d’un patch. Pour le ke patch, les positions de chaque
pixel `a l’it´eration n, not´ees Xkn, peuvent ainsi s’´ecrire sous la forme matricielle suivante :
Xkn= FPkn, k = 1, ..., Npatch, (4.10)
o`u Npatch est le nombre de patches. Le but ´etant de trouver les positions de chaque pixels qui
minimisent la fonction de coˆut, la relation entre les param`etres d’une it´eration `a l’autre s’exprime donc comme :
FPn+1= FPn− γf
0
n(FPn) . (4.11)
Si l’on se contentait uniquement des informations offertes par les points de contrˆole d’un patch, les positions des points de contrˆole au bord de ce patch ne seraient pas correctement estim´ees. Ils subissent en effet l’influence des points de contrˆoles appartenant aux patches voisins. Pour conserver la coh´erence de la d´eformation dans l’image enti`ere, une solution consiste `a cumuler l’influence d’un point de contrˆole pour tous les patches de l’image. `A l’instar du mod`ele affine, il est possible d’exprimer l’´equation (4.11) en fonction de l’information mutuelle normalis´ee :
δPn=
X
patches
F · FT−1· FT · ∇N M I. (4.12) L’optimisation se termine si la variation de la fonction de coˆut est inf´erieure `a un certain seuil ou si l’algorithme a d´epass´e un certain nombre d’it´erations.