30.12.2013 Views

Recalage rigide Recalage non-rigide - Creatis

Recalage rigide Recalage non-rigide - Creatis

Recalage rigide Recalage non-rigide - Creatis

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Recalage</strong> d'images<br />

<strong>Recalage</strong> <strong>rigide</strong><br />

<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong>


<strong>Recalage</strong> <strong>rigide</strong>/<strong>non</strong>-<strong>rigide</strong><br />

● Modèle <strong>rigide</strong> :<br />

● Modèle <strong>non</strong> <strong>rigide</strong> :<br />

– T inclue des déformations<br />

– T = transformation «locale» vs «globale»


Déformation<br />

●<br />

Contraindre la déformation<br />

– Pourquoi ?


Déformation<br />

●<br />

Contraindre la déformation<br />

– Pourquoi ?


Déformation<br />

●<br />

Contraindre la déformation<br />

– Pourquoi ?


Déformation<br />

●<br />

Contraindre la déformation<br />

– Comment ?<br />

– Limiter les déformations<br />

– Notions de «temps» ...<br />

– Construire un espace de transformations<br />

«valides»


Déformation<br />

●<br />

Déformation 3D<br />

T x=x '<br />

T x=xu x<br />

ux x x = x ' , x ' , x ' <br />

1, 2, 3 1 2 3<br />

u ,T :R ³ R ³


Déformation<br />

●<br />

Déformation 4D<br />

T x ,t =x '<br />

T x ,t =T x , t−1u x ,t


Déformation T<br />

●<br />

Propriétés d'un difféomorphisme<br />

– Homéomorphisme : T(x) = x'<br />

●<br />

●<br />

●<br />

Continu<br />

Bijectif («one to one»)<br />

Ayant un inverse T -1 qui est aussi continu<br />

– Différentiable, avec un inverse différentiable


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

Deux grandes classes<br />

– «Epars» : interpolation des déplacements des<br />

points de contrôle avec un modèle de<br />

déformation<br />

– «Dense» : évaluation d’un vecteur de<br />

déplacement en chaque point


Points de contrôle<br />

●<br />

Correspondances de points<br />

– Ensemble de paires de points homologues


Points de contrôle<br />

●<br />

Correspondances de points<br />

– Ensemble de paires de points homologues<br />

– Interpolation


Points de contrôle<br />

●<br />

Correspondances de points<br />

– Ensemble de paires de points homologues<br />

– Paramétrisation de la T :<br />

● «courbes» d'un type particulier (Spline ...)<br />

●<br />

Contraintes par des propriétés de continuité,<br />

dérivabilité ...


Free-form<br />

●<br />

●<br />

●<br />

Correspondances de points<br />

Ensemble dense<br />

Contraintes a posteriori (=regularisation)


Contraintes<br />

● Exemples :<br />

– Deux points voisins ont un déplacement voisin<br />

– Directions, normes ...<br />

– Dépend de l'application !<br />

– Compromis, info apriori


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Modèle générique :<br />

● Énergies :<br />

T =arg min E I , J ,T <br />

E I , J , T =E s I , J , T E r T <br />

– De similarité E s<br />

– De régularisation E r<br />

● Paramètre de contrôle :


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Une approche :<br />

E s<br />

I , J ,T =∫ x<br />

L s<br />

x<br />

●<br />

●<br />

Intégration de similarité locale (au niveau des<br />

points)<br />

Exemple : SSD<br />

L s=ssd x=I x−J T x 2<br />

L s=ssd x= I x−J xux 2


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Une approche :<br />

E r<br />

I , J ,T =∫ x<br />

L r<br />

u x<br />

●<br />

Intégration de regularisation locale<br />

● Exemples :<br />

L r = frobenius x=∥∇ u x∥ 2 =∑ i<br />

∑ j <br />

u i<br />

x j<br />

2


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

●<br />

Matrice Jacobienne de la transformation<br />

Matrice des dérivées partielles<br />

u:R ³ R ³<br />

ux x x = x ' , x ' , x ' <br />

1, 2, 3 1 2 3<br />

u={u x x x <br />

1 1, 2, 3<br />

}<br />

u x x x <br />

2 1, 2, 3<br />

u x x x 3 1, 2, 3<br />

u 1<br />

u 2<br />

u 3<br />

x 1 x 1 x 1<br />

u<br />

∇ u x= <br />

1 u 2 u 3<br />

x 2<br />

x 2<br />

x 2<br />

u 1<br />

u 2<br />

u 3<br />

x 3<br />

x 3<br />

x 3


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

●<br />

Similarité locale Ls<br />

Contraintes locale Lr<br />

– Sur dérivées partielles locales<br />

● Dérivées ?<br />

– Différences finies :<br />

f ' x≃<br />

f xh− f x−h <br />

O h 2 <br />

2h


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

Exemple pour une dérive partielle<br />

u 1<br />

a ,b , c≃ u 1a ,b1, c−u 1 a ,b−1, c<br />

x 2<br />

2


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Critères de régularisation :<br />

– Très nombreux !<br />

– Paramètres à régler ...


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

Optimisation<br />

T =arg min E I , J ,T <br />

● Combien de dimension ?


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Combien de dimension ?<br />

