Vai al contenuto
Yggdrasilby AImageLab
Yggdrasilby AImageLab

Immagini mediche per la ricerca, de-identificate e cifrate nel tuo browser.

Yggdrasil è una piattaforma open source per raccogliere, visualizzare, annotare, elaborare ed esportare dati di imaging. Il server conserva solo dati cifrati: soltanto i membri di un progetto possono leggerne le immagini e le annotazioni.

Questa installazione è gestita da Università degli Studi di Modena e Reggio Emilia. Sviluppato da AImageLab, Università degli Studi di Modena e Reggio Emilia.

Il visualizzatore su dati pubblici: una TC con la segmentazione dei polmoni di un processore, il suo rendering volumetrico, una RM cerebrale in quattro sequenze e una lesione contornata a mano.Immagini da dataset di ricerca pubblici: LIDC-IDRI (CC BY 3.0), UPENN-GBM (CC BY 4.0), ISIC Archive (CC0).

Conserviamo dati che non possiamo leggere

I tuoi file vengono de-identificati e cifrati nel tuo browser prima di qualsiasi caricamento. Ecco cosa succede a una serie TC.

  1. Sul tuo computer

    Una serie TC così come l'ha scritta lo scanner: nomi e ID nelle intestazioni.

  2. Nel tuo browser

    I tag identificativi vengono rimossi e il paziente riceve uno pseudonimo. Rivedi cosa cambia, poi ogni file viene cifrato con la chiave del progetto.

    • PatientName e PatientID sono sostituiti dallo pseudonimo CHE-014.
    • PatientBirthDate e StudyDate vengono svuotati; InstitutionName viene rimosso.
    • L'immagine e i tag rimanenti vengono cifrati con la chiave del progetto.
  3. Sul server

    Solo dati cifrati. Il server vede dimensioni, conteggi e tempi, mai nomi, pixel o annotazioni.

Cosa garantisce l'architettura

  • I metadati identificativi vengono rimossi sul tuo dispositivo prima di qualsiasi caricamento: per DICOM si segue il profilo PS3.15 Annex E; gli altri formati perdono il testo delle intestazioni, i metadati incorporati e i nomi originali dei file.
  • Ogni progetto ha la propria chiave. Solo i dispositivi dei membri la possiedono, sbloccata da un dispositivo noto o da una passkey. L'accesso con un codice via email non sblocca mai i dati.
  • I processori ricevono le chiavi solo per gli input dei propri job, a meno che un amministratore del progetto non conceda di più, e ogni membro lo vede.
  • Il formato di cifratura è pubblicato con vettori di test e usa solo librerie sottoposte ad audit.

Leggi il modello di privacy e sicurezza

I limiti reali

  • L'operatore vede dimensioni, conteggi, tempi, tipi di modalità, avanzamento delle attività e gli altri metadati elencati nella specifica, ma non il contenuto.
  • Il testo identificativo impresso nei pixel, o un volto in una scansione della testa, va rimosso da chi carica i dati. La schermata di caricamento segnala i rischi noti.
  • Le esportazioni escono dalla cifratura di proposito: un worker di esportazione decifra ciò che un amministratore ha scelto in un archivio in chiaro, conservato finché il suo link non scade.
  • Ogni membro di un progetto ne possiede la chiave; un membro rimosso può conservare i dati che aveva già aperto.
  • Il server distribuisce l'applicazione web, quindi un operatore malintenzionato potrebbe distribuire codice alterato. Installarla sul proprio server elimina questa fiducia.
  • Se tutti gli amministratori di un progetto perdono l'accesso alle proprie chiavi, nessuno può recuperare i dati, AImageLab compresa.

Come funziona

