Utilisation du framework FW4SPL pour le web

Projet de fin d'étude ST50 - Printemps 2016

SCHWEITZER Olivier

Génie Informatique - I2RV

Tuteur en entreprise :

Moreau Johan

Suiveur UTBM :

Descamps Philippe

Sommaire

  • Présentation de l'IRCAD
  • Contexte
  • Technologies et objectifs
  • Réalisations
  • Bilan

Présentation de l'IRCAD

  • Institut de Recherche contre les Cancers de l'Appareil Digestif (Strasbourg)
  • Fondé en 1994 par le Pr. Jacques Marescaux
  • Centre de formation en chirurgie mini-invasive
  • Centre de recherche :
    • Cancérologie digestive
    • Robotique médicale
    • Recherche Informatique

Mission : faciliter la détection et la chirurgie des cancers

Contexte du projet

  • Projet storage    gestion (serveur, BDD) + visualisation de données médicales             

 

  • Données médicales : format DICOM  (Digital Imaging and COmmunications in Medicine) : image + metadonnées                                                       
  • Besoin :  utiliser applications sur le web                                                       

 

 

Contexte du projet

  • FW4SPL (Framework for Software Production Line) : permet de construire des logiciels pour le médical (C++)                                  

 

  • FW4SPL basé sur différentes librairies externes (médicales, traitement images, visualisation, IHM...)
     
  • FW4SPL = librairies externes + librairies FW4SPL                      

 

 

Outils & Technologies

  • Emscripten
    • Création : Alon Zakai / Mozilla
    • Ensemble d'outils de compilation
    • C/C++       JavaScript optimisé
    • Permet de porter des applications C/C++ sur le web

Objectifs

  • Compilation des librairies dépendantes

 

  • Compilation de FW4SPL                         

 

  • Tests et étude des performances         

Réalisations

Anonymisation DICOM

  • Données médicales circulant sur internet : besoin d'anonymisation

 

  • DICOM : fournit une spécification pour rendre données anonymes

 

  • Utilisation de DCMTK compilé avec Emscripten                                  

                                 

  • Application JavaScript                                                                              
    • Décide du traitement à effectuer
    • Appels à DCMTK (lecture & modifications fichiers DICOM)

Réalisations

Anonymisation DICOM

  • Exemple :
    • Nom de patient : JOHN^SMITH    ANONYMIZED^ANONYMIZED

 

  • Temps moyen pour 544 fichiers DICOM :  1min17s                
    • ~5x plus lent que version C++ (14,8s)           

 

  • Application fonctionnelle pour preuve de concept                  

Réalisations

FW4SPL : les problématiques

  • Plusieurs applications testées (traitements d'images, conversion de données)

 

  • Librairies externes importantes pas compatibles avec Emscripten

                 

  • FW4SPL utilise beaucoup de librairies      grande quantité de code JavaScript et performances réduites

Bilan

  • Projet et expérience très intéressants                                          

 

  • Objectifs atteints en partie                                                              

 

  • Performances assez faibles mais utilisation simplifiée              

 

  • Avenir :                                                                                                
    • Traitements côté serveur en C++
    • Emscripten : nouveau format (émancipation JavaScript)

Merci de votre attention !

Questions ?

Annexes

Application WebGL

Application WebGL

Prévisu dcm2pnm

Filtre ITK

Filtre ITK

Chaîne de compilation Emscripten

Chaîne de compilation Emscripten

VRRender

VRRender

VRRender

FatBuster

FatBuster

FatBuster

DICOM

Tag DICOM

Tag DICOM

FW4SPL

Performances Emscripten

dcm2pnm

Performances Emscripten

dcm2pnm

Performances Emscripten

ITK filter one file

Performances Emscripten

ITK filter one file

Performances Emscripten

ITK filter one file

Performances Emscripten

ITK filter multi-file

Performances Emscripten

ITK filter multi-file

Performances Emscripten

ITK filter multi-file

Performances Emscripten

Anonymisation

Soutenance ST50

By olivier1810

Soutenance ST50

  • 596