rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement...

47
Remodelage aortique au cours d'une dissection de type B Page 1 Promotion 2016 Année 2014-2015 Rapport de suivi Remodelage aortique au cours d'une dissection de type B AUGUSTO Christophe, ABREU Arnaud, GAUTIER Nicolas, DURAND Alexandre TIC SANTE 2A

Upload: others

Post on 30-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 1

Promotion 2016 Année 2014-2015

Rapport de suivi Remodelage aortique au cours d'une dissection de type B

AUGUSTO Christophe, ABREU Arnaud, GAUTIER Nicolas, DURAND Alexandre TIC SANTE 2A

Page 2: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 2

Table des matières Introduction 4

1. Le projet de remodelage aortique au cours d’une dissection de type B 5 1.1. Contexte 5 1.2. Objectifs du projet 8

2. Prise en main du sujet 10 2.1. Initiation du projet 10 2.2. Récupération et visualisation des images scanners 11 2.3. Phase de recherche et premiers tests 13

3. Fonctionnement du groupe et organisation 15

3.1. Fonctionnement interne du groupe 15 3.2. Etude fonctionnelle du projet 15 3.3. Etablissement du cahier des charges 16 3.4. Gestion des risques 19 3.5. Planification des tâches 21 3.6. Budget prévisionnel 24

4. Réunions 26

5. Méthode de seuillage et morphologie mathématique 28

5.1. Méthode d'OTSU 28 5.2. Morphologie mathématique et la transformée en tout ou rien 29

6. Polygone de détourage 32

7. Polynômes d'interpolations 34

8. L'interface graphique gérant le format DICOM 36

9. La croissance de région 39

10. Plan de section de l’aorte 40

11. Fusion des codes 42

12. Récapitulatif 43 Bilan 45 Conclusion 46 Remerciements 47

Page 3: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 3

Liste des figures : 1. Réseau artériel ............................................................................................................................ 5

2. Exemple de dissection aortique de type B .................................................................................. 6

3. Malperfusion du rein gauche ...................................................................................................... 7

4. Plans anatomiques ...................................................................................................................... 11

5. Logiciel de visualisation d'images DICOM, Radiant .................................................................... 11

6. Repérage de l'aorte et des vrai et faux chenaux ........................................................................ 12

7. Partie du DICOM tags correspondant à la serie d'image précédente (figure n°6) ..................... 12

8. Programme permettant de lire une image ................................................................................ 13

9. Diagramme bête à cornes …........................................................................................................ 14

10. Diagrammes des interacteurs ..................................................................................................... 15

11. Cahier des charges du projet ...................................................................................................... 17

12. Diagramme FAST du projet ........................................................................................................ 18

13. Diagramme de Gantt prévisionnel n°1 ....................................................................................... 21

14. Diagramme de Gantt prévisionnel n°2 ....................................................................................... 22

15. Diagramme de Gantt actuel …………………………………………………………………………………………………… 23

16. Bilan financier provisoire ........................................................................................................... 25

17. Histogramme d'une image et région d'intérêt .......................................................................... 28

18 Méthode d'OTSU sur différentes partie de l'image ................................................................... 29

19. Opération de dilatation et d'érosion ......................................................................................... 30

20. Résultat de la transformée en tout ou rien ............................................................................... 31

21. Résultat du détourage par un polygone .................................................................................... 32

22. Fenêtre d'execution du programme du polygone de détourage ............................................. 33

23. Visualisation des polynômes d'interpolations des chenaux ...................................................... 34

24. Fenêtre d'entrée de l'interface graphique ................................................................................. 36

25. Différentes fonctions de l’interface graphique .......................................................................... 37

26. Affichage de la slice transversale n°186 ................................................................................... 37

27. Coordonnées des points d'intérêts …………………………………………………………………………………………. 38

28. Aorte segmentée au niveau de la crosse et de l'aorte thoracique ………………………………………….. 39

29. Plan de section de l’aorte ………………………………………………………………………………………………………. 40

30. Reconstruction de l’aorte grâce au plan de section ……………………………………………………………….. 41

31. Croissance de région sur l’aorte reconstruite ……………………………………………………….……………….. 41

32. Récapitulatif des interactions entre les programmes ……………………………………………………………. 43

Page 4: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 4

Introduction : Malgré de fulgurant progrès au niveau médical depuis les années 50, certaines pathologies restent encore

peu connues et sont donc difficilement traitable. C'est le cas des "anévrisme disséquant de l'aorte" ou dissections

aortiques. La dissection aortique est une pathologie qui concerne 5 à 10 personnes par million d’habitants par an. Elle

touche 3 fois plus d’homme que de femme. L’âge moyen est de 60 ans. Il s’agit d’une déchirure des couches les plus

internes de l’aorte (intima + 2/3 interne de la média), le plus souvent au niveau d’une lésion préexistante. Cette

déchirure va être à l’origine d’un clivage de la paroi aortique dans le sens longitudinal avec la création d’un faux

chenal de perfusion. Selon la classification de référence, celle de Stanford, on distingue la dissection aortique de type

A, touchant l’aorte ascendante, et la dissection aortique de type B, qui peut toucher tous les segments aortiques

hormis l’aorte ascendante. Cette dernière nous intéresse plus particulièrement. Deux évolutions sont à distinguer

dans la dissection aortique de type B : aiguë et chronique.

Page 5: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 5

1. Le projet de remodelage aortique au cours d'une dissection de type B: 1.1. Contexte du projet :

Le réseau vasculaire :

L'aorte est le plus gros vaisseau du corps humain. Elle prend naissance au niveau du ventricule gauche et se

termine au niveau du bassin en se scindant en deux, donnant les artères iliaques primitives (ou communes). Nous

pouvons remarquer qu'il existe de nombreuses ramifications naissant de l'aorte, parmi elles nous pouvons citer : les

artères carotide et sous-clavière gauche, le tronc brachio-céphalique, les artères intercostales, les artères rénales et

les artères mésentériques (vascularisation du tube digestif).

Figure n°1 : Réseau artériel Dissection de type B aiguë :

Lors de la dissection aiguë, la prise en charge varie selon qu’elle est compliquée ou non. Les complications

regroupent : la rupture aortique, la malperfusion (voir figure n°3) de membre ou d’organe (rein, intestin), la douleur

et l’hypertension artérielle persistante malgré un traitement médical optimal. Dans ce cas, il y a indication à un

traitement chirurgical en urgence. Depuis le développement de la chirurgie endovasculaire, le traitement actuel

consiste en la mise en place d’une endoprothèse de l’aorte thoracique qui va couvrir la porte d’entrée de la

dissection. Le but de ce traitement est d’obtenir un remodelage aortique : ré-expansion du vrai chenal et thrombose

du faux chenal aortique afin de traiter les complications, et de prévenir la dilatation du faux chenal à long terme.

Lors de la dissection aiguë non compliquée, le traitement est médical : traitement anti-hypertenseur optimal

associé à une surveillance régulière par angioTDM.

Page 6: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 6

Dissection de type B chronique :

L’évolution d’une dissection aortique non traitée se fait dans la plupart des cas vers la dilatation anévrysmale

progressive du faux chenal. A partir d’un diamètre aortique supérieur à 60mm, il y a indication à un traitement

chirurgical au vu du risque de rupture aortique.

Là aussi le traitement actuel est endovasculaire et consiste en la mise en place d’une endoprothèse aortique

qui couvre la porte d’entrée dans le but de créer un phénomène de remodelage.

Figure n°2 : Exemple de dissection aortique de type B Problématique :

