Nothing Special   »   [go: up one dir, main page]

11 Segmentation JCA

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 77

Segmentation d’images et détection de

contours

Julien Cohen-Adad

ELE8812

Julien Cohen-Adad (ELE8812) Segmentation d’images 1


La segmentation

Julien Cohen-Adad (ELE8812) Segmentation d’images 2


Plan

1. Introduction

2. Détection de contours
• Méthodes élémentaires: gradient et laplacien
• Méthode de Canny
• Détection de frontières

3. Segmentation de régions
• Seuillage global
• Seuillage local ou adaptatif
• Autres méthodes
• Comparaison détection contour / régions avec scikit-image (Python)

4. Autres méthodes
• Réseau de neurones convolutionnels (deep learning)
• Segmentation de la matière blanche par Tractographie en IRM

Julien Cohen-Adad (ELE8812) Segmentation d’images 3


Plan

1. Introduction

2. Détection de contours
• Méthodes élémentaires: gradient et laplacien
• Méthode de Canny
• Détection de frontières

3. Segmentation de régions
• Seuillage global
• Seuillage local ou adaptatif
• Autres méthodes
• Comparaison détection contour / régions avec scikit-image (Python)

4. Autres méthodes
• Réseau de neurones convolutionnels (deep learning)
• Segmentation de la matière blanche par Tractographie en IRM

Julien Cohen-Adad (ELE8812) Segmentation d’images 4


Introduction

Introduction

Qu’est ce que la segmentation ?


• Partitionnement d’une image en régions Ri connexes (en
un sens à préciser)
• Chaque région doit satisfaire une propriété Ƥ
• Deux régions voisines ne doivent pas satisfaire la même
propriété

Julien Cohen-Adad (ELE8812) Segmentation d’images 5


Introduction

Introduction

Dualité contour région

© 1992-2008 R. C. Gonzalez & R. E. Woods

Formulations équivalentes?
• Réponse théorique : oui
• Réponse pratique : non

Julien Cohen-Adad (ELE8812) Segmentation d’images 6


Plan

1. Introduction

2. Détection de contours
• Méthodes élémentaires: gradient et laplacien
• Méthode de Canny
• Détection de frontières

3. Segmentation de régions
• Seuillage global
• Seuillage local ou adaptatif
• Autres méthodes
• Comparaison détection contour / régions avec scikit-image (Python)

4. Autres méthodes
• Réseau de neurones convolutionnels (deep learning)
• Segmentation de la matière blanche par Tractographie en IRM

Julien Cohen-Adad (ELE8812) Segmentation d’images 7


Détection de contours

Détection de contours

Contour et détection
• Contour : discontinuité dans l’intensité de l’image
• Contenu hautes fréquences!
• Détection de contour : filtrage passe-haut

Cadre 1D
• Filtrage passe haut en temps continue : dérivée première ou
seconde
• Filtrage passe haut en temps discret : differences premières ou
secondes
• Différences premières : d1(x) = f (x + 1) − f (x − 1)
• Différences secondes : d2(x) = f (x + 1) − 2f (x) + f (x − 1)

Julien Cohen-Adad (ELE8812) Segmentation d’images 8


Détection de contours

Différences premières et secondes (en fréquence)

Julien Cohen-Adad (ELE8812) Segmentation d’images 9


Détection de contours

Types de contours et détection

Types de contours :

Différences premières : opérateur


standard non centré, contours épais

Différences secondes : double


réponse. Détection des passages
par zéro

Julien Cohen-Adad (ELE8812) Segmentation d’images 10


Détection de contours

Sensibilité au bruit

image dérivée 1ère dérivée 2nde


Synthèse
• Différences premières :
opérateur standard non
centré, contours épais
• Différences secondes :
double réponse 

bruit

―> passages par zéro


• Forte sensibilité au bruit

Julien Cohen-Adad (ELE8812) Segmentation d’images 11


Détection de contours Méthodes élémentaires : gradient et laplacien

