Plateforme IRIS : Imagerie, Robotique et Innovation en Santé

Développement logiciel

De Plateforme IRIS : Imagerie, Robotique et Innovation en Santé
Aller à la navigation Aller à la recherche

Conversion et stockage

Dicomifier est un convertisseur entre différents formats fortement répandus en imagerie médicale : architecturé autour du modèle de données de DICOM, dicomifier permet de convertir entre DICOM, NIfTI et Bruker, en conservant les méta-données associées aux images dans ces trois formats.

Pour répondre aux problématiques de stockage spécifiques à la recherche en imagerie médicale, nous avons développé Dopamine, un PACS permettant de stocker des images médicales multi-modales (IRM, CT, PET, etc.) issues aussi bien de sujets vivants (Homme et animal) que d'objets tests. Outre cette généricité du stockage, Dopamine propose également une bonne montée en charge pour accueillir les cohortes grandissantes et des droits d'accès fins pour compartimenter les accès aux données, à la fois en lecture et en écriture.

La partie DICOM de ces logiciels s'appuie sur Odil, une bibliothèque DICOM proposant des interfaces C++, Python et Javascript développée au sein de la plate-forme.

Traitement et visualisation

MediPy est une plate-forme logicielle de visualisation et de traitement d'images médicales. Elle est destinée à la fois aux cliniciens et aux chercheurs en étant à la fois facile d'utilisation et ouverte à l'extension de ses fonctionnalités.

Les cliniciens pourront bénéficier des tâches pré-programmées (par exemple la segmentation, le recalage ou la détection de lésions) et la possibilité de définir de nouvelles tâches, leur permettant d'adapter le logiciel à leurs besoins propres. De nombreux formats de fichiers peuvent être lus (DICOM, NIfTI, Analyze, …), et la récupération de données depuis un PACS est également possible.

Les chercheurs pourront rapidement développer de nouveaux outils en se basant sur des interfaces soit en Python pour une forte productivité, soit en C++ pour de hautes performances. Des ponts permettent un échange facile des données entre les deux langages. Des adaptateurs sont de plus prévus pour l'utilisation de bibliothèques tierces (par exemple SPM, ITK ou VTK).

Le code source du logiciel est disponible sur BitBucket.

Visualisation multi-planaire Vue 3D

Interactions avec les périphériques

Pour les applications en temps réel 'mou' (temps interactif), nous avons développés des outils logiciels haut niveau permettant de :

  • piloter des robots :
    • industriels : KUKA iiwa, Mitsubishi RV1A
    • conçus par le laboratoire pour les procédures percutanées, la stimulation trans-crannienne ou l'endoscopie flexible par exemple.
  • de communiquer et interagir avec les imageurs médicaux suivants :
    • IRM temps réel Siemens Magnetom (coupes demandées à la volée)
    • CT-scan Siemens Somatom (Positionnement piloté)
  • d'utiliser dans nos applications les périphériques suivants :
    • NDI Polaris (traqueur optique), NDI Aurora (traqueur magnétique)
    • Caméras vidéo, RGBD (Kinect 2, Asus Xtion Pro, camera IDS, Leap motion,...)

Inputs devices Outputs devices

Calibrage et recalage

  • Calibrages de caméras (intrisèques et extrinsèques), manuels, automatiques

Calibrage automatique

  • Recalages Caméra / Robots / Traqueurs / Patients / Imageurs médicaux

Une étape importante des procédures per-opératoires consiste à exprimer l'ensemble des informations dans le même repère cartésien (recalage). Nous cherchons généralement à recaler au minimum le patient réel avec les images médicales. Concernant les procédures automatisées, il est également nécessaire de recaler le robot avec le patient. Pour cela de nombreuses méthodes sont disponibles en fonction des problèmes rencontrés : Matching points registrations, ICP (Iterative Closest Points), Plane to plane registration, 3D/2D registration, Hand eye calibration, Strutured light registration...

Suivi du patient dans une procédure de TMS Recalage par lumière structurée Procédure percutanée automatisée

Visualisation per-operatoire

  • Issue de l'imagerie médicale (plans de coupe, reconstruction 3d, rendu volumique, MPR,...)

Rendu volumique Rendu volumique + Maillages segmentés

Mouse puncture

  • Fusion (Virtualité ou réalité augementée) : fusion 2d/3d ou 3d/2d, depth keying, projection

Fusion de Kinect2 / XSens / Aurora data

Data fusion