L’évolution de ce remodelage aortique est mal connue à ce jour : chez certains patients, on observe une

thrombose complète du faux chenal, on parle alors de guérison de la dissection. Chez d’autres, la thrombose est

partielle avec persistance d’un faux chenal circulant, associé ou non à une dilatation du faux chenal. Les chronologies

de remodelage sont de plus très aléatoires d’un patient à l’autre.

On ne sait pas quelle est la longueur optimale d’aorte à couvrir, ni à quel moment après la dissection l’impact

sur le remodelage sera le plus bénéfique.

L’évolution semble dépendante entre autre du caractère aigu ou chronique de la dissection, de la longueur de

couverture initiale, de la présence et des différentes localisations de porte de ré-entrée de la dissection.

Une meilleure compréhension passe par l’analyse rétrospective précise des scanners de suivi de nos patients.

Depuis 2005, 47 patients ont été opérés et sont suivis dans le service de chirurgie vasculaire après traitement

endovasculaire d’une dissection aortique, aiguë ou chronique.

Le développement d’un programme automatisé d’analyse des scanners est indispensable à l’étude du suivi, il

faudrait entre autre pouvoir effectuer :

- des mesures de surface du vrai chenal, faux chenal, faux chenal circulant à plusieurs niveaux aortiques

prédéfinis au temps aortique et portal

- des mesures de volume global des différents chenaux, au temps aortique et portal

- Détecter les portes d’entrée et de réentrée ainsi que leur localisation précise

De manière optimale, ces mesures devraient toujours être faites au même moment du rythme cardiaque

(variation de l’ordre de 10-20% selon la diastole ou la systole). Pour l’analyse des prochains scanners, il faudrait alors

développer une séquence d’acquisition (TDM ou IRM) dynamique basée sur l’électrocardiogramme, pouvant analyser

toute l’aorte de la crosse jusqu’aux artères fémorales.

Page 7: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 7

Une étude des variations de flux dans les différents chenaux et du comportement du flap intimal selon le

rythme cardiaque permettrait une caractérisation encore plus précise de l’évolution de la dissection.

Figure n°3 : Malperfusion du rein gauche

Page 8: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 8

1.2. Objectifs du projet :

Notre travail consiste à poser les bases d'un projet beaucoup plus vaste (qui sera repris par un étudiant pour

un projet de fin d'étude, une thèse verra peut être le jour par la suite). Notre objectif est la création d'un logiciel de

traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients, de multiples

informations comme :

La surface d'une section d'aorte.

Le volume d'une portion donnée.

La forme de l'aorte en 3 dimensions.

La forme et la géométrie des portes d'entrées et de réentrées.

Malgré l'expérience des médecins, il peut être très utile d'augmenter la précision des informations que les

images médicales leurs offrent. De plus, ils passent beaucoup de temps à analyser les images et notamment les

déchirures. Ce gain d'informations et de temps ne peut être obtenu que par l'intermédiaire d'un logiciel plus ou

moins automatique de traitement d'images.

Le but du logiciel serait de faire une analyse rétrospective précise des scanners de suivi des patients. Il

faudrait pouvoir effectuer :

Des mesures de surface du vrai chenal, faux chenal, faux chenal circulant à plusieurs niveaux aortiques au

temps aortique et portal.

Des mesures de volume global des différents chenaux, au temps aortique et portal.

Détecter les portes d'entrée et de réentrée ainsi que leur localisation précise.

Page 9: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 9

Phase de préparation

Page 10: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 10

2. Prise en main du sujet :

2.1. Initiation du projet :

Après l'annonce des groupes de projet notre premier objectif était de prendre contact avec Mr COLLET et de

prendre très rapidement contact avec notre client. Mr CHAKFE étant chef du service de chirurgie vasculaire, il est très

occupé et donc il est assez difficile d'obtenir un rendez-vous. Notre première réunion avec Mr COLLET eu lieu le 9

octobre 2014 en salle C218 de 13h à 13h45. Après une rapide présentation des quatre membres de l'équipe, nous

avons discutés des premières questions qu'il fallait nous poser afin de démarrer le projet dans de bonnes conditions :

Quels types de base de données ont-ils ? Si oui peut-on en faire une copie (demander le niveau de

confidentialité).

Demander l'anonymisation des données.

Quelles sont les images dont dispose le service ?

Quel est le format des images ?

Avec quel(s) outil(s) visionnent-ils les images ?

Quel(s) type(s) d'imagerie est(sont) utilisée(s) pour générer les images ? --> physique des images

Récupération des images (avec des patients atteints d'une dissection "classique" et d'autres avec une

dissection plus pathologique).

Identification d'un référent avec qui prendre contact.

Mr COLLET nous a donné l'adresse mail d’Adeline SCHWEIN. Elle est interne des hôpitaux de Strasbourg et

actuellement en année de recherche à Houston. Elle a effectuée le master IRIV porté par l'école. Nous avons

rapidement pris contact avec elle car nous avions beaucoup de questions à lui poser. Une réunion grâce à Skype à été

faite et Adeline a pu répondre à toutes nos questions. Ces réponses nous ont été d'une précieuse aide pour la suite

du projet.

Adeline SCHWEIN nous a aussi donné son point de vue sur le projet : pourquoi un logiciel d'analyse de

scanner, fonctionnalités du logiciel ... Ces éléments nous ont permis d'établir, en collaboration avec nos tuteurs, une

ébauche de cahier des charges. Depuis, nous continuons à correspondre par mail et nous la tenons informée des

avancées du projet.

Page 11: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 11

2.2. Récupération et visualisation des images scanners :

Après une seconde réunion avec Mr COLLET, où nous avons principalement discuté de la partie technique du

projet (quel logiciel/langage utiliser pour le développement de notre programme, discussion sur la réunion

client/groupe du vendredi 24 octobre 2014 dans les locaux du NHC), nous sommes allés à l'hôpital afin de nous

présenter au client et discuter du projet. Malheureusement, la réunion a du être annulée mais nous avons quand

même pu récupérer les images scanners de 5 patients ayant été traités à Strasbourg.

Avec près de 10 000 images en notre possession, nous avons pu installer des logiciels permettant la

visualisation d'images au format médical standard (DICOM pour Digital Imaging and COmmunications in Medicine). Le

premier était MicroDicom. Ces fonctionnalités étaient basiques : visualisation d'une image ou d'une série d'images,

modification du contraste, exporter sous un autre format ... Cependant pour des novices en anatomie, ce logiciel,

n'offrant qu'une visualisation sur un seul plan (transversal ici) n'était pas très pratique pour nous.

Figure n°4 : Plans anatomiques

Après quelques recherches, nous avons installé Radiant (figure n°5)

qui est un autre DICOMViewer. Il est beaucoup plus pratique pour nous car il

permet une visualisation sur une même fenêtre d'une série d'images selon les

3 plans de coupe anatomique (voir figure n°4).

Figure n°5 : Logiciel de visualisation d'images DICOM, Radiant

Page 12: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 12

Les vacances de la toussaint auront été très bénéfiques pour le projet. Nous avons effectué quelques

recherches concernant le traitement des images médicales et nous avons beaucoup observé les scanners dont nous

disposions. La visualisation approfondie des images scanners nous a permis de mieux nous familiariser avec la

pathologie du point de vue anatomique : repérage de l'aorte, repérage du vrai cheval, des chenaux thrombosés et

circulant, repérage des artères collatérales majeures de l'aorte.

Figure n°6 : Repérage de l'aorte et des vrai et faux chenaux