Méthodes élémentaires de détection de contours


Gradient de l’image
Définition et propriétés élémentaires

• Définition :

• Magnitude : rapidité des variations de f


• Direction : plus grande pente

Le gradient est orthogonal aux lignes de niveau et aux 



discontinuités fortes (contours)

Approximations numériques
• Opérateurs centrés exacts :

Julien Cohen-Adad (ELE8812) Segmentation d’images 12


Détection de contours Méthodes élémentaires : gradient et laplacien

Détection par gradient


Approximations numériques : Prewitt

Exemple d’opérateur utilisé : Prewitt

Julien Cohen-Adad (ELE8812) Segmentation d’images 13


Détection de contours Méthodes élémentaires : gradient et laplacien

Détection par gradient


Approximations numériques : Sobel

Exemple d’opérateur utilisé : Sobel

• Justification: interprétation fréquentielle


• Détection directionnelle des contours
• Magnitude : norme du gradient

Julien Cohen-Adad (ELE8812) Segmentation d’images 14


Détection de contours Méthodes élémentaires : gradient et laplacien

Détection par gradient


Approximations numériques : Sobel

Interprétation fréquentielle (selon composante y)

Julien Cohen-Adad (ELE8812) Segmentation d’images 15


Détection de contours Méthodes élémentaires : gradient et laplacien

Laplacien de l’image

Définition et propriétés élémentaires

• Définition :

• Magnitude : rapidité des variations de f


• Direction : plus grande pente

Approximations numériques

Somme d’opérations 1D Meilleure isotopie

Julien Cohen-Adad (ELE8812) Segmentation d’images 16


Détection de contours Méthodes élémentaires : gradient et laplacien

Synthèse sur les méthodes élémentaires de


détection de contours

Gradient
• Directionnel
• Moins sensible au bruit (différences premières)
• Possibilité de mise en œuvre par opérateurs 1D

Laplacien
• Isotrope
• Très sensible au bruit (différences secondes)
• Possibilité limitée de mise en œuvre par opérateurs 1D
• Double réponse aux discontinuités => détection des passages
par zéro

Julien Cohen-Adad (ELE8812) Segmentation d’images 17


Détection de contours Méthodes élémentaires : gradient et laplacien

Application : Méthode du gradient

• Détection par la magnitude du gradient (norme L1 ou L2)


• Opérateurs de Sobel : lissage partiel
• Possibilité de lissage préalable supplémentaire
• Possibilité de detection directionnelle
• Mise en œuvre efficace par opérateurs 1D

Exemple : demo_grad.m

Julien Cohen-Adad (ELE8812) Segmentation d’images 18


Détection de contours Méthodes élémentaires : gradient et laplacien

Application : Méthode du gradient

Exemple : Segmentation du corpus callosum

Julien Cohen-Adad (ELE8812) Segmentation d’images 19


Détection de contours Méthodes élémentaires : gradient et laplacien

Application : Méthode du Laplacien

Méthode du Laplacien. Nécessite de :


• Faire un filtrage préalable au moins aussi efficace que pour le
gradient (sensibilité au bruit)
• Détecter les passages par zéro

Exemple : Méthode de Marr-Hildreth


• Applique un filtrage gaussien 2D (pour réduire le bruit).
• Paramètre: écart-type σ (support : valeur impaire, 4 ou 6 σ)
• Puis, applique Laplacien
• Assurer la nullité de la somme des coefficients

Julien Cohen-Adad (ELE8812) Segmentation d’images 20


Détection de contours Méthodes élémentaires : gradient et laplacien

Application : Méthode de Marr-Hildreth


Méthode de Marr-Hildreth : mise en œuvre
• Détection des passages par 0 : opération délicate
• Filtrage gaussien : séparable
• Laplacien : somme d’opérateurs 1D
• Approximation separable du filtre LoG (Laplacian over Gaussian) par la
différence de deux gaussiennes 2D d’écart-type différent ; séparabilité
préservée

