• Aucun résultat trouvé

5.3 Optimisation a connexites xes d'un maillage

6.1.3 Recalage rigide de surfaces discretes

On dispose de deux ensembles de points representant deux parties even- tuellement distinctes de la surface d'un m^eme objet, qui correspondent cha- cun a l'intersection de la surface de cet objet avec un pave deIR3. La methode

que nous allons developper suppose un recouvrement partiel important entre ces deux parties de la surface de l'objet. Le recalage optimal correspondra alors a la transformation rigide de IR3 (translation sur les 3 axes et rota-

tion de nie par 3 angles), qui, appliquee a une des deux representations dite

((mobile))

2, minimise un critere de proximite (fonction de co^ut) a la seconde

6.1 Recalage de donnees M.E.G./E.E.G. et I.R.M.

A B

C D

Fig. 6.2 { segmentation du scalp I.R.M.

representation dite de ((reference)). Cette approche implique que la forme du

recouvrement soit susamment discriminante pour eviter toute ambigute sur la surface. On peut en particulier remarquer que les objets invariants par certaines rotations necessitent de lever l'ambigute lors de l'initialisation de la minimisation.

Lorsqu'on cherche a construire un critere de proximite entre une surface de reference et une surface mobile (representee par un ensemble de points) qui ne depende pas de la forme et de l'orientation de la surface de reference, une idee naturelle consiste a utiliser, pour une position donnee de la surface mobile, une moyenne des distances euclidiennes a la surface de reference de chacun des points de cette surface mobile. Des lors se pose la question du choix de la moyenne a employer. Nous avons pour notre part opte de facon classique pour la moyenne quadratique (equivalent de la distance euclidienne carree) dont les qualites ne sont plus a demontrer [MANG-95], [BORG-84]. On notera que la presence du carre dans la moyenne quadratique conduit a une expression di erentiable par rapport aux parametres d'une rotation de IR3 et d'une translation [MIN-83], [BLO-93].

Y =fyig un ensemble de points de la surface de reference ayant m^eme

cardinalite que P (Np = NY) tel que chaque point ;!p

i corresponde

au point;!y

i avec le m^eme indice. La fonction de proximite a minimiser

suivant les parametres de rotationR et translation T s'exprime comme: d(R;T) = 1Np Np X i=1 ;! Yi ;R ;!p i ;T 2

Cette de nition necessite la connaissance de la correspondance entre les points deP et de Y . Ici, elle n'est pas connue et sera estimee a chaque etape du recalage a partir d'une carte de distances.

Notre besoin de disposer d'une part d'un moyen de calcul ecace d'une bonne approximation de la distance euclidienne d'un point a une surface representee par un ensemble de points, et d'autre part d'etablir la corres- pondance entres les points de P et de Y , nous a donc amenes a utiliser des

((transformations de distances)). Pour cela, nous avons utilise la distance de

chanfrein qui consiste a approcher les distances globales de l'image en pro- pageant des distances locales, c'est-a-dire les distances entre voxels voisins [BORG-86].

Dans [GERA-98], l'algorithme est modi e a n de calculer egalement une carte du plus proche voisin necessaire a notre methode de minimisation de la fonction de proximite. La carte de distance obtenue ne donne qu'une ap- proximation de la distance euclidienne. En particulier, elle ne garantit pas que l'ordre des distances soit respecte [VERW-91]: il se peut qu'un voxel, dont la distance donnee par la carte est superieure a celle d'un autre voxel, soit en fait, au sens de la distance euclidienne, a plus faible distance de la surface. Toutefois, nous pouvons raner le calcul en prenant un masque de chanfrein plus precis a proximite de la surface.

Une fois la carte de distance obtenue, la fonction de proximitea minimiser suivant les parametres de rotation R et translation T necessite d'avoir des outils mathematiques permettant d'estimer une transformation rigide (R et T). Une premiere estimation d'une transformation rigide a partir de la mi- nimisation de la moyenne quadratique a ete d'utiliser une decomposition en valeurs singulieres (S.V.D.) [ARUN-87]. Dans cette methode, la rotation, re- presentee par une matriceorthogonale est decouplee de celle de la translation. L'estimation de la rotation repose alors sur une decomposition en valeurs sin- gulieres de la matrice de covariance des coordonnees barycentriques. Cette approche entra^ne dans certains cas des cas degeneres. En placant la rotation dans l'espace des quaternions unitaires, Horn demontre que le quaternion

6.1 Recalage de donnees M.E.G./E.E.G. et I.R.M.

unitaire correspondant a la rotation minimisant la moyenne quadratique cor- respond au vecteur propre associe a la plus grande valeur propre de la matrice [HORN-87]: Q(PY) = " tr(Y P) T  PY + TPY ;tr(PY)I 3 # (6.1) ou  = [A23A31A12]

T etAij = (PY ;TPY)ij sachant que P represente

l'ensemble des points de la surface mobile etY represente un ensemble de points de la surface de reference tel que NP =NY et

PY = 1N P NP X i=1 [(;!p i ; ;! P)(;!y i ;Y)t] (6.2) ;! P = 1NP XNP i=1 ;!p i ;! Y = 1NY XNY i=1 ;! Yi (6.3)

L'algorithmequi permetde minimiserla fonction de proximiteest construit sur la methode du plus proche voisin itere, ou I.C.P (Iterative Closest Point) [BESL-92]. Cet algorithme est compose de deux etapes qui consistent d'une part a detecter les points les plus proches de la surface mobile a la surface de reference et d'autre part en l'optimisation au sens des moindres carres de la transformation rigide. Le critere d'arr^et est etabli sur un seuil de distance entre les deux surfaces a recaler. Nous presentons maintenant une description de l'algorithme I.C.P.

Algorithme 6.2 Algorithme I.C.P.

[BESL-92]

SoitP l'ensemble des points de la surface mobile avec Np le nombre de

points de cet ensemble.

Soit X l'ensemble des points de la surface de reference avec Nx le

nombre de points de cet ensemble. Soit ;q!

R = [qoq1q2q3]

t le quaternion unitaire representant la rotation et

soit ;q!

T = [q4q5q6]

t le vecteur de translation,

le vecteur de parametres de recalage est alors note;!q = [;q! Rj

;q! T]t.

La distance d entre un point;!p

2P et X est notee: d(;!p ;X) = min ;!x 2X k ;!x ; ;!p k 2 )