De plus, nous avons appris à manipuler les données contenues dans les fichiers DICOM, ce qu'on appelle les

"DICOM tags" (figure n°7). Ces données sont très importantes pour le travail que nous devons exécuter. En effet, à

titre, d'exemple, nous avons besoin des espaces inter-coupes, de la taille de l'image, du nombre de coupes ...

Figure n°7 : Partie du DICOM tags correspondant à la serie d'image précédente (figure n°4)

Page 13: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 13

2.3. Phase de recherche et premiers tests :

Au retour des vacances, nous avons eu une réunion avec Mr COLLET afin de discuter des choix techniques à

faire pour le projet et afin d'aborder les recherches effectuées pendant les vacances. Lors de cette réunion Benoît

NAEGEL (chercheur au sein de l’équipe MIV du laboratoire iCube, directeur des études du département informatique

de l'IUT Robert Schuman) et Kilian HETT (étudiant en M2 dont le PFE sera la suite de nos travaux) étaient présents.

Il s'avère que pour ce projet, au lieu d'utiliser Matlab (ce qui était prévu au départ), nous utiliserons Python.

En effet, Python semble être tout à fait désigné pour le traitement des images grâce à de nombreuses bibliothèques

telles que PyMorph, PyDICOM, SciPy, NumPy ... De plus, outre ces bibliothèques, Python est un langage de

programmation orienté objet, il est accessible et multiplateforme, autant d'avantages qui nous conforte dans le choix

de python comme langage de développement.

C'est ainsi que nous avons commencé à apprendre le langage Python. Pour ce faire, nous avons installé

Canopy qui est une plateforme de développement regroupant différents outils comme Python et 70 packages. De

plus, nous avons installé Mayavi qui permet la visualisation de données en 3 dimensions. A la suite de ceci, nous

avons codé un petit programme permettant d'inclure une série d'images dans une matrice 3D (on dit "lire une

image", voir figure n°8). Python s'avère très utile pour le traitement d'images, cependant, en utilisant ce langage de

programmation, nous nous exposons à certains risques. En effet, python n'est pas un langage compilé mais

interprété. Le problème de ce genre de langage est que le temps d'exécution du programme peut évoluer de façon

exponentiel avec la complexité du code.

Figure n°8 : Programme permettant de lire une image

Page 14: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 14

3. Fonctionnement du groupe et organisation :

3.1. Fonctionnement interne du groupe :

Nous nous sommes répartis les postes au sein de l'équipe afin de pouvoir mieux travailler. Arnaud est le chef

de projet, il organise les réunions avec les tuteurs et les clients, il organise le groupe. Christophe est responsable

budget, il s'occupe de la partie financière du projet, calcul du coût réel du projet et calcul du coût dans le cas où le

projet aurait été mené par une équipe d'ingénieur. Nicolas est le responsable qualité, son rôle est de valider les

produits finis. Pour finir, Alexandre est responsable communication, il s'occupe de la prise de note lors des réunions,

de la mise en place du wiki et des rapports.

3.2. Etude fonctionnelle du projet :

Démarrer un projet nécessite beaucoup de préparation. Une étude des besoins et une étude fonctionnelle

sont très importantes afin de cerner clairement les objectifs et livrables du projet. Avant d'imposer un "comment" ou

une solution, il faut se tourner vers l'utilisateur et/ou le demandeur, pour aboutir de manière structurée à la solution,

car un projet n'a de sens que s'il satisfait le besoin. Il convient donc d'exprimer le besoin et rien que le besoin dès le

lancement du projet. Il s'agit d'expliciter l'exigence fondamentale qui justifie la conception, ou la modification d'un

produit.

Dans un premier temps, nous avons établis le diagramme nommée "bête à cornes" :

Figure n°9 : Diagramme bête à cornes

Page 15: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 15

Dans un second temps, nous avons établis le diagramme des interacteurs :

Figure n°10 : Diagramme bête à cornes

Fonction principale : Aider les médecins à mieux adapter le traitement chirurgical.

Fonction de contrainte 1 : Créer un logiciel rapide.

Fonction de contrainte 2 : Créer un logiciel automatique.

Fonction de contrainte 3 : Créer un logiciel portable.

Page 16: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 16

3.3. Etablissement du cahier des charges :

La réunion avec le professeur CHAKFE et le docteur GEORG du 14 novembre 2014 fut très enrichissante (voir

compte rendu réunion de projet n°7). Dans un premier temps, Mr GEORG s'est proposé pour être notre référent au

sein du service de chirurgie vasculaire de l'hôpital de Strasbourg. Dans un second temps, Mr CHAKFE nous a proposé

une nouvelle idée à propos du logiciel. Le but serait de pouvoir visualiser en 3D les déchirures au niveau de l'aorte.

Les déchirures ne sont jamais située sur un plan, il est donc difficile de les observer même avec les outils permettant

d'analyser les images scanners. Le but de l'étude, serait de pouvoir représenter ces déchirures en 3 dimensions afin

de pouvoir observer leur forme, leur géométrie, leur surface.

Suite à cette entrevue avec nos clients, nous avons eu une réunion avec nos tuteurs le 25 novembre 2014.

Cette réunion nous a permis d'aboutir à un cahier des charges (voir plus loin) qui est plus restreint que les objectifs

idéaux fixés par les clients. Il s'avère que le projet est extrêmement vaste et que nous ne pourrons jamais tout faire

en 6 mois de travail. C'est un projet de fin d'étude débutant en janvier qui reprendra notre travail et le poursuivra,

une thèse sur le sujet verra surement le jour, elle poursuivra les travaux effectués par Kilian HETT lors de son stage.

Page 17: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 17

Figure n°11 : Cahier des charges du projet

Page 18: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 18

Page 19: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 19

3.4. Gestion des risques :

Les différents risques à gérer ne porte pas sur l’objectif du projet, mais sur les ressources nécessaires à la

réalisation de cet objectif. Les ressources d’un projet ingénieur sont de quatre types : les ressources humaines, les

ressources de temps, les ressources techniques et matérielles et les ressources financières.

Définitions des ressources du projet

Le présent projet est réalisé pour l’hôpital civil et relève de la recherche confinée dans un cadre purement

académique. La ressource financière, régie par le marché et la concurrence, s’avère donc négligeable et ne fera pas

l’objet d’une gestion rigoureuse. Nous concentrerons donc nos efforts de gestion des risques sur les trois autres

ressources.

Les ressources humaines

1) Les compétences

L’un des aspects des ressources humaines est la gestion des compétences. Les menaces qui pèsent sur les

compétences au sein du projet ingénieur sont assez grandes pour la raison simple que la plupart des compétences

nécessaires à la bonne réalisation du projet, qu’elles soient d’ordre techniques ou organisationnelles et managériales,

sont à acquérir au cours de la réalisation.

Il faut dans un premier temps identifier les risques. Les risques principaux sont le temps d’apprentissage,

l’égarement dans l’apprentissage et les compétences techniques indisponibles.

Une prévention de ces risques a donc été mise en place : l’interaction maximale avec les tuteurs. Les tuteurs

sont à même de nous guider dans notre apprentissage et permettent donc de cibler et d’encadrer l’acquisition des

compétences. Les réunions avec les tuteurs sont donc fréquentes. Une réunion est organisée toutes les une à deux

semaines.

Un autre aspect de la prévention étant que tous les membres du projet se penchent sur tous les problèmes

techniques, de sorte que plusieurs compétences sont envisagées. Si l’une de ces compétences est inaccessible, il y en

a toujours une de secours à approfondir.

Un dernier aspect de la prévention est l’établissement d’objectifs formalisés et négociés avec les clients

(réunion une fois toutes les deux semaines environ). Le cahier des charges qui en résulte est précis et constitue une

matrice d’objectifs quantifiables.

2) Le groupe

