
Cybersecurity
Consulenza CISO-as-a-service: postura, roadmap di remediation, supporto continuativo.
Scopri →
Servizi & Sistemi Linux
Domini, hosting, PEC, infrastruttura email, servizi di rete e sistemi Linux. Assistenza e gestione dell'infrastruttura Open Source.
Scopri →Human Atlas è un esploratore di anatomia tridimensionale che gira nel browser, aperto il 5 settembre, scritto in TypeScript su React e Three.js. Permette di smontare un riferimento anatomico in 2.234 mesh selezionabili una per una, di attivare o spegnere 15 sistemi anatomici e di cercare fra 3.432 concetti con i rispettivi identificativi di origine.
Cosa fa e cosa serve per farlo girare
L’interazione è quella che ci si aspetta da un atlante: si orbita attorno al corpo, si seleziona una struttura direttamente sul modello, si isolano i pezzi e si passa dalla forma assemblata a una vista esplosa che dispone ogni parte visibile senza sovrapposizioni. Ci sono preset per lo scheletro e per gli organi, più controlli compatti pensati per il telefono.
Il requisito per eseguirlo in locale è Node 22.13 o superiore. La documentazione dice una cosa che vale la pena rileggere: “No API keys or accounts are needed”. Il progetto si compila in un sito statico e si può servire da qualunque hosting statico.
Questo significa che il modello anatomico non lascia il browser. Per un uso didattico o formativo in ambito sanitario è una proprietà architetturale, non una promessa: non c’è un servizio che riceve query, quindi non c’è traffico da valutare sotto il profilo della protezione dei dati. È una geometria diversa da quella degli strumenti equivalenti che passano da un backend.
Le due licenze, che è il punto
Il repository ne dichiara due distinte e la separazione è scritta a chiare lettere.
Il codice dell’applicazione è MIT. I dati anatomici sono un’altra cosa: vengono da BodyParts3D 4.0, un riferimento di anatomia maschile adulta, rilasciati sotto CC BY 4.0, con l’obbligo di preservare l’attribuzione quando li si ridistribuisce. Il README lo scrive in grassetto e rimanda a un file di attribuzione dedicato.
È la stessa distinzione su cui insistiamo da mesi guardando i modelli, dove la licenza dei pesi è cosa diversa dall’apertura del codice. L’avevamo allargata scrivendo dell’acquisizione di Hugging Face: licenza dell’artefatto, apertura del codice e neutralità del canale sono tre proprietà indipendenti. Qui le prime due stanno nello stesso repository con due licenze diverse. Chi riusa il progetto deve rispettarle entrambe.
Per chi lavora in sanità la conseguenza è concreta: si può prendere il codice e rifarci sopra un prodotto, ma l’attribuzione sui dati anatomici va portata dentro il prodotto finale.
Come sta in piedi nel browser
I numeri della geometria spiegano perché il progetto è interessante anche sul piano tecnico. Il modello impacchettato contiene 2.288.268 triangoli e scarica circa 33 MB di geometria compressa. La semplificazione è dichiarata con un limite di errore relativo dello 0,2% per struttura, con ogni mesh di origine mantenuta.
La tecnica di rendering è quella che rende sostenibile il conto. Le geometrie sono unite in lotti. Lo stato di ogni singola struttura, cioè traslazione, visibilità e selezione, è controllato da texture GPU per struttura invece che da migliaia di chiamate di disegno separate. La geometria per componente resta disponibile per il picking accurato, cioè per capire con precisione su cosa si è cliccato. Il rendering si aggiorna solo quando la scena cambia.
C’è poi una parte che ci riguarda direttamente: il progetto espone strumenti WebMCP opzionali, che rendono ricerca e ispezione dell’anatomia disponibili come tool nei browser compatibili. L’interfaccia funziona anche senza. È uno dei primi casi che vediamo in cui una struttura dati specialistica viene esposta a un agente dal lato client, senza un server in mezzo.
Cosa dichiara di non essere
Questa è la parte che, in ambito sanitario, distingue un progetto serio da uno pericoloso. È scritta senza giri di parole.
“This is an educational explorer, not a diagnostic or surgical tool”. Il riferimento anatomico è maschile adulto e la documentazione avverte che “it does not represent every human structure or variation”: non copre la variabilità individuale, che in clinica è precisamente ciò che conta. Le mesh di origine sono inoltre distinte dai concetti nominati, che possono raggrupparne più di una.
Sul collaudo, la validazione automatica copre i buffer delle mesh, i nomi, l’appartenenza ai concetti, i layout esplosi senza sovrapposizioni a diverse proporzioni di schermo e la distinzione fra tocco e trascinamento. Ma la documentazione aggiunge che le prestazioni su dispositivo fisico e il multitouch reale non sono stati provati.
Cosa ne pensiamo
La cosa che ci interessa di più è il modello di distribuzione. Un atlante anatomico che si compila in un sito statico, non richiede account e non manda niente a un server è esattamente la forma che dovrebbero avere più strumenti didattici in sanità, perché sposta la questione della protezione dei dati da un problema di contratti a una proprietà del software. Chi in un istituto formativo deve far passare uno strumento dalla valutazione privacy sa quanto pesi questa differenza.
La seconda è la disciplina sulle licenze, che vorremmo vedere più spesso. Separare la licenza del codice da quella dei dati e dirlo in modo esplicito è la cosa corretta da fare quando le due cose hanno origini diverse. Nel caso dei dati sanitari e anatomici l’origine conta sempre.
Sui limiti dichiarati, la nostra lettura è che siano il pezzo migliore della documentazione. Un progetto che scrive che non è uno strumento diagnostico, che il riferimento è un adulto maschio e che la variabilità individuale non è rappresentata è un progetto che si può valutare. Per chi si occupa di digital health questi tre limiti sono anche l’elenco delle cose da colmare prima di pensare a un uso clinico. Conoscerli in anticipo vale più di una funzionalità in più.
