Introduction

L'Anonymiseur DICOM de la RSNA est un utilitaire de désidentification autonome et multiplateforme. Les fichiers d'images DICOM sont importés soit via des transferts réseau, soit directement depuis le système de fichiers local. Lorsqu'un fichier DICOM est reçu, il est désidentifié puis stocké dans un répertoire de stockage local défini par l'utilisateur. Les images anonymisées peuvent être exportées vers un serveur DICOM distant ou vers un objet de stockage AWS S3 tel que l'Archive d'Imagerie RSNA.

Directives de conception

  1. Open Source
  2. Interface graphique autonome écrite en Python 3
  3. Aucune connexion internet requise
  4. Adapté aux utilisateurs ayant des connaissances limitées en DICOM désireux de curer et soumettre des ensembles de données d'imagerie médicale pour le développement de modèles d'IA
  5. Plateformes supportées : Windows, OSX (Intel et ARM), plateformes Linux
  6. Développement continu, processus de construction et distribution de versions via le compte GitHub public de la RSNA
  7. Rétrocompatible avec la version Java
  8. Compatible avec les PACS, Cloud PACS et VNA
  9. Signalement de toutes les erreurs à l'utilisateur, sans dépendre de l'analyse des journaux
  10. Basé sur des projets avec gestion centralisée des paramètres
  11. Architecture logicielle Modèle-Vue-Contrôleur (MVC)
  12. Gestion de 1 million de patients
  13. Anonymisation de 10 fichiers par seconde

Anonymiseur Java précédent

Cette version de l'Anonymiseur est basée sur le Processeur d'Essais Cliniques (CTP) du Centre de Ressources en Imagerie Médicale (MIRC) Java Anonymiseur V16

Différences par rapport à la version Java

  1. Écrit en Python pour la version 3.11
  2. Implémente un sous-ensemble d'opérations pour gérer le script d'anonymisation par défaut : {@remove, @empty, @hashdate, @round, ptid, acc, uid}
  3. Les champs avec ptid dans l'opération seront remplacés par un ID Patient généré séquentiellement à partir de 1
  4. Les champs avec acc dans l'opération seront remplacés par un Numéro d'Accès généré séquentiellement à partir de 1
  5. Les champs avec uid dans l'opération seront remplacés par un UID généré séquentiellement de la forme {UIDRacine.IDSite.N} N = 1,2,3...
  6. Pas d'éditeur intégré pour le script d'anonymisation
  7. Pas de script de filtre, utilise les contextes d'association DICOM pour restreindre les classes de stockage et les syntaxes de transfert importées
  8. Pas de visualiseur interne d'images DICOM
  9. Pas de visualiseur interne de journaux
  10. Basé sur des projets : plusieurs projets séparés avec des configurations en bac à sable peuvent être créés et gérés sur la même machine
  11. Le projet définit les modalités autorisées, les classes de stockage, les syntaxes de transfert, les délais réseau et les niveaux de journalisation
  12. Configuration simplifiée du client et du serveur DICOM
  13. Les fichiers entrants ne sont pas écrits dans un répertoire temporaire sur le disque local pour un traitement différé ; ils sont plutôt conservés dans une file d'attente en mémoire
  14. Export vers un objet de stockage AWS S3 avec une authentification utilisateur AWS Cognito
  15. Création de Recherche de Patient / Index au format CSV avec le nombre de séries et le nombre d'instances ajoutés à chaque ligne d'étude
  16. Permet des processus d'importation et d'exportation concurrents
  17. Fournit une méthode fiable de récupération d'étude à tous les niveaux (Étude, Série, Instance) pour gérer les serveurs DICOM distants qui implémentent C-MOVE asynchrone (par exemple, VNA)
  18. Stockage rapide en mémoire pour le Modèle de Données de l'Anonymiseur