Le risque qu’il faut craindre humainement parlant dans un travail de groupe est la mésentente. Ce type de

risque a été évalué et la probabilité semble assez faible pour être négligée.

Toutefois, pour prévenir ce risque, les réunions de groupe sont fréquentes pour limiter les erreurs de

communications et chacun s’engage à parler de ses problèmes sans emportement ou dénigrement du travail de

chacun.

Les ressources de temps

Elles constituent selon nous les ressources les plus en proies aux risques. En effet, les faibles connaissances

techniques du domaine rendent les prévisions difficiles et le risque identifié est de perdre trop de temps dans

l’exécution d’une tâche du planning.

Ce risque est géré dans notre planning, chaque action à réaliser est explorée de plusieurs manières

différentes en parallèles, chacun d’entre nous peut donc travailler une technique particulière et si l’une n’aboutit pas,

une autre est déjà partiellement mise en œuvre.

Page 20: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 20

Isolement de l’aorte :

- La méthode d’Otsu pour le seuillage constitue un « plan A ».

- La méthode d’entropie pour cette même action constitue un « plan B ».

- La méthode Gaussienne est le seuillage « plan C ».

Détection automatique :

- La morphologie mathématique est une piste explorée.

- La croissance de région est également envisagée.

- La détection de contours pourrait être utilisée.

(Ces techniques ne sont pas encore hiérarchisées, sachant que la méthode finale sera vraisemblablement une

combinaison des 3)

Solution software :

- L’approche prototypage est adoptée : les scripts Python (Plan A)

- Dans le cas d’algorithmes trop longs à s’exécuter, des appels de fonctions C++ sont envisagés (plan B)

- Une implémentation C++ n’est pas exclue (plan C)

Les ressources techniques et matérielles

Le présent projet ne requiert pas de hardware, tout risque lié à la commande de matériel est donc exclu. Il ne

reste alors que des risques de compatibilité et de licence de logiciels.

Pour nous débarrasser le plus efficacement possible de ces risques nous avons fait le choix de n’utiliser que de

l’open source.

Matlab est l’outil qui semblait le plus adapté au projet car c’est un langage tout à fait adapté au prototypage,

de très nombreux outils parfaitement adaptés au traitement d’images (notamment au traitement d’images

médicales) sont déjà implémentés. Cependant, Matlab n’est pas open source et les licences que nous utilisons

n’autorisent pas la diffusion de code dans un cadre qui ne serait pas purement pédagogique.

L’alternative gratuite qui s’est alors présentée est Python. Python est lui aussi un langage de prototypage et il

comprend de nombreux modules relatifs au traitement d’images. Il est simplement d’un peu plus bas niveau que

Matlab et nécessite donc des implémentations un peu plus complexes. Il est également plus aisé de gérer les risques

du projet en utilisant un langage bas niveau.

Les risques liés à la difficulté d’implémentation sont bien plus simples à gérer avec Python, en effet,

l’immense variété de modules proposée par Python assure une alternative à chaque implémentation que nous

effectuons, si on trouve les limites d’un module Python, un autre prendra le relais.

Morphologie mathématique et traitement d’images :

- Mahotas est un module Python qui permet le traitement d’images (plan A)

- Opencv pour python (plan B)

- Scikit (plan C)

Page 21: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 21

3.5. Planification des tâches :

Afin de mener ce projet dans de bonnes conditions, il nous faut nous répartir les tâches. Une répartition des tâches nous permettra de ne pas gâcher de temps et

d'être plus efficace quant à la réalisation du projet. Vous trouverez ci-dessous le premier diagramme de Gantt qui tient compte de ce que nous avons fait et de ce que nous

prévoyons de faire.

Figure n°13 : Diagramme de Gantt prévisionnel n°1

Page 22: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 22

Après de multiples réunions, recherches et avancées techniques, notre planning effectif et prévisionnel a été quelques peu modifié. En effet, lors de la première

présentation (le lundi 15 décembre 2014) nous voulions tester plusieurs méthodes de seuillage. Ces tests ont été abandonnés du fait que les médecins d'une part auraient

besoin d'un logiciel partiellement automatique et, d'autre part, que nous avons élaboré une autre solution en C++ qui s'avère être plus rapide et efficace (l'efficacité de

notre nouveau programme en C++ devra être validé par les tuteurs et les médecins).

Figure n°14 : Diagramme de Gantt prévisionnel n°2

Page 23: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 23

Nous avions établi un deuxième diagramme de Gantt lors de la seconde présentation orale. Nous pensions à l’époque, terminer l’interface graphique, la croissance

de région et le paramétrage des plans avant de nous lancer dans la fusion des différents programmes. Cependant, il s’avère que la croissance de région pouvait être mieux

gérée par une amélioration de l’algorithme, ce qui a été fait en fin de projet. De plus, la fusion des codes a été plus longue que prévue et nous avons décelé certains

problèmes de code à la suite de cette fusion. La figure n°14 fait état du diagramme de Gantt actuel :

Figure n°15 : Diagramme de Gantt actuel

Page 24: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 24

3.6. Budget prévisionnel :

Budget d’investissement :

Nous travaillerons avec les prix HT. L’achat d’ordinateur est fictif mais reflète le fait que nous travaillons

actuellement sur nos ordinateurs personnels.

Désignation Quantité Prix unitaire (€) Total (€)

Logiciel Matlab 4 70 280

280

La licence Matlab correspond au prix unitaire par an.

Budget « vie réelle » :

Ce budget correspond aux dépenses réelles de l’école et du groupe pour notre projet, en prenant en compte

le fait que nous sommes étudiants et que nous ne sommes pas rémunérés dans le cadre de ce projet.

Consommables : nous estimons le coût en fournitures (papier, encres…) à 50€ pour l’année.

Salaires bruts : nous considèrerons ici le salaire de nos encadrants. Pour simplifier à l’extrême, nous

considérons que nos encadrants sont au nombre de 4, et qu’ils sont susceptibles de nous consacrer 20h de leur temps

sur toute la durée du projet. Soit :

Charges sociales : les charges sociales ont été évaluées à 45% du salaire brut, soit 2160€ pour les encadrants.

Frais de déplacement : trois d’entre nous se déplacent en tram pour venir à l’école, et à raison d’une réunion

par mois à l’hôpital, le coût en ticket de tram aller simple à 1,6€ est de :

Frais de communication : au cours de notre projet, nous allons utiliser internet à de nombreuses reprises,

notamment pour le téléchargement des logiciels de programmation, ainsi que pour la communication avec notre

tuteur, notre client et notre consultante Mlle. Schwein se trouvant actuellement à Houston. Nous estimons donc que

la durée passée sur le net sera équivalente au minimum d’un mois d’abonnement par élève, à raison de 25€

d’abonnement mensuel, soit :

Dotation aux amortissements : cela correspond à l’usure de nos ordinateurs respectifs.

é

é

On considère que la valeur moyenne à l’achat de nos ordinateurs était de 1000€, la durée d’utilisation par

élève est d’environ 100h sur la totalité du projet, soit environ un mois de travail salarié. La durée d’amortissement

d’un ordinateur est d’environ 5 ans. Cela nous amène donc au coût suivant par ordinateur:

