1 Présentation du PFE: “Documentation et extension d'une librairie de traitement d'images médicales 3D et 4D” María Cristina GIMENEZ
2 Présentation du PFE: “Documentation et extension d'une librairie de traitement d'images médicales 3D et 4D” Mon projet: Mise en place d’une Politique de Qualité : - Analyse et documentation de l’existant - Amélioration de l’existant tout en applicant cette Politique de Qualité tout en applicant cette Politique de Qualité afin d’optimiser le travail développé
3 Sommaire 1.Introduction 2.Présentation de l’entreprise 3.Objectifs généraux du stage 4.Phases de la Gestion du Projet 5.La Gestion Qualité 6.La Gestion du Temps 7.Conclusions
4 Introduction Lieu: Service de Radiothérapie du Centre Léon Bérard Durée: 4 mois (mai - sept 2006) Encadrants: – INSA: Vasile Marian SCUTURICI – CLB: David SARRUT et Simon RIT
5 Présentation de l’entreprise(1) 1.Le Centre Léon Bérard Spécialisé dans la cancérologie Centre régional Privé, d'intérêt public 3 missions: les soins, la recherche, et l'enseignement.
6 Présentation de l’entreprise (2) 2.Le Service de Radiothérapie Qu’est-ce que la Radiothérapie? Équipe pluridisciplinaire de recherche: Physiciens Médecins Informaticiens Mission
7 Objectifs généraux du stage Politique de Qualité Mise en place d'une Politique de Qualité : 1.Analyse de l'existant 2.Documentation orientée utilisateur et développeur 3.Amélioration de l’existant
8 La Gestion du Projet Phases: 1.Étude de l'existant: Architecture technique Outils de visualisation des images La librairie de traitement d'images ILR Le partage des fichiers source La documentation 2.Analyse de besoins Le partage des fichiers source La documentation La librairie ILR 3. Choix de solutions Pour le partage des fichiers source Pour la documentation Pour l'évolution de la librairie ILR
9 Étude de l'existant (1/5) Architecture technique 8 postes Architecture X86 Système d’exploitation Suse Logiciels libres Système de fichiers NFS
10 Étude de l'existant (2/5) L'outil de visualisation des images: ViewVox Quelques notions sur les images numériques: Dimension: 2D, 3D, 4D (3D+temps)….. nD Type de pixel: (unsigned) int, (unsigned) char, double, float Image: matrice Développé au sein du CLB Visualisation des formats.vox,.ppm,.pgm
11 Étude de l'existant (3/5) La librairie ILR 2 classes principales: - GridBase, purement virtuelle - Grid hérite de GridBase Dimension établie selon le constructeur: Plusieurs fonctions pour les mêmes algorithmes: Grid(const int x, const int y, const bool allocate); Grid(const int x, const int y, const int z, const bool allocate); template void gridMax(const GridType & input1, const GridType & input2, GridType & output);); template void gridMax(const GridType & input1, const double & val, GridType & output);
12 Étude de l'existant (4/5) Le partage des fichiers source CVS installé sur la machine de Simon (CVS: Concurrent Versions System) Non accessible depuis l’extérieur Seulement utilisé par Simon et David
13 Étude de l'existant (5/5) La documentation Presque inexistente au début du stage
14 Analyse de besoins 1.Le partage des fichiers Accès sécurisé Accessible depuis l’extérieur Outil utilisé par tous 2.La documentation Disponible en ligne Syntaxe facile Partie “privée” et “publique” 3.La librairie ILR Généricité
15 Choix de solutions (1/8) Le partage des fichiers: CVS Existant: celui installé sur la machine de Simon Nouveau: celui de CREATIS Accessible depuis l’extérieur du CLB Accès sécurisé grâce à une clé cryptée Manuel d’utilisation intégré dans la documentation Faisant partie des outils de développement courants pour tous les développeurs du Service de Radiothérapie
16 Choix de solutions (2/8) La documentation: le Wiki Avantages Sécurité Contenu MAJ continue
17 Choix de solutions (3/8) L'évolution d'ILR: CLITK a) Command Line : (pareil que dans ILR) b) Une autre librairie: ITK Traitement d’images avec C++ (comme ILR) Beaucoup plus large qu’ILR Open-source software système, large doc Possibilité de lire de nouveaux formats de fichier (i.e:.vox !)./clitkImageResample -i toto.vox -o titi.vox --size 128,-1,-1 --iso_spacing 1 -v
18 Choix de solutions (4/8) L'évolution d'ILR: CLITK Image Filtres typedef unsigned char PixelType; const unsigned int Dimension = 3; typedef itk::Image ImageType; typedef itk::ImageFileReader ReaderType; ReaderType::Pointer reader = ReaderType::New(); const char * filename = argv[1]; reader->SetFileName( filename ); reader->Update(); ImageType::Pointer image = reader->GetOutput(); Quelques aspects importants d’ITK:
19 Choix de solutions (5/8) L'évolution d'ILR: CLITK Comparative entre ILR, ITK et CLITK: ILRITKCLITK Grid Image GenericImage 3D ok, 2D avec bugs Toutes les dimensions Fonctions Filtres.vox,.pgm,.ppm Tous (.vox rajoutable!) Tous (.vox inclus!) Ligne de commandes Rien Ligne de commandes
20 Choix de solutions (6/8) L'évolution d'ILR: CLITK D’autres caractéristiques de CLITK: Côté utilisateur: Images génériques (pixel type et dimension inconnus) À l’intérieur: Images non-géneriques et librairies d’ITK Mêmes outils que dans ILR mais plus de fonctionnalités Structure assez standardisée (développement rapide et facile à reprendre pour le reste des développeurs)
21 Choix de solutions (7/8) L'évolution d'ILR: CLITK Structure des fichiers d’un outil de CLITK:
22 Choix de solutions (8/8) L'évolution d'ILR: CLITK Phases du développement de CLITK: David (tuteur du PFE): Lecture des fichiers.vox Moi Algorithmes non génériques de CLITK Class pour gérer les images génériques Reader et Writer pour lire/écrire des images génériques Filtres génériques (en particulier, cliktImageResample et clitkImageArithm)
23 La Gestion Qualité (I) 4 axes: 1.Le Code: Standard de code (intégré dans la doc) Partage des fichiers: CVS Plan de tests 2.La Documentation: Pour le code : faite par le développeur Sur le Wiki : même structure ILR et CLITK Pour les comptes rendus
24 La Gestion Qualité (II) 3.La Sécurité Code (CVS) Wiki (gestion des permissions faite par l’admin) 4.La Gestion du Temps Respect des délais Planning Prévisionnel VS Planning Réel
25 La Gestion du Temps Le planning prévisionnel VS le plannig réel:
26 Conclusions 1.Intérêt du projet Côté CLB (Wiki, ILR, CLITK..) Mon côté (1er stage, CNRS..) 2.Axes d’amélioration Générateur de code Gestion du Temps 3.Remerciements
27 Questions …