Exemple : demo_lap.m

Julien Cohen-Adad (ELE8812) Segmentation d’images 21


Détection de contours Méthodes élémentaires : gradient et laplacien

Comparaison : Gradient vs. Laplacien

Image Sobel Marr-Hildreth


description plus
fine
manque
certains détails

Julien Cohen-Adad (ELE8812) Segmentation d’images 22


Détection de contours Méthode de Canny

Méthode de Canny
Démarche

Étapes principales du filtre de Canny :


• Lisser l’image avec un filtre gaussien pour diminuer le
bruit (comme avec Marr-Hildreth)
• Trouve la direction et la magnitude des gradients
d'intensité de l’image (dérivée 1ère)
• Affinage des contours (voir diapo suivante)
• Double seuil pour déterminer les arêtes potentielles (voir
diapos suivantes)
• Suivi des bords par hystérésis : finalise la détection des
bords en supprimant tous les autres bords faibles et non
connectés à des bords forts (voir diapos suivantes)

Julien Cohen-Adad (ELE8812) Segmentation d’images 23


Détection de contours Méthode de Canny

Méthode de Canny
Affinage des contours (maximum suppression)
1. Carte des gradients 2. Seuillage

fort gradient fort gradient

seuil
faible gradient faible gradient

3. Direction du gradient 4. Garde si maximum local.


Rejette sinon
Direction du
gradient

x x Ce pixel a un gradient
plus fort, donc on
rejette le pixel

pixel
considéré

Julien Cohen-Adad (ELE8812) Segmentation d’images 24


Détection de contours Méthode de Canny

Méthode de Canny
Double seuillage avec hystérésis
Double seuillage
• Deux seuils sont utilisés pour classer les pixels avec « fort seuil » et
avec « faible seuil ».
• Ces deux classes seront utilisés dans l’étape hystérésis.

Connection des contours par hystérésis


• Si le pixel actuel n'est pas un contour, aller au pixel suivant
• Si c’est un contour, vérifiez les deux pixels dans la direction du contour faible seuil
(i.e., perpendiculairement au gradient). Si l'un d'entre eux (ou les deux):
• A la direction dans la même case que le pixel actuel
• A un gradient supérieure au faible seuil
• Alors on marque le pixel actuel et le(s) voisin comme « pixel de fort seuil
contour ».
• On itère jusqu'à ce qu'il n'y ait plus aucun changement dans l’image

Exemple : demo_canny.m

Julien Cohen-Adad (ELE8812) Segmentation d’images 25


Détection de contours Détection de frontières

Détection de frontières

Position du problème
• Contours détectés : représentation incomplète des frontières présentes dans
l’image
• Nécessité de joindre entre eux les éléments d’une même frontière

Approches
• Approche locale
• Seuillage avec hystérésis (Canny)
• Méthodes empiriques : magnitude semblable et angle du gradient correct
• Approche par regions (exemple : approximations polygonales)
• Approche globale : transformée de Hough

Julien Cohen-Adad (ELE8812) Segmentation d’images 26


Détection de contours Détection de frontières

Transformée de Hough
Principe
• Détection de l’ensemble des points de contour appartenant à un même objet
paramétré
• L’object paramétré peut être un point, une droite, une courbe, etc.
• Pour chaque point de l’image, on construit un objet dans l’espace de Hough
• Ensuite, on vote pour sélectionner les paramètres de l’objet qui ressortent le
plus souvent.

Image Espace de Hough

Exemple : Droite selon a.x + b

Julien Cohen-Adad (ELE8812) Segmentation d’images 27


Détection de contours Détection de frontières

Transformée de Hough
Exemple 1 : Représenter 3 points avec une droite
On trace toutes les droites On fait de même pour le 2e … puis pour le 3e point
qui passent par le premier point…
point

On entre les infos de la