Un progetto, cinque passaggi. Un manifest versionato stabilisce quali modalità accetta il progetto, quali attività vedono i suoi annotatori e quali processori vengono eseguiti; ogni pagina dell'app ha un tour guidato.

  1. Raccogli

    Trascina file o cartelle. Il browser li raggruppa in pazienti, studi e serie, rimuove i metadati identificativi, ti mostra cosa ha rimosso, poi cifra e carica.

    La revisione del caricamento di una serie TC di 133 file: il nome e l'ID del paziente sono sostituiti dallo pseudonimo CHE-014, sette UID sono sostituiti, le date dello studio e dell'acquisizione sono svuotate e altri 15 campi sono rimossi.
  2. Visualizza

    I volumi si aprono in viste multiplanari con mirino, un rendering volumetrico e hanging protocol; immagini 2D e moduli si aprono accanto. La decifratura avviene nel browser.

    L'area di lavoro con uno studio RM cerebrale pubblico di un glioblastoma: le sue quattro sequenze, T1, T1c, T2 e FLAIR, in una griglia due per due, ognuna con un tumore con edema, e l'attività di segmentazione del tumore.
  3. Annota

    Le attività del progetto stanno accanto all'immagine: scelte, scale, misure, forme e segmentazioni, ognuna con le sue linee guida. Il lavoro si salva da solo, e altri annotatori possono correggerlo.

    Un'immagine dermatoscopica di una lesione cutanea pigmentata con il contorno tracciato come poligono, e il pannello dell'attività che elenca il contorno.
  4. Elabora

    I processori, i tuoi modelli sulle tue macchine, prendono in carico i job via HTTPS, decifrano solo gli input a cui hanno accesso e pubblicano i risultati come proposte da correggere.

    La pagina Processori: un processore di segmentazione dei polmoni registrato con accesso per singolo job, e il suo job su una serie TC, completato.
  5. Esporta

    Un worker di esportazione di cui il progetto si fida decifra ciò che un amministratore sceglie in formati aperti come DICOM SEG, NIfTI, nnU-Net e COCO, con una dataset card, dietro un link che scade.

    La pagina Esportazione: il worker di esportazione di questo server registrato, e il modulo per scegliere pazienti, attività ed etichette per una nuova esportazione.

Modalità e tipi di annotazione

Modalità e tipi di annotazione sono plugin con un contratto pubblico, quindi aggiungerne di nuovi non cambia il nucleo. Queste immagini sono l'app su dati di ricerca pubblici.

Usalo

Richiedi un progetto qui

Ogni installazione appartiene a una sola istituzione e ospita solo i progetti di quell'istituzione; i partner di altre sedi vi partecipano come membri invitati. Questa è gestita da Università degli Studi di Modena e Reggio Emilia. Spazio di archiviazione, membri, processori e durata vengono concordati per ogni progetto.

Il modulo chiede informazioni su di te, sul progetto, sulle sue modalità, sul volume di dati, sugli annotatori, sull'approvazione etica e sulla durata. La tua email viene verificata con un codice. Ogni amministratore di progetto e ogni persona che carica dati è responsabile dei dati che carica, inclusa la loro de-identificazione e la loro base giuridica.

Gestiscine uno tuo

Un'altra istituzione gestisce la propria installazione della stessa release, senza funzioni chiuse: una macchina con Docker Compose, il proprio spazio di archiviazione e le proprie chiavi. I suoi dati non raggiungono mai questa.

Come citare

Nessun articolo descrive ancora Yggdrasil 4. Finché non ce n'è uno, cita il software.

Codice sorgente: https://github.com/lorenzobrg/yggdrasil4

@misc{yggdrasil4,
  author       = {{AImageLab, University of Modena and Reggio Emilia}},
  title        = {Yggdrasil by AImageLab},
  year         = {2026},
  howpublished = {\url{https://github.com/lorenzobrg/yggdrasil4}},
  note         = {Open-source software, AGPL-3.0}
}

Team, partner e sponsor

Team

Yggdrasil è sviluppato da AImageLab, Università degli Studi di Modena e Reggio Emilia.

Sponsor e finanziamenti

Donazioni e sponsorizzazioni finanziano lo sviluppo. Gli sponsor dei livelli Supporter, Lab e Institution sono elencati qui e nel README, mai nell'area di lavoro di annotazione, e la sponsorizzazione non dà alcun controllo sulla roadmap.

Per sponsorizzare il progetto, contatta AImageLab.

Licenza

L'uso in ricerca è libero secondo la licenza AGPL-3.0. Le aziende sostengono lo sviluppo e l'hosting tramite sponsorizzazioni. Per un uso a cui la AGPL non si adatta, come un prodotto chiuso, AImageLab offre una licenza separata, concordata caso per caso.

Per una licenza separata, contatta AImageLab.