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 
#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