Page 25: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 25

Charges de structure : elles correspondent à l’utilisation d’une salle de l’école (assurance, électricité…). Nous

estimons celles-ci à un taux de 450€/mois.

Désignation Quantité Prix unitaire (HT) (€) Total (HT) (€)

Charges de structure 1 450 450

Dotation aux amortissements 4 16,67 66,68

Frais de communication 4 25 100

Consommables 1 50 50

Frais de déplacement 208 1,6 332,8

Frais de personnel Prix en € et par heure

Encadrant 4 60 4800

Charges sociales patronales encadrant 4 27 2160

7959,48

Figure n°16 : Bilan financier provisoire

Page 26: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 26

4. Réunions :

Nous essayons d'avoir une réunion avec nos tuteurs une fois toutes les deux semaines afin de faire le point

sur le projet. Etant un projet très vaste, nous pensons qu'un suivi très régulier est nécessaire afin de ne pas perdre le

fil et de pouvoir informer nos encadrants. Pour ce qui est des réunions d'équipe, nous faisons des réunions lorsque

nous en ressentons le besoin, autrement, nous en discutons assez régulièrement au cours de la semaine de manière

non officielle. Nous essayons d'avoir des réunions assez régulières avec nos clients afin de les tenir informés de l'état

d'avancement du projet. Vous trouverez ci-dessous un listing complet des réunions que nous avons effectuées.

Avec nos tuteurs :

Le jeudi 9 octobre 2014 de 13h à 13h45.

Le lundi 20 octobre 2014 de 20h30 à 21h20 (avec Adeline SCHWEIN sur Skype).

Le vendredi 24 octobre 2014 de 13h à 13h50.

Le lundi 10 novembre 2014 de 13h à 14h.

Le mardi 25 novembre 2014 de 13h à 13h45.

Le jeudi 27 novembre 2014 de 11h à 12h15.

Le vendredi 28 novembre 2014 de 16h à 16h45.

Le jeudi 29 janvier 2015 de 13h30 à 14h15.

Le jeudi 12 février 2015 de 13h à 13h40.

Le jeudi 12 mars 2015 de 13h à 14h.

Le mardi 12 mai 2015 de 11h à 12h.

Avec nos clients :

Le vendredi 24 octobre 2014 de 16 à 16h30.

Le vendredi 14 novembre 2014 de 15h à 16h.

Le mardi 10 février 2015 de 17h à 17h40.

Le lundi 30 mars 2015 de 18h à 19h.

Le Lundi 11 mai 2015 de 18h à 19h.

En équipe :

Le jeudi 6 novembre 2014 de 13h à 14h.

Le vendredi 21 novembre 2014 de 15h à 15h.

Le vendredi 5 décembre 2014 de 13h à 13h30.

Le lundi 19 janvier 2015 de 13h à 14h.

Le jeudi 19 février 2015 de 13h à 13h40.

Le mercredi 04 mars 2015 de 13h à 14h.

Le jeudi 16 avril 2015 de 13h à 14h.

L'intégralité des comptes rendus de réunions se trouvent sur le wiki du projet. Vous trouverez des

informations dans le carnet de bord que nous tenons très régulièrement. Pour plus d'information, veuillez vous

référer à la page contenant les comptes rendus accessible depuis le wiki.

Page 27: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 27

Phase de réalisation

Page 28: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 28

5. Méthode de seuillage et morphologie mathématique : 5.1. Méthode d'Otsu :

La première méthode de seuillage que nous avons mise en œuvre est la méthode d'OTSU. Cette technique

(très robuste), développée par Nobuyuki Otsu est utilisée pour effectuer un seuillage automatique ou la réduction

d'une image à niveaux de gris en une image binaire à partir de la forme de l'histogramme de l'image.

Pour la méthode d'Otsu, le seuil qui minimise la variance intra-classe est recherché à partir de tous les seuillages possibles :

Les poids représentent la probabilité d'être dans la ième classe, chacune étant séparée par un seuil .

Finalement, les sont les variances de ces classes. Otsu montre que minimiser la variance intra-classe revient à maximiser la variance interclasse:

Elle est exprimée en termes des probabilités de classe et des moyennes de classes qui à leur tour

peuvent être mises à jour itérativement. Cette idée conduit à un algorithme efficace.

Qu'est ce que l'histogramme d'une image ? Un histogramme représente la distribution des intensités (ou des

couleurs) de l'image. En abscisse nous avons les intensités de niveaux de gris (image sur 256 niveaux ici) et en

ordonnée nous avons le nombre de pixels ayant cette intensité.

Au sein d'une image, les pixels de "l'objet" ou de la partie de l'image qui nous intéresse se situent (du point de

vue de l'histogramme) dans une certaine zone (voir figure n°17). En effet, par exemple, pour l'aorte, il est très peu

probable qu'un pixel noir soit présent, de même pour un pixel très clair.

Ainsi, lors de l'exécution de la méthode d'OTSU, il convient de trouver une valeur de seuil correspondant à

une intensité de pixel se situant dans la zone d'intérêt de l'histogramme.

Figure n°17 : Histogramme d'une image et région d'intérêt

Page 29: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 29

Ainsi, le résultat de la méthode d'OTSU dépend de l'endroit de l'image où l'on applique cette technique (voir

figure n°18). Nous avons donc implémenté cette méthode sous python.

Figure n°18 : Méthode d'OTSU sur différentes partie de l'image

Les résultats de la méthode d'OTSU sont nets. En rouge, sur l'image de gauche, il y a la portion d'image sur

laquelle on applique la méthode, à droite, on observe le résultat de la technique. Si on applique OTSU sur la totalité

de l'image, on constate que l'aorte n'est pas isolée. Ce résultat est dû aux très nombreux pixels noirs présents sur les

côtés de l'image, ils ont un poids considérable. Ainsi, comme la méthode d'OTSU est une méthode statistique, nous

allons trouver un seuil (correspondant à une intensité de gris) qui a une valeur très faible. Ici, nous avons appliqué

une méthode d'OTSU avec deux classes donc tous les pixels ayant une valeur d'intensité en dessous du seuil sont mis

en noir, sinon ils sont mis en blanc.

En appliquant OTSU sur une petite partie de l'image contenant l'aorte, nous obtenons un meilleur résultat, on

remarque que l'aorte est isolée par rapport aux autres structures.

5.2. Morphologie mathématique et la transformée en tout ou rien :

Pour isoler totalement l'aorte, nous sommes passés par une étape faisant appel à une technique appelée

transformée en tout ou rien. Cette technique requiert l'utilisation de deux opérateurs mathématiques :

L'érosion.

La dilatation.

Elles forment les bases de la morphologie mathématique. On considère une image binaire (image avec des

pixels blancs ou noirs), elle fait partie d’un espace E = R ou Z dont l’origine est notée O. Soit X et B deux ensembles

inclus dans E. L’addition et la soustraction de Minkowski sont définis par :

Page 30: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 30

On nomme dilatation et érosion par B les opérateurs suivant :

L’ensemble B est l’élément structurant. Il est très important pour notre étude car c’est lui qui va permettre d’analyser le contenu structurel de l’image. Il possède une origine ce qui nous permettra de le déplacer dans une image.

Par exemple pour déterminer la position de l’aorte et l’isoler, nous pourrions utiliser deux éléments structurants : Un cylindre creux A. Un cylindre plein B.

Dans un premier temps nous devrions lire une série d’images (l’inclure dans une matrice 3D, nommée F).

Dans un second temps, il nous faudrait effectuer les opérations suivantes :