droite orthogonale, passant
par le centre, dans la
matrice d’accumulation
La ligne de support pour la droite à 60° a une longeur similaire, donc
la droite bleue est la plus proche des 3 points.

Source: https://en.wikipedia.org/wiki/Hough_transform

Julien Cohen-Adad (ELE8812) Segmentation d’images 28


Détection de contours Détection de frontières

Transformée de Hough
Exemple 2 : Représenter 2 droites avec 2 points

Source: https://en.wikipedia.org/wiki/Hough_transform

Julien Cohen-Adad (ELE8812) Segmentation d’images 29


Détection de contours Détection de frontières

Transformée de Hough
Généralisation
• Paramétrisation plus générale d’une droite : x.cos(θ) + y.sin(θ) = ρ
• Extension possible à d’autres types de courbes paramétrées
• En général, détection des échantillons de plus forte amplitude dans
le domaine transformé (contours les plus longs)
• Nécessité de post-traitements (connexion des éléments de frontière)

© 1992-2008 R. C. Gonzalez & R. E. Woods

Julien Cohen-Adad (ELE8812) Segmentation d’images 30


Détection de contours Détection de frontières

Transformée de Hough
Démo

Exemple : demo_Hough.m

Julien Cohen-Adad (ELE8812) Segmentation d’images 31


Détection de contours Modèle déformable

Modèle déformable
Exemple: Segmentation moelle épinière (PropSeg)
But : Segmenter la moelle épinière pour mesurer atrophie (e.g., sclérose en plaques,
compressions traumatiques, etc.)

De Leener, NeuroImage 2014 98:528

Julien Cohen-Adad (ELE8812) Segmentation d’images 32


Détection de contours Modèle déformable

Modèle déformable
Exemple: Segmentation moelle épinière (PropSeg)
Méthode : Combinaison de différentes techniques pour détecter la moelle, puis lancer
un algorithme de détection de l’interface moelle / liquide cerebro-spinal

5. Mesh propagation

&"
!
!'" %$
!'"
!" %$
!"
!'" #$
!" #$

De Leener, NeuroImage 2014 98:528

Julien Cohen-Adad (ELE8812) Segmentation d’images 33


Détection de contours Modèle déformable

Modèle déformable
Exemple: Segmentation moelle épinière (PropSeg)

De Leener, NeuroImage 2014 98:528

Julien Cohen-Adad (ELE8812) Segmentation d’images 34


Plan

1. Introduction

2. Détection de contours
• Méthodes élémentaires: gradient et laplacien
• Méthode de Canny
• Détection de frontières

3. Segmentation de régions
• Seuillage global
• Seuillage local ou adaptatif
• Autres méthodes
• Comparaison détection contour / régions avec scikit-image (Python)

4. Autres méthodes
• Réseau de neurones convolutionnels (deep learning)
• Segmentation de la matière blanche par Tractographie en IRM

Julien Cohen-Adad (ELE8812) Segmentation d’images 35


Segmentation de régions

Segmentation de régions

Objectif :
• Partitionnement de l’image

Comment faire ?
• Chaque région est caractérisée par :
• Son intensité moyenne
• Petites variations dans chaque région (e.g., bruit)

Idée : Utiliser l’histogramme de l’image pour


trouver et appliquer un seuillage globale

Julien Cohen-Adad (ELE8812) Segmentation d’images 36


Segmentation de régions Seuillage global

Approche empirique basée sur l’histogramme

• Choix des seuils basé sur l’inspection de l’histogramme


• Exemple : Segmentation de neurones à partir d’image histologique

myéline
background
axon

• Problème : difficile de généraliser à des images légèrements différentes


(autre système d’acquisition, autres paramètres d’acquisition, etc.)

Julien Cohen-Adad (ELE8812) Segmentation d’images 37


Segmentation de régions Seuillage global

Approche empirique basée sur l’histogramme


Problème #1 : Effet du bruit

Difficile de séparer histogrammes si beaucoup de bruit

