L'interconnexion de différents sites d'imagerie médicale

10/06/2018

Un patient peut être amené à effectuer des examens dans différents centres d'imagerie médicale géographiquement éloignés. Se pose alors la problématique de la mise en commun des examens pour améliorer le suivi du patient.

Nous abordons une solution technique pour interconnecter à moindre coût plusieurs sites d'imagerie médicale qui souhaitent former un réseau informatique commun afin de fluidifier les échanges d'examens entre eux.

Les difficultés de l'interconnexion

Les capacités et la politique de chaque site

Chaque site a sa propre politique budgétaire et son propre système informatique (débit de la connexion internet, capacité de stockage, ...) qui peuvent différer des autres sites.

Les droits d'accès

Les données de santé ne doivent être accessibles qu'aux personnes habilitées, c'est-à-dire les personnes autorisées à consulter les examens d'un patient. Par exemple, tous les médecins d'un site n'ont pas l'autorisation d'accéder à tous les examens d'un autre site.

La quantité de données

L'imagerie médicale génère des quantités colossales de données, par exemple, un scanner peut générer 12 Giga-octets d'images par jour.

Chaque site crée une quantité de données qui dépend du nombre et du type d'appareils installés.

La précision des appareils d'imagerie médicale augmentant avec les évolutions technologiques, la quantité de données croît exponentiellement avec le temps.

La réconciliation des examens

Chaque site possède un système informatique différent avec sa propre logique de base de donnée et surtout son propre système d'attribution d'un numéro de patient unique.

La problématique est de détecter que deux examens réalisés sur deux sites différents appartiennent bien au même patient.

Données centralisées vs distribuées

Dans une architecture centralisée, toutes les données sont stockées au même endroit, c'est par exemple le cas du Dossier Médical Personnel ou DMP.

À l'opposé, dans une architecture distribuée, les données ne se trouvent pas au même endroit, comme pour le réseau Internet ou Git.

Coût de mise en place et de maintenance

  • Centralisé : les moyens sont mutualisés mais cela nécessite d'investir dans du nouveau matériel et les délais de mise en place sont rallongés du fait que tous les acteurs doivent se mettre d'accord puis normaliser et transférer leurs données sur un nouveau serveur central.
  • Distribué : chaque site conserve son matériel, n'a pas besoin de normaliser ou de transférer ses données et affecte un budget pour maintenir sa solution.

Sécurité

  • Centralisé : Les accès aux données sont sous le contrôle d'un seul responsable (une personne physique ou morale).
  • Distribué : La responsabilité est partagé entre les différents sites, chaque site est responsable de sa sécurité.

Cohérence des données

  • Centralisé : les données étant physiquement au même endroit, la réconciliation des données patient peut être réellement effectuée dans la base de donnée centralisée et dans les images DICOM.
  • Distribué : les données n'étant pas physiquement au même endroit, la réconciliation des données patient ne peut être que virtuel ou temporaire.

Accessibilité et disponibilité

  • Centralisé : les données doivent d'abord être transférées sur le serveur central avant d'être accessibles. En cas de panne du serveur central ou de la connexion internet centrale, plus aucune donnée n'est disponible, ce qui nécessite par sécurité un serveur central miroir. La vitesse d'accès aux examens est constante.
  • Distribué : Un examen est immédiatement disponible. En cas de panne de l'un des sites, les données des autres sites restent accessibles. La vitesse d'accès à un examen varie selon le site où a été réalisé l'examen.

Une architecture distribuée est plus flexible, plus rapide à mettre en place et moins coûteuse à court et moyen terme. A long terme, l'incertitude technologique et budgétaire ne permet pas d'opter pour la centralisation comme étant la meilleure solution.

Une solution distribuée

Les données sont physiquement distribuées sur plusieurs sites et un portail permet de virtuellement rassembler toutes les données de tous les sites sur une même interface.

Lorsqu'un médecin recherche les examens d'un patient, il interroge simplement le portail, il n'a pas besoin de connaître l'emplacement des données, ni de faire une recherche sur chaque site.

schéma solution distribuée multi-sites imagerie médicale

Côté serveur de chaque site

Si le serveur d'images du site ne l'intègre pas déjà, un service web respectant le standard DICOMweb est installé afin de rendre accessible le PACS du site depuis Internet.

Ce dernier dialogue avec le PACS à l'aide du standard DICOM Query/Retrieve et peut posséder un cache d'images préchargées avec les examens de la journée grâce aux worklists DICOM des autres sites.

Côté client : le portail

Accès aux examens

Par défaut, seul le médecin ayant réalisé l'examen peut y accéder.

Le médecin qui a réalisé l'examen peut donner des autorisations d'accès à un ou plusieurs confrères.

Les autorisation d'accès sont enregistrées dans chaque service web de chaque site qui reste donc maître de ses données.

Recherche d'examens

Le portail interroge simultanément tous les sites et réconcilie les données avant d'afficher les résultats.

Afin de regrouper tous les examens de tous les sites sous le même patient, un "super" identifiant patient unique temporaire est généré pour chaque examen.

Cet identifiant unique est par exemple créé à l'aide du nom du patient, la date de naissance et le sexe enregistrés dans l'examen DICOM.

Le portail peut également permettre de signaler d'éventuelles erreurs sur l'identité d'un patient et de les corriger.

Exemple d'un processus de recherche en pseudo-code :

// rechercher tous les patients dont le nom commence par durand
nomDuPatientRecherche = "durand*"
// interroger chaque site
foreach (site in sites) {
	// ajouter dans la liste des examens le résultat de chaque site
    exams += query(site, nomDuPatientRecherche) 
}
// réaliser la réconciliation virtuelle des examens
foreach (exam in exams) {
    // création d'un "super" identifiant unique patient pour chaque examen
    exam.suid = createSUID(exam.patientName, exam.patientBirthDate, exam.patientSex)
    // regrouper les examens avec le même identifiant patient
    patients[exam.suid].name = exam.patientName
    patients[exam.suid].exams += exam
}
// afficher la liste des examens regroupés par patient
foreach (patient in patients) {
	print(patient.name)
    foreach (exam in patient.exams) {
    	print(exam)
    }
}

Visualiser les examens

La téléradiologie est un autre sujet de préoccupation à approfondir mais trois possibilités pour visualiser un examen à distance sont envisageables :

  • si le médecin souhaite visualiser son examen avec sa station de diagnostic, toutes les images doivent être rapatriées localement au format DICOM avant de pouvoir être traitées
  • dans le cas d'une urgence, l'examen est directement visualisé en streaming comme pour une vidéo en ligne
  • une autre possibilité serait une solution hybride : le médecin visualise immédiatement l'examen en streaming et pendant ses pauses sur une image particulière, l'examen est téléchargé localement dans le cas où il souhaite approfondir son diagnostic sur sa station constructeur
Auteurs: Emmanuel ROECKER, Rym BOUCHAGOUR
Formations, Conseil & Développement e-Santé

Formations qui pourraient vous intéresser

Restez informé avec notre newsletter