A(F) - B(F) donne une valeur pour chaque pixel de la matrice 3D.

Effectuer un seuillage de l’image à 0 (si A(F) - B(F) > 0 on garde les pixels sinon on les retire).

A(F)

Les éléments structurants sont à coder par nous même. Un cylindre creux A se coderait en utilisant une matrice de ce type (ici 2D mais en réalité elle devrait être en 3D), un cylindre plein B aurait cette forme :

En pratique, les opérations de dilatation et d'érosion peuvent être modélisées comme ceci :

Figure n°19 : Opération de dilatation et d'érosion

Page 31: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 31

Sur l'image de gauche, nous avons en noir la représentation d'une image en niveau de gris. A coté, en bleu et

vert, un élément structurant (le carré vert étant le centre de cet élément). En appliquant les opérations de dilatation

et d'érosion avec cet élément structurant sur notre image, nous obtenons des résultats que nous pouvons observer

sur les images de droite.

Nous avons donc mis en place cette transformée en tout ou rien sous python. Dans un premier temps nous

appliquons la méthode d’OTSU qui nous permet d'obtenir une image binaire. Dans un second temps, nous appliquons

à cette image les opérations de morphologie mathématique décrit précédemment. Comme l'aorte thoracique peut

être assimilable à un tube vertical, nous avons donc utilisé deux éléments structurants : un cylindre plein et un autre

cylindre mais creux celui-ci (qui étaient des images provenant du logiciel Paint). Le résultat est le suivant (figure n°20):

Figure n°20 : Résultat de la transformée en tout ou rien

Ce résultat peut être interprété de la façon suivante. Nous avions fait des tests sur une profondeur de 80

images. Ainsi, tout point blanc sur la figure n°20 représente un point faisant parti d'un tube d'une longueur de 80

images.

Après la première présentation de projet, Mr NAEGEL nous a envoyé des informations concernant la

morphologie mathématique sous python nous permettant de travailler directement en niveau de gris. Cette méthode

était utile dans le sens où nous pouvions nous affranchir de la méthode d’OTSU. Les éléments structurants étaient

mieux codés et donc la procédure plus rapide (une dizaine de minutes sur un ordinateur assez puissant tout de

même). Cependant, les résultats n'étaient pas très bons.

Page 32: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 32

6. Polygone de détourage :

A la suite des difficultés croissantes que nous rencontrions avec l'utilisation de python et de la morphologie