Julien Cohen-Adad (ELE8812) Segmentation d’images 38


Segmentation de régions Seuillage global

Approche empirique basée sur l’histogramme


Problème #2 : Biais d’intensité

Difficile de séparer histogrammes si présence de biais d’intensité

Julien Cohen-Adad (ELE8812) Segmentation d’images 39


Segmentation de régions Seuillage global

Approche empirique basée sur l’histogramme


Problème #2 : Biais d’intensité

Biais peuvent être corrigées avec algorithmes, e.g. N4

avant correction après correction

https://www.slicer.org/w/images/7/77/MRI_Bias_Field_Correction_Slicer3_close_up.png

Julien Cohen-Adad (ELE8812) Segmentation d’images 40


Segmentation de régions Seuillage global

Approche empirique basée sur l’histogramme


Problème #3 : Effet de la taille des régions

Exemple de limitation de l’approche par histogramme. Dans


le cas d’un objet très petit, la segmentation est délicate.

objet d’intérêt

© 1992-2008 R. C. Gonzalez & R. E. Woods

Julien Cohen-Adad (ELE8812) Segmentation d’images 41


Segmentation de régions Seuillage global

Méthode de Otsu

But : estimation automatique des seuils


• Deux régions
• Critère de type « information » : maximisation de la dispersion entre
classes


• Dispersion :

• Pour un seuil k donné :

• Possibilité d’extension pour plus que 2 classes

Julien Cohen-Adad (ELE8812) Segmentation d’images 42


Segmentation de régions Seuillage global

Méthode de Otsu

© 1992-2008 R. C. Gonzalez & R. E. Woods

Julien Cohen-Adad (ELE8812) Segmentation d’images 43


Segmentation de régions Seuillage global

Méthode de Otsu
Comment palier au bruit et taille des régions ?

• Calcul de l’histogramme dans une partie de l’image


rétablissant l’équilibre entre taille des régions
• Étapes du traitement :
• Détection des contours et seuillage par une méthode vue
précédemment
• Calcul de l’histogramme sur les pixels des contours ou un
voisinage de ceux-ci
• Méthode de Otsu sur l’histogramme ainsi obtenu

Julien Cohen-Adad (ELE8812) Segmentation d’images 44


Segmentation de régions Seuillage global

Méthode de Otsu
Comment palier au bruit et taille des régions ?

Histograme calculé sur


toute l’image

2e pic
détecté !
Histograme calculé sur
les pixels des contours

Julien Cohen-Adad (ELE8812) Segmentation d’images 45


Segmentation de régions Seuillage global

Limitations des techniques de seuillage global


Dans certains cas, il est impossible de trouver un seuil global
pour segmenter un objet d’intérêt (ici : le texte manuscrit)

© 1992-2008 R. C.
Gonzalez & R. E. Woods

—> On a recourt aux techniques de seuillage local ou adaptatif

Julien Cohen-Adad (ELE8812) Segmentation d’images 46


Segmentation de régions Techniques de seuillage local ou adaptatif

Techniques de seuillage local ou adaptatif

Seuillage globale
• Simple
• Forte composante empirique
• Caractéristique propres aux images non prises en compte (e.g., taille des
objets)

Seuillage local ou adaptatif


• Division en sous-images (vignette)
• Traitement indépendent des vignettes avec les techniques précédentes
• Efficace pour des variations lentes de l’intensité
• Meilleure prise en compte des caractéristiques propres aux images
• Taille des vignettes ?
• Notion de voisinage ?

Julien Cohen-Adad (ELE8812) Segmentation d’images 47


Segmentation de régions Autres méthodes

Segmentation avec information a priori et modèle


non-locale
• Dépendemment des régions, les seuils de l’histogramme sont ajustés, mais
avec un a priori sur l’ordre et le ratio d’intensité entre les structures d’intérêt
• Permet de se prémunir des faibles variation d’intensité le long de l’image
• Exemple : Segmentation de trois structures principales dans le cerveau