Un point y de X pour lequel le minimum est atteint (d(;!p ;;!y ) =

d(;!p ;X)) est un plus proche voisin d'un point ;!p .

On note alors Y l'ensemble des points dans X les plus proches de P : Y = PPV (P;X) =f ;!y 2X;9 ;!p 2P;d( ;!p ;;!y ) = d(;!p ;X) g

L'algorithme I.C.P. peut alors ^etre decrit comme suit:

Initialisation:

Pk =P0, ;!q k = [;q! Rkj ;! qTk]t= [1;0;0;0;0;0;0]t etk = 0.

tant que

dk ;dk +1 <  avec  > 0

faire

Etape 1.

Calculer l'ensemble des plus proches voisins: Yk =

PPV (Pk;X).

Etape 2.

Estimer la transformation rigide en placant la rotation dans l'espace des quaternions unitaires:

(;q! Rk;dk) =Q(P0;Yk) et ;! qTk =;! Yk ;Rk( ;! qRk);! pk

Etape 3.

Appliquer la transformation: Pk+1 = ;!q

k(P0).

Etape 4.

k k + 1

n tant que

Il est facile de montrerque l'erreur de l'algorithme6.2 diminued'une facon monotone [BESL-92][FAU-93]. D'apres l'experience, il a ete observe que l'al- gorithme converge rapidement dans les premieres iterations, puis lentement ensuite. Une methode qui repose sur l'analyse de la courbe des variations de l'erreur residuelle de recalage en fonction des variations de la transformation rigide a ete proposee pour accelerer la convergence [BESL-92].

Nous observons l'existence de parties non recalables dans les surfaces ex- traites. Concretement cela se traduit par des artefacts residuels sur l'I.R.M. (par exemple des artefacts dentaires), et des points tres eloignes du nuage principal sur le headshape. Comme aucune de ces parties n'a de correspon- dance dans l'autre modalite, il faut absolument les prendre en compte pour eviter la creation d'ambigutes qui conduirait l'algorithme 6.2 a converger de facon correcte du point de vue mathematique mais erronee du point de vue anatomique. Une procedure d'extraction des points aberrants du headshape [SCHW-98] est donc mise en place. Les points sont extraits gr^ace a un seuil sur leur valeur dans la transformee en distance. Le point est conserve s'il veri e la condition suivante

vDT(i;j;k)MD + V ar(MD)

avec vDT(i;j;k) la valeur dans la transformee en distance d'un point du

headshape, MD la moyenne des vDT(i;j;k) et V ar(MD) la variance des

6.1 Recalage de donnees M.E.G./E.E.G. et I.R.M.

Le parametre est adaptable en fonction de la qualite du headshape. Cette operation permet d'eliminer les points numerises non signi catifs et les points correctement numerises mais n'ayant pas de correspondance sur la surface I.R.M. Cette etape se fait avant la minimisation de la fonction de proximite. Notons qu'il existe egalement une classe d'estimateurs, lesM- estimateurs, qui permettent d'injecter dans la fonction de proximite de l'in- formation qui permet de diminuerl'in uencedes points aberrants des surfaces a recaler [NIKO-98].