Les algorithmes de deep learning pour la détection d’objets (anomalie, structure anatomique) en imagerie médicale nécessitent des jeux de données annotés précisément pour obtenir des performances acceptables pour un usage médical. Cette annotation est très chronophage et sollicite l’expertise des médecins radiologues. Pour faciliter cette étape, et réduire au maximum le temps d’annotation, il est nécessaire d’avoir à la disposition de son projet un outil d’annotation :
- qui prend en compte les fichiers DICOM, pour simplifier le traitement des données issues du PACS de l’établissement de soins,
- qui propose tous les outils utiles lors de la détection manuelle par le radiologue de la région d’intérêt (ROI), et
- qui permet d’exporter simplement ces annotations dans un format compatible avec le pipeline de traitement des données d’un algorithme deep learning.
Notre projet d’analyse d’images médicales actuel utilise des algorithmes de détection d’objets en deep learning. Après avoir défini les formats d’annotations requis pour ce type de tâche (cf. article Annotations des images médicales pour l’apprentissage deep learning), nous avons pu entamer la phase de préparation des données. Lors de celle-ci, nous avons cherché un logiciel gratuit d’annotation d’images DICOM pour enrichir notre jeu de données avec les annotations des ROI correspondantes. Pour notre projet, nous avons sélectionné quelques outils proposés par [1] [2]. Nous vous les présentons ci-après. Certains autres ont été écartés (ePad [3], XANAT [4], GeoS, MammoApplet, …, etc), pour l’une ou plusieurs des raisons suivantes :
- fonctionnement en machine virtuelle, ou directement intégré aux outils de collecte et stockage d’images médicales,
- ne prend pas en charge les formats de données médicales DICOM ou NIfTI,
- devenu payant,
- non accessible / maintenu.
Quel logiciel gratuit pour segmenter les images médicales ?
DICOMworks :
Nous avons déjà utilisé ce logiciel [5] pour l’anonymisation de fichiers DICOM. Il propose en plus des outils d’annotation de type balise et mesure : point, angle, flèche, cercle, forme libre, texte, mesure de distance, mesure d’écartement. Les annotations peuvent être copiées d’une image à l’autre de la série.
Les points forts : propose également un outil d’anonymisation, ce qui évite la multiplication des outils pour mener à bien la préparation des données d’un projet d’analyse d’images, et de nombreux formats d’export (JPEG, PNG, DICOM, TIFF, BMP, …, etc) sont disponibles.
Les points faibles : ne permet pas la création de masque binaire, peu d’outils de segmentation manuelle ou semi-automatique.
ITK-Snap :
Ce logiciel est un projet collaboratif open-source entre l’université de Pennsylvanie et celle de l’Utah. Il permet la segmentation d’images médicales 3D [6].
L’installation est aisée. Une fois le logiciel démarré, l’utilisateur accède au guide de démarrage, aux images précédemment chargées, aux espaces de travail précédemment enregistrés. Il peut aussi directement charger une nouvelle image/fichier DICOM, ou un nouvel espace de travail.
Une fois la série d’images ouverte, l’interface utilisateur se compose de deux zones principales : le panneau de gestion des outils d’annotation, la zone de visionnage au centre.
Le panneau latéral est la boîte à outils de l’utilisateur à partir de laquelle il peut :
- sélectionner l’outil d’annotation voulu et le paramétrer,
- créer/modifier les étiquettes des annotations réalisées, et
- manipuler le rendu 3D.
La zone de visionnage est découpée en 4 vues : une pour chaque axe (i.e. axial, sagittal, coronal), et une dernière pour le rendu 3D de la segmentation active.
Les outils de manipulation, annotation et segmentation disponibles sont :
- réticule pour positionner le curseur 3D dans les 3 plans orthogonaux ;
- zoom ;
- balisage en forme de lignes, texte, mesure de distance et d’angle ;
- segmentation manuelle en traçant des polygones ou en utilisant le pinceau ;
- segmentation semi-automatique par la sélection active des contours de l’objet avec l’outil snake.
Une fois la segmentation réalisée, l’utilisateur peut obtenir des informations de volume et statistiques liées à l’objet segmenté.
Il peut également modifier les valeurs de fenêtrage, accéder aux métadonnées de la série, et aux informations de l’objet segmenté, grâce à l’inspecteur des calques.
ITK-snap possède un outil d’interpolation pour étiqueter un objet dans les 3 plans orthogonaux.
Enfin, le logiciel propose une sauvegarde et une exportation de la segmentation sous plusieurs formats, dont les plus courants en traitement d’image : NIfTI, NRRD, VTK (ce dernier permet d’obtenir un maillage de la surface).
Les points forts : logiciel simple d’utilisation et très complet. Il est adapté à la segmentation d’images médicales avec des outils pensés spécifiquement pour les formats de données médicales.
Les points faibles : pour la segmentation, aucun à notre avis. Néanmoins, il ne permet pas les annotations de type boîte englobante.
Quelques articles scientifiques récents utilisant ITK-Snap pour la segmentation d’images CT [7] [8] [9] [10].
RIL-contour :
Ce logiciel est proposé par le laboratoire d’informatique radiologique de la Clinique Mayo, Rochester, United-States [11]. Il s’installe en ligne de commande avec l’IDE Anaconda. Pour le lancer, il faut également le faire en ligne de commande. L’installation comme le lancement se font aisément avec une expérience minime des interpréteurs de commandes. Une fois ouvert, RIL-contour est composé de trois éléments : le panneau de navigation et chargement des jeux de données, la barre d’outils de segmentation/manipulation des images, et la zone de visualisation.
La première chose à faire est de créer un projet en définissant le répertoire contenant le jeu de données, et le répertoire où seront enregistrées les segmentations.
Les données sont automatiquement converties en NIfTI avant d’être chargées dans ce nouveau projet et peuvent être affichées dans la zone de visualisation. Il est possible de changer le fenêtrage de la série pour favoriser l’identification des structures anatomiques.
En préalable à la segmentation, il faut définir les étiquettes des ROI.
Lors de la segmentation par le pinceau, une boîte englobante est définie autour de la zone en cours de traitement. Il est possible de verrouiller les ROI une fois terminés. Cette option est très pratique, car elle évite les débordements lors de la segmentation de ROI voisins (cf. capture d’écran ci-dessous).
Il est possible de visualiser en 3D le résultat de la segmentation..
RIL-contour met à disposition les statistiques des ROI par volume ou par coupe.
Le logiciel propose aussi l’utilisation de modèles de machine learning pour la segmentation ou la classification. Il est possible de charger ses propres modèles, puis de les appliquer au jeu de données. Nous n’avons pas pu tester cette fonctionnalité, car nous n’avions pas de modèles de segmentation disponibles.
Les annotations peuvent être exportées au format NIfTI.
Les points forts : simple à l’installation, tutoriels vidéo de prise en main, outils de segmentation manuelle intuitifs, possibilité de charger des algorithmes de segmentation pour un traitement automatique, utilisation des formats de données médicales principaux (DICOM, NIfTI).
Les points faibles : logiciel complet. Cependant, il faut prendre le temps de fouiller les menus pour débloquer certaines options de paramétrage ou fonctionnalités. Inexistence des outils de balisage (i.e. ligne, forme libre, etc…).
Quelques articles scientifiques récents utilisant RIL-contour pour la segmentation [12] [13] [14].
Sefexa :
Sefexa est un logiciel de segmentation pour les images 2D [15]. Il permet le traitement des formats suivants : PNG, GIF, TIFF, JPEG, BMP. Malheureusement, il ne gère pas les formats DICOM ou NIfTI. Cependant, nous vous le présentons rapidement, car il arrive que les jeux de données des projets d’analyse d’images médicales soient parfois enregistrés aux formats d’images plus “classique”.
Sefexa est simple à installer, et son utilisation est intuitive. Il permet notamment de faire :
- de la segmentation manuelle avec le tracé libre ;
- de la segmentation semi-automatique :
- soit par seuillage des intensités de pixel ;
- soit par l’approche graph-cut en identifiant par touche les différents objets de l’image (cf. capture d’écran ci-dessous) :
Les points forts : intuitif dans son utilisation.
Les points faibles : ne prend pas en charge les formats DICOM ou NIfTI, et propose uniquement la segmentation 2D.
Quelques articles scientifiques récents utilisant Sefexa pour la segmentation [16] [17].
3D Slicer :
3D Slicer est un logiciel open source dédié au traitement des images médicales ainsi qu’à la visualisation en trois dimensions [18].
Au démarrage du logiciel, l’utilisateur peut importer des fichiers DICOM. Il retrouve également, dans le menu déroulant situé dans la barre d'outils du haut de la fenêtre, les différents modules proposés par 3D Slicer dont “Segment Editor” permettant de réaliser les segmentations.
Une fois les images ouvertes, l’utilisateur peut se rendre dans le module “Segment Editor” et ainsi accéder aux outils propres à la segmentation situés dans le panneau latéral.
Depuis ce panneau latéral, il peut :
- créer de nouveaux segments ;
- accéder à l’ensemble des outils de segmentation ;
- renommer et attribuer des couleurs à chacun des segments ;
- afficher la visualisation 3D.
La zone de visionnage, située sur la partie centrale de l’écran, peut être découpée de différentes manières. Elle regroupe les vues en coupes dans les trois plans orthogonaux (i.e. axial, coronal et sagittal) ainsi que la visualisation 3D. Dans cette zone, il est possible d’utiliser les différents raccourcis souris pour zoomer, déplacer les coupes et naviguer entre les coupes. De même, en activant la modification du fenêtrage, l’utilisateur peut l’adapter comme il lui convient à l’aide de la souris.
Les outils disponibles du module “Segment Editor” se divisent en 3 catégories :
1. Outils pour la segmentation manuelle
a. le pinceau ;
b. le dessin ;
c. la gomme ;
2. Outils de segmentation semi-automatique
a. le suivi de niveau (d’intensité) ;
b. la croissance à partir de graines ;
c. le seuillage ;
d. les ciseaux ;
e. les îles ;
3. Outils complémentaires à la segmentation
a. Le remplissage entre les coupes (interpolation) ;
b. Les filtres ;
c. Les opérateurs logiques.
Une fois les segmentations réalisées, l’utilisateur peut avoir accès à différentes données statistiques à partir du module “Quantification”, puis “Segment Statistics”. Ces données s’affichent sous forme de tableau, et contiennent des informations de volume ainsi que d’autres statistiques liées à la structure anatomique segmentée.
L’exportation des données segmentées s’effectue au format NRRD, et l’enregistrement de la table avec les informations de volume et statistiques peut s’effectuer aux formats TXT, TSV et CSV.
Pour terminer, il est intéressant de préciser qu’à partir du module “Markups” l’utilisateur peut également utiliser les boîtes englobantes (en positionnant une région d’intérêt notée ROI) pour réaliser l’annotation. Ces données peuvent être exportées aux formats JSON.
Les points forts : logiciel très complet avec un grand nombre d’outils (manuels et semi-automatiques) permettant la segmentation d’images médicales (format DICOM). La présence d’outils complémentaires à la segmentation peuvent faciliter cette étape. L’exportation des données se fait au format NRRD, donc compatible avec les projets d’analyse de données.
Les points faibles : logiciel pas uniquement dédié à la segmentation, et nécessite un certain temps d’adaptation.
Tableau comparatif des logiciels gratuits d’annotation
Nous avons évalué les logiciels présentés grâce aux critères suivants :
- formats des images supportés adaptés à l’imagerie médicale, notamment avec les formats DICOM ou NIfTI ;
- complétude des outils d’annotations ;
- simplicité d’installation et d’utilisation ;
- formats disponibles pour l’export des annotations, notamment compatible avec un pipeline d’apprentissage deep learning.
Notation : 0 critère non rempli, 5 critère rempli, NA critère non-applicable (par exemple : impossibilité d’évaluer l’outil suivant ce critère)
| Logiciel | Critère 1 | Critère 2 | Critère 3 | Critère 4 |
| DICOM works | 4 Uniquement DICOM, pas de format NIfTI | 2 Propose uniquement des outils de balisage | 5 | 5 |
| ITK-Snap | 5 | 4 Exclusivement dédié à la segmentation | 5 | 5 |
| RIL-contour | 5 | 5 | 4 Nécessite d’avoir l’IDE Anaconda et savoir utiliser l’invite de commande | 4 Export au format NIfTI uniquement |
| Sefexa | 1 Only GIF, TIFF, PNG, JPG, no medical image formats such as DICOM/NIfTI | 3 Only 2D segmentation tools available | 5 | 2 Export au format PNG uniquement |
| 3D Slicer | 5 | 5 | 4 Nécessite un certain temps pour prendre en main correctement le logiciel | 5 Export au format NRRD |
En résumé, quels sont les meilleurs logiciels pour annoter les images médicales ?
Pour entraîner des algorithmes deep learning de détection en imagerie médicale, le moyen le plus courant est de fournir avec l’image TDM des informations complémentaires pour restreindre l’espace de recherche ; tels que les boîtes englobantes, les masques binaires, les points d’ancrage. Pour cela, la phase de préparation des données doit inclure une étape d’annotation des images. Parmi les logiciels identifiés et essayés pour notre projet, nous en retenons deux : ITK-snap et 3D slicer (voir comparatif pour plus de détails). Ces logiciels ont été conçus pour l’annotation des images médicales aux formats les plus courants dans ce domaine : DICOM, NIfTI. Ils présentent tous deux les outils de balisage et segmentation sémantique couramment utilisés en préparation des données pour l’IA ; à savoir les outils de recherche de région, de frontière et de seuil. Pour plus de détails sur ces outils, vous pouvez lire l’article “Annotations des images médicales pour l’apprentissage deep learning”.
[1] Aryanto KY., Oudkerk M., van Ooijen PM. Free DICOM de-identification tools in clinical research: functioning and safety of patient privacy. Eur Radiol. 2015;25(12):3685-3695. doi:10.1007/s00330-015-3794-0
[2] Chehab K., et al. Study of Healthcare Professionals’ Interaction in the Patient Records Based on Annotations, Conference Proceedings, The Impact of Digital Technologies on Public Health in Developed and Developing Countries, 2020, Springer International Publishing, Cham, 978-3-030-51517-1, 316-328, https://doi.org/10.1007/978-3-030-51517-1_28
[3] Rubin DL., Ugur AM., Altindag C., Alkim E. ePAD: An Image Annotation and Analysis Platform for Quantitative Imaging. Tomography 2019;5(1):170–183. https://epad.stanford.edu/
[4] https://www.xnat.org/ https://bitbucket.org/icrimaginginformatics/ohif-viewer-xnat-plugin/src/master/
[5] Puech PA, Boussel L, Belfkih S, Lemaitre L, Douek P, Beuscart R. DicomWorks: software for reviewing DICOM studies and promoting low-cost teleradiology. J Digit Imaging. 2007;20(2):122-130. https://doi.org/10.1007/s10278-007-9018-7
[6] Yushkevich PA. et al. User-guided 3D active contour segmentation of anatomical structures: Significantly improved efficiency and reliability. Neuroimage. 2006 Jul 1; 31(3):1116-28.
[7] Veeraraghavan H., Friedman C.F., DeLair D.F. et al. Machine learning-based prediction of microsatellite instability and high tumor mutation burden from contrast-enhanced computed tomography in endometrial cancers. Sci Rep 10, 17769 (2020). https://doi.org/10.1038/s41598-020-72475-9
[8] Löffler MT. et al. A Vertebral Segmentation Dataset with Fracture Grading
Radiology: Artificial Intelligence 2020 2:4
https://doi.org/10.1148/ryai.2020190138
[9] Zhang Y., et al. A Deep Learning Framework for Pancreas Segmentation with Multi-atlas Registration and 3D Level-set, Medical Image Analysis, 2020, 101884, ISSN 1361-8415, https://doi.org/10.1016/j.media.2020.101884
[10] Xia Y. et al. 3D semi-supervised learning with uncertainty-aware multi-view co-training, Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV), 2020, pp. 3646-3655
[11] Philbrick KA., Weston AD., Akkus Z. et al. RIL-Contour: a Medical Imaging Dataset Annotation Tool for and with Deep Learning. J Digit Imaging. 2019 Aug;32(4):571-581. https://doi.org/10.1007/s10278-019-00232-0 PMID: 31089974; PMCID: PMC6646456.
[12] Weston, A. D., Korfiatis, P., Philbrick, et al. Complete abdomen and pelvis segmentation using U‐net variant architecture. Medical physics. (2020).
[13] Cai JC., Akkus Z., Philbrick KA. et al. Fully Automated Segmentation of Head CT Neuroanatomy Using Deep Learning. Radiology: Artificial Intelligence, 2(5), e190183. (2020).
[14] Buciuc M., Conte GM., Scharf E. Endocannabinoid response in acute ischemic stroke: elevated 2-arachidonoylglycerol. medRxiv. (2020).
[15] http://www.fexovi.com/sefexa.html
[16] Bhowmik MK., Nath N., Datta A., Ghosh AK. Shape feature based automatic abnormality detection of cervico-vaginal pap smears. In 2nd International Conference on Biomedical Imaging, Signal Processing (ICBSP 2017), published by Journal of Image and Graphics (JOIG), New Jersey, USA. (2017, December).
[17] Edalati-rad A., Mosleh M. Improving Brain Tumor Diagnosis Using MRI Segmentation Based on Collaboration of Beta Mixture Model and Learning Automata. Arabian Journal for Science and Engineering, 44(4), 2945-2957. (2019).
[18] 3D Slicer. https://www.slicer.org/