Julien Cohen-Adad (ELE8812) Segmentation d’images 48


Segmentation de régions Autres méthodes

Méthode des contours actifs (Snakes)

• Contour actif : On part d’un état initial, puis le contour


évolue selon des contraintes (e.g., gradients de l’image).
• Méthode Snakes : utilise des splines (ouvertes ou
fermées) pour décrire les contours
• L’évolution des snakes est contraintes par : l’image
(gradient) et les propriétés des snakes (longueur,
courbure, etc.)

Julien Cohen-Adad (ELE8812) Segmentation d’images 49


Segmentation de régions Autres méthodes

Méthode des contours actifs (Snakes)

Exemple : plot_active_contours_julien.ipynb

Julien Cohen-Adad (ELE8812) Segmentation d’images 50


Segmentation de régions Autres méthodes

Méthode des surfaces de niveau (level set)

• Principe : Décrire l’évolution d’une région 2D en étudiant


l’intersection entre un plan et un objet 3D.
• Avantage du level set par rapport au Snake : Ne
nécessite pas de paramétrisation de la courbe.

https://en.wikipedia.org/wiki/Level-set_method

Julien Cohen-Adad (ELE8812) Segmentation d’images 51


Segmentation de régions Autres méthodes

Méthode des surfaces de niveau (level set)

• Exemple : Segmentation d’IRM cardiaque

https://profs.etsmtl.ca/hlombaert/levelset/

Julien Cohen-Adad (ELE8812) Segmentation d’images 52


Segmentation de régions Autres méthodes

Segmentation par ligne de partage des eaux


(watershed) 

• Principe : On considère une image à niveaux de gris


comme un relief topographique. Le but est de trouver la
ligne partage des eaux de ce relief.

Image à segmenter

On calcule la distance entre


chaque pixel du masque et le
background

On trouve les « pics » de la


carte de distance, puis on
http://thewatershedproject.org/what-is-a-watershed/ sépare les objets

Julien Cohen-Adad (ELE8812) Segmentation d’images 53


Segmentation de régions Autres méthodes

Segmentation par ligne de partage des eaux


(watershed) 

• Exemple : Segmentation et séparation des axones sur


images de microscopie électronique.

Image Segmentation myéline Watershed segmentation

AxonDeepSeg AxonDeepSeg

AxonDeepSeg AxonDeepSeg Problème : axones adjacents se


AxonDeepSeg
touchent. Il faut les séparer

AxonDeepSeg https://github.com/neuropoly/axondeepseg

Julien Cohen-Adad (ELE8812) Segmentation d’images 54


Segmentation de régions Comparaison détection contour / régions

Comparaison détection contour / régions avec


scikit-image (Python)

Exemple : plot_coins_segmentation_julien.ipynb

Julien Cohen-Adad (ELE8812) Segmentation d’images 55


Plan

1. Introduction

2. Détection de contours
• Méthodes élémentaires: gradient et laplacien
• Méthode de Canny
• Détection de frontières

3. Segmentation de régions
• Seuillage global
• Seuillage local ou adaptatif
• Autres méthodes
• Comparaison détection contour / régions avec scikit-image (Python)

4. Autres méthodes
• Réseau de neurones convolutionnels (deep learning)
• Segmentation de la matière blanche par Tractographie en IRM

Julien Cohen-Adad (ELE8812) Segmentation d’images 56


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)
DL can be leveraged to achieve key tasks:
• Segmentation of healthy structures (cortex, spinal cord, etc.)
• Segmentation of pathological structures (lesions, tumors, etc.)
• Categorization (diagnosis, prognosis)
Number of abstracts on Deep
• Identify novel biomarkers Learning at the main MRI
conference (ISMRM)
500

375
Brain MRI Cortex White matter MS Lesions
Neural network
250

125

0
2015 2016 2017 2018

Julien Cohen-Adad (ELE8812) Segmentation d’images 57


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels (deep learning)