mathématique (temps d'exécution extrêmement long, résultat non concluant), nous avons décidé de coder un

programme en C++ permettant de détourer l'aorte automatiquement slice par slice.

Le fonctionnement de ce programme est simple. Dans un premier temps, on place un carré à l'intérieur de

l'aorte. Puis on vérifie la valeur des angles entre les points, tant que cette valeur est inférieure à une valeur donnée,

on étend le polygone. Cette extension est faite en plaçant un nouveau point sur le centre du segment formé par deux

des points du carré (mais ceci est fait pour tous les segments). Puis le nouveau point va parcourir la médiatrice du

segment jusqu'à trouver les bords de l'aorte. Puis on vérifie à nouveau la valeur des angles.

Figure n°21 : Résultat du détourage par un polygone

L'intérêt de ce programme est double. En effet, d'une part, nous pouvons détourer l'aorte correctement.

D'autre part, comme ce programme utilise des formes géométriques simples (carré de base puis des triangles) nous

devrions, en théorie, pouvoir calculer facilement la surface détourée par le polygone.

Cependant, il s'avère que les résultats du calcul de surface ne sont pas très bons. En effet, pour tester notre

programme, nous avons pris une slice de référence sur laquelle nous allions nous baser pour effectuer nos tests. Dans

un premier temps, à l'aide du DICOM Viewer "Radiant", nous avons estimé la surface de l'aorte sur cette slice à l'aide

d'outil conçu dans ce but. La valeur que nous avons trouvée est de : 7,5 cm².

Page 33: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 33

Pourtant, lors de l'exécution de notre programme (voir figure n°22), la fenêtre nous annonce un résultat qui

ne concorde pas avec la réalité. Pour notre slice de référence, nous obtenons une valeur pratique de : 3668 mm².

Pour le moment, nous n'avons toujours pas identifié le problème qui est probablement lié aux multiples

extensions effectuées par le programme.

Une solution utilisant un algorithme de croissance de région pourra éventuellement être mis en place afin

d'obtenir une valeur correcte de la surface. Le but de cet algorithme est, à partir d'une graine insérée dans l'aorte, de

"colorier" l'intérieure de cette dernière. Connaissant le nombre de pixel colorié et la surface de chaque pixel nous

pourrions facilement calculer la surface de l'aorte.

Figure n°22 : Fenêtre d'execution du programme du polygone de détourage

Page 34: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 34

7. Polynômes d'interpolations :

Après une réunion avec nos tuteurs et une réunion avec nos clients, nous avons convenu que le degré

d'automatisation du logiciel devrait être revu à la baisse. Au lieu d'être presque totalement automatique (ce qui est

en soi une utopie), le logiciel sera partiellement automatique. Nous avons donc décidé d'augmenter les interactions

logiciel-médecin, le placement d'une dizaine de points sur des images DICOM n'étant pas un problème pour les

clients.

Ainsi, afin d'obtenir les centres des vrai et faux chenaux, nous utilisons des points qui seront placés par les

médecins par l'intermédiaire d'une interface graphique. Afin d'obtenir la forme générale des chenaux et leur

positionnement relatif (qui sont des informations très utiles pour les médecins), nous avons utilisé un polynôme

d'interpolation de Lagrange qui est définit de la façon suivante :

Les résultats sont les suivants :

Figure n°23 : Visualisation des polynômes d'interpolations des chenaux

Page 35: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 35

Vous pouvez observer ci-dessus (figure n°23) la position relative des deux chenaux selon deux vues

différentes. Après le placement de points au niveau des deux chenaux, nous pouvons constater qu'ils ont une forme

générale similaire.

Maintenant que nous pouvons extraire d'une multitude de points les centres des chenaux, nous devons

essayer de trouver la tangente à chaque point de ces polynômes. Cette tangente va nous permettre d'obtenir le plan

de section dans lequel l'aorte est ronde. Pour ce faire, nous effectuons une projection de l'aorte sur les plans xOz et

yOz pour pouvoir trouver les tangentes dans ces plans et ainsi, les combiner pour trouver la tangente en 3

dimensions.

Ainsi, nous pourrons obtenir des informations sur la surface de l'aorte aux points où nous pourrons

déterminer ce plan.

Page 36: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 36

8. L'interface graphique gérant le format DICOM :

Lorsque que le projet a commencé, nous pensions créer un logiciel presque totalement automatique.

Cependant, nous ne nous rendions pas compte que cette solution est une utopie. Après différentes réunions (avec

nos tuteurs et nos clients), recherches et avancées nous nous sommes rendu compte qu'un logiciel laissant certains

degrés de libertés aux médecins serait bien mieux pour eux.

Pour créer cette interface graphique, nous avons commencé par nous intéresser aux bibliothèques C++ ITK

pour Insight ToolKit et VTK pour Visualisation ToolKit. Cependant, après de nombreux essais pour construire ces deux

bibliothèques, nous nous sommes rendus compte que c'était très (peu être trop) complexe pour nous.

D'autres tests ont été menés pour créer une interface graphique avec des bibliothèques comme DCMtk ou

gDcm sans succès.

Malgré plusieurs revers, n'avons pas baissé les bras et avons continué nos recherches. Elles nous ont permis

de trouvé un package de Python permettant de créer des interfaces graphiques : Tkinter. De plus, les interfaces

graphiques crées avec Tkinter peuvent intégrer des fichers au format DICOM puisque qu'il existe différents package

qui gèrent le format dicom sous python (pyDicom notamment).

Les résultats sont assez bons et nous pensons pouvoir remplir nos objectifs concernant l'interface graphique.

Le but de cette interface serait de pouvoir sélectionner un dossier contenant les images d'un patient pour les afficher

et pouvoir les faire défiler. De plus, grâce à cette interface, les médecins pourront placer des points qui serviront par

la suite à tracer le polynôme d'interpolation.

Lors de l'exécution du programme, la fenêtre suivante apparait. En rouge, les cadres réservés aux images

médicales.

Figure n°24 : Fenêtre d'entrée de l'interface graphique

Nous avons ajouté beaucoup de fonctionnalités à cette interface comme nous le montre la barre d’outils

située en haut à gauche de l’interface (voir figure n°25) :

Page 37: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 37

Figure n°25: Différentes fonctions de l’interface graphique

Ces fonctions sont diverses :

Importation d’un patient permettant la création d’un dossier pour le patient regroupant : ces examens avec

nos fichiers textes contant les coordonnées des polynômes, les reconstructions multiplanaires et des fichiers

binaires utilisé pour la création de la matrice 3D.

Affichage du polynôme d’un patient (après l’avoir créé).

Chargement du polynôme d’un patient (pas besoin de l’avoir créé au préalable).

Une fonction de correction manuelle des chenaux.

Quelques informations à propos du patient.

Après avoir importé puis sélectionné un patient la fenêtre suivante s’ouvre (figure n°26) :

Figure n°26 : Affichage de la slice transversale n° 185

Page 38: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 38

La fenêtre d'affichage nous permet de visualiser toutes les images d'une série selon les trois plans de l’espace

et de placer des points d'intérêts sur les slices transversales (images les plus à gauche sur l’interface) dont les

coordonnées (respectivement en x, en y et en z) seront sauvegardées dans deux fichiers dont l’extension est ‘.poly’

(figure n° 27). Nous avons créé cette extension afin de pouvoir traiter ce type de fichier par un programme en C++

directement depuis python sans avoir besoin de sortir de l’application (l’opération est transparente). Ces fichiers

seront réutilisés plus tard pour créer les polynômes d'interpolations.

Figure n°27 : Coordonnées des points d'intérêts

Page 39: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 39

9. La croissance de région :

Afin de pouvoir segmenter correctement les chenaux du patient, nous allons utiliser un algorithme de

croissance de région plutôt que le polygone de détourage qui présente certains inconvénients. La croissance de

région est une technique qui permet de "colorier" une région (ci dessous en blanc) à partir d'une graine. Le critère

d'arrêt peu être définit de plusieurs façon différents.

Figure n°28 : Aorte segmentée au niveau de la crosse et de l'aorte thoracique

Sur la figure précédente, nous avons deux images scanner d’un patient sur le même examen. L’image de

gauche nous montre la crosse aortique alors que celle de droite nous montre l’aorte descendante qui est située plus

bas que la crosse aortique. Ici, nous avons lancé l’algorithme sur le faux chenal (dans ce cas, partie de l’aorte située le

plus en bas de l’image). Lorsque l’on regarde la figure de gauche, on peut constater que le « coloriage » de la zone

d’intérêt à débordé sur le vrai chenal par l’intermédiaire d’un orifice, cet orifice est en réalité une porte d’entrée de la

dissection que nous avons formellement identifiée sur un logiciel de visualisation d’image DICOM. Ainsi, la croissance

de région permet de détecter les portes d’entrée et de réentrée.

Cependant, notre premier algorithme n’était pas très efficace. En effet, il arrivait parfois que la croissance

débordait au-delà du faux chenal ce qui ne correspond pas à la réalité. Ainsi, nous avons mis en place un nouvel

algorithme de croissance de région en 4 étapes :

On parcourt le polynôme en effectuant une moyenne des moyennes de luminances des points par lesquels

passe ce dernier (cette moyenne est mise dans une variable MOYENNE). Puis on relève la différence entre la

moyenne des moyennes de luminances et la luminance de chaque point du polynôme (cette donnée est mise

dans une variable DELTA).

On initialise un tableau (nommé SURFACE) qui va stocker les valeurs de surface rencontrée à chaque coupe

puis on recalcule MOYENNE et DELTA.

On actualise le tableau SURFACE et les variables MOYENNE et DELTA une nouvelle fois.

Si SURFACE[i] << SURFACE[i-1], alors on colorie la coupe exactement comme la coupe précédente, puis on enlève les 5% de points qui ont la moyenne de luminances la plus petite. Si SURFACE[i] >> SURFACE[i-1], alors on stocke l'altitude dans un tableau PORTE_POTENTIELLE, puis on relance une croissance de région sur cette coupe jusqu'à atteindre SURFACE[i-1] +5%.

Page 40: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 40

10. Plan de section de l'aorte :

L’un des objectifs de nos travaux est d’acquérir, grâce aux images scanner, la surface de l’aorte d’un patient

pour une hauteur donnée. Cependant pour que cette surface ait un sens, il nous faut l’obtenir dans un plan où l’aorte

est circulaire. C’est ce dont nous allons parler dans cette partie.

La détermination du plan de section de l’aorte se fait par l’intermédiaire du polynôme d’interpolation. Nous

utilisons la définition d’un plan par un point et un vecteur normal. Dans un premier temps, il nous faut trouver la

tangente en chaque point (qui nous servira de vecteur normal au plan). Pour ce faire, nous effectuons une projection

de l'aorte sur les plans xOz et yOz pour pouvoir trouver les tangentes dans ces plans et ainsi, les combiner pour

trouver la tangente en 3 dimensions.

Lorsque nous avons cette tangente, nous avons les deux éléments nous permettant de trouver les

paramètres d’un plan qui est définit par l’équation suivante :

Voici ce que donne en pratique la détermination d’un plan depuis le polynôme d’interpolation de Lagrange

(figure n°29) :

Figure n°29 : Plan de section de l’aorte

Toutes les coordonnées étant susceptibles de nous intéresser sont enregistrées dans un fichier dont

l’extension est ‘.plan’. Nous avons créé cette extension afin de pouvoir traiter ce type de fichier par un programme en

C++ directement depuis python sans avoir besoin de sortir de l’application (l’opération est transparente).

Page 41: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 41

Les données que nous enregistrons dans ces fichiers sont :

Les coordonnées de chaque point du polynôme.

Les paramètres du plan correspondant à chaque hauteur (a, b, c et d).

Nous pouvons observer les résultats sur la figure suivante (figure n°30) :

Figure n°30: Reconstruction de l’aorte grâce au plan de section

L’image de gauche représente une image scanner d’une dissection aortique. Après traitement de cette image

(placement de points via l’interface graphique, polynôme d’interpolation, plan de section et intersection de ces plans

avec la matrice 3D des images) nous obtenons l’image de droite. Elle représente l’aorte reconstruite dans le plan de

section. On remarque que cette aorte est effectivement circulaire.

Sur la figure n°31 nous pouvons observer la

croissance de région sur l’aorte reconstruite. On remarque

clairement deux éléments. Le premier est qu’une porte

d’entrée de la dissection a été détectée par l’algorithme de

croissance de région. Le second est que l’algorithme n’a pas

colorié la totalité du vrai chenal.

Sur cette coupe, notre application estime la valeur de

la surface à 5.867 cm². Cette valeur nous semble cohérente

compte tenu des informations à notre disposition c'est-à-

dire : une aorte présentant une dissection aortique est plus

dilatée qu’une aorte normale et diamètre de l’aorte normale

~ 21 mm.

A présent, nous devons faire valider ces résultats par

les médecins.

Figure n°31: Croissance de région sur l’aorte reconstruite

Page 42: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 42

11. Fusion des codes :

Depuis le début du projet, nous avons développé différents programmes en C++ et en python. Cette

multitude de code résulte de la répartition des tâches que nous avons mise en place à la fin du 1er semestre. Afin que

notre application soit ergonomique, nous devons imbriquer les codes les uns dans les autres afin d’obtenir une

unique application dont le point de départ est l’interface graphique. Nous avons deux types de code :

Les codes python qui permettent d’effectuer des visualisations (images DICOM, graphique 3D sur pyplot).

Les codes C++ qui permettent de mettre en place des algorithmes de traitements.

L’entré des programmes C++ que nous utilisons sont des fichiers texte dont l’extension n’est pas ‘.txt’. En

effet, dans l’optique où nous allons lancer les programmes C++ depuis un programme Python, nous avons choisi de

créer nous même des extensions de fichier :

‘.poly ‘ pour les fichiers contenant les coordonnées des points sélectionnés pour créer le polynôme via

l’interface graphique.

‘.plan ‘ pour les fichiers contenant les coordonnées de chaque point d’un polynôme (polynôme du vrai ou du

faux chenal) et les paramètres du plan associé à chaque hauteur du polynôme.

Grâce à cette modification des extensions de fichier, nous pouvons spécifier à Python quel doit être le

programme qui va ouvrir un fichier ‘.poly ‘ ou ‘.plan’. Ainsi, en utilisant une fonction spéciale (nommée

« subprocess ») nous pouvons lancer le programme C++ depuis un programme Python sans avoir à quitter

l’application. Cependant, la contrepartie de cette méthode est que nous devons créer un exécutable (fichier ‘.exe’)

pour chaque programme C++ que nous voulons lancer.

Page 43: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 43

12. Récapitulatif :

Notre application étant composé de différents programmes, il convient d’établir un récapitulatif des

interactions que vous trouverez sur la figure suivante (figure n°32) :

Figure n°32: Récapitulatif des interactions entre les programmes

Chaque rectangle correspond à un programme, au sein de ces rectangles il y a : le nom du programme et le

langage utilisé pour le programmer. En haut de chaque rectangle, vous pouvez apercevoir des barres vous indiquant à

l’heure actuelle la progression des différents programmes par rapport au cahier des charges.

On constate que 3 des 8 grands programmes ne sont pas terminés. En effet, lors de la fusion des programmes

nous nous sommes heurtés à différents problèmes que nous avons dû régler. Par exemple, nous nous sommes rendu

compte que le paramétrage des plans n’était pas correct si nous placions les points (ceux pour créer les polynômes

d’interpolations) uniquement en nous basant sur les coupes transversales. En effet, avec les coupes transversales

seules, nous ne pouvions pas savoir si nous étions au centre des chenaux au niveau de la crosse aortique. C’est

pourquoi nous avons dû coder un logiciel de reconstruction multiplanaire.

Page 44: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 44

La croissance de région n’est terminée qu’à 75%. En effet, sur les quatre étapes qui étaient prévues seules les

trois premières ont été codées. Ceci est dû à des retards de mise en place des autres étapes. De plus, nous n’avons

pas pu mettre en place la partie ‘volume’ du programme permettant le calcul de surface et de volume par manque de

temps. Ainsi, nous attribuons 50% de progression pour ce programme.

Pour terminer, l’interface graphique est fonctionnelle mais cependant, elle pourrait être améliorée pour la

rendre plus ergonomique.

Page 45: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 45

Bilan :

D’un point de vue général, nous nous sommes répartis les tâches de la manière suivante :

Arnaud avait pour but la création des polynômes d’interpolations de Lagrange et de la croissance de région.

Nicolas s’est chargé de configurer les plans de section de l’aorte puis de l’isolation de l’aorte à partir de ces

plans.

Christophe et Alexandre devaient effectuer des recherches sur les librairies C++/Python permettant de gérer

des fichiers au format DICOM puis de créer une interface graphique.

Cette répartition des tâches nous semblait être la meilleure puisqu’elle tenait compte des envies de chacun.

Cependant, nous avons du faire face à de nombreux problèmes comme sur la croissance de région, les polynômes

d’interpolations ou comment fusionner les différents programmes que nous avions.

Malgré le travail que nous avons effectué, notre application est très perfectible. En effet, l’interface

graphique n’est pas très ergonomique. De plus, l’utilisateur peut encore effectuer des actions qui vont générer des

erreurs par rapport au code et ainsi, faire planter l’application.

Pour le moment, nous avons remarqué que le nombre optimal de point à placer via l’interface graphique pour

la création des polynômes est 7. Ce nombre nous limite par rapport au nombre de slices que nous pouvons traiter et

ceci pourrait être amélioré.

Malgré tout, nous avons réussi à créer une interface fonctionnelle permettant aux utilisateurs d’obtenir

quelques informations concernant les dissections aortique de type B.

Page 46: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 46

Conclusion :

Ce projet aura été très bénéfique pour nous et nous aura permis d’en apprendre beaucoup. En effet, il nous a

permis d’améliorer notre travail en équipe de par notre répartition des tâches qui exigeait une bonne coordination.

De plus, ce travail était très intéressant dans la mesure où nous collaborions avec beaucoup de personnes du monde

de la recherche mais aussi du monde médical.

Enfin, ce projet aura été une bonne expérience pour tester nos capacités de réflexion et d’inventivité. En

effet, après avoir eu quelques doutes concernant la morphologie mathématique sous python, nous avons pris le

temps de réfléchir afin de proposer une alternative à ces problèmes en C++/Python qui nous paraissait être plus

adaptée à nos compétences et à ce que nous voulions faire.

Malgré un cahier des charges trop ambitieux étant dû à notre manque d’expérience dans le domaine du

traitement d’images, nous avons réussi à créer une application fonctionnelle dont les résultats seront très utile pour

le travail des médecins.

Page 47: Rapport de suivi - unistra.frticsante.u-strasbg.fr/lib/exe/fetch.php?media=... · traitement d'images permettant aux médecins d'acquérir, par l'intermédiaire des scanners des patients,

Remodelage aortique au cours d'une dissection de type B Page 47

Remerciements :

Nous voudrions tout d’abord remercier Mr COLLET, responsable de l’équipe Modèle Image et Vision du

laboratoire iCube et professeur à Télécom Physique Strasbourg et Mr NAEGEL, chercheur au sein de l’équipe MIV

pour leurs conseils et leurs soutiens tout au long du projet.

Nous aimerions aussi remercier le professeur CHAKFE, chef du service de chirurgie vasculaire de l’hôpital de

Strasbourg et le docteur GEORG, chirurgien au sein de ce même service, pour leurs aides concernant le point de vue

médical du problème.

Pour terminer, nous voudrions remercier tous les intervenants qui ont participé à la réalisation de ce projet :

Adeline SCHWEIN, interne des hôpitaux des Strasbourg (actuellement en année de recherche à Houston) et Killian

HETT, étudiant du master IRIV, actuellement en projet de fin d’étude dont le travail est un prolongement de ce projet.