lcd
Tutoriel : Extraire les cellules de séreuse
Tutoriel : Extraire les cellules de séreuse
Identification
Projet Panthéon
Auteur : Régis CLOUARD
Référence : O. Lezoray, A. Elmoataz, H. Cardot, G. Gougeon, M. Lecluse, H. Elie, M. Revenu, "Segmentation of Cytological Images Using Color and Mathematical Morphology", Acta Stereologica, Selected papers of the 7th European Congress of Stereology, Volume 18, Issue 1, pp. 1-14, 1999.
Date : 12 avril 2007
Prérequis : Pandore
Facultatif : Ariane
Ressources
I. Objectif
C'est une application biologique dans le contexte du dépistage du cancer.
L'objectif est d'assister les cytotechniciens dans la recherche de cellules
suspectes ou anormales à partir d'une analyse des images de cytologie
des séreuses.
Un but typique de traitement d'images est de localiser les cellules
présentes dans les images par segmentation des régions.
Ces régions constituent les entrées d'un classifieur
qui est entrainé pour identifier les types de cellules (specifiquement
les cellule cancéreuses).
L'image initiale. L'image résultat.
II. Méthode
La méthode est composée de deux étapes :
Correction de l'illumination
Extraction des noyaux de cellule de séreuse.
III. Le script Pandore complet
Code
#Begin Correct Illumination
pdiv hemorrhagic1.pan background.pan arianeG10I3S0.pan
pmeanvalue arianeG10I3S0.pan arianeG10I5S0.pan
pmeanvalue hemorrhagic1.pan arianeG10I4S0.pan
pmultval arianeG10I4S0.pan arianeG10I3S0.pan arianeG10I6S0.pan
pdivval arianeG10I5S0.pan arianeG10I6S0.pan arianeG10I7S0.pan
pclipvalues 0 255 arianeG10I7S0.pan arianeG10I8S0.pan
pim2uc arianeG10I8S0.pan arianeG10I9S0.pan
#End Correct Illumination
#Begin Eliminate Red Blood Corpuscles
prgb2hsl arianeG10I9S0.pan arianeG8I5S0.pan
pimc2img 0 arianeG8I5S0.pan arianeG8I6S0.pan
pbinarization 0 60 arianeG8I6S0.pan arianeG8I7S0.pan
pbinarization 270 360 arianeG8I6S0.pan arianeG8I8S0.pan
por arianeG8I7S0.pan arianeG8I8S0.pan arianeG8I9S0.pan
perosion 2 2 arianeG8I9S0.pan arianeG8I3S0.pan
pdilatation 2 1 arianeG8I3S0.pan arianeG8I4S0.pan
pinverse arianeG8I4S0.pan arianeG8I10S0.pan
#End Eliminate Red Blood Corpuscles
#Begin Extract Nucleus
#Begin Marker Extraction
pexponentialfiltering 0.4 arianeG10I9S0.pan arianeG4I5S0.pan
#Begin Synthetic image
pimc2img 2 arianeG4I5S0.pan arianeG6I3S0.pan
pimc2img 1 arianeG4I5S0.pan arianeG6I4S0.pan
psub arianeG6I3S0.pan arianeG6I4S0.pan arianeG6I5S0.pan
pim2sf arianeG6I5S0.pan arianeG6I6S0.pan
prgb2xyz 0 arianeG4I5S0.pan arianeG6I8S0.pan
pxyz2luv 0 arianeG6I8S0.pan arianeG6I9S0.pan
pimc2img 2 arianeG6I9S0.pan arianeG6I10S0.pan
pmean arianeG6I6S0.pan arianeG6I10S0.pan arianeG6I11S0.pan
plineartransform 0 0 255 arianeG6I11S0.pan arianeG6I12S0.pan
pim2uc arianeG6I12S0.pan arianeG6I7S0.pan
#End Synthetic image
#Begin Thresholding
pimc2img 1 arianeG4I5S0.pan arianeG5I8S0.pan
pvariancebinarization arianeG6I7S0.pan arianeG5I6S0.pan
pinverse arianeG5I6S0.pan arianeG5I10S0.pan
pmask arianeG5I8S0.pan arianeG5I10S0.pan arianeG5I2S0.pan
psumvalue arianeG5I2S0.pan arianeG5I19S0.pan
pim2uc arianeG6I7S0.pan arianeG5I4S0.pan
phistothresholding 5 arianeG5I4S0.pan arianeG5I5S0.pan
pbinarization 0 254 arianeG5I5S0.pan arianeG5I17S0.pan
pmask arianeG5I17S0.pan arianeG5I8S0.pan arianeG5I9S0.pan
psumvalue arianeG5I9S0.pan arianeG5I20S0.pan
pvariancebinarization arianeG6I7S0.pan arianeG5I12S0.pan
pinverse arianeG5I12S0.pan arianeG5I13S0.pan
perosion 2 3 arianeG5I13S0.pan arianeG5I7S0.pan
#End Thresholding
pmask arianeG5I7S0.pan arianeG8I10S0.pan arianeG4I6S0.pan
#End Marker Extraction
#Begin Segmentation Function
pexponentialfiltering 0.4 arianeG10I9S0.pan arianeG3I4S0.pan
pgradient 1 arianeG3I4S0.pan arianeG3I3S0.pan arianeG3I3S1.pan
#End Segmentation Function
#Begin Localization
plabeling 8 arianeG4I6S0.pan arianeG7I4S0.pan
pnot arianeG7I4S0.pan arianeG7I3S0.pan
perosion 2 5 arianeG7I3S0.pan arianeG7I6S0.pan
por arianeG7I6S0.pan arianeG7I4S0.pan arianeG7I5S0.pan
pwatershed arianeG7I5S0.pan arianeG3I3S0.pan arianeG7I7S0.pan
#End Localization
paddcst -1 arianeG7I7S0.pan arianeG2I6S0.pan
#End Extract Nucleus
#Begin Separate Nucleus
pboundary 8 arianeG2I6S0.pan arianeG11I6S0.pan
pdistance arianeG11I6S0.pan arianeG11I7S0.pan
Begin Ultimate Erode
paddcst -2 arianeG11I7S0.pan arianeG12I2S0.pan
pdilatationreconstruction 8 arianeG12I2S0.pan arianeG11I7S0.pan arianeG12I3S0.pan
pdif arianeG12I2S0.pan arianeG12I3S0.pan arianeG12I4S0.pan
pbinarization 0 1 arianeG12I4S0.pan arianeG12I5S0.pan
#End Ultimate Erode
plabeling 8 arianeG12I5S0.pan arianeG11I4S0.pan
pmask arianeG11I7S0.pan arianeG2I6S0.pan arianeG11I8S0.pan
pinverse arianeG11I8S0.pan arianeG11I10S0.pan
pwatershed arianeG11I4S0.pan arianeG11I10S0.pan arianeG11I5S0.pan
pmask arianeG11I5S0.pan arianeG2I6S0.pan arianeG11I9S0.pan
#End Separate Nucleus
#Begin SuperpositionResultat
pboundary 8 arianeG11I9S0.pan arianeG9I3S0.pan
pimg2imc 0 arianeG9I3S0.pan arianeG9I3S0.pan arianeG9I3S0.pan arianeG9I2S0.pan
por hemorrhagic1.pan arianeG9I2S0.pan output.pan