Démo : Segmentation de moelle épinière en IRM

sct_deepseg_sc -i t1w.nii.gz -c t1

Julien Cohen-Adad (ELE8812) Segmentation d’images 58


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)

Où est Charlie ?

(*) Slides tirées de Charley Gros, MSc. thesis, Polytechnique Montreal

Julien Cohen-Adad (ELE8812) Segmentation d’images 59


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)

Idée : Trouver des « features » présents dans


l’image (i.e. convolution)

=
=
Input image Feature Feature map Input image Feature Feature map

github.com/vdumoulin/conv_arithmetic

(*) Slides tirées de Charley Gros, MSc. thesis, Polytechnique Montreal

Julien Cohen-Adad (ELE8812) Segmentation d’images 60


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)

Apprentissage machine classique Apprentissage profond

En apprentissage profond (deep learning), grâce à la « back propagation », ces


features sont trouvés automatiquement (i.e. apprentissage supervisé)

(*) Slides tirées de Christian Perone, MSc. thesis, Polytechnique Montreal


Julien Cohen-Adad (ELE8812) Segmentation d’images 61
Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)
• Context: U-Net popular for segmentation. However, Site 1 Site 2 Site 3 Site 4
most of the information is contained in low-level layers.

in vivo
• Idea: Atrous Spatial Pyramid Pooling [2] add holes in
convolution kernels, providing parameter reduction while
increasing the effective receptive field.
• Methods: Data from GM challenge [3], Training (N=40),
Testing (N=40)

ex vivo
4676 axial slices @ 100 μm isotropic

https://github.com/neuropoly/gmseg

[1] Perone, Sci Rep 2018 ; [2] Chen, arXiv preprint 2017 1706.05587 ; [3] Prados, Neuroimage 2017

Julien Cohen-Adad (ELE8812) Segmentation d’images 62


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)
Rat spinal cord Size of an MRI voxel

Axon diameter
Axon density
Myelin density
Myelin thickness
G-ratio
1 mm 200 µm 30 µm

Manual segmentation of each individual axon and myelin sheath:


• Density: ~100,000 axons/mm2
• White matter cross-sectional area: ~10mm2
• Time to segment one axon + myelin: ~1min

—> Time to segment one slice: ~2 years


(without eating, sleeping, watching Netflix, etc.)

Julien Cohen-Adad (ELE8812) Segmentation d’images 63


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)
• Network: U-Net [Ronneberger et al.] with
TensorFlow Macaque TEM Human SEM
• Two models: SEM & TEM
• Training data: 500 patches (512x512)
• Accuracy: 93%, Sensitivity: 96%

Input image Output image


SEM TEM SEM TEM

Mouse TEM Rat SEM


512×512 512×512 512×512 512×512 AxonDeepSeg AxonDeepSeg
1×1 conv, softmax, 3 classes
5×5 conv, ReLU, 16 channels
5×5 conv, ReLU, 16 channels 5×5 conv, ReLU, 16 channels
5×5 conv, ReLU, 16 channels 5×5 conv, ReLU, 16 channels
5×5 conv, ReLU, 16 channels Concatenation
Stride 2 conv Up-conv

AxonDeepSeg AxonDeepSeg AxonDeepS


3×3 conv, ReLU, 32 channels
3×3 conv, ReLU, 32 channels 3×3 conv, ReLU, 32 channels

Block 3×3 conv, ReLU, 32 channels 3×3 conv, ReLU, 32 channels


3×3 conv, ReLU, 32 channels Concatenation Zaimi, Scientific Reports 2018
Stride 2 conv Up-conv

Upsampling layer
Convolutional layer
3×3 conv, ReLU, 64 channels
3×3 conv, ReLU, 64 channels 3×3 conv, ReLU, 64 channels
3×3 conv, ReLU, 64 channels 3×3 conv, ReLU, 64 channels
3×3 conv, ReLU, 64 channels
Stride 2 conv
Concatenation
Up-conv AxonDeepSeg
Downsampling layer
3×3 conv, ReLU, 128 channels https://neuropoly.github.io/axondeepseg/
3×3 conv, ReLU, 128 channels
3×3 conv, ReLU, 128 channels