– n voxels (par exemple 10 millions)<br />

– 3 degrés de liberté (3D)<br />

– Espace de recherche à<br />

30 millions de dimensions


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Descente de gradient ?<br />

T =arg min E I , J ,T <br />

E I , J , T =E s I , J , T E r T <br />

E I , J ,T =∫ L x<br />

s x s<br />

E I , J ,T =∫ L u x<br />

r x r


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

Descente de gradient LOCALE<br />

u i =u i −1 ∇ E<br />

u i =u i −1 ∇ E s E r <br />

u i x=u i −1 x ∇L s xL r x


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

● Expression des gradients locaux :<br />

∇L s x∈R 3<br />

L s= ssd<br />

u 1<br />

x=<br />

I x− J xu x2<br />

u 1<br />

=2 J xu x−I x ∇ J xu x


<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong><br />

●<br />

Conclusion<br />

– Critère de similarité (local ?)<br />

– Critère de régularisation (local ?)<br />

●<br />

Définition, contrainte de l'espace de recherche<br />

– Implicite, explicite<br />

– Densité des «points de contrôle»<br />

– Minimisation<br />

– Nombreux paramètres !<br />

– Schémas multi-résolution, multi-grille ...<br />

– Validation ?


«Demons»<br />

● Proposé par Thirion (INRIA) 1995<br />

●<br />

●<br />

Processus itératif<br />

Deux étapes<br />

– Appariement<br />

●<br />

– Régularisation<br />

Critère d'arrêt<br />

● (Pas de minimisation explicite ...)


«Demons»<br />

u<br />

i<br />

(x)<br />

=<br />

∇I<br />

2<br />

+<br />

I(x)<br />

− J<br />

α<br />

2<br />

T<br />

i−1<br />

( I(x)<br />

− J<br />

(x)<br />

T<br />

i−1<br />

(x))<br />

2<br />

∇I<br />

T +<br />

i<br />

= smooth( T u<br />

i−1<br />

i<br />

)


«Demons»<br />

●<br />

Hypothèses<br />

– Conservation de l'intensité entre les images<br />

– Petits / large déplacements (alpha)<br />

– Lissage / gradient<br />

●<br />

Non symétrique


Régularisation : Gaussienne


Régularisation : Gaussienne<br />

●<br />

Filtrage Gaussien 1D<br />

– le champ h(x) est 3D<br />

– Donc de h(x 1<br />

,x 2<br />

,x 3<br />

)=(y 1<br />

,y 2<br />

,y 3<br />

)<br />

– h 1<br />

(x 1<br />

,x 2<br />

,x 3<br />

)=y 1<br />

– h 2<br />

(x 1<br />

,x 2<br />

,x 3<br />

)=y 2<br />

– h 3<br />

(x 1<br />

,x 2<br />

,x 3<br />

)=y 3<br />

– 3x3=9 filtres 1D !


Exemple de déroulement<br />

/home/dsarrut/enseignement/dea-disic/site/demons/movie.mpg


ecalage<br />

Application


Application en radiothérapie<br />

●<br />

●<br />

●<br />

●<br />

Radiothérapie<br />

TTT du cancer (270.000 nx cas/an en fr)<br />

– Chirurgie / Chimio / RTX (1/3)<br />

But = délivrer le max de dose (RX) à la<br />

tumeur<br />

... épargner au maxium les tissus sains<br />

environnants


Radiothérapie<br />

●<br />

Etape 1 = scanner X


Radiothérapie<br />

●<br />

Etape 2 : plan de traitement


Radiothérapie<br />

●<br />

Etape 3 : séances d'irradiation


Contrôle de traitement<br />

●<br />

Difficultés<br />

– position du patients<br />

– mouvement du patient (respiration)<br />

– évolution de l'anatomie (régression tumeur, perte<br />

de poids)


Centre de lutte contre le cancer<br />

●<br />

Léon Bérard (Lyon, grange-blanche)


Mouvements respiratoire


ABC (Active Breath Control)


Mouvements respiratoire


ABC (Active Breath Control)<br />

●<br />

Traitement en respiration bloquée (limite les<br />

mouvements)<br />

● Acquisitions scanner également !<br />

●<br />

Données<br />

– 1 scan 3D de référence<br />

– 3 scan en blocage, même blocage<br />

– 3 scan en blocage, 3 blocages différents (expiration,<br />

inspiration, forte inspiration)


Cycle respiratoire


ABC (Active Breath Control)


Différents instants du cycle


ABC (Active Breath Control)<br />

●<br />

Même blocage : étude de la reproducibilité<br />

– faible déplacement<br />

●<br />

Blocage différent : étude des mouvements<br />

– fort déplacement<br />

<strong>Recalage</strong> <strong>non</strong>-<strong>rigide</strong>


ABC (Active Breath Control)<br />

/home/dsarrut/public_html/vectorfield/coupesZ/images.html


Futur<br />

Collimateur de<br />

l'accélérateur<br />

Synchronisation avec la<br />

respiration<br />

Modèle 4D de la respiration


Positionnement<br />

●<br />

<strong>Recalage</strong> <strong>rigide</strong> 2D/3D

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!