Julien Cohen-Adad (ELE8812) Segmentation d’images 64


0 µm Myelin thickness 2 µm

0 µm Axon diameter 10 µm
500 µm

Zaimi, Front Neuroinformatics 2016


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)

• Users have very specific needs:


• Intra-modality —> good homogeneity of datasets
• Across modalities, projects and acquisition parameters —> poor homogeneity

• Our strategy: Provide a framework to train a model for each application


• How to minimize users efforts in creating labels?

Julien Cohen-Adad (ELE8812) Segmentation d’images 66


Autres méthodes Réseau de neurones convolutionnels

Réseau de neurones convolutionnels 



(deep learning)
• Active learning [1]: Select patches that are most uncertain at prediction, ask user to
fix them, then re-train.
Testing set /
Training set prediction
extract most “Bad” “Fixed”
uncertain prediction prediction
Test model prediction Manually fix
segmentation

Uncertain(*)
prediction
Add image+label to training set and re-train

(*) “Uncertainty” obtained from Monte-Carlo samples of


the models with dropout at test-time.

• Results: Encouraging, but room for improvement.


Maybe combine with Mean Teacher approach.

[1] Blanch, CEAL : Cost Effective Active Learning ; Gal, https://arxiv.org/abs/1506.02142 ; Kendall, https://arxiv.org/abs/1511.02680 ;
Julien Cohen-Adad (ELE8812) Segmentation d’images 67
Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“

Julien Cohen-Adad (ELE8812) Segmentation d’images 68


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“


Principe

Properties of water molecule diffusion

Kleenex Newspaper

isotropy anisotropy
longitudinal
diffusion

transverse
diffusion

Julien Cohen-Adad (ELE8812) Segmentation d’images 69


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“


Principe

Myelin
Axon

water
molecules

Water diffuses preferentially


along white matter axons!

Julien Cohen-Adad (ELE8812) Segmentation d’images 70


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“


Principe

MRI “diffusion”
gradients MRI signal equation:
TR TE
− −
T1 T2
S = ρ ⋅ 1− e ⋅e ⋅ e− b ⋅ D
diffusion
contrast

Julien Cohen-Adad (ELE8812) Segmentation d’images 71


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“


Principe

DW #1 DW #2 DW #N Non-DW
(b=0)

Acquisition

tensor
Processing fitting diffusion

A. Leemans, PhD Thesis, 2006

Julien Cohen-Adad (ELE8812) Segmentation d’images 72


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“


Principe

Diffusion tensor map CSF:


isotropic

WM:
anisotropic

Julien Cohen-Adad (ELE8812) Segmentation d’images 73


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“


Principe

Tractography: Connecting “similar” directions


1. Define “seed
2. Launch
points” the
tracking

Julien Cohen-Adad (ELE8812) Segmentation d’images 74


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“

Application in music industry…

Julien Cohen-Adad (ELE8812) Segmentation d’images 75


Autres méthodes Segmentation par IRM de “tractographie“

Segmentation par IRM de “tractographie“

Julien Cohen-Adad (ELE8812) Segmentation d’images 76


THANKS!
Nikola Stikov
Souad Elbassam
Yves Goussard
Ilana Leppert
Mathieu Boudreau
Jennifer Campbell
Agah Karakuzu
Tommy Boshkovski
Tanguy Duval
Bruce Pike
Sridar Narayanan
Christine Tardif
Robert Brown
David Rudko
Jean-Francois Cabana
Robert Dougherty
Brian Wandell

nikola.stikov@polymtl.ca
@stikov

www.neuro.polymtl.ca
Julien Cohen-Adad (ELE8812) Segmentation d’images 77

Vous aimerez peut-être aussi