POLITECNICO DI BARI RETI INNOVATIVE PER LO SVILUPPO DI

POLITECNICO DI BARI
DIPARTIMENTO DI INGEGNERIA ELETTRICA E DELL’INFORMAZIONE
CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA ELETTRONICA
TESI DI LAUREA IN
CIRCUITI PER ELABORAZIONE DI SEGNALI
RETI INNOVATIVE PER LO SVILUPPO DI MODELLI DI
CALCOLO COLLABORATIVO NELLA DIAGNOSTICA
OFTALMICA
Relatore:
Chiar.ma Prof. ing. Leonarda CARNIMEO
Correlatore:
Chiar.mo Prof. Marcello CASTELLANO
Laureanda:
Annamaria Roberta ALTOMARE
ANNO ACCADEMICO 2014 / 2015
Indice
1. Introduzione ................................................................................................. 1
2. Stato dell’arte ............................................................................................... 4
2.1. Reti: struttura, proprietà, tipologie ................................................................. 4
2.1.1. Struttura di rete ................................................................................................. 4
2.1.2. Reti reali e loro proprietà .................................................................................. 5
2.1.3. Modelli di rete .................................................................................................. 7
2.1.4. Reti nel mondo ................................................................................................. 8
2.1.5. Reti collaborative ............................................................................................ 11
2.2. Virtual Organization ..................................................................................... 14
2.2.1. Definizione di Virtual Organization ................................................................ 14
2.2.2. Ciclo di vita .................................................................................................... 16
2.2.3. Condivisione delle risorse ............................................................................... 17
2.2.4. Esempi applicativi .......................................................................................... 19
2.3. Grid computing ............................................................................................. 23
2.3.1. Reti di calcolo: cluster, grid, cloud ................................................................. 24
2.3.2. Architettura di griglia ...................................................................................... 27
2.3.3. Grid computing e Virtual Organization ........................................................... 35
2.3.4. Portale web e workflow ................................................................................... 37
2.3.5. Ambienti di griglia .......................................................................................... 40
2.4. La tecnologia come supporto alla medicina .................................................. 45
3. Sviluppo di una rete collaborativa .............................................................. 47
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
Motivazione e definizione degli obiettivi ....................................................... 47
Ingressi e uscite ............................................................................................ 49
Fasi per la realizzazione dei database ........................................................... 52
Ruoli coinvolti nella Virtual Organization .................................................... 53
Regole di visualizzazione .............................................................................. 54
Sviluppo del processo di classificazione di immagini retinografiche ............. 56
3.6.1. Valutazione della qualità dell’immagine ......................................................... 58
3.6.2. Affiancamento dell’immagine elaborata.......................................................... 59
3.6.3. Registrazione delle lesioni patologiche ........................................................... 59
3.6.4. Controllo della retinografia classificata ........................................................... 60
3.6.5. Archiviazione della retinografia classificata .................................................... 61
3.7. Sviluppo del processo di realizzazione di immagini Ground Truth ................ 62
3.7.1. Selezione dell’immagine ................................................................................. 63
3.7.2. Sviluppo dell’immagine Ground Truth ........................................................... 64
3.7.3. Controllo dell’immagine Ground Truth........................................................... 65
3.7.4. Archiviazione dell’immagine Ground Truth.................................................... 66
3.8. Modello innovativo di rete oftalmica basato sulla Virtual Organization........ 67
4. Modello di una rete oftalmica innovativa per la retinopatia diabetica ....... 69
4.1. La retinopatia diabetica ................................................................................ 70
4.2. Il rilevamento dei vasi retinici attraverso un metodo combinato di
pre-processing ............................................................................................... 71
4.2.1. Acquisizione dell’immagine retinica ............................................................... 72
4.2.2. Metodo combinato di pre-processing .............................................................. 73
4.2.3. Segmentazione e post-processing .................................................................... 78
5. Risultati e discussione ................................................................................ 82
5.1. Rete collaborativa per la diagnostica oftalmica ............................................ 82
5.2. Organizzazione del lavoro collaborativo ........................................................ 83
5.3. Struttura dei database .................................................................................... 86
5.4. Modello di rete oftalmica per sviluppo database per retinopatia diabetica .... 87
5.5. Sviluppi progettuali futuri ............................................................................ 101
6. Conclusioni............................................................................................... 102
Bibliografia ................................................................................................... 104
1. Introduzione
I database sono molto più che archivi, in quanto non consistono in semplici elenchi o tabelle. I
database consentono, per mezzo di particolari applicazioni software, la gestione dei dati che
sono in essi suddivisi a seconda degli argomenti. Il database offre la possibilità di compiere
diverse operazioni sui dati, come il recupero, l’organizzazione, l’analisi e il riassunto, oltre a
permettere nuovi inserimenti, cancellazioni e aggiornamenti [Cas11].
La creazione e la gestione di un database necessita di molte operazioni e del coinvolgimento
di diverse figure professionali; si possono anche presentare inconvenienti legati alla natura
distribuita dei dati e/o a difficoltà normative. Queste problematiche si ritrovano in medicina,
dove c’è necessità di un ambiente collaborativo che gestisca l’alta densità di dati prodotti che
devono essere archiviati e processati [Sim15, Gri15, Tru13, Cas11, Bel07]. I database medici
hanno natura distribuita e presentano problemi di privacy e di proprietà delle immagini, ma
risultano fondamentali per i programmi di screening [Sim15, Tru13, Bel07]. Infatti le
metodologie di elaborazione delle immagini utilizzate in questi contesti, necessitano di risorse
dinamiche e scalabili, e spesso il loro sviluppo presenta limitazioni legate alla mancata
disponibilità di un ampio e vario set di immagini per l’addestramento e di riferimenti per la
loro convalida. Queste problematiche si presentano a causa dei già citati ostacoli normativi e
di proprietà, e delle dispendiose e laboriose operazioni che intervengono nella creazione dei
database stessi [Sim15, Tru13, Gri15].
Per questi motivi il presente lavoro affronta tali difficoltà con reti innovative per lo sviluppo
di modelli di calcolo collaborativo nella creazione di database per la diagnostica oftalmica. Si
gestirà la creazione di un database di retinografie classificate per l’addestramento e di un
database di riferimenti utili per la validazione, ognuno adeguatamente strutturato. Per il
raggiungimento di tale obiettivo si parte dal presupposto che la realizzazione e la gestione di
database che contengano molte utili informazioni, necessita della creazione di un complesso
sistema in cui confluisca il lavoro di specifiche figure mediche e non. Da questa analisi deriva
che il sistema può essere pensato come una struttura di rete collaborativa, modellata al fine di
raggiungere l’obiettivo prefissato.
Infatti, le reti, intese come strutture naturali fondamentali [Yan12, Boc06, New03, Wan03],
costituiscono oggi sistemi complessi che collegano gli individui in modi diversi in tutto il
mondo. Ogni tipo di rete, che sia biologica, tecnologica, di informazione o sociale, si
costituisce per soddisfare specifiche necessità. Nel contesto in esame risultano di particolare
rilevanza le reti di tipo sociale che permettono l’interazione tra persone o gruppi di persone.
Le reti collaborative sono in genere reti di affiliazione in cui i partecipanti collaborano in
gruppi di tipologie diverse per conseguire un determinato obiettivo.
Inoltre, lo sviluppo tecnologico ha reso possibile la transizione dei gruppi di lavoro su spazi
virtuali [Bre10], permettendo di avviare quel lungo processo evolutivo che ha condotto al
concetto di Virtual Organization. Le reti di tipo Virtual Organization, diffuse in tutto il
mondo e in particolar modo in Europa [Cas15, Ban05, Gae05, Bel07, Fos01], possono essere
1
definite da gruppi di individui e/o istituzioni che collaborano per un comune interesse e
attraverso determinati protocolli, condividendo risorse quali processori, dati, servizi e altro,
anche se geograficamente distribuiti. La natura di queste architetture di reti organizzative è
flessibile e ben si adatta a scenari che differiscono per numero di partecipanti, tipologia di
attività, durata, entità dell’interazione, e risorse condivise.
Per questi motivi si intende qui modellare reti innovative di tipo Virtual Organization per lo
sviluppo di database specifici, per gestire in modo più efficace ed efficiente il lavoro degli
individui coinvolti e risolvere le problematiche derivanti dalle operazioni insite nei processi
stessi di realizzazione.
In questa tesi saranno proposti modelli di rete collaborativa, ognuno configurato in modo tale
da consentire la realizzazione di un database. Si considereranno i ruoli professionali necessari
al raggiungimento dell’obiettivo e si creeranno i giusti collegamenti tra questi per permettere
lo sviluppo del flusso delle diverse operazioni; saranno anche proposti modelli di dati che
comprendano opportuni metadati per consentire di effettuare ricerche mirate sui database; si
stabiliranno importanti regole di condivisione che definiscano chiaramente e attentamente:
cosa può essere condiviso in termini di immagini e di informazioni ad esse relative, chi ha il
permesso di condividere considerando tutte le figure coinvolte interne ed esterne
all’organizzazione, e le condizioni in cui avviene la condivisione stessa.
Questi aspetti risultano fondamentali nella gestione di dati sensibili, quali i dati medici che,
come detto, sono difficili da maneggiare a causa dei problemi di privacy e di proprietà. A
questo proposito i contenuti dei database saranno strutturati con molta attenzione, per
soddisfare le richieste di sicurezza, proteggendo i dati sensibili da utenti non autorizzati.
Per sostenere il flusso di lavoro nell’ambiente collaborativo creato si ricorrerà alla tecnologia
del workflow che permette di gestire la sequenza delle attività necessarie per il
raggiungimento di un obiettivo [Cas15]. La tecnologia del workflow risulterà fondamentale
nello sviluppo del lavoro per la realizzazione dei database. Si suddivideranno i diversi
processi di creazione in fasi adeguate e si organizzeranno i diversi compiti, in modo tale da
assicurare sia la giusta successione delle operazioni sia l’introduzione di momenti di verifica
che garantiscano l’accuratezza dei dati inseriti nei database. La tecnologia del workflow
permetterà di supportare efficacemente il flusso di lavoro tra i diversi ruoli, assicurando che
ogni nuovo contenuto venga prodotto dal profilo corretto.
Nell’ambito dei modelli di rete collaborativa per la creazione di database di retinografie
classificate e di immagini di riferimento, si presenta un nuovo modello di rete collaborativa di
natura oftalmica che permette la creazione di ulteriori database. Si propone che questi
database contengano immagini retinografiche elaborate suddivise per patologia. La loro
creazione sarà basata sull’interazione tra il lavoro di produzione di immagini elaborate ad
opera degli utilizzatori dei due database precedentemente citati ed il puntuale lavoro di
controllo effettuato dai componenti dell’organizzazione virtuale presentata. A tal proposito,
verrà fornita una indicazione metodologica per la generazione di un database nell’ambito
2
della retinopatia diabetica attraverso lo sviluppo di un archivio di immagini per il
riconoscimento di vasi retinici.
Questo ulteriore modello di rete evidenzia i punti di forza del lavoro presentato, in quanto la
collaborazione tra tutte le figure coinvolte, interne ed esterne all’organizzazione, genera una
continua espansione dei database, mantenendo l’alta qualità dei contenuti e la facilità di
accesso e di utilizzo. Queste caratteristiche sono espressione della natura innovativa
dell’ambiente presentato e dei database così strutturati nell’ottica di contribuire a fornire un
supporto efficace nell’evoluzione della diagnostica oftalmica.
3
2. Stato dell’arte
2.1. Reti: struttura, proprietà, tipologie
L’uomo è immerso nelle reti ed è egli stesso, come individuo, l’unità di reti di relazioni
sociali e, come sistema biologico, il delicato risultato di reti di reazioni biochimiche [Boc06].
Storicamente lo studio delle reti [Yan12, Boc06, New03, Wan03] è stato principalmente di
dominio di un ramo della matematica discreta, conosciuto come teoria dei grafi. Fin dalla sua
nascita nel 1736, quando il matematico Svizzero Leonhard Euler pubblicò la soluzione al
problema dei ponti di Königsberg (riguardante la ricerca di un percorso che attraversasse
ciascuno dei ponti della città esattamente una volta), la teoria dei grafi ha avuto consistenti
sviluppi rispondendo a molte domande [Boc06].
2.1.1. Struttura di rete
Una rete [New03] è un insieme di elementi chiamati vertici o nodi che si possono quindi
definire le unità fondamentali di questo tipo di struttura. In questi sistemi, detti anche grafi
nella letteratura matematica, i vertici sono connessi tra loro da collegamenti che, a seconda
della tipologia di elementi della rete, possono indicare un legame fisico, un collegamento
ipertestuale, una relazione sociale o un altro tipo di connessione. Un collegamento può essere
orientato se si percorre in un’unica direzione o non orientato se può essere percorso in
entrambe le direzioni; la direzione dei collegamenti (detti in questo caso anche archi) è
indicata da frecce come in Fig. 1 [New03].
Fig. 1. Rappresentazione di un grafo: (a) non orientato; (b) orientato
4
La struttura dei collegamenti in una rete [Boc06] ha importanti conseguenze sulla robustezza
del sistema e sulla risposta a perturbazioni esterne, come guasti casuali o attacchi mirati.
Se da un grafo si estraggono solo alcuni nodi mantenendo tutti i collegamenti tra questi, si
definisce un sotto-grafo.
Un concetto fondamentale nella teoria dei grafi è quello della raggiungibilità tra due differenti
nodi che non implica la loro adiacenza. Un cammino da un nodo di partenza ad un altro di
arrivo è una sequenza alternata di nodi e collegamenti che si avvia con il nodo iniziale e
termina con quello finale. La lunghezza di un cammino è definita come il numero di
collegamenti in sequenza, da cui il riferimento al cammino con la minima lunghezza come
alla geodetica tra due nodi della rete. Un cammino chiuso, formato da almeno tre nodi in cui
nessun collegamento è ripetuto, è invece indicato come ciclo.
Il numero di collegamenti per un vertice costituisce il grado che non è necessariamente pari al
numero di vertici ad esso adiacenti, perché potrebbe esserci più di un collegamento tra due
nodi. In un grafo orientato si considera per ogni vertice il grado degli archi in ingresso e il
grado degli archi in uscita. La caratterizzazione topologica basilare di un grafo può essere
ottenuta in termini di distribuzione di grado, definita come la probabilità che un nodo, scelto a
caso, abbia un determinato grado o, equivalentemente, come la frazione di nodi del grafo con
il suddetto grado. Nelle reti reali, la distribuzione di grado si discosta significativamente dalla
distribuzione di Poisson, tipica di un grafo casuale, cioè un grafo con una disposizione
disordinata dei collegamenti tra i nodi. Lo studio dei grafi casuali ebbe inizio con Erdös e
Rényi nel 1959, i quali si proposero di investigare le proprietà dei grafi all’aumentare del
numero di collegamenti casuali con metodi probabilistici [Boc06].
2.1.2. Reti reali e loro proprietà
Molti sistemi reali [Boc06] sono realizzati da un gran numero di unità dinamiche altamente
interconnesse, risulta quindi utile un primo approccio che li modelli sotto forma di grafi per
catturarne le proprietà globali. Risulta evidente come questa sia una forte approssimazione,
poiché è un approccio che consiste nel tradurre le interazioni (generalmente dipendenti dal
tempo, dallo spazio e eventualmente da altre variabili) tra due unità dinamiche in un numero
binario che indichi l’esistenza o la mancanza del collegamento tra i due nodi. Tuttavia tale
approssimazione fornisce una rappresentazione dell’intero sistema che, seppur semplice,
permette di estrarre abbastanza informazioni per lo studio dello stesso.
Si può affermare che la maggior parte delle reti reali è caratterizzata dalle stesse proprietà
topologiche, tra cui risultano maggiormente rilevanti l’effetto small-world, la distribuzione di
grado di tipo scale-free, la proprietà di clustering e le correlazioni.
L’effetto small-world emerge quando in una rete si ha una lunghezza media di cammino
particolarmente breve. Le reti reali, nonostante siano di grandi dimensioni, presentano un
relativamente breve cammino minimo tra due generici nodi, poiché sono presenti
5
collegamenti tra differenti settori della rete che consentono di accelerare le comunicazioni tra
nodi altrimenti distanti.
La proprietà small-world, nelle reti reali, è spesso associata alla presenza di un alto
coefficiente di clustering. Quest’ultimo esprime la presenza di un collegamento tra due nodi
connessi ad uno stesso nodo, e quindi si concretizza con la presenza di un gran numero di
triangoli all’interno del grafo.
Un'altra importante caratteristica riscontrata nelle reti reali riguarda la distribuzione di grado
che, come già riportato, non segue la distribuzione di Poisson ma sorprendentemente
obbedisce alla legge di potenza con esponente compreso tra 2 e 3. Questo tipo di distribuzione
rimane invariata, a meno di una costante moltiplicativa, nei cambiamenti di scala, pertanto le
reti che la esibiscono sono chiamate reti di tipo scale-free. È necessario sottolineare che
questa definizione non comporta l’invarianza di altre proprietà strutturali, nei cambiamenti di
scala, di tali grafi. Questa proprietà si traduce nella presenza di pochi nodi con molte
connessioni e di molti nodi con pochi collegamenti.
Molte reti reali possono anche essere correlate, cioè la probabilità che un nodo sia connesso
ad un altro nodo con lo stesso grado, dipende proprio da quest’ultimo.
Inoltre, a volte, è anche possibile individuare un particolare motivo ripetuto di
interconnessioni. In Fig. 2 si può osservare la rappresentazione grafica di tutti i 13 tipi di
motivi di interconnessioni che si possono generare tra tre nodi in un grafo orientato [Boc06].
Fig. 2. Rappresentazione grafica di 13 tipi di motivi di
interconnessioni
6
2.1.3. Modelli di rete
Come descritto in [Yan12] si possono individuare un insieme di modelli strutturali comuni nel
panorama delle reti reali. Nel descrivere questi modelli è preferibile rifarsi ad un livello meno
fine di risoluzione, cioè raggruppare i nodi aventi la stessa distribuzione di probabilità di
collegamenti in un unico blocco. Si possono, quindi, definire i multi modelli delle reti come
un organizzazione gerarchica che consiste in un set di blocchi annidati. I blocchi nei livelli
inferiori sono direttamente annidati nei più grandi blocchi dei livelli direttamente superiori.
Si possono quindi dare le seguenti definizioni dei modelli che si possono ritrovare più
frequentemente nelle reti reali:
-
community: un blocco collegato a se stesso;
authority: un blocco, collegato a se stesso, al quale sono collegati altri blocchi;
hub: un blocco collegato a se stesso che si collega ad altri blocchi;
outlier: un blocco, non collegato a se stesso, al quale si collega un blocco di tipo hub o
anche un blocco, non collegato a se stesso, che si collega con un blocco di tipo authority;
- bow tie: un sotto-grafo che consiste in un blocco definito Bc e due set di blocchi definiti
BL e BR rispettivamente, tali che: 1) Bc è bilateralmente collegato con BL e BR; 2) non ci
sono elementi in comune tra i due set BL e BR; 3) non ci sono collegamenti tra i due set
BL e BR;
- multipartite: un sotto-grafo composto da un set di blocchi, non collegati a se stessi, che
sono reciprocamente collegati;
- bipartite: uno speciale caso di multi partite che consiste in un sotto-grafo composto da
due blocchi, non collegati a se stessi, che sono unilateralmente o bilateralmente collegati
tra loro.
Inoltre, nelle reti reali possono esistere sovrapposizioni tra differenti modelli, cioè uno stesso
blocco può far parte contemporaneamente di più sotto-grafi. In Fig. 3 si ritrovano i modelli,
precedentemente descritti, rappresentati sotto forma di reti, nella prima colonna di ogni caso,
e di modello a blocchi, nella seconda colonna [Yan12].
7
Fig. 3. Modelli frequentemente osservati nelle reti reali: (a)
community; (b) authority outlier; (c) hub outlier; (d) bow tie; (e)
multipartite; (f) bipartite; (g) multi modelli su due livelli
2.1.4. Reti nel mondo
Nel mondo sono numerosi i sistemi che presentano una struttura di rete [New03, Wan03], si
possono citare esempi come Internet rete di domini, il World Wide Web rete di siti web, i
social networks e altre reti di collegamenti tra persone come le reti organizzative; anche
l’economia globale può essere considerata una rete composta dalle reti delle economie
nazionali, che sono esse stesse reti di mercati che sono a loro volta reti di interazioni tra
produttori e consumatori. Anche in natura si hanno strutture di rete. Ad esempio pensando alla
struttura cellulare come ad un’organizzazione funzionale, ogni cellula può essere considerata
come una singola rete, ma si hanno anche reti di distribuzione, come le reti dei vasi sanguinei
o reti come quella cerebrale composta di neuroni. Altre strutture di rete si possono ritrovare
considerando le relazioni presenti tra le parole in una lingua, gli argomenti in una
conversazione, le strategie per risolvere un problema matematico o, anche, le vie di
trasmissione delle malattie.
Se si esaminano i dati provenienti da reti sviluppatesi in diversi settori della scienza e le loro
proprietà, si possono considerare quattro grandi categorie di reti come descritto in [New03]:
reti biologiche, reti tecnologiche, reti di informazione e reti sociali.
Esempi classici di rete biologica [New03] sono le reti metaboliche caratterizzate da legami
chimici o, contrapposte ad esse, le reti di interazione fisica tra le proteine, come indicato in
8
Fig. 4. Altri importanti casi di studio sono le reti dei neuroni, le reti vascolari e le reti
alimentari.
Fig. 4. Piramide composta da vari componenti molecolari di geni
cellulari, RNAs, proteine e metaboliti
Le reti tecnologiche [New03] sono, invece, reti artificiali disegnate tipicamente per la
distribuzione di alcune risorse. La rete elettrica rappresenta sicuramente un buon esempio, ma
si possono anche investigare la rete stradale, ferroviaria e telefonica. In questa casistica
bisogna inserire anche Internet in quanto rete di collegamenti fisici tra computer. Gli studi
inerenti Internet non possono considerare i singoli elementi connessi alla rete data la loro
vasta quantità, essi sono quindi condotti a livello di router o di sistemi autonomi, cioè gruppi
di computer localmente connessi. Queste modalità di indagine permettono di ricostruire
abbastanza bene la struttura fisica di Internet.
Le reti di informazione [New03] dette anche reti di conoscenza, trovano una buona
rappresentazione nelle reti di citazione, in cui le relazioni tra gli articoli, che rappresentano i
vertici della rete, sono definite da archi orientati (un collegamento orientato da A a B
indicherà che A cita B). La struttura della rete di citazione riflette, quindi, la struttura delle
informazioni contenute nei suoi nodi, da cui la definizione di rete di informazione. In
particolare le reti di citazione sono inoltre acicliche perché un articolo può citare solo altri
articoli già scritti e non quelli ancora da scrivere; quindi generalmente seguendo i
collegamenti nella struttura si procede a ritroso nel tempo. Il vantaggio di queste reti è
nell’abbondanza e nell’accuratezza dei dati. Si rende necessario, però, citare un altro
9
importante esempio di rete di informazione, la rete delle pagine Web detta World Wide Web.
In questa rete le pagine Web rappresentano l’informazione e le connessioni sono rese possibili
dai collegamenti ipertestuali in esse contenuti. È molto importante non confondere il Web con
Internet che, come già detto, è una rete fisica di computer. A differenza delle reti di citazione
la rete World Wide Web è ciclica.
Fig. 5. Rappresentazione della struttura di Internet e della rete World
Wide Web
Infine, una rete sociale [New03] è un insieme di persone o gruppi di persone, legati da diverse
interazioni. Di particolare rilievo sono gli studi condotti da Jacob Moreno negli anni ’20 e ’30
sui modelli di amicizia tra piccoli gruppi, le opere di Rapoport et al. inerenti le relazioni tra
gruppi di bambini in età scolare e, ancora, i lavori di Elton Mayo et al. sui rapporti tra i
lavoratori delle fabbriche nella Chicago degli anni ’30. Un altro importante set di esperimenti
si ritrova nei lavori di Milgram che pur non ricostruendo nessuna rete reale, riescono a
descrivere molto della struttura di una rete. Milgram chiese a persone casualmente selezionate
in Nebraska di spedire una lettera ad un destinatario finale a Boston di cui non venne fornito
l’indirizzo. Le lettere potevano essere inviate solo a qualcuno che avesse un legame
abbastanza forte col mittente corrente (legame espresso, secondo Milgram, dal riferirsi da
parte del mittente al destinatario col nome di battesimo) che fosse presumibilmente
10
maggiormente prossimo al destinatario finale. Sebbene l’ipotesi comune fosse si centinaia di
passaggi per permettere alle lettere di giungere alla loro destinazione finale, i risultati ottenuti
da Milgram mostrarono che il numero medio di collegamenti tra il mittente iniziale e il
destinatario finale fosse mediamente pari a sei. Questo esperimento è alla base del concetto
dei “sei gradi di separazione” che venne poi espresso nel lavoro di Guare. L’esperimento è
stato poi riprodotto con successo da Dodds et al. considerando gli scambi di e-mail.
Spesso gli studi sulle reti sociali presentano scarsa accuratezza, poiché generalmente i dati
afferenti questa tipologia di reti sono racconti interrogando direttamente i partecipanti con
questionari o interviste; questo comporta risultati affetti dai pregiudizi degli intervistati e la
necessità che le strutture investigate si mantengano di piccole dimensioni. La grande quantità
di errori, che si vengono a generare per i suddetti motivi, porta molti ricercatori ad investigare
in altro modo le reti sociali. Un esempio di fonte di dati abbondanti e relativamente affidabile
sono le reti collaborative [New03].
2.1.5. Reti collaborative
Le reti collaborative [New03, Bre10, Bre15] sono in genere reti di affiliazione in cui i
partecipanti collaborano in gruppi di tipologie diverse. La comune appartenenza ad un gruppo
permette di stabilire un collegamento tra due individui. Esempi di reti collaborative [New03]
si ritrovano in campi molto diversi della vita dell’uomo, per citarne alcuni si consideri le reti
di collaborazione di attori (in cui due attori sono considerati connessi se compaiono nello
stesso film), reti di direttori di società (in cui due direttori sono collegati se appartengono allo
stesso consiglio di amministrazione) , reti di coautori (in cui due autori sono connessi se
artefici di uno o più lavori) o reti tra individui che si vengono a creare dallo scambio di
informazioni. Studi sono stati fatti anche per reti di e-mail, esplorando ad esempio il traffico
di posta elettronica tra gli studenti dell’Università di Kiel. In questo tipo di rete gli indirizzi email costituiscono i nodi che sono collegati da archi rappresentanti i messaggi inviati
[New03].
Le ricerche [Bre10] sulla comunicazione virtuale sono state sviluppate in ragione dello
sviluppo tecnologico e della crescita dei mercati globali che sempre più hanno portato allo
sviluppo del lavoro in spazi virtuali. Gli studi mostrano l’insorgere nei gruppi di lavoro
virtuali di problemi di comunicazione (intesa da Reilly come forma di incomprensione o
cattiva interpretazione che conduce ad una rottura nei dialoghi e rende necessarie azioni
correttive da parte dei partecipanti), generalmente causati da fattori quali l’ethos, la
comunicazione sociale, la conoscenza degli altri, le tecnologie e i confini.
La chiave per un efficace scambio di informazioni si ritrova nell’ethos che può anche essere
inteso come credibilità, definita da Fogg come una qualità a due dimensioni: affidabilità e
competenza. Questo fattore diventa ancora più importante nei gruppi di lavoro virtuale perché
gli individui, ad esso appartenenti, operano in strutture astratte, rendendosi così più
vulnerabili ai malintesi.
11
La comunicazione sociale, in questo tipo di studi, intesa come la chiave per lo sviluppo
dell’ethos, è considerata come la comunicazione occasionale o informale tra colleghi che non
condividono specificatamente lo stesso compito. Questo tipo di comunicazione si affievolisce
con l’incrementassi delle distanze (si pensi ad esempio allo scambio di informazioni che può
avvenire in un incontro tra colleghi nel corso di una pausa pranzo), pertanto la costruzione
dell’ethos diventa più complessa.
Molto rilevante, per questi gruppi, diventa anche la capacità e la volontà di capire le
prospettive di coloro con cui si comunica per una maggiore comprensione reciproca.
La comunicazione è, inoltre, fortemente influenzata dalla tecnologia, ad esempio possono
sorgere complicanze legate all’utilizzo differente dei servizi da parte dei singoli individui,
eventualmente legati a metodi di utilizzo sorpassati. Risulta anche necessaria un’accurata
scelta delle tecnologie in base al contesto lavorativo.
Infine, si fa riferimento ai confini per indicare regole esplicite o implicite che limitano la
comunicazione. Ovviamente in un contesto astratto questi non risultano così evidenti, ma si
possono individuare ad esempio nell’utilizzo di password per proteggere alcuni spazi di
lavoro, permettendo così il successo del gruppo di lavoro. Si vengono quindi a creare delle
strutture sociali in cui si determina “chi interagisce con chi” e in quali circostanze si
sviluppano queste interazioni.
Tuttavia col proseguire delle ricerche sono emersi anche altri fattori critici per lo sviluppo dei
gruppi di lavoro virtuali, come la lingua, la condivisione delle informazioni, i tempi, la troppa
fretta, il “galateo informatico” altrimenti detto netiquette e altri che si materializzano
riferendosi ad un analisi, effettuata da parte dei partecipanti, sul lavoro giornaliero, ponendo
meno attenzione ad un panorama più ampio dei problemi comunicazionali. Anche questo tipo
di problematiche merita attenzione, in quanto fa riferimento ad uno stato realistico di lavoro in
cui si valutano costi in termini di tempo e produttività [Bre10].
In Fig. 6 si evidenziano i principali fattori che causano cattiva comunicazioni negli ambienti
di lavoro virtuale, emersi nella letteratura CMC (Computer Mediated Communication) e in
[Bre10]. Con riferimento alla Fig. 6: nel primo settore sono riportati i fattori emersi nelle
ricerche CMC, senza distinzione tra relazioni lavorative tra persone native di differenti culture
nazionali che vivono e lavorano oltre i confini nazionali, e rapporti di lavoro tra individui con
la stessa cultura nazionale che vivono e lavorano all’interno della stessa nazione; nel secondo
e nel terzo settore sono rispettivamente riportati i fattori emersi nelle ricerche CMC e in
[Bre10], considerando solo le relazioni lavorative tra persone native di differenti culture
nazionali che vivono e lavorano oltre i confini nazionali.
12
Fig. 6. Confronto dei fattori di cattiva comunicazione nel lavoro
virtuale
Studi più recenti, condotti in [Bre15], hanno investigato il lavoro di gruppi virtuali nel campo
dell’ingegneria, attraverso un sondaggio on-line effettuato su 285 ingegneri nella primavera
del 2013 (il 70% delle risposte deriva da partecipanti al di fuori degli Stati Uniti). I
partecipanti hanno lavorato in molti settori ingegneristici, tra cui elettrico, elettronico,
chimico, edilizio, meccanico, e aerospaziale, e in organizzazioni di tutte le dimensioni (da
meno di 100 a più di 20.000 dipendenti), nei paesi di tutto il mondo.
Tra gli intervistati il 68% riporta l’insorgere di problemi di comunicazione nei loro ambienti
di lavoro virtuale, evidenziandone i conseguenti costi; il 60% sottolinea la mancanza di
formazione da parte dei relativi enti di appartenenza, per sostenere un lavoro di tipo virtuale;
mentre il 17% afferma che le rispettive società di appartenenza hanno provveduto ad una
leggera informativa che non ha conseguito il giusto successo. Questo indica che mentre da un
lato le aziende spingono per lo sviluppo di gruppi di lavoro virtuali, dall’altro non forniscono
le giuste competenze ai partecipanti di tali gruppi che si ritrovano, così, ad affrontare sfide
significative.
Si possono riassumere, nel settore ingegneristico, le seguenti motivazioni riguardanti
l’utilizzo dei gruppi virtuali:
- stabilire collegamenti tra dipendenti della stessa azienda che lavorano in differenti paesi
(60%);
13
- stabilire collegamenti tra dipendenti della stessa azienda che lavorano nello stesso paese
(52%);
- stabilire collegamenti tra dipendenti di diverse aziende che lavorano nello stesso paese
(48%);
- stabilire collegamenti tra dipendenti di diverse aziende che lavorano in differenti paesi
(39%).
Gli studi [Bre15] evidenziano, inoltre, una discrepanza tra le tecnologie più usate e quelle
considerate più utili; ad esempio e-mail e telefono sono considerate, dagli intervistati, le
tecnologie più utilizzate ma solo una piccola percentuale di questi le ritiene le più utili. Spesso
la tecnologia limita il lavoro di questi professionisti, quindi è importante effettuare le giuste
scelte tecnologiche.
Infine, si possono identificare otto segni di successo di un gruppo virtuale, qui esposti in
ordine di importanza decrescente, rispetto alle risposte dei professionisti:
1)
2)
3)
4)
5)
6)
7)
8)
raggiungimento degli obiettivi;
utilizzo efficace del tempo / determinazione del giusto ritmo;
conseguimento degli obiettivi economici / rispetto del bilancio;
realizzazione di un prodotto di qualità;
creazione di un efficace flusso di comunicazione;
esperienza di un basso tasso di problemi;
supporto alla soddisfazione del cliente;
supporto alla soddisfazione della squadra di lavoro.
Attraverso le informazioni raccolte in questi studi, si possono meglio pianificare,
implementare, valutare e gestire gruppi di valoro virtuale [Bre15].
2.2. Virtual Organization
Le sfide della società odierna necessitano di notevoli ed intuitivi approcci, come emerge dalle
reti di collaborazione dinamica, caratterizzate da una buona rapidità di formazione e di
adattamento. Queste nuove forme di collaborazione, sviluppatesi grazie all’evoluzione delle
tecnologie dell’informazione e della comunicazione, hanno dato vita al concetto di Virtual
Organization (VO) [Cas15, Ban05, Gae05, Bel07, Fos01].
2.2.1. Definizione di Virtual Organization
L’idea di VO [Cas15] è frutto di un lungo processo di evoluzione che ha origine in studi,
risalenti al 1990, in cui si possono ritrovare considerazioni circa compagnie virtuali, aziende
14
virtuali o corporazioni virtuali, per poi svilupparsi all’intero di comunità di gestione e di
comunità per le tecnologie di informazione e di comunicazione.
L’importanza di questo tipo di organizzazione è sottolineata dai molti esempi di VO che si
possono trovare in tutto il mondo e particolarmente in Europa, dove, la spinta per l’affermarsi
di una cultura di cooperazione, non solo ha reso possibile il progresso nei settori di ricerca e
sviluppo, ma ha, inoltre, permesso l’emergere di varie forme di organizzazione anche a livello
regionale.
Una rete di tipo VO può essere definita come un gruppo di individui e/o istituzioni che
collaborano, pur essendo geograficamente distribuiti, per un comune interesse, condividendo,
attraverso determinati protocolli, risorse quali processori, dati, servizi e altro.
Tuttavia si possono ritrovare più definizioni di VO:
- una temporanea rete di società che insieme arrivano rapidamente a sfruttare opportunità
che mutano velocemente;
- l’abilità dell’organizzazione di coordinare e di ottenere regolarmente le competenze,
attraverso la progettazione di processi economici di aumento del valore e meccanismi di
governo che coinvolgono elettori esterni ed interni per portare, sul mercato, un valore
differenziale e superiore;
- una rete di organizzazioni indipendenti e geograficamente distribuite, con differenti
obiettivi, in cui tutti i membri forniscono le proprie competenze e la cooperazione è basta
su relazioni semi stabili;
- un organizzazione geograficamente distribuita i cui membri che sono vincolati da interessi
comuni a lungo termine, comunicano e coordinano il loro lavoro attraverso le tecnologie di
informazione;
- una rete di organizzazioni in cui si formano allineamenti temporanei per combinare le
specifiche capacità dei suoi membri, al fine di sfruttare velocemente uno specifico prodotto
o un servizio per la produzione; dopo il conseguimento dell’obiettivo il provvisorio
allineamento si dissolve e i membri diventano disponibili per un altra virtuale e
temporanea destinazione.
Ovviamente una questione fondamentale riguarda le modalità attraverso cui è possibile
soddisfare le necessità fondamentali di questo tipo di collaborazioni. Sicuramente la
formazione di una rete di tipo VO dipende dalla compartecipazione dei membri per il
raggiungimento di un obiettivo comune, dalla presenza di un certo livello di fiducia reciproca,
dall’istituzione di infrastrutture comuni e anche dalla condivisione dei valori [Cas15].
Come indicato in [Fos01], una rete di tipo VO può nascere ad esempio in un contesto in cui
fornitori ASP (Application Service Providers), fornitori SSP (Storage Service Providers)
(ASP e SSP permettono alle aziende di esternalizzare l’archiviazione ed elaborare le esigenze
di altri) e consulenti vengono impiegati nella valutazione degli scenari durante la
pianificazione di nuovi stabilimenti; oppure si può pensare ad un gruppo di gestione delle crisi
15
che utilizza database e sistemi di simulazione per fronteggiare le situazioni di emergenza. Se
si considerano diverse reti di tipo VO si possono notare differenze di convinzioni, di
obbiettivi, di dimensioni, di durata, di struttura, di comunità che potrebbero portare al pensarle
come organizzazioni completamente differenti l’una dall’altra. Tuttavia se si guarda alle
richieste tecnologiche, si evidenziano i problemi e le esigenze che le diverse reti di tipo VO
hanno in comune. Tra le necessità più importanti si possono citare:
- relazioni di condivisione altamente flessibili;
- sofisticati e precisi livelli di controllo che gestiscano le modalità di condivisione delle
risorse, le deleghe e l’applicazione di politiche globali e locali;
- la condivisione di risorse diverse come programmi, file, dati, computer, sensori, reti;
- modalità di utilizzo diverse che consentano sia l’utilizzo del singolo utente, sia l’impiego
da parte di più utenti, tenendo conto della qualità del servizio, della pianificazione, della
co-allocazione e della contabilità [Fos01].
2.2.2. Ciclo di vita
A prescindere dal tipo di rete di tipo VO presa in esame, si possono sempre individuare tre
fasi nella sua vita [Cas15]: fondazione, istituzionalizzazione e virtualizzazione. In Fig. 7 è
mostrato il ciclo di vita di una rete di tipo VO: nella parte superiore sono riportate in sequenza
le fasi che intervengono nella vita di una rete di tipo VO; nella parte inferiore sono indicati i
metodi di impiego delle Tecnologie dell’Informazione; infine le frecce tratteggiate collegano
ogni fase con il relativo metodo di impiego.
Fase
Impiego delle
Tecnologie
dell’Informazione
Fondazione
Istituzionalizzazione
Virtualizzazione
Tradizionale
Evoluto
Integrato
Fig. 7. Ciclo di vita di una rete di tipo VO
La prima fase è quella in cui la rete di tipo VO viene ad essere strutturata per raggiungere
l’obiettivo dei membri partecipanti. In questa fase vengono sfruttate le tecnologie in quello
che è definito un modo tradizionale che supporti e migliori l’amministrazione delle attività dei
membri, i compiti assegnati e i processi decisionali. Nel loro ruolo tradizionale, infatti, le
tecnologie dell’informazione si occupano di svolgere funzioni a supporto dei basilari lavori di
ufficio, per automatizzare, ottimizzare e supportare le azioni quotidiane, controllare gli
inventari, ottenere un risparmio dei costi di funzionamento amministrativi.
16
Nella fase successiva di istituzionalizzazione vengono sviluppati i meccanismi sociali, in
quanto il prosperare di una rete di tipo VO dipende dall’istituzione di una propria cultura
(valori e convinzioni), le regole e le procedure operative. In questa fase la tecnologia evolve
nel modo più adatto per sostenere le strategie organizzative, consentendo di raggiungere
l’obiettivo preposto.
Con l’ultima fase di virtualizzazione la rete di tipo VO evolve, promuovendo i rapporti tra i
membri, nel tentativo di sviluppare un organizzazione completa. In questa fase che comporta
la gestione dei conflitti e il sostegno della cooperazione tra i partecipanti, la rete di tipo VO
utilizza in modo integrato le tecnologie dell’informazione, cioè le impiega nel conseguimento
della creazione di prodotti e servizi, e della modifica dei rapporti tra fornitori e clienti. Si
vengono così a creare nuovi canali di comunicazione e collegamenti tra i membri e a stabilire
nuove procedure operative, permettendo all’organizzazione di tendere verso nuove
opportunità.
Risulta, quindi, evidente la stretta relazione tra lo sviluppo tecnologico e la vita delle reti di
tipo VO. Con lo sviluppo delle tecnologie dell’informazione si abbassano i costi di
integrazione e coordinazione, permettendo alle organizzazioni di formare sempre più
partenariati con strutture che afferiscono a diversi settori specifici [Cas15].
2.2.3. Condivisione delle risorse
Un punto focale, di questo tipo di organizzazioni, si ritrova nella condivisione delle risorse
[Fos01, Cas15]. In una rete di tipo VO vengono istituite delle regole di condivisione che
definiscono, chiaramente e attentamente, cosa può essere condiviso, chi ha il permesso di
condividere e le condizioni in cui avviene la condivisione, controllando i fornitori di risorse e
i consumatori.
Questi protocolli si rendono necessari perché la condivisione non riguarda lo scambio di un
generico file, ma comporta un accesso diretto ai computer, ai software, ai dati, e a quant’altro
può essere utile per la risoluzione di problemi a natura collaborativa e per strategie di
intermediazione di risorse nei settori industriali, scientifici e ingegneristici [Fos01].
La gestione delle risorse che non solo sono condivise, ma anche distribuite ed eterogene, è
resa possibile da meccanismi di autenticazione e autorizzazione che garantiscono la sicurezza,
e da meccanismi che permettono la loro identificazione, in un ambiente altamente scalabile
come quello di una rete di tipo VO [Cas15].
Per mettere in luce la natura delle reti di tipo VO in [Fos01] si introducono quattro casi di
studio:
1) Nel prendere una decisione sul collocamento di un nuovo stabilimento, una compagnia,
utilizza un modello di previsione finanziaria, richiamandolo da un fornitore ASP e
consentendogli l’accesso ai necessari dati proprietari archiviati, nel tempo, in un database
aziendale, attraverso sistemi di archiviazione gestiti da un fornitore SSP. Durante
17
l’incontro decisionale, in cui si ritrovano i capi di più sezioni risiedenti in diverse città,
sono elaborati scenari predittivi collaborativamente e interattivamente, assicurando
sempre il soddisfacimento dei requisiti di sicurezza.
2) Un consorzio industriale si adopera per un accurata simulazione multidisciplinare sugli
aeromobili, al fine di sviluppare uno studio di fattibilità per una nuova generazione di
aerei supersonici. Per eseguire la simulazione, sono richiesti componenti software
sviluppati dai differenti partecipanti allo studio che operano, quindi, su differenti
computer, accedendo agli appropriati database e ad altri dati, resi disponibili ai membri
dal consorzio.
3) Una fuoriuscita di sostanze chimiche necessita del lavoro di un team di gestione delle
situazioni critiche che utilizzando i dati del meteo locale e i modelli del terreno, riesca a
stimare la diffusione della fuoriuscita, determinando l’impatto in base alla distribuzione
della popolazione e alle caratteristiche geografiche (fiumi e altre forniture d’acqua), e
permettendo una risposta da parte del personale di emergenza che pianifichi e coordini
l’evacuazione .
4) Il CERN (Conseil Europeen pour la Recherche Nuleaire) avvia la produzione di un
importante rivelatore, richiedendo il contributo di migliaia di fisici di centinaia di
laboratori e università di tutto il mondo, i quali, durante la fase di elaborazione,
condividono l’utilizzo del computer, gli archivi e altre risorse di rete.
Come si può notare [Fos01], i differenti scenari differiscono per numero di partecipanti,
tipologia delle attività, durata e entità dell’interazione e risorse condivise; tuttavia in ognuno
di essi si manifesta il bisogno di condividere risorse tra individui che probabilmente non
risultavano in alcun modo connessi prima del caso in esame, per il raggiungimento di un
determinato obiettivo.
Ogni proprietario di risorsa rende questa disponibile vincolando le azioni su di essa,
specificando quando, dove e come possa essere impiegata (ad esempio un servizio di
simulazione può essere vincolato nell’utilizzo per la sola risoluzione di semplici problemi);
contemporaneamente un consumatore può scegliere di avvalersi solo di alcune risorse (ad
esempio potrebbero essere selezionate solo risorse che sono certificate come sicure).
Per soddisfare queste necessità, è necessario stabilire l’identità del consumatore di risorse,
attraverso meccanismi di autenticazione, e determinare la coerenza con le politiche di
condivisione, dell’operazione da effettuare sulla risorsa, utilizzando i meccanismi di
autorizzazione.
I rapporti di condivisione sono, anche, soggetti a cambiamenti nel corso del tempo con
riferimento alle risorse coinvolte, al tipo di accesso consentito, ai permessi dei partecipanti.
Questi cambiamenti che possono anche essere automatizzati, identificano la natura dinamica
dei rapporti di condivisione. Conseguentemente, si rende necessaria la presenza di
meccanismi che individuino e caratterizzino i diversi rapporti di condivisione, in ogni punto e
in ogni momento della vita di una rete di tipo VO.
18
Bisogna considerare che la condivisione può non essere necessariamente di tipo client-server,
ma anche di tipo peer to peer, cioè un membro può essere contemporaneamente sia fornitore
di una risorsa, sia consumatore. Inoltre, per lo svolgimento di un determinato processo, può
essere necessario l’accesso a più risorse possedute da diversi enti, rendendo così
indispensabile la presenza di meccanismi che gestiscano le operazioni su di esse.
Per garantire che le operazioni descritte si svolgano efficientemente, è necessario inserire, tra
le condizioni di condivisione e di utilizzo delle risorse, parametri riguardanti le prestazioni, le
aspettative e la qualità del servizio [Fos01].
In Fig. 8 gli ovali rappresentano tre enti reali, i quali possono separatamente partecipare ad
una o a più reti di tipo VO (indicate come E e Q), condividendo tutte o solo alcune risorse. La
rete di tipo VO E connette i partecipanti in un consorzio di progettazione aereospaziale,
mentre la rete di tipo VO Q permette i collegamenti tra individui che condividono risorse di
calcolo. L’ente rappresentato dall’ovale a sinistra partecipa ad E, mentre quello sulla destra
partecipa a Q, infine il terzo rimanente partecipa ad entrambe. Nelle didascalie sono riassunte
le politiche d’accesso che variano tenendo conto dell’ente, delle risorse e della rete di tipo VO
[Fos01].
Fig. 8. Esempio di reti di tipo VO
2.2.4. Esempi applicativi
Come già detto l’utilizzo delle reti di tipo VO è stato preso in considerazione per diversi
settori. Uno di questi è il settore dello sviluppo delle conoscenze [Cas15, Ban05, Gae05]. In
[Ban05] si concettualizza una rete di tipo VO indirizzata agli studenti per l’apprendimento e
la valutazione dei risultati conseguiti. Nello studio è riportata la necessità dell’utilizzo
trasparente e condiviso delle risorse, da parte degli studenti, per rendere il processo di
19
apprendimento efficace. Emerge, inoltre, il bisogno di personalizzare le attività per ogni
studente e quindi si rende necessario ricorrere a metodologie che determinino dapprima le
modalità di apprendimento preferite da ciascuno, per poi consentire l’esecuzione di un
processo educativo personalizzato. Particolare attenzione è stata posta nella scelta di
implementazioni, per le risorse distribuite, con alte prestazioni di sicurezza e di esecuzione;
inoltre i servizi (realizzati tenendo conto della creazione di solide interfacce e di particolari
protocolli di comunicazione) possono essere supportati da server vicini o lontani [Ban05].
In [Gae05] si sviluppa un progetto per la fornitura di servizi di informazione che presenta la
struttura di tipo VO, coinvolgendo più organizzazioni. Il progetto che prende il nome di
DIOGENE, è un progetto europeo volto a supportare gli studenti durante tutto il ciclo della
formazione, dalla definizione degli obiettivi alla valutazione dei risultati. Con DIOGENE
sono stati utilizzati sistemi per la rappresentazione e la gestione della conoscenza, la creazione
di modelli rappresentanti il generico studente attraverso la logica fuzzy, la realizzazione di
corsi intelligenti, l’introduzione di una serie di caratteristiche innovative come strategie di
apprendimento dinamiche, servizi Web per la trasmissione di oggetti di tipo Learning Object,
manutenzione del Curriculum Vitae e altre. La rete di tipo VO di questo progetto è fortemente
basata sull’utilizzo dei sevizi Web ed è formata da elementi che offrono servizi e da elementi
che li utilizzano. Si possono riassumere questi elementi in quattro categorie:
- utenti: esseri umani che forniscono e utilizzano i servizi;
- organizzazioni: entità fisiche che forniscono e utilizzano i servizi;
- utility component: componenti software che garantiscono l’integrità dell’architettura;
- accessor component: componenti software che consentono l’accesso dall’esterno alla rete
di tipo VO, permettendo anche il collegamento in senso inverso, cioè dall’interno
all’esterno.
Nel progetto DIOGENE uno stesso utente può avere ruoli differenti e le organizzazioni
partecipanti offrono diversi servizi, nel rispetto delle specifiche della rete di tipo VO, e
collaborano per realizzarne di nuovi. I servizi sono resi disponibili agli utenti attraverso il
portale web.
Tutto il sistema è spiegato attraverso uno scenario semplificato che necessariamente utilizza
componenti di tipo utility, come: il componente RMU (Resource Manager Utility) per la
gestione delle risorse richieste, in linea con le politiche della rete di tipo VO; il componente di
negoziazione (indicato in questo contesto con N) per i servizi di negoziazione tra il cliente
(l’utente o l’organizzazione) e il componente MDS (Monitoring and Discovery Service) che
conserva informazioni sui servizi forniti, sulle risorse e sul loro stato. In Fig. 9 sono riportati i
passi eseguiti nell’ipotetico scenario, in cui un nuovo partecipante richiede una sessione di
formazione:
20
(1) attraverso il componente A (Accessor) viene effettuata la richiesta al componente MDS
che fornisce in risposta l’elenco dei servizi;
(2) attraverso il componente A si ha l’interazione con il componente N per ottenere il
servizio selezionato dall’elenco;
(3) N interagisce con l’organizzazione che fornisce il servizio;
(4) l’organizzazione interroga il componente MDS per ottenere la lista di risorse e servizi
disponibili per soddisfare la richiesta;
(5) l’organizzazione richiama il componente RMU che prenota le risorse necessarie da ogni
altra organizzazione (frecce tratteggiate), soddisfacendo così la richiesta dell’utente;
(6) l’utente richiede un offerta formativa personalizzata direttamente dal portale dell’agenzia
TA (Training Agency);
(7) l’agenzia TA contatta l’agenzia KA (Knowledge Agency) per costruire un percorso di
apprendimento;
(8) l’agenzia KA prepara il percorso e contatta l’ufficio BO (Brokerage Office);
(9) quest’ultimo attraverso i contatti con la casa editrice PH (Publishing House) e l’agenzia
WCA (WebCatcher Agency), ottiene la lista del materiale che meglio si adatta ai requisiti
[Gae05].
Fig. 9. Scenario semplificato del progetto DIOGENE
Più recentemente, questo tema è stato affrontato in [Cas15], in un lavoro che risulta orientato
a migliorare il processo di sviluppo dei contenuti e-learning, sfruttando le nuove tecnologie
non solo per la gestione delle risorse, ma anche per automatizzare il processo di produzione,
in un ambiente collaborativo di tipo VO. Le risorse possono essere distinte in due gruppi che
si riferiscono a due fasi diverse, la fase di sviluppo degli oggetti Learning Objects (anche
21
riutilizzabile in molti contesti per creare nuovi contenuti abbattendo i costi) e la fase didattica.
Per quanto riguarda la creazione dei contenuti si possono distinguere più sotto fasi:
pianificazione, progettazione, produzione, valutazione; mentre in riferimento alla fornitura dei
contenuti si ritrovano le fasi di distribuzione e di manutenzione continua dell’ambiente di tipo
e-learning. L’architettura di tipo P3 Model è stata utilizzata come tecnica per meglio
conseguire gli obiettivi. Essa fa riferimento ad una struttura di tipo People, Process e Product
(Fig. 10), in cui le persone vengono suddivise in diversi gruppi (planning team, design team,
evaluation team, delivery team), ognuno coinvolto in una sotto-fase del processo che produce
un’uscita del tipo: Project Charter, Project Plan, Storyboard.
People
Gruppo di Lavoro
Process
Sviluppo e Distribuzione del
Contenuto
Product
Materiale Didattico
Fig. 10. P3 Model
Tra i servizi per la collaborazione tra individui si possono citare i forum, le chat e gli archivi
condivisi. L’utente utilizzerà il sistema accedendovi attraverso una piattaforma web,
all’interno della quale è implementata la rete di tipo VO, e potrà avere ruoli differenti che
possono anche cambiare nel tempo. La modifica dei permessi di ogni ruolo è affidata ad un
amministratore. Uno schema di struttura di rete di tipo VO per e-learning è mostrato in Fig.
11.
Fig. 11. Schema di rete di tipo VO per e-learning
22
Ulteriore punto focale del progetto in [Cas15] è l’utilizzo della tecnologia del workflow che
permette la gestione delle diverse attività, attraverso l’attribuzione dei compiti, il controllo dei
tempi e la sincronizzazione tra i diversi membri, migliorando e coordinando il lavoro
collaborativo.
Un altro esempio di rete di tipo VO si ritrova in [Bel07], con lo sviluppo del progetto
MAGIC-5 in campo medico. Il progetto MAGIC-5 mira a sviluppare software CADe
(Computer Aided Detection) per l’analisi di immagini mediche su database distribuiti, al fine
di supportare il lavoro dei radiologi e di ottimizzare i programmi di screening. In questi
programmi la riduzione dei tempi per la diagnosi è resa possibile dall’analisi remota delle
immagini e da una diagnosi on-line interattiva. In particolare il progetto sviluppa metodologie
di analisi per: mammografie per il rilevamento del cancro al seno, immagini CT (ComputedTomography) per l’individuazione del cancro al polmone, immagini PET (Positron Emission
Tomography) per una precoce diagnosi dell’Alzheimer.
La rete di tipo VO implementata offre ai membri la possibilità di condividere dati e risorse,
ma anche di svolgere attività come: screening, tele-training, tele-diagnosy e diagnosi
statistiche. Per soddisfare le particolari esigenze del settore medico, vengono considerati due
strumenti fondamentali chiamati rispettivamente AliEn (per la gestione dei servizi comuni) e
ROOT/PROOF (per l’analisi interattiva dei dati distribuiti). Le immagini, acquisite in
differenti ospedali e centri di screening inseriti nel progetto, vengono registrate su un
catalogo, con le relative informazioni (metadati) che saranno necessarie per l’accesso e la
selezione. Particolare importanza, inoltre, viene attribuita alla privacy, pertanto i dati registrati
nel catalogo vengono distinti in dati relativi al paziente (che includono informazioni private) e
dati relativi agli esami; l’accesso ad essi sarà consentito solo agli utenti autorizzati [Bel07].
2.3. Grid computing
Sono stati anni di grandi cambiamenti tecnologici, quelli in cui si è potuto assistere al
passaggio dai grandi computer, protetti dietro pareti di vetro e utilizzabili solo da specifici
professionisti, al concetto di Grid computing e della fornitura delle risorse su richiesta degli
utenti [Kau14].
I sistemi distribuiti hanno reso possibile il coordinamento di risorse di calcolo, distribuite,
eterogenee ed indipendenti. Questi si differenziano per poter soddisfare esigenze diverse, ma
tutti consentono il miglioramento dei diversi processi e prodotti, nei vari settori, mostrando
vantaggi competitivi [Cas14].
Il termine “the Grid” nasce nella metà degli anni ’90 e si proponeva come sistema distribuito
per la scienza e l’ingegneria [Fos01].
La tecnologia della griglia venne sviluppata e applicata per la prima volta al CERN, per poi
avere una larga diffusione mondiale; essa è, infatti, uno dei più promettenti sviluppi delle
23
tecnologie dei sistemi distribuiti che ha trovato applicazione in importati progetti come il
progetto Teragrid (USA) e il progetto Datagrid (EU) [Gol14].
Un’infrastruttura di griglia è composta da computer, software, database e altri particolari
dispositivi e si propone di condividere tutti i tipi di risorse delle tecnologie dell’informazione,
adattandosi alle esigenze degli utenti, che possono essere singoli individui, aziende o anche
enti di ricerca.
La grigia permette all’utente di ottenere ciò di cui ha bisogno, nel momento in cui lo richiede,
attraverso un’infrastruttura trasparente ai sui occhi; essa consente un utilizzo migliore delle
risorse nel campo delle tecnologie dell’informazione, l’accesso ad alte potenze di calcolo, il
miglioramento dei servizi di supporto, la riduzione dei costi nell’utilizzo dei computer,
l’aumento della capacità di risposta, permettendo un aumento della redditività e della
competitività.
Il concetto di base è l’unione di più piccole potenze di calcolo, per ottenere una potente
capacità di elaborazione da fornire all’utente. La griglia, non permette solo l’accesso alle
informazioni, come nel caso dei siti web, consente anche di archiviare dati e assicura una
migliore continuità nelle attività di un’organizzazione [Cas15].
2.3.1 Reti di calcolo: cluster, grid, cloud
Prima di procedere nel definire l’ambiente della griglia, per distinguerlo dalle altre tipologie
di reti di calcolo, si fornisce una breve panoramica di queste tecnologie.
In [Kau14] si identificano tre tipi di reti di calcolo: Cluster computing, Grid computing e
Cloud computing.
Nella tecnologia del Cluster computing un gruppo di computer, simili o addirittura identici,
che si trovano fisicamente nello stesso luogo, sono direttamente collegati, attraverso reti
locali, per apparire come un’unica entità.
I motivi per i quali si dovrebbe preferire una rete di tipo cluster ad un singolo computer sono
principalmente due: le prestazioni e la resistenza ai guasti. Per comprendere meglio in cosa
consista il conseguimento di maggiori prestazioni, si può pensare a quelle applicazioni che
richiedono molto tempo e comportano l’utilizzo di un grande spazio di memoria, il quale
sviluppo se affrontato con la tecnologia del Cluster computing, vede un superamento delle
problematiche appena citate, attraverso una gestione parallela dei diversi processori, tutti
coinvolti nella risoluzione di uno o più problemi. Inoltre, nell’ambiente di tipo Cluster, il
guasto di un componente influisce solo sulla potenza del sistema, non sulla sua effettiva
capacità di funzionamento, questo proprio grazie alla sua struttura composta dall’unione di
componenti simili. In Fig. 12 è mostrato lo schema generale di un ambiente di tipo Cluster in
cui più nodi si uniscono per presentarsi all’utente come un unico nodo [Kau14].
24
Fig. 12. Schema generale di un ambiente di tipo Cluster
Nella tecnologia del Cluster computing emergono, quindi, i seguenti vantaggi:
- maneggevolezza data dalla gestione di un’unica entità;
- visione di un unico sistema da parte dell’utente;
- alta disponibilità di componenti che possono essere inter scambiati in caso di guasto di uno
di essi.
Per quanto riguarda invece gli svantaggi si ritrovano:
- problemi di programmabilità, soprattutto se i componenti sono diversi dal punto di vista
software;
- problemi nell’individuazione dei guasti;
- difficoltà di gestione, da parte dei non professionisti, nella diversa programmabilità dei vari
componenti.
L’unione di più reti di tipo cluster, eterogenee e geograficamente distribuite, trova
manifestazione nella tecnologia del Grid computing, Fig. 13, dove non c’è necessità che i
computer si trovino fisicamente nello stesso luogo [Kau14].
Fig. 13. Schema generale di un ambiente di tipo Grid
25
Un’infrastruttura di tipo Grid è composta da computer (PC, workstation, cluster,
supercomputer, notebook e altri), software, database e altri particolari dispositivi (come
sensori, telescopi e altri) [Cas15].
La tecnologia del Grid computing, è studiata per condividere, raccogliere e fornire servizi agli
utenti. In questo ambiente, l’utente richiede l’accesso alle risorse senza essere a conoscenza
del luogo in cui esse sono collocate.
I principali vantaggi di questa tecnologia sono:
- accesso a diversi tipi di risorse, non solo CPU o spazi di memoria;
- bilanciamento delle risorse, in modo da sfruttare le apparecchiature che al momento
dell’avvio di un’applicazione, mostrano scarso utilizzo;
- affidabilità, in quanto un guasto in un sito non influenzerà un altro sito.
Tra gli svantaggi invece si hanno:
- mancanza di buona stabilità nei software e negli standard di tipo Grid, perché ancora in
continua evoluzione;
- necessità di una buona connessione ad Internet;
- difficoltà riguardanti le politiche di condivisione tra domini diversamente amministrati.
Infine, il concetto di Cloud computing, Fig. 14, come espresso da Buyya, si manifesta in un
sistema di calcolo parallelo e distribuito che consiste in una raccolta di virtuali e interconnessi
computer dinamicamente unificati, in modo da essere presentati come un’unica o più risorse,
sulla base di accordi SLA (Server Level Agreement), stabiliti tra fornitori di servizi e
consumatori [Kau14].
Fig. 14. Schema generale di un ambiente di tipo Cloud
26
La tecnologia del Cloud computing offre servizi a livello di infrastruttura, di piattaforma e di
software; con il pagamento delle sole risorse utilizzate, si ottengono velocità, scalabilità,
elaborazione parallela e continua disponibilità dei servizi [Kau14].
La tecnologia del Cloud computing è nata dalla tecnologia del Grid computing,
differenziandosi da essa per caratteristiche tecniche e non tecniche, come i meccanismi di
raggruppamento delle risorse su richiesta, la scalabilità, il supporto alla virtualizzazione,
l’utilizzo delle risorse con definite regole di pagamento, gli accordi SLA e il self-service
[Qur14].
Nella tecnologia del Cloud computing si ritrovano buona elasticità e una fornitura calibrata e
su richiesta dei servizi. Si possono, quindi, elencare i seguenti vantaggi:
- risorse condivise, in modo da aumentare o ridurre la fornitura ai clienti a seconda della
richiesta;
- pagamento delle sole risorse utilizzate;
- migliore gestione hardware;
- possibilità per le varie organizzazioni di accesso a nuove o diverse tecnologie, a seconda
delle esigenze, senza effettuare cambiamenti continui delle proprie infrastrutture fisiche,
riducendo così i costi.
Gli svantaggi di questa tecnologia sono, invece:
- minore affidabilità, perché c’è maggiore possibilità che si verifichino attacchi ai dati o che,
erroneamente, dati appartenenti ad utenti diversi si confondano;
- alta velocità di connessione ad Internet;
- mancanza di interoperabilità tra i sistemi di tipo Cloud che si traduce in un’impossibilità di
spostamento di dati tra un ambiente e l’altro.
Si rende necessario sottolineare che sebbene con la tecnologia del Cloud computing si
riescano ad ottenere servizi web a costi inferiori, la sicurezza in questo ambiente risulta
carente rispetto a quella che si ritrova nell’ambiente di tipo Grid [Kau14].
2.3.2. Architettura di griglia
Una delle questioni principali nell’ambiente della griglia è l’interoperabilità [Fos01]; è
necessario garantire che i meccanismi usati tra due parti coinvolte, possano estendersi anche a
tutte le altre, assicurando un ambiente dinamico. L’interoperabilità, in un ambiente di rete,
assume il significato di protocolli comuni che specifichino come gli elementi, del sistema
distribuito, interagiscono tra loro, al fine di definire un determinato comportamento e la
struttura delle informazioni scambiate, durante questa interazione. Un protocollo è un insieme
di regole che rende possibile lo scambio di informazioni, come esempi si possono citare:
27
- IP (Internet Protocol) che definisce un protocollo, non affidabile, per il trasferimento dei
pacchetti;
- TCP (Trasmission Control Protocol) che basandosi sul protocollo IP permette
un’affidabile consegna dei dati;
- TLS (Transport Layer Security Protocol) che definisce un protocollo per la privacy e
l’integrità dei dati tra due applicazioni comunicanti, basandosi su di un protocollo di
trasferimento affidabile come il protocollo TCP;
- LDAP (Lightweight Directory Access Protocol) che, sfruttando un protocollo TCP, si
presenta come un protocollo di risposta che consente di conoscere lo stato di un database
remoto.
Da quanto detto si evince che l’architettura di griglia è prima di tutto un’architettura di
protocolli che definiscono i meccanismi di base attraverso i quali si negoziano, si stipulano, si
gestiscono e si sfruttano i rapporti di condivisione. Attraverso la definizione di protocolli
standard, si possono facilmente definire i servizi che forniranno funzioni avanzate. Un
servizio, definito quindi dal protocollo e dal comportamento che implementa, è un’entità
abilitata della rete che permette di compiere azioni come spostare file, creare processi o
verificare i diritti di accesso [Fos01].
Per creare una griglia utilizzabile, è necessario aggiungere ai protocolli, le interfacce API
(Application Programming Interface), cioè interfacce standard per richiamare delle funzioni,
e i pacchetti SDK (Software Development Kit) che indicano insiemi di codici, costruiti per
essere connessi con un programma applicativo e invocati dal suo interno, per fornire
specifiche funzioni (un pacchetto SDK tipicamente implementa un’interfaccia API).
Interfacce API e pacchetti SDK permettono di accelerare lo sviluppo dei codici, attivarne la
condivisione e migliorare la portabilità delle applicazioni. Si costituisce, così, quell’insieme,
detto middleware, degli elementi necessari a supportare un set di applicazioni in un ambiente
distribuito [Fos01].
L’architettura di griglia può essere pensata a strati; questi identificano dei componenti che
condividono caratteristiche comuni e che per essere costruiti necessitano dei rispettivi strati
inferiori. In [Fos01], l’architettura di griglia segue il modello clessidra, identificando nel collo
un piccolo set di astrazioni di base e protocolli, per le risorse e la connettività, che sono basati
su diverse tecnologie sottostanti, e che a loro volta costituiscono la base dei livelli più alti.
Facendo riferimento alla Fig. 15, i diversi tipi di risorse, sui quali si implementano questi
protocolli, sono definite nel livello chiamato Fabric, mentre i servizi globali e i
comportamenti specifici delle applicazioni che poggiano su di essi, si ritrovano al livello detto
Collective.
28
Architettura protocollo di Internet
Architettura protocollo di griglia
Fig. 15. Architettura di griglia e corrispondenza con l’architettura del
protocollo di Internet
Quindi, al livello detto Fabric [Fos01] si ritrovano le risorse (come risorse computazionali,
sistemi di archiviazione, cataloghi, risorse di rete e sensori) e si implementano operazioni
locali che derivano da operazioni di condivisione ad alti livelli. Si possono individuare diversi
tipi di risorse:
- risorse computazionali: i meccanismi richiesti riguardano l’avvio dei programmi, il
monitoraggio e il controllo dell’esecuzione dei processi che da essi derivano, la gestione e
la prenotazione delle risorse ad essi assegnate; inoltre sono necessarie funzioni che
consentano di determinare le caratteristiche hardware e software e le informazioni di stato;
- risorse per l’archiviazione: sono richiesti meccanismi per inserire e prelevare i file, leggere
e scrivere parti di un file, eseguire una selezione dei dati a distanza, controllare le risorse
per il trasferimento dei dati ed eseguire prenotazioni; inoltre sono, anche in questo caso,
richieste funzioni per determinare le caratteristiche hardware e software e altre rilevanti
informazioni come lo spazio disponibile;
- risorse di rete: sono necessari meccanismi che permettano i trasferimenti di rete
(definizione delle priorità e gestione delle prenotazioni), controllando le risorse assegnate,
insieme a funzioni che forniscano le caratteristiche della rete e il carico;
- risorse di tipo code repository: una particolare forma di risorsa di archiviazione che
richiede meccanismi per la gestione del codice oggetto e sorgente;
- cataloghi: un’altra forma particolare di risorsa di archiviazione che richiede meccanismi
per effettuare domande e operazioni di aggiornamento.
Al livello definito Connectivity [Fos01] si trovano i protocolli per la comunicazione che
consentono lo scambio di dati tra le risorse al livello detto Fabric, e i protocolli per
l’autenticazione che permettono di verificare l’identità di utenti e risorse. Si può assumere che
29
i protocolli di comunicazione siano principalmente tratti dalla grande quantità di protocolli
degli strati dell’architettura di Internet; anche i protocolli per l’autenticazione possono essere
sviluppati sugli standard di sicurezza dei protocolli di Internet. In generale devono essere
considerate le seguenti caratteristiche:
- singolo accesso che consenta agli utenti di autenticarsi un'unica volta per accedere alle
diverse risorse;
- delega che permetta ai programmi avviati dagli utenti, di utilizzare le risorse a cui essi
stessi hanno accesso;
- integrazione con forme di sicurezza locale;
- relazioni tra utenti basate sulla fiducia che permettano al generico utente di utilizzare
risorse provenienti da più fornitori, senza dover effettuare continue richieste ad ognuno di
questi.
È, inoltre, importate che le soluzioni per la sicurezza permettano agli utenti di controllare le
decisioni di autorizzazione, consentendo anche di limitare la delega dei diritti.
Al livello chiamato Resource [Fos01], basandosi sui protocolli dello strato indicato come
Connectivity, vengono definiti altri protocolli, interfacce API e pacchetti SDK, per negoziare,
attivare, monitorare, controllare, amministrare e pagare individualmente le operazioni di
condivisione delle risorse, ignorando le questioni di stato globali. Per implementare questi
protocolli vengono richiamati, dal livello detto Fabric, le funzioni per accedere e condividere
le risorse locali. Si possono distinguere due classi principali di protocolli per questo livello:
- i protocolli di informazione che vengono usati per ottenere informazioni sulla struttura e
sullo stato della risorsa;
- i protocolli di gestione che servono per negoziare l’accesso ad una risorsa condivisa,
specificando le esigenze legate a quest’ultima e le operazioni che devono essere eseguite;
inoltre assicurano che si rispetti la politica di condivisione di ogni risorsa.
I protocolli degli strati chiamati Resource e Connectivity si collocano, nel modello descritto in
[Fos01], al collo della clessidra e pertanto devono essere scelti accuratamente, in modo tale da
permettere da un lato di catturare i meccanismi fondamentali di condivisione di molti tipi
diversi di risorse, e dall’altro di non vincolare la tipologia o le prestazioni dei protocolli
sviluppati a livelli più alti.
Passando allo strato detto Collective [Fos01], protocolli, interfacce API e pacchetti SDK, non
sono più focalizzati sulla singola risorsa, ma hanno natura globale e guardano all’interazione,
considerando le risorse nella loro collettività. A questo livello si possono implementare un
vasta gamma di comportamenti di condivisione che non necessitano della richiesta di ulteriori
requisiti per le risorse da condividere, come:
30
- servizi di directory, per scoprire l’esistenza e le caratteristiche delle risorse;
- servizi di co-allocazione, pianificazione e negoziazione per richiedere ad esempio
l’allocazione di una o più risorse o la pianificazione delle attività su di esse;
- servizi di monitoraggio e diagnostica, per contrastare guasti, attacchi esterni, sovraccarichi
e altro;
- servizi per la replica dei dati, per supportare la gestione degli archivi, massimizzando le
prestazioni di accesso ai dati;
- sistemi di programmazione di tipo Grid-enabled, per utilizzare nell’ambiente della griglia
modelli di programmazione familiari;
- sistemi di gestione del carico di lavoro e strutture di collaborazione, per la descrizione,
l’utilizzo e la gestione dei flussi di lavoro;
- servizi di individuazione software, per identificare e selezionare l’implementazione
software più opportuna;
- server di autorizzazione, per applicare le politiche comunitarie di accesso alle risorse,
permettendo l’accesso a queste da parte dei membri;
- servizi comunitari di amministrazione e pagamenti;
- servizi di collaborazione, per supportare lo scambio di informazioni, sincrono o asincrono,
all’interno dei gruppi.
I componenti del livello detto Collective possono essere indirizzati al conseguimento di
obiettivi generici, oppure possono rispondere a esigenze specifiche di un gruppo di lavoro.
Al livello più alto [Fos01] si ritrovano, infine, le applicazioni per gli utenti che sono costruite
considerando e richiamando i servizi di qualsiasi livello.
In Fig. 16 è mostrato un esempio strutturale riferito ad un servizio di co-prenotazione [Fos01].
Applicazione
Servizio di co-prenotazione
Protocollo di co-prenotazione
Servizio di co-prenotazione
Collective
API e SDK
di co-allocazione
API e SDK
di gestione
Resource
Fabric
Protocollo di gestione
Risorsa di
rete
Risorsa di
rete
…
Risorsa di
calcolo
Fig. 16. Esempio strutturale per l’utilizzo di un servizio di coprenotazione
31
In particolare in Fig. 16 sono indicati esempi di un interfaccia API e di un pacchetto SDK di
co-allocazione al livello definito Collective che utilizzano un protocollo di gestione dello
strato detto Resource per maneggiare le risorse sottostanti. Sopra di essi, invece, viene
definito un protocollo di servizio di co-prenotazione e implementato un servizio di coprenotazione che parla questo protocollo, per richiamare l’interfaccia API di co-allocazione,
per attuare le operazioni di co-allocazione. In questo modo è possibile per un’applicazione
usare il servizio di co-prenotazione.
In Fig. 17 è riportata, invece, l’architettura di griglia vista da un programmatore di
applicazioni [Fos01].
Applicazioni
Linguaggi e Strutture software
API e SDK livello Collective
Protocolli servizi Collective
Servizi livello Collective
API e SDK livello Resource
Protocolli servizi Resource
Servizi livello Resource
API livello Connectivity
Protocolli Connectivity
Fabric
Fig. 17. Architettura di griglia vista da un programmatore di
applicazioni
In Fig. 17 si vuole evidenziare che le differenti possibilità applicative sono fornite all’utente
finale dai servizi di rete. Con questi ultimi interagiscono i pacchetti SDK attraverso i
protocolli di griglia. Infine le interfacce API sono implementate dai pacchetti SDK. Con
riferimento alla Fig. 17 le linee continue rappresentano una chiamata diretta, mentre le linee
tratteggiate indicano interazioni a livello di protocollo [Fos01].
Quindi, certamente la realizzazione di un ambiente di griglia implica fattori indispensabili,
quali la realizzazione di uno strato middleware affidabile e facile da usare, e l’eliminazione
delle barriere amministrative [Cas15].
32
Alcuni lavori come quello in [Rod13] sono indirizzati alla realizzazione di uno strato
middleware di tipo resource brokering, comunemente indicato come meta-scheduler o metabroker, che consente di abbinare efficientemente i lavori alle risorse computazionali e, quindi,
di supportare l’interoperabilità tra le reti di tipo VO.
La capacità di adattamento alla dinamicità e alla natura variabile dell’ambiente di griglia (che
si ritrova, ad esempio, nel monitoraggio delle risorse, nella loro individuazione e selezione) è
alla base del lavoro svolto in [Bot14]. Gli autori si propongono di conferire alle applicazioni
la capacità di auto-adattarsi, focalizzando l’attenzione sul miglioramento del processo di
selezione delle risorse, permettendo, in questo modo, la riduzione dei tempi di esecuzione e
l’aumento del tasso di operazioni completate correttamente.
Per meglio orientarsi nella scelta della giusta tecnica di allocazione delle risorse (che consiste
nella pianificazione, nel trasferimento del codice, nella trasmissione dei dati e nel
monitoraggio) si può far riferimento al lavoro in [Qur14] che esplora il panorama dei diversi
meccanismi negli ambienti di griglia, mettendoli a confronto. L’importanza di individuare
meccanismi di allocazione delle risorse efficienti, affidabili e scalabili, aumenta con il
diffondersi della tecnologia della griglia [Qur14].
Altro argomento principale è il controllo degli accessi, considerato come un meccanismo che
permette ai proprietari delle risorse di definirne la gestione e le condizioni di utilizzo. In
[Luo09] si propone un controllo degli accessi basato sul grado di fiducia. Il concetto di fiducia
si può suddividere nell’autenticità di un’entità (fiducia di identità) e nella affidabilità di
un’entità (fiducia di comportamento). Da questo deriva che la fiducia, nell’ambiente di
griglia, è nelle relazioni tra fornitori di risorse e utenti, e solo quando questa è presente la
collaborazione tra le diverse entità si sviluppa normalmente. In [Luo09] considerando
principalmente la fiducia comportamentale, si propone un innovativo e dinamico controllo
degli accessi, applicabile sia all’interno di un singolo dominio che tra domini differenti.
Per lo sviluppo dell’ambiente di griglia la tecnologia del Globus Toolkit è indicata come
tecnologia fondamentale [Cas15, Fos01]. Questa consente di condividere potenza di calcolo,
database e molti altri strumenti software, superando le problematiche legate alle suddivisioni
territoriali e istituzionali, e diventando, così, il substrato su cui vengono costruiti i prodotti di
griglia. Questo substrato permette, infatti, di sostenere la collaborazione tra le diverse
organizzazioni che viene ostacolata dall’incompatibilità delle risorse, come archivi di dati,
computer e reti. La tecnologia del Globus Toolkit include servizi software e librerie che
consentono il monitoraggio, l’identificazione e la gestione delle risorse, e che permettono di
garantire la sicurezza e l’amministrazione dei file. Essa è formata da un set di componenti che
possono essere usati separatamente o sfruttati insieme per lo sviluppo delle applicazioni. I
servizi, le interfacce e i protocolli, da questa forniti, permettono all’utente di accedere alle
risorse remote come se fossero all’interno del proprio computer, garantendo, allo stesso
tempo, il controllo sulle modalità di accesso (chi è autorizzato all’accesso, in quali circostanze
esso è consentito) [Cas15].
33
La tecnologia del Globus Toolkit è stata progettata, principalmente, per utilizzare i
componenti esistenti del livello precedentemente definito come Fabric; tuttavia se dovessero
mancare alcune funzionalità, queste vengono integrate dalla stessa tecnologia. Ad esempio
viene fornito un software per individuare la struttura e le notizie relative allo stato delle
diverse risorse e per organizzare le informazioni ottenute, in modo da facilitare
l’implementazione dei protocolli ai livelli più alti, in particolare nello strato detto Resource
[Fos01].
Come descritto in [Cas15], i più importanti componenti di questa tecnologia, sono:
- GridFTP;
- GRAM5;
- GSI C;
- MyProxy;
- GSI-OpenSSH;
- SimpleCA.
Il componente GridFTP è un protocollo per il trasferimento dei dati sicuro e affidabile che si
basa sul protocollo Internet FTP.
Il componente GRAM5 è utilizzato per localizzare, sottoporre, monitorare e cancellare le
diverse operazioni sulle risorse di griglia, permettendo di affrontare una serie di operazioni,
assicurando un funzionamento affidabile, la gestione delle credenziali e l’organizzazione dei
file.
Il componente GSI C fornisce interfacce API e strumenti software per l’autenticazione,
l’autorizzazione e la gestione dei certificati; l’interfaccia API di autenticazione è costruita
utilizzando la tecnologia PKI (Public Key Infrastructure), cioè certificati X.509 e protocolli
TLS (Transport Layer Security). Per supportare l’autorizzazione si utilizzano due interfacce
API: la prima consiste in una generica interfaccia API di autorizzazione che permette di
effettuare il controllo di accesso basato sulle credenziali dell’utente, la seconda fornisce una
lista di controllo degli accessi, per associare le entità remote autorizzate ai nomi utente locali,
e permette a terze parti di annullare i comportamenti predefiniti.
Il componente MyProxy è un software di tipo open source per la gestione di credenziali di
tipo X.509 Public Key Infrastructure security. Questo componente permette agli utenti di
ottenere le credenziali, in modo sicuro, in qualsiasi momento e in ogni luogo, basandosi su un
archivio di credenziali e su autorità di certificazione CA (Certificate Authority), online.
Il componente GSI-OpenSSH è una versione modificata del componente OpenSSH che
permette di supportare i certificati X.509 Proxy per l’autenticazione e la delega, permettendo
un’unica autenticazione remota e fornendo un servizio per i trasferimenti dei file. Questi
ultimi sono effettuati senza ulteriore inserimento di password, proprio grazie all’utilizzo delle
credenziali proxy.
34
Infine, il componente SimpleCA permette l’implementazione di un’autorità di certificazione
CA che può rilasciare certificati X.509 agli utenti e ai servizi della tecnologia del Gloobus
Toolkit [Cas15].
2.3.3. Grid computing e Virtual Organization
Con il calcolo collaborativo [Cas15] e la condivisione dei dati, si sono sviluppate nuove
forme di interazione che necessitano di risorse distribuite, rendendo, così, indispensabile
ricorrere alla tecnologia del Grid computing che offre enormi opportunità in termini di
condivisione di risorse, massimizzazione del loro utilizzo e della loro virtualizzazione.
Nonostante ci siano ancora molte sfide per lo sviluppo dei sistemi di griglia (sfide tecniche
nella risoluzione delle questioni legate alla sicurezza e sfide concettuali nella realizzazione
della condivisione di sistemi privati), questo tipo di rete di calcolo è stato largamente
accettato, in particolar modo in ambito scientifico e nelle comunità aziendali delle tecnologie
dell’informazione. Con questo metodo si possono conseguire i seguenti vantaggi, con
riferimento al trattamento dei dati:
- ingressi e uscite di dati multipli che sono forniti e immagazzinati in qualsiasi momento ed
in qualsiasi punto della griglia;
- elaborazione trasparente dei dati da parte degli utenti, senza che si incorra in problematiche
legate al luogo geografico in cui questi ultimi si trovano, al momento in cui viene effettuata
l’operazione, o al carico di lavoro;
- fornitura dei dati in più punti lungo la griglia.
Ulteriori vantaggi emergono considerando l’affidabilità dei servizi e i bassi costi che rendono
possibile il conseguimento di grandi benefici per le piccole comunità e le organizzazioni che
si avvalgono della tecnologia della griglia.
Per quanto attiene alla gestione del lavoro, questa tecnologia offre la possibilità di ottenere
un’ottimizzazione, in quanto permette di organizzare i diversi compiti sfruttando i server
meno carichi o i server che abbiano abbastanza memoria o le adeguate caratteristiche di CPU
per l’operazione da implementare.
Bisogna evidenziare che la struttura modulare, di questo ambiente, assicura una maggiore
resistenza agli errori; infatti se si dovessero presentare problemi con un server o un desktop
della griglia, il carico di lavoro verrebbe trasferito sulle altre risorse. Le unità client possono
interrogare l’unità master sulle risorse disponibili per portare a termine un determinato
compito; inoltre, è possibile aggiungere o rimuovere facilmente altri nodi, assicurando, in
questo modo, la possibilità di incrementare le risorse in caso di necessità. Gli aggiornamenti
non implicano che l’ambiente venga reso inattivo, in quanto possono essere effettuati in
cascata sulle risorse, in modo tale che solo alcune risultino offline, mentre il lavoro viene
portato avanti dalle altre.
35
Anche il miglioramento delle prestazioni di velocità nello svolgimento dei diversi compiti è
un ulteriore vantaggio offerto dall’ambiente di griglia. Infatti, questa tecnologia permette lo
svolgimento del lavoro in parallelo, risultando particolarmente adatta per implementare
operazioni che possano essere suddivise sui diversi nodi. Molti sono i settori (fisica, biologia,
medicina, geofisica) in cui le simulazioni sui dati comportano alti consumi in termini di CPU.
Le elaborazioni in parallelo possono portare notevoli benefici in questo contesto, contrastando
le spese in termini di tempo che si presenterebbero con elaborazioni sequenziali [Cas15].
Si può quindi affermare che, complessivamente, la caratteristica principale della griglia è la
dinamicità, cioè la capacità di riconfigurarsi in ogni momento, ammettendo nuovi nodi e
tollerando la perdita di altri, e l’abilità di adattarsi a qualsiasi lavoro le venga sottoposto,
garantendo, così, anche l’affidabilità.
Dal punto di vista dell’utente, tutte le operazioni sono eseguite in modo del tutto trasparente
ed egli percepisce l’ambiente di griglia come un’entità unica, stabile, immutabile, efficace e
sempre accessibile. L’utente può, così, condividere, tra i diversi computer, risorse
computazionali, spazio di archiviazione, dati scientifici [Cas11].
Se si guarda in particolar modo, alle esigenze di una rete di tipo VO, l’ambiente di griglia
deve supportare, anche, il problema della sicurezza, in termini di identificazione degli utenti e
valutazione delle azioni che possono essere compiute. In questo contesto sicurezza significa
[Cas15]: autenticazione, autorizzazione, segretezza, integrità dei dati, non ripudio.
L’autenticazione comporta la verifica dell’identità dell’utente e viene comunemente ottenuta
utilizzando username e password. Sfortunatamente questa semplice soluzione può risultare
poco sicura, in quanto le password potrebbero essere scoperte. Per far fronte a questa
problematica si possono utilizzare i certificati X.509; un certificato rilasciato da un’autorità
CA, identifica l’utente e permette l’autenticazione. Inoltre i certificati X.509 Proxy
permettono di risolvere, anche, la necessità che l’utente si autentifichi un’unica volta al
momento dell’accesso.
Il termine autorizzazione fa riferimento alle azioni che un utente può compiere. Questa
problematica può essere risolta con una lista ACL (Access Control List) che definisce quali
sono le azioni che un utente è autorizzato a compiere. Soluzioni più recenti utilizzano
certificati di attributi che definiscono gli attributi dell’utente nel certificato, permettendo
all’amministratore di autorizzare con riferimento alla politica locale.
La segretezza si concretizza nella necessità del rispetto della privacy. È indispensabile, infatti,
garantire che tutte le informazioni sensibili siano protette, in modo tale che non si verifichino
accessi da parte di utenti non autorizzati; generalmente i dati vengono suddivisi in base al
grado e al tipo di danno che potrebbero subire, se dovesse presentarsi questa indesiderata
circostanza.
Si parla di integrità dei dati quando questi possiedono accuratezza, qualità e affidabilità. La
capacità, di garantire l’integrità dei dati, si presenta con maggiore difficoltà se si fa
riferimento ad un ambiente in cui più utenti lavorano simultaneamente, accedendo a questi, e
ancor di più se si devono gestire più archivi. I nuovi protocolli, i servizi, le interfacce API per
36
l’accesso sicuro alle risorse, la gestione delle stesse e l’individuazione degli errori, sono solo
alcuni degli elementi che si ritrovano nella tecnologia della griglia. Questi elementi
permettono il controllo e il coordinamento dell’utilizzo delle risorse condivise in ambienti
distribuiti.
Il non ripudio garantisce che l’avvio di un’operazione o l’invio di un messaggio non possano
essere negati da chi li ha richiesti. Questo è un metodo per garantire che avvenga la
trasmissione dei messaggi tra le parti, attraverso firme digitali e crittografia.
Un altro aspetto, da considerare all’interno delle reti di tipo VO, è quello relativo alle
politiche di condivisione che generalmente possono essere di tipo [Cas15]:
- best-effort: viene data priorità ai lavori locali rispetto a quelli di griglia che sono eseguiti
solo quando i primi non sono presenti, e sono sospesi o terminati in caso si verifichi la
necessità di esecuzione di uno di essi;
- real-time: le attività di griglia hanno maggiore priorità e viene ad essi riservata, in accordo
con la qualità del servizio richiesta, una specifica risorsa computazionale, per tutta la loro
durata;
- competing: si configura una situazione di uguaglianza tra i lavori locali e quelli di griglia
che competono per l’assegnazione delle risorse, con possibili effetti negativi sulla qualità
del servizio.
Per questi motivi, l’approccio che la tecnologia della griglia presenta nei confronti della
condivisione delle risorse, si distingue fortemente da quello delle altre tecnologie,
permettendo di soddisfare nel modo più efficiente e collaborativo le necessità di una rete di
tipo VO [Cas15].
In [Li10] sono state affrontate problematiche quali la collaborazione tra diversi domini,
dinamici e autonomi, che possono influenzare la sicurezza nell’interazione tra le reti di tipo
VO, con l’esame di conflitti impliciti ed espliciti che possono sorgere tra le diverse politiche.
In [Li10] si propone un sicuro servizio di collaborazione chiamato PEACE-VO (Secure
Policy-EnAbled Collaboration ServicE for Virtual Organizations), in cui vengono considerate
sia le questioni di sicurezza che le problematiche di privacy che si presentano durante la
collaborazione.
Inoltre per migliorare le prestazioni delle reti di tipo VO, in ambiente di griglia, si sono
sviluppati lavori come quello in [Han09] che mette a confronto le diverse strutture delle reti di
tipo VO, evidenziando come si possano conseguire migliori risultati, in termini di
organizzazione e utilizzo delle risorse.
2.3.4. Portale web e workflow
Il portale è il punto di incontro tra i servizi di rete e le applicazioni, e permette di facilitare
l’individuazione e l’utilizzo di queste. Il portale web può, così, essere il punto di accesso
37
all’intera infrastruttura di rete, come in [Cas15], rendendo i servizi di griglia accessibili per
mezzo di apposite interfacce API di tipo web service. Ogni servizio web che esporta un
servizio di griglia, può essere utilizzato dagli utenti in modo del tutto trasparente grazie ai
moduli plugin. La descrizione di un servizio web specifica tutte le informazioni per invocare
un servizio: localizzazione, formato per la comunicazione e protocollo di trasporto.
Alcuni dei servizi, accessibili da un portale, possono essere:
- verifica dello stato dei nodi della griglia: permette all’utente di avere in tempo reale la lista
delle risorse hardware (cioè i nodi della griglia) disponibili;
- scambio di file tra utenti e il componente GridFTP: consente la condivisione delle risorse
tra le unità client e la comunità, mantenendo le politiche di archiviazione definite
all’interno della griglia e, quindi, non visibili agli utenti;
- accesso remoto ad un desktop per consentire il lavoro con un particolare software;
- condivisione di file modificati all’interno del desktop remoto: permette la condivisione
senza l’utilizzo di un server di archiviazione, creando uno spazio condiviso evitando di
passare attraverso i nodi della griglia;
- validazione di un documento attraverso un appropriato flusso di lavoro: associa un flusso
di lavoro ad ogni tipologia di documento;
- definizione del profilo utente: consente di definire nel dettaglio ogni figura professionale
coinvolta, associando permessi che consentano di eseguire le azioni, in accordo con le
responsabilità assunte nell’organizzazione;
- contatto privato con un utente: importante per accelerare le comunicazioni e il lavoro di
gruppo.
Un portale può, quindi, permettere la creazione di differenti reti di tipo VO, consentendo di
gestire efficientemente utenti e ruoli. Ogni utente ha una propria identità digitale che
garantirà, attraverso l’implementazione delle politiche condivise, i diritti di accesso alle
risorse condivise. Quindi, al momento dell’accesso, ogni utente ricopre un ruolo all’interno
del processo di produzione.
Ogni rete di tipo VO può gestire diversamente i permessi. In questo modo un utente, che
appartiene a più reti di tipo VO, può, ad esempio, avere il permesso di redigere una tipologia
di documento in una rete di tipo VO e avere solo il permesso di leggere la stessa tipologia di
documento in un’altra rete di tipo VO.
Bisogna sottolineare che l’autenticazione e l’autorizzazione relative ad un nodo o utente della
griglia, si differenziano da quelle dell’utente nel portale.
Un altro importante punto, da portare in evidenza, è quello della tecnologia detta workflow
[Cas15] (un esempio è dato in Fig. 18).
38
STATO
Presentazione
per
approvazione
Nuova
presentazione
Rigettato
COMPITO
Revisione
Nuova
presentazione
COMPITO
Accettato
STATO
Approvato
Fig. 18. Workflow per la revisione di un documento
La tecnologia del workflow permette di gestire la sequenza delle attività necessarie per il
raggiungimento di un obiettivo, sostenendo la collaborazione all’interno dei gruppi. Tutto
questo si rende possibile attraverso l’attribuzione dei compiti detti task, il controllo dei tempi
e la sincronizzazione dei membri del gruppo. Inoltre, la tecnologia del workflow garantisce la
flessibilità per adattarsi alla natura dinamica dei processi di produzione. Per questi motivi,
molte imprese e istituzioni utilizzano questa tecnologia per supportare i propri processi
lavorativi, monitorandone facilmente i progressi.
Con la struttura di tipo workflow si assegna ad una risorsa un oggetto di lavoro in esecuzione
definito work item. Un oggetto work item è una combinazione di un compito (task) e di un
elemento detto case, quest’ultimo caratterizzato da un set di attributi che specificano le
condizioni di esecuzione e, quindi, determinano se un particolare compito può essere eseguito.
Quindi si può affermare che un processo consiste negli elementi case da maneggiare, nei
compiti da effettuare e nel loro ordine di esecuzione.
L’elemento workflow enactment service è alla base del sistema WfMS (Workflow
Management System). Questo elemento è lo strato software che include il software workflow
engine, capace di creare, eseguire e gestire i processi workflow. In questo modo vengono
assegnati i giusti compiti, ad ogni persona, con le risorse necessarie al loro svolgimento. Il
sistema WfMS deve considerare:
- la struttura organizzativa (ad esempio strutture gerarchiche, le divisioni in dipartimenti, le
competenze, le autorizzazioni e i ruoli);
- i ruoli interessati nel processo di produzione (bisogna considerare a quali risorse ha
accesso ogni ruolo e quali compiti può eseguire);
39
- lo strato process automation layer che include la distribuzione delle unità di lavoro e la
loro esecuzione automatica;
- la definizione di workflow che descrive e gestisce i processi, le risorse disponibili, i
compiti, il loro ordine di esecuzione e le persone che devono occuparsene.
Più nello specifico con il termine grid workflow si intende la tecnologia di workflow pensata
per un ambiente distribuito, in cui è necessario sfruttare risorse distribuite, dinamiche ed
eterogenee, rese disponibili da diverse organizzazioni [Cas15].
2.3.5. Ambienti di griglia
Come descritto in [Gol14], pur conservando la loro natura di sistemi distribuiti, gli ambienti
di griglia possono differenziarsi per diversi aspetti:
- scala di copertura geografica (cosmica, globale, nazionale, regionale, per abitazioni, per
uffici);
- funzione (industriale, difensiva, commerciale, culturale);
- tipologia delle linee di comunicazione;
- metodi di controllo;
- supporto software;
- tipo di trasmissione ed elaborazione dei dati;
- numero di utenti simultaneamente connessi;
- complessità topologica;
- indicatori di affidabilità e sicurezza per contrastare guasti hardware e software;
- efficienza;
- livello di implementazione di intelligenza artificiale [Gol14].
Le griglie possono essere suddivise in omogenee o eterogenee, considerando fattori come il
sistema operativo, lo spazio di memoria, la velocità della CPU, il numero di risorse e altri.
Considerando i servizi offerti, si possono individuare diversi tipi di ambienti di griglia
[Qur14]:
- computational Grid: combina la potenza computazionale delle risorse distribuite, tra cui
cluster, desktop e supercomputer, per offrire alte prestazioni di calcolo;
- access Grid: offre limitate e specifiche risorse per un breve periodo di tempo;
- data Grid: consiste in archivi distribuiti e permette di immagazzinare un’enorme quantità
di dati che vengono resi accessibili e disponibili per spostamenti ed elaborazioni,
indirizzandosi, quindi, ad attività che comportano un’alta densità dei dati;
40
- data-centric Grid: facilita l’accesso e l’elaborazione per i grandi archivi distribuiti,
permettendo di non spostare i dati, in quanto è l’elaborazione ad essere portata sugli
archivi;
- application service Grid: consente l’accesso alle applicazioni remote, alle librerie
localizzate nei diversi centri di dati e alle griglie di tipo computational Grid;
- interaction Grid: interagisce e collabora per fornire la visualizzazione tra i partecipanti;
- knowledge Grid: si concentra sull’individuazione, acquisizione, gestione ed elaborazione
della conoscenza;
- utility Grid: fornisce tutti i tipici servizi di griglia, come potenza di calcolo, individuazione
e allocazione delle risorse, qualità del servizio e altri.
In Fig. 19 è mostrata la suddivisione per tipologia degli ambienti di griglia [Qur14].
Fig. 19. Ambienti di griglia
Si rende, quindi, evidente che le tecnologie Grid possono essere sfruttate in diversi contesti,
conseguendo notevoli vantaggi; di seguito si riportano alcuni esempi applicativi [Cas15].
Nella ricerca biomedica, l’iniziativa internazionale BIRN (Biomedical Informatics Research
Network) ha permesso la condivisione dei dati e la collaborazione online; sono state fornite
infrastrutture per la condivisione dei dati, strumenti software, servizi di consulenza e di
supporto alla pianificazione. Questa iniziativa realizza la collaborazione tra gli istituti
National Institutes of General Medicine Sciences e il gruppo formato da: University of
Chicago, Massachusetts General Hospital, University of California a Irvine e University of
California a Los Angeles. Ai componenti dei diversi gruppi di ricerca (informatici, ingegneri,
fisici, ricercatori biomedici e altri esperti) viene, così, fornita la possibilità di elaborare le
nuove informazioni in modo innovato. I gruppi di ricerca possono decidere se condividere i
dati solo al loro interno o con utenti esterni, superando, grazie alla rete BIRN, le difficoltà
41
legate alle distanze geografiche e alle differenze dei singoli sistemi computazionali. In ogni
caso, il controllo degli hardware e dei dati è mantenuto dai singoli gruppi di appartenenza.
Nell’Università Brown si è realizzata la prima simulazione, ad alte prestazioni, in ambiente
distribuito, per riprodurre il flusso sanguineo nelle arterie umane. Le immagini che mostrano
la velocità e la pressione all’interno della ramificata e tridimensionale struttura arteriosa, sono
state ottenute presso il laboratorio Argonne National Laboratory.
Simulazioni di terremoti sono state, invece, effettuate al centro Southern California
Earthquake Center, calcolando gli effetti delle onde d’urto, considerandone la propagazione
attraverso i diversi strati geologici (si vuole sottolineare che questo tipo di simulazione può
generare fino a 40TB di dati).
Inoltre nella griglia ESG (Earth System Grid) sono prodotti, archiviati e resi accessibili dati
climatici che permettono di studiare più efficacemente i cambiamenti globali.
In fisica la necessità di simulare gli effetti gravitazionali riguardanti i buchi neri, si traduce nel
bisogno di più potenza di calcolo che può essere ottenuta attraverso l’utilizzo di più
supercomputer.
Una grande quantità di dati che può efficacemente essere gestita dalla tecnologia della griglia,
si ritrova anche nei database derivanti dai risultati degli acceleratori di particelle, come quelli
del CERN (anche in questo contesto la tecnologia della griglia supporta l’implementazione di
simulazioni) [Cas15].
Nel settore e-Learnig si possono citare i lavori in [Ban05, Gae05, Cas15] che, come visto
nella sezione 2.2.2, realizzano reti di tipo VO orientante al conseguimento di diversi obiettivi
in questo contesto.
In [Ban05, Gae05] si comincia ad intravedere nella tecnologia della griglia, la migliore
soluzione per costituire una rete di tipo VO per e-learning, valutando fattori quali la migliore
gestione delle risorse distribuite, la garanzia di integrità e l’interoperabilità.
Il progetto SFINGE (Solution Framework for Interoperable Network in Grid E-learning)
[Cas15], offre notevoli vantaggi rispetto ai lavori precedenti, incrementando l’interazione tra
gli studenti e i contenuti di tipo learning. Attraverso l’utilizzo della tecnologia della griglia si
è potuta realizzare una rete di tipo VO estesa e scalabile, con risorse di tipo learning condivise
in ambienti distribuiti ed eterogenei.
Il progetto vede lo sviluppo del portale SFINGE che rende disponibili i servizi di griglia.
Attraverso il portale l’utente viene a conoscenza del luogo in cui risiedono le risorse condivise
e può utilizzarle semplicemente scaricandole. L’accesso ai servizi di griglia è reso, così,
trasparente per gli utenti.
Tra le altre possibilità, gli utenti della griglia possono aggiungere strumenti software e risorse,
utilizzando il componente GridFTP per il trasferimento dei file, e sottoporre lavori
avvalendosi del componente GRAM5. Per l’autenticazione e l’autorizzazione degli utenti
vengono utilizzati i certificati SimpleCA che utilizzano lo standard X.509.
Un ulteriore vantaggio del progetto SFINGE si ritrova nell’implementazione della tecnologia
del workflow che permette di superare i problemi dei ritardi e delle frammentazioni delle
42
attività, legati alle comunicazioni asincrone tra i partecipanti alla rete di tipo VO,
determinando una riduzione dei tempi di produzione e del rischio di dispersione dei dati.
I maggiori obiettivi conseguiti sono, quindi, flessibilità e riduzione dei tempi nella gestione
dello sviluppo di tutto il sistema di tipo e-learning [Cas15].
L’utilizzo della tecnologia della griglia si ritrova anche nel settore Knowledge Discovery
[Cas09] e nel settore Biomedical Knowledge Engineering [Cas11].
La problematica posta in [Cas09] è quella della ricerca all’interno della vasta raccolta delle
informazioni biomediche. A tal proposito si sviluppa un’apposita soluzione di tipo
middleware in un ambiente scalabile e distribuito. Principalmente il sistema sviluppato è in
grado di eseguire un’applicazione utente, processare le operazioni suddividendole su più nodi,
creando un calcolo parallelo e monitorandolo, ed essere al corrente delle risorse
computazionali disponibili e del loro stato. Per realizzare questo obiettivo si include, nello
sviluppo del progetto, un’interfaccia grafica per utente per l’accesso ai nodi, un sistema per il
bilanciamento del carico e un ottimizzatore di trasferimento per ridurre i costi di
comunicazione [Cas09].
Il settore Knowledge Engineering [Cas11] attiene all’integrazione della conoscenza in sistemi
di computer, al fine di risolvere problemi complessi che generalmente richiedono specialisti di
alto livello. La conoscenza umana è, quindi, codificata e integrata in applicazioni dette
knowledge application per il supporto alle decisioni.
In [Cas11] si distinguono tre fasi nella modellazione di un processo di conoscenza che
possono anche essere cicliche; la prima fase consiste nell’identificazione della conoscenza, la
seconda in una descrizione dettagliata e la terza è orientata alla rifinitura.
Nel lavoro presentato in [Cas11], indirizzato alla biomedicina, si mette in evidenza la
problematica delle grandi quantità di documenti elettronici sullo stato di salute, di esami di
laboratorio, di immagini diagnostiche, di lettere di dimissioni ospedaliere che sono localizzati
in differenti sistemi autonomi e che, pertanto, non consentono a tutti gli specialisti che
lavorano nel settore, di avvalersene. Si costituisce, così, uno scenario di risorse distribuite,
con la necessità di uno standard comune, di una grande potenza di calcolo e di organizzazione
interna che conduce verso la scelta della tecnologia del Grid computing, Fig. 20 [Cas11].
43
Fig. 20. Soluzione di tipo Grid computing nello scenario biomedico di
risorse distribuite
In [Bel07] la tecnologia della griglia è stata scelta per l’analisi da remoto di immagini e
l’interattiva diagnosi online, consentendo una rilevante riduzione dei ritardi nelle procedure
diagnostiche afferenti ai programmi di screening. Le considerazioni relative alla natura
distribuita dei database medici, ai problemi di privacy e alla necessità di ridurre al minimo la
replica ed il trasferimento dei dati, portano a sviluppare un approccio basato sul presupposto
che, per quanto sia possibile, i dati debbano essere archiviati e analizzati dove sono stati
raccolti. A tal proposito lo strumento ROOT/PROOF permette di avviare processi interattivi a
distanza su richiesta. L’interfaccia ai servizi di griglia permette di accedere all’autenticazione
e ai servizi di gestione dei dati, mentre il portale web permette una visione facilitata dello
stato delle risorse della rete di tipo VO. L’interfaccia GUI (Graphic User Interface) permette
la registrazione di un nuovo paziente e di un nuovo esame, per un paziente esistente, e
l’analisi di un’immagine selezionata. Per ogni immagine è possibile inserire o modificare la
diagnosi e le annotazioni, selezionare manualmente la porzione indicata dal radiologo,
effettuare ingrandimenti e finestrature, scegliere il contrasto, invertire l’immagine e variare la
luminosità.
La strategia per le procedure di screening prevede che le immagini raccolte negli ospedali
siano analizzate dai sistemi CADe e solo quelle che hanno un’alta probabilità di contenere
una patologia, siano inviate ai centri diagnostici, dove i radiologi possono analizzarle.
44
Particolare attenzione è posta al problema della sicurezza. Per l’autenticazione e
l’autorizzazione si utilizza lo standard X.509 Certificates; l’accesso alle risorse di tipo VO è,
così, permesso solo agli utenti in possesso di un certificato di tipo Grid Certificate e registrati,
nei server della rete di tipo VO, come autorizzati ad accedere al sistema [Bel07].
2.4. La tecnologia come supporto alla medicina
Il lavoro in medicina necessita di un ambiente collaborativo e produce un’alta densità di dati
che devono essere archiviati e processati, come visto precedentemente. Inoltre, l’utilizzo dei
dati nelle diverse metodologie di elaborazione spinge verso il bisogno di risorse dinamiche e
scalabili [Gri15].
Molti sono i settori della medicina in cui la tecnologia fornisce un importante supporto, come
descritto in [Gri15], alcuni di questi sono:
- telemedicina/teleconsulto: è necessario sostenere la comunicazione e la condivisione tra le
parti coinvolte, e rendere possibile operazioni come la raccolta, l’accesso e l’analisi dei
dati dei pazienti localizzati nei differenti ospedali o centri sanitari, attraverso reti dedicate;
- diagnostica per immagini: le problematiche più grandi risiedono nell’archiviazione, nella
condivisione attraverso flussi di lavoro e nell’elaborazione, con grande potenza di calcolo,
delle immagini;
- salute pubblica e autogestione dei pazienti: è necessario facilitare l’accesso ai dati medici,
per i grandi gruppi di popolazione, per ottimizzare la prevenzione, promuovere e
migliorare la salute pubblica;
- gestione di ospedali/sistemi informativi clinici: la condivisione di informazioni tra i diversi
reparti dell’ospedale è molto importante, quindi si richiede, generalmente, la possibilità di
accedere ai dati da tutti i dispositivi dell’ospedale;
- terapia: in questo settore sono di rilievo la pianificazione, la gestione e la valutazione degli
interventi terapeutici;
- altre tipologie di utilizzo dei dati.
Alcune applicazioni della tecnologia alla medicina si ritrovano in [Aml14, Hua14, Yos12,
Sil12, Lan14, Sil11]. In [Aml14] il lavoro si focalizza sui rapidi strumenti computerizzati di
allarme per l’individuazione della sepsi (risposta infiammatoria innescata da un’infezione con
un alto tasso di mortalità in ospedale). In [Hua14] si porta in rilievo l’utilizzo delle
piattaforme informatiche per la diagnostica per immagini che risultano un metodo organizzato
per l’utilizzo dei dati provenienti dai diversi sistemi informativi medici, con lo scopo di
sviluppare sistemi per la diagnosi e il trattamento delle patologie. In [Yos12] si propone lo
sviluppo di una piattaforma software per supportare l’elaborazione ad alte prestazioni delle
immagini tridimensionali. In [Sil12] è presentata un’architettura per un archivio PACS
45
(Picture Archiving and Communication System) che assicura privacy, integrità e disponibilità
dei dati, consentendo di supportare, anche, il lavoro dei piccoli centri economicamente deboli.
La gestione di alcune malattie in rapida diffusione può essere facilitata dalla telemedicina
[Lan14]. In alcuni settori, come in quello oftalmico, il numero di individui che necessitano di
assistenza medica è nettamente superiore al numero di specialisti. Per questi motivi è
necessario distanziarsi dai modelli sanitari classici, orientandosi verso l’assistenza a distanza e
una preliminare analisi automatica dei dati raccolti [Sil11].
Di rilievo è la possibilità di permettere l’arrivo dell’assistenza specialistica nelle aree remote;
in [Lan14] si sviluppa una piattaforma di telemedicina focalizzata alla diagnosi e al
tempestivo trattamento di malattie oculari. Grazie alla trasmissione in tempo reale, di dati ed
immagini digitali, è possibile un continuo monitoraggio dei pazienti, inoltre le diagnosi
generate vengono utilizzate per creare un sistema di diagnosi intelligente [Lan14].
I processi automatizzati in telemedicina supportano l’elaborazione dei dati, contenendo i costi
e assicurando il mantenimento di una buona accuratezza. Il paziente ottiene, così, vantaggi
quali diagnosi più rapida, più tempo dedicatogli per l’informazione medica ed, eventualmente,
la possibilità di una comunicazione in tempo reale con il medico di base.
Questi sistemi consentono un miglioramento del flusso di lavoro, riducendo le operazioni
effettuate dagli specialisti e gli errori durante le importanti fasi iniziali di triage sulle
immagini a basso rischio. Idealmente, si dovrebbe unire alle immagini la cartella clinica
elettronica relativa al paziente in esame, prima di procedere alla classificazione e alla diagnosi
automatica delle stesse, in modo tale da fornire le importanti informazioni mediche per
ottenere un individuale profilo di rischio e facilitare la pianificazione delle terapie.
Si rende necessario sottolineare che lo sviluppo delle metodologie di elaborazione delle
immagini, utilizzate in unione alla telemedicina, è stato possibile solo grazie alla crescente
disponibilità di potenza di calcolo. Queste metodologie si possono suddividere in due gruppi:
CADe (Computer-Aided Detection) e CADx (Computer-Aided Diagnosis). Le prime sono
utilizzate per l’identificazione delle lesioni patologiche, mentre le seconde per effettuare una
classificazione basata anche su altre informazioni cliniche che permettano di valutare la
probabilità o il rischio della presenza di una patologia [Sim15].
Tuttavia, l’analisi condotta in [Sim15], sui principali sviluppi di sistemi di Automated Retinal
Image Analysis (ARIA) in campo oftalmico, porta in rilievo come, a fronte degli enormi
vantaggi da questi introdotti, sia necessario considerare le difficoltà legate allo sviluppo degli
stessi che richiede ampi e vari data set di immagini per l’addestramento e di riferimenti per la
convalida.
46
3. Sviluppo di una rete collaborativa
3.1. Motivazione e definizione degli obiettivi
Lo sviluppo delle metodologie ARIA presenta principalmente due limiti. Il primo riguarda la
mancata disponibilità, per i ricercatori che sviluppano le metodologie di elaborazione delle
immagini, di un ampio e vario data set di immagini per l’addestramento, a causa di ostacoli
normativi e di privacy; la seconda limitazione riguarda l’assenza di riferimenti per la
convalida delle metodologie [Sim15].
La convalida è il processo in cui si valuta se la metodologia esegue correttamente il suo
compito, attraverso il confronto con un riferimento standard fornito da un esperto (dove per
esperto, con riferimento alle problematiche retiniche, si intende la figura dell’oftalmologo).
Questo processo quindi implica tre azioni: selezionare immagini campione per la validazione,
raccogliere riferimenti per le suddette immagini, confrontare i risultati della metodologia
stessa con i riferimenti per avviare analisi statistiche, così da valutare le prestazioni [Tru13].
Il problema che riguarda la mancanza di immagini marcate manualmente, interviene
principalmente perché ottenere i riferimenti risulta molto laborioso e costoso. Uno dei metodi
utilizzati, per cercare di ridurre i costi per ottenere riferimenti, è l’approccio dello “sviluppo
collettivo”, nel quale il lavoro viene affidato ad un’anonima forza-lavoro sfruttando Internet.
Ovviamente la problematica di questo tipo di approccio, in campo medico, riguarda da un lato
la mancata conoscenza della forza-lavoro, dall’altro le regole di privacy nell’accesso on-line a
dati clinici [Sim15].
Sono, inoltre, importanti fattori la variabilità del giudizio degli esperti e la necessità di
riferimenti direttamene confrontabili con i risultati delle metodologie. Un riferimento,
derivante da una stessa immagine, può risultare diverso a seconda dell’esperto che ne è
autore, ma può anche variare se rivisto dallo stesso artefice. Le differenze dipendono
dall’esperienza, dai compiti che ciascun esperto svolge, dalla qualità dell’immagine,
dall’interpretazione sulle modalità di creazione del riferimento. Risulterebbe utile che più
esperti sviluppino lo stesso data set di immagini marcate; tuttavia questo tipo di lavoro non fa
parte della normale pratica clinica e i medici non vi sono abituati e non comprendono la sua
rilevanza.
Inoltre le immagini retiniche, ottenute da una digital fundus camera, hanno in genere qualità
variabile a seconda delle procedure di acquisizione, della formazione degli operatori, della
messa a fuoco, delle occlusioni (ad esempio cataratta o ciglia), dalle lesioni diffuse, degli
artefatti introdotti dagli strumenti e dalle condizioni in cui avviene l’acquisizione. Pertanto è
indispensabile effettuare delle considerazioni di qualità sulle immagini, per una corretta
valutazione dei sistemi ARIA.
In conclusione quindi, anche se recentemente c’è stata una maggiore tendenza a creare data
set, la maggior parte di essi contengono un numero limitato di immagini, a volte derivanti da
47
un solo sito, o non forniscono riferimenti, o entrambi; questo a causa delle importanti sfide in
termini di tempo e costi che si incontrano nella costruzione di tali data set [Tru13].
Per dare una risposta alle esigenze sopra descritte, il presente lavoro è indirizzato alla
creazione di due vasti database che contengano immagini classificate e immagini marcate da
esperti, rese accessibili attraverso una piattaforma dedicata. Le immagini marcate da esperti
sono definite immagini Ground Truth (GT). Per la scelta delle caratteristiche dei suddetti
database che saranno di seguito riportate, si fa riferimento alle indicazioni fornite nel lavoro di
Trucco et al. [Tru13]:
- creazione collaborativa a livello internazionale dei database per archiviare un vasto volume
di dati, garantendo visibilità, credibilità e risultati utili per i medici;
- facilità di accesso previa procedura di registrazione;
- manutenzione regolare per garantire il mantenimento dei dati;
- grandi dimensioni;
- inclusione di metadati che caratterizzino la strumentazione per l’acquisizione della
retinografia, i pazienti e il tipo di problematica retinica;
- organizzazione per tipologia di studio;
- inclusione di immagini GT fornite da più oftalmologi situati in luoghi differenti per evitare
che si presentino influenze nel giudizio, per il confronto delle metodologie di elaborazione;
affiancamento per ogni immagine GT del livello di incertezza dell’oftalmologo.
I diversi aspetti che si riscontrano nel conseguimento di tale obiettivo implicano scelte
organizzative e tecnologiche ben precise.
La base per la formazione dei database sono le banche dati mediche che hanno natura
distribuita e presentano difficoltà di gestione in riferimento agli aspetti di privacy. Queste
problematiche portano necessariamente verso uno sviluppo con tecnologia Grid [Bel07].
Per la costituzione di tali database occorre la compartecipazione professionale di più figure
seppur territorialmente suddivise, che come in [Cas15], vadano a costituire quel sistema in cui
una serie di attori interagiscono per il conseguimento di un obiettivo comune, tale tipo di
interazione è definibile Virtual Organization. La gestione di tutto il sistema virtuale, e quindi
anche dei permessi relativi ai ruoli ricoperti dai diversi attori, viene affidata ad un
Amministratore che potrà in ogni momento apportare aggiunte o modifiche ritenute
opportune.
Per meglio supportare la gestione delle diverse attività che portano alla costituzione dei
database, si considera la tecnologia detta workflow.
In conclusione, si accederebbe al sistema attraverso una piattaforma web facilmente
utilizzabile, i metadati permetterebbero la giusta selezione degli ingressi per gli studi
epidemiologici o per la formazione di giovani medici (come in [Bel07]) e lo sviluppo dei
sistemi ARIA avrebbe a disposizione molti più dati, ottenendo un incremento delle
prestazioni.
48
Amministratore
Servizi per la collaborazione (Forum,
Chat, Videoconferenze, Wiki, Blog, Mail)
Utente
VIRTUAL
ORGANIZATION
Gestione ruoli
Servizi per la creazione dei file
Workflow
Archivio retinografie
originali
Database retinografie
classificate
Servizi di griglia
Database immagini
Ground Truth
Fig. 21. Virtual Organization per la creazione e la gestione di database
di retinografie classificate e di immagini Ground Truth
3.2. Ingressi e uscite
Si parte dal presupposto di avere a disposizione archivi di immagini retiniche provenienti da
diversi siti (ad esempio differenti ospedali e vari centri di screening), i cui dati sono affetti
dalle seguenti problematiche: non consentono di effettuare ricerche per parola chiave e non
sono suddivisi in categorie che permettano un accesso differenziato, per assicurare la privacy
dei pazienti. Si riporta di seguito il contenuto degli archivi (mostrato in Fig. 22):
- immagini retiniche a colori;
- dati del paziente come etnia, genere, età, nome, cognome e indirizzo;
- dati relativi alla strumentazione come il modello di digital fundus camera, il FOV (Field
Of View), la risoluzione del sensore impiegato.
49
IMMAGINE RETINICA
DATI PAZIENTE:
-etnia
-genere
-età
-nome
-cognome
-indirizzo
DATI STRUMENTAZIONE:
-modello
-FOV
-risoluzione
Fig. 22. Modello dati d’ingresso
A partire da questi dati in ingresso si procede per ottenere il primo dei due database indicati
precedentemente. Questo conterrà le stesse immagini retiniche d’ingresso, corredate con
metadati in parte derivanti dagli archivi originali e in parte ottenuti dal processo di
classificazione che permetteranno un più facile utilizzo del database, giungendo ad ottenere il
seguente modello di dati (come indicato in Fig. 23):
- immagine retinica a colori;
- codice identificativo dell’immagine retinica (ID);
- metadati relativi al paziente suddivisi in due categorie, Caratterizzatori come etnia, genere,
età, utili per gli studi epidemiologici, e Anagrafica con riferimento ai dati personali del
paziente come nome, cognome e indirizzo;
- qualità dell’immagine retinica per lo sviluppo dei sistemi ARIA: Inadeguata (I) / Minima
(M) / Buona (B);
- immagine segmentata derivante dalla metodologia di elaborazione;
- indicazione sulle Lesioni Patologiche (LP) : Presenza (P) / Non Presenza (NP) e tipologia.
50
METADATI PAZIENTE
CARATTERIZZATORI:
-etnia
-genere
-età
METADATI IMMAGINE
RETINICA:
-identificativo immagine retinica
-qualità immagine: I / M / B
-lesioni patologiche:
P / NP
tipologia
ANAGRAFICA:
-nome
-cognome
-indirizzo
IMMAGINE RETINICA
IMMAGINE ELABORATA
Fig. 23. Modello dati d’uscita del database retinografie classificate
Il secondo database conterrà le immagini GT delle retinografie, a partire dalla classificazione
fatta nel primo database. Si considera che per soddisfare la necessità di avere riferimenti
derivanti dall’opera di più oftalmologi, per ogni retinografia saranno sviluppate almeno due
immagini GT. Inoltre il grado di incertezza dell’oftalmologo andrà a costituire il metadato
associato ad ogni immagine GT, realizzando il modello di dati in Fig. 24:
- immagine GT;
- metadati relativi all’immagine GT: codice identificativo immagine retinica (ID), codice
identificativo immagine GT (ID-GT), codice identificativo dell’oftalmologo autore (ID-A),
livello di incertezza (I).
GROUND TRUTH
METADATI IMMAGINE GT:
-identificativo immagine retinica
-identificativo immagine GT
-identificativo oftalmologo
-incertezza
Fig. 24. Modello dati d’uscita del database delle immagini GT
51
Per i modelli di dati e i relativi metadati si è fatto riferimento ai lavori di Trucco et al. [Tru13]
e di Lancheros-Cuesta et al. [Lan14].
3.3. Fasi per la realizzazione dei database
Il presente lavoro ha come obiettivo la creazione di due database, di conseguenza si devono
considerare due processi, di cui il primo indirizzato ad ottenere immagini retiniche
classificate. In questo contesto i passi necessari sono:
1. Valutazione della qualità dell’immagine: l’immagine originale viene valutata tenendo
presente le caratteristiche di strumentazione, arrivando attraverso la considerazione
dell’istogramma, del contrasto, del rapporto segnale/rumore e della chiarezza
dell’immagine (con riferimento ai vasi che circondano la macula) a definirne la qualità (I
/ M / B) per lo sviluppo delle metodologie ARIA;
2. Registrazione delle lesioni patologiche: l’immagine originale è sottoposta all’analisi da
parte di un oftalmologo che individua la presenza (P) o meno (NP) di eventuali lesioni
patologiche, caratterizzandole con la loro tipologia;
3. Affiancamento dell’immagine elaborata: l’immagine originale è elaborata attraverso
metodologie che soddisfino le linee guida e gli standard medici universalmente
riconosciuti, ottenendo l’immagine elaborata;
4. Controllo della retinografia classificata: vengono raccolti tutti i dati ottenuti dalle fasi
precedenti ed effettuato un ulteriore controllo medico sulle lesioni patologiche rilevate
nell’immagine retinica che porta o all’approvazione, e quindi all’archiviazione delle
immagini con i relativi metadati, o alla rivalutazione delle lesioni patologiche;
5. Archiviazione della retinografia classificata: le immagini e i metadati sono archiviati nel
database delle retinografie classificate.
Il secondo processo si sviluppa per costruire i database delle immagini GT e consiste nelle
seguenti fasi:
1. Selezione dell’immagine: a seconda dei dati ottenuti dalla classificazione, vengono
selezionate le immagini più appropriate per lo sviluppo delle metodologie ARIA;
2. Sviluppo dell’immagine GT: per ciascuna immagine selezionata sono prodotte almeno
due immagini GT e sono indicati i livelli di incertezza da ciascun oftalmologo autore;
3. Controllo dell’immagine GT: per ogni immagine GT si controlla la corretta esecuzione
della stessa, autorizzandone l’archiviazione o richiedendo una ripetizione del compito
all’oftalmologo di riferimento;
4. Archiviazione dell’immagine GT: ogni immagine GT viene archiviata con i relativi
metadati nel database delle immagine GT.
52
Inoltre, si rende necessaria l’aggiunta di fasi trasversali all’intera vita del progetto. Queste
consistono in:
- una continua gestione degli accessi, dei ruoli e dei permessi ad essi associati;
- un monitoraggio costante che assicuri il funzionamento dell’intero sistema e garantisca che
non vi sia perdita di dati.
3.4. Ruoli coinvolti nella Virtual Organization
I ruoli coinvolti nel processo di creazione dei database sono:
- Esperto qualità immagine: analizza le immagini originali contenute negli archivi, tenendo
presente i dati relativi alla strumentazione, e ne identifica la qualità in I / M / B;
- Medico analizzatore retinografia: analizza le retinografie registrando la possibile presenza
di lesioni patologiche P o la loro assenza NP e la loro tipizzazione;
- Medico selezionatore retinografia: individua le immagini retiniche, tra quelle contenute nei
database retinografie classificate, per lo sviluppo delle immagini GT;
- Medico sviluppatore immagine GT: fornisce l’immagine GT delle retinografie selezionate
dal Medico selezionatore retinografia;
- Fornitore immagine elaborata: avvia le metodologie per l’elaborazione delle immagini
retiniche, fornendo immagini elaborate;
- Medico supervisore: controlla la classificazione delle immagini retiniche, con riferimento
alle lesioni patologiche, e le immagini GT, autorizzando le archiviazioni o richiedendo un
analisi aggiuntiva;
- Gestore archiviazione: archivia le retinografie classificate e le immagini GT con i relativi
metadati, rendendole così disponibili alla consultazione, controllata delle regole di
visualizzazione.
In aggiunta a questi ruoli si devono considerare quelli relativi alle attività trasversali per la
gestione dell’intero sistema:
- Amministratore piattaforma: gestisce nel complesso il sistema virtuale, rapportandosi con
ogni figura interna ed esterna alla rete di tipo VO, autorizzando gli accessi, gestendo i ruoli
e modificandone i permessi;
- Esperto piattaforma: è responsabile della progettazione del sito web, della navigazione al
suo interno, dell’accesso ad esso e dell’utilizzo dello stesso; si occupa inoltre della
sicurezza dei dati archiviati, evitando ogni possibile perdita.
53
Infine si identifica con il ruolo di Ospite ogni nuova figura esterna alla rete di tipo VO che
accede al sistema per utilizzarlo e, quindi, per la consultazione dei database delle retinografie
classificate e delle immagini GT.
Si vuole sottolineare che ogni utente può ricoprire più di un ruolo sopra decritto e, allo stesso
modo, possono esistere più utenti che ricoprono lo stesso ruolo.
3.5. Regole di visualizzazione
Nello sviluppo di questo sistema è necessario porre molta attenzione ai contenuti degli archivi
originali, in quanto questi consistono in dati sensibili e di notevole valore. Pertanto si
considera che l’accesso agli archivi originali non sia consentito a tutti i componenti della rete
di tipo VO, ma solo a chi ricopre ruoli che hanno la responsabilità di gestire dati e immagini,
assicurando il corretto utilizzo e l’integrità. Si riportano, in Tab.1, le regole di visualizzazione
degli archivi originali a seconda del ruolo ricoperto all’interno della rete di tipo VO.
RUOLI
Amministratore piattaforma
Esperto piattaforma
Esperto qualità immagine
Medico analizzatore retinografia
Medico selezionatore retinografia
Medico sviluppatore immagine GT
Fornitore immagine elaborata
Medico supervisore
Gestore archiviazione
Ospite
Archivi originali
x
x
x
x
Tab. 1. Regole di visualizzazione degli archivi originali
Per quanto riguarda, invece, i due database prodotti, si attiverà la visualizzare di solo alcuni
metadati, a seconda del ruolo che si ricopre al momento dell’accesso, come riportato in Tab.
2. Si ritiene importante sottolineare che al fine di garantire la privacy dei pazienti, si sono
suddivisi i metadati ad esso relativi in due campi: Caratterizzatori e Anagrafica; quest’ultimo
sarà visibile solo per alcuni ruoli (come indicato in Tab. 2), assicurando che i dati che
strettamente identificano la persona, non siano in alcun modo divulgati.
54
RUOLI
Dati paziente
Amministratore
piattaforma
Esperto piattaforma
Esperto qualità immagine
Medico analizzatore
retinografia
Medico selezionatore
retinografia
Medico sviluppatore
immagine GT
Fornitore immagine
elaborata
Medico supervisore
Gestore archiviazione
Ospite
Ana.
x
Car.
x
x
x
Dati immagine
retinica
ID Qualità LP
x
x
x
x
x
x
x
x
Dati immagine GT
ID
x
ID-GT
x
ID-A
x
I
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Tab. 2. Regole di visualizzazione dei metadati
Per la visualizzazione delle varie immagini inserite nei database si fa riferimento alla Tab. 3.
RUOLI
Amministratore piattaforma
Esperto piattaforma
Esperto qualità immagine
Medico analizzatore
retinografia
Medico selezionatore
retinografia
Medico sviluppatore immagine
GT
Fornitore immagine elaborata
Medico supervisore
Gestore archiviazione
Ospite
Immagine retinica a
colori
x
x
Immagine elaborata
Immagine GT
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Tab. 3. Regole di visualizzazione delle immagini
55
x
x
x
x
3.6. Sviluppo del processo di classificazione di immagini retinografiche
Il primo processo che riguarda la creazione del database delle retinografie classificate,
coinvolge i ruoli di seguito riportati e comporta lo schema di connessioni riportato in Fig. 25.
Ruoli coinvolti:
Amministratore piattaforma
Esperto piattaforma
Esperto qualità immagine
Fornitore immagine elaborata
Medico analizzatore retinografia
Medico supervisore
Gestore archiviazione
Fig. 25. Schema dei collegamenti tra i ruoli per la classificazione delle
immagini retiniche
L’interazione tra i suddetti ruoli è gestita, come in [Cas15], attraverso la tecnologia detta
workflow, per garantire l’alta qualità dei database. Come descritto nella sezione 3.3, le fasi
coinvolte in questo processo sono: valutazione della qualità dell’immagine, registrazione delle
lesioni patologiche, affiancamento dell’immagine elaborata, controllo della retinografia
classificata, archiviazione della retinografia classificata. Per automatizzare il processo è
necessario individuare accuratamente il ruolo connesso ad ogni fase e il suo compito. La
tecnologia del workflow permette di gestire le differenti attività per i differenti ruoli, così da
automatizzare il processo di produzione, garantendo che:
56
- ogni nuovo contenuto sia prodotto dal componente della rete di tipo VO autorizzato al
compito;
- metadati e immagini possano essere assegnati ai diversi componenti della rete di tipo VO
autorizzati coinvolti nel processo, seguendo un predeterminato flusso di lavoro;
- ogni contenuto prima di essere archiviato viene rivisto e approvato;
- se rigettato il contenuto viene rinviato al suo creatore e rieditato per un nuovo controllo;
- se approvato il prodotto finale viene archiviato e reso disponibile per la consultazione.
In Fig. 26 è riportata la struttura del workflow per il processo di classificazione delle
retinografie. In particolare nei riquadri sono indicati i ruoli coinvolti e le uscite prodotte e
scambiate, mentre negli ovali sono riportate le azioni assegnate ai ruoli.
Immagini da
classificare
Esperto qualità
immagine
Analisi qualità
immagine
Metadati sulla
qualità
Fornitore immagine
elaborata
Produzione
immagine
elaborata
Immagine elaborata
Medico
analizzatore
retinografia
Analisi medica
immagine
Metadati sulle lesioni
patologiche
Medico supervisore
Controllo
medico
Valutazione
immagine
classificata
Gestore Archiviazione
Archiviazione
Retinografia
classificata nel
database
Fig. 26. Workflow per il processo di classificazione di immagini
retinografiche
57
Si sottolinea che ogni fase del processo, ha come dati d’ingresso tutti quelli generati nelle fasi
ad essa precedenti.
3.6.1. Valutazione della qualità dell’immagine
La prima fase, del processo di classificazione delle retinografie, coinvolge il ruolo
dell’Esperto qualità immagine che come indicato nelle regole di visualizzazione (sezione 3.5),
ha i permessi di accesso agli archivi originali. Il componente della rete di tipo VO che ricopre
questo ruolo, entra negli archivi originali e procede alla selezione di un’immagine. Il compito,
svolto dall’Esperto qualità immagine, è quello di considerare le caratteristiche di
strumentazione riportate negli archivi originali ed analizzare l’immagine, esaminandone
l’istogramma, il contrasto, il rapporto segnale/rumore e la chiarezza. La procedura termina
contrassegnando l’immagine con un metadato riferito alla qualità, considerata nella
prospettiva di riutilizzare l’immagine per lo sviluppo delle metodologie ARIA. L’indicazione
di qualità è scelta tra le seguenti possibilità:
ο‚·
Insufficiente: I;
ο‚·
ο‚·
Minima: M;
Buona: B.
Al termine della procedura l’immagine originale selezionata, corredata col suddetto metadato,
è resa disponibile per la fase successiva.
In Tab. 4 e Tab. 5 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
ATTORE
Esperto qualità immagine
Valutazione della qualità
dell’immagine
x
Qualità immagine
rw
Tab. 4. Permessi dell’attore coinvolto nella fase di Valutazione della
qualità dell’immagine
SOTTO-FASI
Selezione immagine
Esame immagine
Indicazione qualità
Tab. 5. Sotto-fasi
dell’immagine
DESCRIZIONE
-selezione immagine retinica dagli archivi originali
-esame caratteristiche immagine
-scrittura grado di qualità riscontrato
della
fase di
58
Valutazione
della qualità
3.6.2. Affiancamento dell’immagine elaborata
Il Fornitore immagine elaborata riceve l’uscita della fase precedente e procede ad avviare le
metodologie per la sua elaborazione. Si precisa che le metodologie di elaborazione di
immagine che intervengono in questa fase, sono state precedentemente sviluppate in altri
contesti e valutate per assicurare il soddisfacimento di linee guida e standard medici
universalmente riconosciuti. Ottenuta, con queste modalità, l’immagine elaborata è affianca
all’originale e resa disponibile per la fase successiva.
In Tab. 6 e Tab. 7 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
ATTORE
Fornitore immagine
elaborata
Affiancamento dell’immagine
elaborata
x
Immagine elaborata
rw
Tab. 6. Permessi dell’attore coinvolto nella fase di Affiancamento
dell’immagine elaborata
SOTTO-FASI
Elaborazione
Registrazione immagine
elaborata
DESCRIZIONE
-avvio metodologie autorizzate
-affiancamento dell’immagine originale con quella
elaborata
Tab. 7. Sotto-fasi della fase di Affiancamento dell’immagine elaborata
3.6.3. Registrazione delle lesioni patologiche
Il Medico analizzatore retinografia riceve l’uscita della fase precedente e procede alla sua
analisi, per rilevare la presenza di lesioni patologiche. Dall’analisi medica dell’immagine si
costituisce il metadato sulle lesioni patologiche che potrà consistere nelle seguenti opzioni:
ο‚·
ο‚·
presenza lesioni patologiche: P;
assenza lesioni patologiche: NP.
In seguito, il componente della rete di tipo VO coinvolto in questa fase dovrà dare indicazione
sul tipo di lesioni patologiche riscontrate, nel campo preposto.
Al termine della procedura l’immagine con le relative indicazioni, viene resa disponibile per
la fase successiva.
59
In Tab. 8 e Tab. 9 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
ATTORE
Medico analizzatore
retinografia
Registrazione delle lesioni
patologiche
x
Indicazioni lesioni
patologiche
rw
Tab. 8. Permessi dell’attore coinvolto nella fase di Registrazione delle
lesioni patologiche
SOTTO-FASI
Esame medico immagine
Indicazione lesioni patologiche
DESCRIZIONE
-individuazione lesioni patologiche
-individuazione tipologia di lesioni patologiche
-scrittura presenza/assenza lesioni patologiche
-scrittura tipo di lesioni patologiche
Tab. 9. Sotto-fasi della fase di Registrazione delle lesioni patologiche
3.6.4. Controllo della retinografia classificata
Il Medico supervisore riceve le immagini e i relativi dati ad esse associate, per procedere al
controllo prima dell’archiviazione. Il controllo che avviene in questa fase è di tipo medico,
quindi vengono rivalutate le lesioni patologiche che la retinografia mostra e le loro
caratteristiche. Dopo questo tipo di esame, il componente della rete di tipo VO coinvolto può
procedere in due differenti modi:
ο‚·
approvare l’archiviazione del nuovo oggetto “retinografia classificata”, nel caso di
accertamento delle indicazioni sulle lesioni patologiche;
ο‚·
rinviare l’oggetto al Medico analizzatore di retinografia per un controllo ulteriore, nel
caso di individuazione di errori nella valutazione delle lesioni patologiche.
La fase successiva dipende dalla scelta che viene effettuata dal Medico supervisore. Nel
primo caso si procederà con l’ultima fase, di seguito riportata, mentre nel secondo caso si
tornerà alla fase di Registrazione delle lesioni patologiche (sezione 3.6.3).
In Tab. 10 e Tab. 11 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
60
ATTORE
Medico supervisore
Controllo della retinografia
classificata
x
Valutazione immagine
classificata
rw
Tab. 10. Permessi dell’attore coinvolto nella fase di Controllo della
retinografia classificata
SOTTO-FASI
Valutazione immagine
classificata
Esito del controllo
DESCRIZIONE
-valutazione lesioni patologiche rilevate e loro
caratteristiche
-richiesta revisione delle indicazioni sulle lesioni
patologiche o approvazione dell’archiviazione
Tab. 11. Sotto-fasi della fase di Controllo della retinografia
classificata
3.6.5. Archiviazione della retinografia classificata
Se il Medico supervisore ha approvato l’archiviazione dell’immagine retinica classificata, il
Gestore archiviazione viene interpellato, per procedere all’ultima fase di questo processo.
Questo attore ricevuti tutti i dati e le immagini, procede alla consultazione degli archivi
originali, per corredare l’immagine con i metadati relativi al paziente, suddividendoli nelle
due categorie precedentemente indicate, cioè Caratterizzatori (etnia, genere, età) e Anagrafica
(nome, cognome e indirizzo), al fine di assicurare la privacy nello svolgimento delle attività di
consultazione del database. Ottenuti tutti i dati l’oggetto “retinografia classificata” è
archiviato, corredato di codice identificativo dal sistema e reso disponibile per la
consultazione, secondo le regole di accesso e visualizzazione del database indicate nella
sezione 3.5.
In Tab. 12 e Tab. 13 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
ATTORE
Gestore archiviazione
Archiviazione della retinografia
classificata
x
Retinografia classificata
rw
Tab. 12. Permessi dell’attore coinvolto nella fase di Archiviazione
della retinografia classificata
61
SOTTO-FASI
Accesso archivi originali
Archiviazione
DESCRIZIONE
-lettura dei dati relativi al paziente
-aggiunta metadati relativi al paziente
-archiviazione retinografia classificata
-attribuzione codice identificativo
Tab. 13. Sotto-fasi della fase di Archiviazione della retinografia
classificata
3.7. Sviluppo del processo di realizzazione di immagini Ground Truth
Il secondo processo riguarda la creazione del database delle immagini GT e coinvolge, oltre
ad alcuni ruoli del primo processo, altri ruoli, riportati di seguito insieme allo schema delle
connessioni in Fig. 27.
Ruoli coinvolti:
Amministratore piattaforma
Esperto piattaforma
Medico selezionatore retinografia
Medico sviluppatore immagini GT
Medico supervisore
Gestore archiviazione
Fig. 27. Schema dei collegamenti tra i ruoli per lo sviluppo delle
immagini Ground Truth
62
L’interazione tra i suddetti ruoli è gestita, anche in questo caso, attraverso la tecnologia detta
workflow. Come descritto nella sezione 3.3, le fasi coinvolte in questo processo sono:
selezione dell’immagine, sviluppo dell’immagine GT, controllo dell’immagine GT,
archiviazione dell’immagine GT.
Anche in questo caso, ogni fase del processo, ha come dati d’ingresso tutti quelli generati
nelle fasi ad essa precedenti.
In Fig. 28 è mostrata la struttura del workflow per il processo di realizzazione di immagini
GT. In particolare nei riquadri sono indicati i ruoli coinvolti e le uscite prodotte e scambiate,
mentre negli ovali sono riportate le azioni assegnate ai ruoli.
Immagini retinica
classificata
Medico
selezionatore
retinografia
Selezione
immagine
Medico sviluppatore
immagine GT
Produzione
immagine GT
Medico supervisore
Controllo
medico
Valutazione
immagine GT
Gestore Archiviazione
Archiviazione
Immagine GT nel
database
Immagine
selezionata
Immagine GT
Fig. 28. Workflow per il processo di realizzazione di immagini Ground
Truth
3.7.1. Selezione dell’immagine
La prima fase, del processo di realizzazione delle immagini GT, coinvolge il ruolo del Medico
selezionatore di retinografia che, accedendo ai database delle retinografie classificate, procede
alla selezione dell’immagine, tenendo conto delle informazioni contenute nei metadati.
Questa selezione è necessaria perché non tutte le immagini collezionate sono adatte per lo
63
sviluppo delle metodologie ARIA. L’immagine, così selezionata, viene resa disponibile per la
fase successiva.
In Tab. 14 e Tab. 15 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
ATTORE
Medico selezionatore di
retinografia
Selezione dell’immagine
x
Immagine selezionata
rw
Tab. 14. Permessi dell’attore coinvolto nella fase di Selezione
dell’immagine
SOTTO-FASI
Accesso database retinografie
classificate
Individuazione immagine
DESCRIZIONE
-analisi caratteristiche delle immagini presenti nel
database
-selezione immagine e sua messa in uscita
Tab. 15. Sotto-fasi della fase di Selezione dell’immagine
3.7.2. Sviluppo dell’immagine Ground Truth
Il Medico sviluppatore immagine GT riceve l’immagine selezionata nella fase precedente e
procede allo sviluppo della relativa immagine Ground Truth, utilizzando un apposito software
di disegno. Si rende necessario sottolineare che per soddisfare la necessità di mettere a
disposizione più immagini GT, a causa della variabilità del giudizio degli esperti, in questa
fase sono coinvolti almeno due componenti della rete di tipo VO con il ruolo di Medico
sviluppatore immagine GT. Ciascuno di questi riceve l’immagine selezionata e procede
individualmente allo svolgimento del proprio compito, indicando infine il livello di incertezza
sull’operazione effettuata. Ogni immagine GT, così ottenuta, con il relativo livello di
incertezza, è messa in uscita. A completamento della procedura il sistema attribuisce
all’immagine GT il codice identificativo dell’oftalmologo autore.
In Tab. 16 e Tab. 17 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
64
ATTORE
Medico sviluppatore
immagine GT
Sviluppo dell’immagine GT
x
Immagine GT
rw
Tab. 16. Permessi dell’attore coinvolto nella fase di Sviluppo
dell’immagine GT
SOTTO-FASI
Produzione
Uscita immagine GT
DESCRIZIONE
-produzione immagine GT
-indicazione livello di incertezza
-messa in uscita dell’immagine GT prodotta
-attribuzione codici identificativi
Tab. 17. Sotto-fasi della fase di Sviluppo dell’immagine GT
3.7.3. Controllo dell’immagine Ground Truth
Il Medico supervisore riceve le immagini GT separatamente e procede al controllo. Questa
fase si rende necessaria perché, come descritto in [Tru13], la generazione delle immagini GT
non fa parte della normale pratica clinica e i medici non vi sono abituati, pertanto potrebbero
sorgere fraintendimenti sulle modalità di svolgimento del compito. Dopo la verifica di
ciascun’immagine GT, l’attore coinvolto può procedere in due differenti modi:
ο‚·
approvare l’archiviazione della nuova immagine GT, nel caso di corretta esecuzione
del compito;
ο‚·
rinviare l’immagine GT al Medico sviluppatore immagine GT per una nuova
esecuzione del lavoro, nel caso di individuazione di errori nello sviluppo della stessa.
La fase successiva dipende dalla scelta che viene effettuata dal Medico supervisore. Nel
primo caso si procederà con l’ultima fase, di seguito riportata, mentre nel secondo caso si
tornerà alla fase di Sviluppo dell’immagine GT (sezione 3.7.2), attraverso la richiesta di
ripetizione del compito, inviata dal sistema all’oftalmologo interessato, individuabile dal suo
codice identificativo.
In Tab. 18 e Tab. 19 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
65
ATTORE
Medico supervisore
Controllo dell’immagine GT
x
Valutazione immagine GT
rw
Tab. 18. Permessi dell’attore coinvolto nella fase di Controllo
dell’immagine GT
SOTTO-FASI
Valutazione immagine GT
Esito del controllo
DESCRIZIONE
-valutazione corretta esecuzione dell’immagine GT
-richiesta revisione dell’immagine GT o approvazione
dell’archiviazione
Tab. 19. Sotto-fasi della fase di Controllo dell’immagine GT
3.7.4. Archiviazione dell’immagine Ground Truth
Se il Medico supervisore ha approvato l’archiviazione dell’immagine GT, il Gestore
archiviazione viene interpellato per avviare l’ultima fase di questo processo. Questo attore
riceve l’immagine GT e le indicazioni ad essa relative e procede all’archiviazione. L’oggetto
“GT” è archiviato, corredato dal sistema di codice identificativo immagine GT e codice
identificativo immagine retinica e, quindi, reso disponibile per la consultazione, secondo le
regole di accesso e visualizzazione del database indicate nella sezione 3.5.
In Tab. 20 e Tab. 21 sono riportate le indicazioni dell’attore coinvolto nella fase in esame, dei
permessi di lettura (r) e scrittura (w) (rw indica che entrambe le azioni sono permesse) e le
sotto-fasi con relativa descrizione.
ATTORE
Gestore archiviazione
Archiviazione dell’immagine
GT
x
Immagine GT
rw
Tab. 20. Permessi dell’attore coinvolto nella fase di Archiviazione
dell’immagine GT
SOTTO-FASI
Archiviazione
DESCRIZIONE
-archiviazione immagine GT
-attribuzione codici identificativi
Tab. 21. Sotto-fasi della fase di Archiviazione dell’immagine GT
66
3.8. Modello innovativo di rete oftalmica basato sulla Virtual Organization
I due database di retinografie classificate e di immagini GT sono costituiti attraverso le fasi
dei processi precedentemente descritti e sono resi disponibili ad ogni Ospite della rete di tipo
VO.
L’estensibilità e la flessibilità della tipologia collaborativa scelta offre notevoli vantaggi.
Infatti, ogni Ospite può essere di volta in volta produttore di informazioni che accrescono
importanza e utilità dell’organizzazione proposta. In questo lavoro è stata considerata la
creazione di un flusso di dati che passando dall’interno all’esterno della rete di tipo VO,
produce database per patologia attraverso il lavoro di ogni figura coinvolta, come mostrato in
Fig. 29.
Archivio retinografie
originali
VO
Database
immagini
Ground Truth
Database
retinografie
classificate
Database di immagini
elaborate per
retinopatia diabetica
Archivio immagini
elaborate per
retinopatia diabetica
Database di
immagini elaborate
per glaucoma
Ospite
Archivio immagini
elaborate per
glaucoma
Ospite
Archivio immagini
elaborate per altra
patologia
Database di
immagini
elaborate per altra
patologia retinica
Ospite
Fig. 29. Modello innovativo di rete oftalmica basato sulla VO
67
L’Ospite ha accesso ai database secondo le regole di visualizzazione descritte e può ricavare
gli elementi utili ai propri studi attraverso la ricerca per metadati. Ogni Ospite può svolgere il
proprio lavoro in autonomia, all’esterno della rete di tipo VO, sviluppando le metodologie che
permettono l’elaborazione delle immagini retiniche contenenti la patologia oggetto di studio.
Le immagini elaborate da ogni Ospite possono essere messe a disposizione
dell’organizzazione proposta, in archivi appositamente predisposti.
Questo offre notevoli possibilità di miglioramento per la rete di tipo VO, in quanto questi
archivi di immagini consentono lo sviluppo di database specifici per patologia che sono di
supporto alla ricerca in campo oftalmico. Questi nuovi database possono essere utilizzati da
altri Ospiti per agevolare lo sviluppo e i miglioramenti delle proprie metodologie ed effettuare
confronti sulle prestazioni ottenute.
Va precisato che gli archivi contenenti le immagini elaborate da ogni Ospite non possono
essere direttamente utilizzati perché non controllati e mancanti di metadati. L’accesso agli
archivi da parte dei componenti dell’organizzazione proposta si rende quindi indispensabile,
per effettuare le operazioni necessarie a che i preziosi dati possano diventare effettivamente
utilizzabili. Le figure professionali già presenti nella rete di tipo VO sin qui proposta, possono
svolgere tutte le operazioni utili per la formazione di nuovi database attraverso opportuni
flussi di lavoro. I database così creati sono suddivisi per patologia e continuamente accresciuti
attraverso immagini fornite dagli Ospiti e il lavoro di controllo e modifica effettuato dai
componenti dell’organizzazione.
Si viene così a creare un flusso di informazioni che attraverso il lavoro dei partecipanti interni
ed esterni alla rete di tipo VO, può migliorare significativamente i database per patologia e
permette l’approfondimento degli studi per quelle patologie più rare, per le quali è più
difficoltoso reperire dati utili.
68
4. Modello di una rete oftalmica innovativa per la retinopatia diabetica
L’importanza e l’utilità dell’organizzazione proposta può essere messa in luce attraverso un
esempio di utilizzo dei due database creati. Come detto lo sviluppo di metodologie di
elaborazione d’immagine necessita di un ampio e vario set di retinografie classificate per
l’addestramento e di riferimenti per la convalida. Il database delle retinografie classificate
permette di selezionare le immagini per lo sviluppo della metodologia individuata per la
patologia in esame, mentre il database delle immagini GT offre i riferimenti per convalidare
tale metodologia e valutarne l’efficacia.
Ponendosi nel ruolo di un Ospite che accede ai database della rete di tipo VO si possono
selezionare da questi tutti i dati necessari allo sviluppo del metodo qui proposto. Le immagini
elaborate possono essere caricate sull’apposito archivio, predisposto per la patologia
esaminata, e diventare così elementi di arricchimento per i database successivamente creati
dalla rete di tipo VO.
In questa tesi si è considerata la retinopatia diabetica come patologia oftalmica. Questa
patologia si rivela in fase avanzata la principale causa di cecità per i paesi industrializzati
[Sim15, Das15, Lan14], pertanto è molto importante la tempestività nella sua identificazione.
Si è considerato il caso di un Ospite della rete di tipo VO impegnato nello sviluppo della
corrispondente metodologia. Le immagini qui elaborate andranno ad accrescere l’archivio di
immagini elaborate per retinopatia diabetica, da cui verrà costituito il corrispettivo database,
Fig. 30.
Archivio retinografie
originali
VO
Database
immagini
Ground Truth
Database
retinografie
classificate
Database di immagini
elaborate per retinopatia
diabetica
Archivio immagini
elaborate per retinopatia
diabetica
Ospite
Fig. 30. Modello innovativo di rete oftalmica per la retinopatia
diabetica
69
4.1. La retinopatia diabetica
Il diabete mellito è il terzo problema di salute pubblica più grande al mondo e se nel 2000 il
numero di individui affetti da questa patologia si assestava intorno ai 171 milioni [Lan14], le
stime annunciano un aumento entro il 2030, anno in cui si prevede che il numero di casi si
avvicinerà ai 552 milioni [Sim15].
Nel 1856, per la prima volta, venne descritta, ad opera di Eduard Jaeger, l’osservazione di
macchie giallastre e extra-vascolarizzazione nella macula di un paziente diabetico. Bisognerà
aspettare 113 anni perché il simposio Airlie House Symposium on Treatment of Diabetic
Retinopathy stabilisca le basi del corrente metodo di fotografia, per stimare la presenza e la
gravità della retinopatia diabetica. Si stima che quasi la metà di pazienti diabetici mostri i
segni di una retinopatia diabetica. Questo tipo di retinopatia è risultato in aumento anche
grazie ai notevoli progressi fatti nell’ambito delle cure mediche per la gestione del diabete
(sin dalla scoperta dell’insulina principalmente ad opera di Frederick Banting e Charles Best
nel 1921) che hanno permesso di migliorare l’aspettativa di vita dei pazienti affetti da questa
patologia, sviluppando, così, anche la possibilità di incorrere in complicanze legate alla
micro-vascolarizzazione [Sim15].
Generalmente per il diabete di tipo I, al momento della diagnosi si riscontra che nel 15%-20%
dei casi i pazienti sono affetti da retinopatia diabetica, in quanto questa sarebbe comparsa dai
4 ai 7 anni prima, senza che essi ne fossero a conoscenza; mentre nel caso del diabete di tipo
II si ritrova la retinopatia diabetica nel 13% dei casi e si stima che nel 90%-100% dei pazienti
questa sia comparsa 20 anni prima. Il rischio maggiore si ha quando la retinopatia passa ad
una fase proliferativa, evento che le permette di confermarsi come la principale causa di cecità
nei paesi industrializzati (nel diabete di tipo I essa si manifesta nel 25% dei casi a 15 anni di
malattia, mentre nel tipo II a più di 25 anni di malattia).
Si rende così evidente che una diagnosi precoce, insieme ad una buona gestione del diabete,
possa ridurre le complicanze dovute alla malattia e impedire la perdita della vista [Lan14].
I casi di retinopatia diabetica si possono, quindi, suddividere in due gruppi: retinopatia
diabetica non-proliferante (NPDR) e retinopatia diabetica proliferante (PDR). La NPDR si ha
nelle prime fasi della retinopatia diabetica, in cui i vasi sanguigni della retina si danneggiano
causando la perdita di fluidi. L’occlusione di molti vasi si traduce in un insufficiente afflusso
di sangue e quindi nella sofferenza retinica. Per cercare di contrastare questo fenomeno si ha
la nascita di nuovi vasi che risultano tuttavia irregolari e più fragili rispetto a quelli presenti
nella normale vascolarizzazione, portando così all’offuscamento della visione [Das15].
La retinopatia diabetica deve, quindi, essere rilevata appena possibile e trattata, per evitare
seri danni alla retina dei pazienti, come la degenerazione in retinopatia diabetica proliferante,
la quale forte minaccia deriva dal brusco peggioramento.
Negli ultimi decenni molti sono stati i miglioramenti ottenuti nella diagnostica per immagini
in campo oftalmico [Osa02, Wal02] e grazie ai progressi nei sistemi automatizzati di diagnosi,
70
i medici possono eseguire esami per screening di massa per le malattie più comuni [Sta04,
Cha89, Hoo00, Car12].
La comparsa della neo-vascolarizzazione, tipicamente collegata all’insorgere della PDR, può
essere identificata attraverso tecniche di estrazione dei vasi retinici [Zha09, Ram12, Car15].
Anche se molti sono gli studi che hanno condotto allo sviluppo di metodologie di edge
detection [Sian15, Zha14], tuttavia questi ultimi non sempre portano a risultati accettabili
nell’estrazione delle varie caratteristiche delle retinografie con retinopatia proliferante.
Generalmente si possono evidenziare alcune fasi principali nella struttura delle metodologie.
La prima fase è quella di pre-processing, in quanto le immagini retiniche risultano affette da
cattiva illuminazione e artefatti; inoltre è necessario aumentare il contrasto dei vasi rispetto
allo sfondo.
Dopo aver esaltato i vasi si procede con la segmentazione, per giungere a quella che può
anche essere chiamata mappa binaria dei vasi sanguigni.
L’ultimo passaggio riguarda il post-processing, necessario per rimuovere i punti che sono
stati erroneamente indicati come vasi [Sin15].
Alcuni inconvenienti non sono stati ancora superati, dal momento che ogni procedura di preprocessing fornisce miglioramenti in alcune aree dell’immagine, ma presenta
contemporaneamente alcuni svantaggi in altre zone retiniche.
Nel seguito di questo capitolo sarà affrontato il problema di rilevare i vasi sanguigni nelle
immagini retiniche che presentano i primi segni di retinopatia proliferante, evidenziando i vasi
in modo diverso a seconda che essi si trovino nel disco ottico o nella rimanente parte di
sfondo della retina, cercando, in questo modo, di ridurre gli inconvenienti menzionati, al fine
di ottenere un miglior screening per la retinopatia diabetica. Per conseguire tale obiettivo, si è
sviluppato un metodo combinato per il pre-processing delle immagini retiniche che
comprende più fasi. In particolare, ad ogni immagine retinica si applica inizialmente
un’equalizzazione di istogramma di tipo CLAHE (Contrast Limited Adaptive Histogram
Equalization); in seguito si prosegue con un metodo combinato che modifica ogni immagine
ottenuta attraverso l’equalizzazione di tipo CLAHE, utilizzando sia un filtraggio TwoDimensional Matched, sia una trasformazione 2D-Gabor Wavelet. In questo modo si
ottengono coppie di immagini modificate che contengono differenti informazioni sui vasi
retinici e, successivamente alla loro corretta combinazione, si procede con la fase di
segmentazione.
4.2. Il rilevamento dei vasi retinici attraverso un metodo combinato di pre-processing
La ricerca ha dimostrato che la qualità della segmentazione dell’immagine dipende dalla
qualità della fase di pre-processing, rivelando, così, la primaria importanza di questa fase per
aumentare il contrasto tra i vasi retinici e lo sfondo, ed inoltre per rimuovere gli effetti di
un’illuminazione impropria e degli artefatti. La procedura di rilevamento dei vasi retinici,
71
effettuata utilizzando un metodo combinato di pre-processing, è mostrata nel diagramma a
blocchi in Fig. 31, dove sono indicate le variabili di ingresso per ogni step.
Acquisizione immagine
retinica
𝐼𝐺
Metodo combinato di pre-processing
𝐼𝑃1, 𝐼𝑃2
Segmentazione / Post-processing
πΌπ‘‚π‘ˆπ‘‡
Fig. 31. Diagramma a blocchi per il rilevamento dei vasi retinici proposto
Inizialmente, per ogni immagine a livelli di grigio IG, viene eseguito accuratamente l’aumento
di contrasto. Le immagini ottenute entrano nella fase di pre-processing e successivamente
sono combinate [Umb10]. In seguito si ritrova la fase di segmentazione e post-processing,
realizzata [Zha14] per determinare la mappa binaria dei vasi sanguigni e per ridurre il rumore,
ottenendo, così, l’immagine risultante IOUT.
Nel seguito sarà affrontata una descrizione più dettagliata delle fasi mostrate in Fig. 31.
4.2.1. Acquisizione dell’immagine retinica
L’intero processo ha inizio con l’acquisizione della retinografia originale che si presenta come
un’immagine RGB. In seguito si procede con l’estrazione di uno dei canali da cui è composta
l’immagine RGB; questo step permette il passaggio ad un’immagine a livelli di grigio,
indicata in Fig. 32 con IG.
Acquisizione
immagine retinica
𝐼𝐼𝑁
Estrazione canale del verde
𝐼𝐺
Fig. 32. Diagramma a blocchi per la fase di acquisizione
dell’immagine retinica
72
In particolare la scelta di considerare il canale del verde deriva dal buon contrasto che in esso
è presente, tra i vasi retinici e lo sfondo. Questa caratteristica non si ritrova nel canale del
rosso che pur essendo molto luminoso, non presenta un buon contrasto tra i vasi retinici e lo
sfondo. La scelta del canale del blu è, invece, evitata, perché contiene un ridotto intervallo di
livelli di grigio. Per questi motivi il canale del verde risulta essere il più adatto per il
rilevamento dei vasi retinici [Zha14].
4.2.2. Metodo combinato di pre-processing
Lo schema a blocchi, del metodo combinato di pre-processing proposto, è riportato in Fig. 33.
𝐼𝐺
β
Estrazione
caratteristiche
CLAHE
πΌπ‘Š1 , πΌπ‘Š2
𝐼𝑀1 , 𝐼𝑀2
Filtraggio
2D Matched Gaussian Kernel
Trasformazione
2D Gabor Wavelet
𝐼2 , 𝐼3
𝐼1 , 𝐼4
Combinazione immagini
𝐼𝑃1, 𝐼𝑃2
Fig. 33. Diagramma a blocchi del metodo combinato di pre-processing
Dal diagramma, Fig. 33, si può notare una fase iniziale di Estrazione caratteristiche. Questa
operazione ha lo scopo di determinare il parametro β che è necessario per la successiva fase di
equalizzazione di tipo CLAHE [Zui94, Rez04]. In particolare, una fase di aumento del
contrasto dell’immagine è accuratamente eseguita per ogni immagine retinica a livelli di
grigio IG, per produrre due coppie di immagini a contrasto aumentato per ogni retinografia.
Ogni coppia di immagini a contrasto aumentato, IM1, IM2 e IW1, IW2, è separatamente sottoposta
a pre-processing attraverso un filtraggio 2D Matched Gaussian Kernel [Cha89] e una
trasformazione 2D-Gabor Wavelet [Zha14]. Le immagini risultanti sono poi combinate come
in [Umb10], in modo tale da ottenere le immagini pre-elaborate IP1, IP2, come mostrato nel
diagramma a blocchi in Fig. 33, che sarà successivamente descritto in dettaglio.
Estrazione caratteristiche e Contrast Limited Adaptive Histogram Equalization. Il primo
passo, del metodo combinato di pre-processing, consiste nella fase di equalizzazione di tipo
73
CLAHE [Zui94, Rez04, Min13, Vya14]. Si tratta di una tecnica di aumento del contrasto,
basata sulla suddivisione dell’immagine in blocchi, che modifica la gamma dinamica e il
contrasto di un’immagine, alterandone i livelli di grigio, in modo tale da dare al suo
istogramma di intensità una forma desiderata. In questo lavoro, la scelta dei parametri
dell’equalizzazione di tipo CLAHE viene utilizzata per ottenere un aumento della deviazione
standard r e del valore medio q dell’istogramma, ampliando la distribuzione di quest’ultimo
su una più grande regione di intensità di livelli di grigio. Più dettagliatamente,
l’equalizzazione di tipo CLAHE opera su piccole regioni di ogni immagine retinica IG,
chiamate tile, di dimensione S, per equalizzare i loro istogrammi e controllare il livello del
loro aumento di contrasto per mezzo di un parametro β con 0 ≤ β ≤ 1. L’aumento di contrasto
è dato dalla pendenza della funzione di trasformazione nelle vicinanze di ciascun pixel P di
IG. Questa pendenza è, a sua volta, proporzionale alla pendenza della funzione CDF
(Cumulative Distribution Function) della zona relativa al pixel P.
Il problema di indesiderati artefatti e possibili aumenti eccessivi di contrasto è superato
mediante una procedura di limitazione di contrasto, applicata ad ogni tile S. Infatti, il
parametro β limita sia la pendenza della funzione CDF sia la pendenza della funzione di
trasformazione, per ogni tile. Per ciascuna immagine i tile adiacenti, dopo l’aumento di
contrasto, vengono combinati attraverso un’interpolazione bilineare [Vya14]. Se un’immagine
ha un’intensità molto bassa di livelli di grigio, un β più grande rende il suo istogramma più
disteso e l’immagine diventa più luminosa, anche se il rumore può risultare più evidenziato.
Inoltre, il contrasto di un’immagine può essere ulteriormente modificato, per un dato β,
utilizzando tile di dimensioni diverse. Allo stesso modo, quando S cresce, la gamma dinamica
diventa più grande ed il contrasto di ogni immagine aumenta [Min13]. Pertanto, nel metodo
combinato di pre-processing proposto, alcuni inconvenienti sono superati selezionando due
dimensioni di tile Sa e Sb, ed applicando due volte, parallelamente, il CLAHE. In questo modo
si ottengono due immagini che presentano alcune utili differenti informazioni sui vasi retinici,
permettendo il conseguimento di migliori risultati. Inoltre, per consentire l’implementazione
delle fasi successive, questa procedura è applicata sia all’immagine retinica nel canale del
verde IG che presenta i vasi più scuri dello sfondo, sia alla sua complementare IN, così ottenuta
𝐼𝑁 (𝑖, 𝑗) = max(𝐼𝐺 ) − 𝐼𝐺 (𝑖, 𝑗)
(1)
L’immagine IN mostra, invece, i vasi più chiari dello sfondo.
Quindi, con riferimento al diagramma a blocchi in Fig. 34, la coppia di immagini IW1, IW2
deriva dall’applicazione dell’equalizzazione di tipo CLAHE all’immagine a livelli di grigio
IN, mentre la coppia di immagini IM1, IM2 deriva dall’applicazione dell’equalizzazione di tipo
CLAHE all’immagine a livelli di grigio IG.
74
𝐼𝐺
Estrazione caratteristiche
𝐼𝐺 , β
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sa = (70x73)
𝐼𝑀1
𝐼𝐺 , β
𝐼𝐺 , β
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sb = (11x11)
Complemento livelli di grigio
𝐼𝑁 (𝑖, 𝑗) = max(𝐼𝐺 ) − 𝐼𝐺 (𝑖, 𝑗)
𝐼𝑁
𝐼𝑁
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sa = (70x73)
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sb = (11x11)
πΌπ‘Š1
𝐼𝑀2
πΌπ‘Š2
Fig. 34. Diagramma a blocchi Estrazione caratteristiche e CLAHE
In conclusione, questa fase genera più immagini con un differente aumento di contrasto,
ognuna delle quali contenente informazioni differenti sui vasi retinici.
Filtraggio 2D Matched Gaussian Kernel. I vasi sanguigni nelle immagini retiniche sono,
generalmente, più scuri dello sfondo. Se P(x, y) indica un qualsiasi punto dell’immagine
retinica in esame, il profilo di intensità di grigio può essere approssimato valutando il valore
di una curva gaussiana G in ogni punto P, come segue [Cha89]
(−
𝐺 (𝑃) = π‘Ž(𝑃) {1 − π‘˜ e
𝑑2
)
2𝜎2
}
(2)
dove d è la distanza perpendicolare tra il punto P e la retta che passa per il centro di ogni vaso,
in direzione della sua lunghezza, la variabile σ definisce la diffusione del profilo di intensità
di grigio, la quantità a(P) è l’intensità di livello di grigio dello sfondo locale di P e il valore k
è una misura della riflettanza di ogni vaso sanguigno con riferimento alla sua regione. Un
filtraggio 2D Matched Gaussian Kernel è qui considerato per rilevare i vasi [Cha89]. Questo
metodo comporta la convoluzione di un insieme di kernel Gaussiani con l’immagine retinica
in esame, dove un kernel generico può essere espresso come
75
(−
𝐾(π‘₯, 𝑦) = −e
π‘₯2
)
2𝜎2
per β”‚yβ”‚≤ L/2
(3)
dove L è la lunghezza in pixel del segmento per il quale si assume che il vaso abbia un
orientamento fisso. Il segno negativo indica che i vasi sono più scuri dello sfondo. Se P' è il
generico punto nel kernel e φi è l’orientamento dell’i-esimo kernel, con 0 ≤ φi < π, il
corrispondente punto P'(u,v), nel riferimento in coordinate ruotate, è dato da P'i = P'Ri T,
attraverso la matrice di rotazione Ri
𝑹𝑖 = [
cosπœ‘i
sinπœ‘i
−sinπœ‘i
]
cosπœ‘i
(4)
Per mezzo della variazione dell’angolo φ, con un intervallo di 15 gradi, si ottiene un set di 12
kernel. Una zona N è definita come N = {(𝑒, 𝑣) Η€|𝑒| ≤ 3𝜎, |𝑣| ≤ L/2 }. I corrispondenti pesi
Ki nell’i-esimo kernel sono dati da
𝐾𝑖 (𝑒, 𝑣) = −𝑒
(−
𝑒2
)
2𝜎2
∀ P'i Ο΅ N e |𝑣| ≤ L/2
(5)
Il valore medio mi di ogni kernel è dato da π‘šπ‘– = ∑𝑃′𝑖 πœ–π‘ 𝐾𝑖 (𝑒, 𝑣)/J, dove J rappresenta il
numero di punti in N. Quindi la maschera per la convoluzione è
∀ P'i Ο΅ N
K’i(u,v) = Ki(u,v) - mi
(6)
Il filtro deve essere ruotato per tutte le angolazioni possibili; quindi, le risposte
corrispondenti, per ogni angolazione, sono confrontate e, per ogni pixel, solo la massima
risposta viene conservata.
Trasformazione 2D-Gabor Wavelet. Il contrasto nelle immagini retiniche è, qui, aumentato
per mezzo di una trasformazione 2D-Gabor Wavelet [Zha14]. Una trasformazione wavelet
continua, π‘‡πœ“ (𝐛, πœƒ, 𝑠), è determinata dal prodotto scalare di un’immagine generica con la
trasformata wavelet πœ“π›,πœƒ,𝑠 , come
−1/2
π‘‡πœ“ (𝐛, πœƒ, 𝑠) = Cπœ“
1
−
βŸ¨πœ“π’ƒ,πœƒ,𝑠 |πΌπ‘Š ⟩ = Cπœ“2 𝑠 −1 ∫ πœ“ ∗ (𝑠 −1 π‘Ÿ−πœƒ (𝐱 − 𝐛))πΌπ‘Š (𝐱)𝑑 2 𝐱
76
(7)
dove 𝐱 = (π‘₯, 𝑦), πœ“ ∗ è il complesso coniugato di ψ e Cπœ“ è la costante di normalizzazione. I
parametri s, b e θ denotano rispettivamente la scala di espansione, il vettore spostamento e
l’angolo di rotazione. L’operatore di rotazione π‘Ÿπœƒ è dato da
π‘Ÿπœƒ (𝐱) = (π‘₯ cosπœƒ − 𝑦 sinπœƒ, π‘₯ sinπœƒ + 𝑦 cosπœƒ)
(8)
dove 0 ≤ θ ≤ 2π. La trasformata 2D-Gabor Wavelet può, quindi, essere espressa come
1
πœ“(𝐱) = e𝑗𝐀𝐱 e(−2|𝑩𝐱|
2)
(9)
dove 𝑩 = π‘‘π‘–π‘Žπ‘”[η−1/2 , 1] (η ≥ 1) è una matrice diagonale di dimensioni (2×2) che definisce
l’anisotropia del filtro Gabor Wavelet e k è il vettore esponenziale complesso di frequenza. La
scelta del parametro η che controlla l’elongazione del filtro in qualsiasi direzione desiderata, è
critica, poiché un valore grande di η genera delle maggiori larghezze dei vasi retinici e un
valore basso di η ha un effetto minore sulla valorizzazione dei vasi. In seguito, per ogni pixel,
la massima risposta, π‘€πœ“ (𝐛, 𝑠) = maxπœƒ |π‘‡πœ“ (𝐛, πœƒ, 𝑠)| tra tutte le possibili orientazioni, viene
estratta, considerando θ l’angolo compreso tra 0° e 170°, con passo = 10°.
Combinazione delle immagini. Nel metodo combinato di pre-processing proposto,
un’adeguata combinazione di immagini viene eseguita attraverso una moltiplicazione (pixel
per pixel) [Umb10] tra le appropriate coppie di immagini pre-elaborate. Questa operazione è
implementata sia per aumentare l’intensità dei livelli di grigio dei pixel luminosi
(generalmente appartenenti ai vasi) sia per scurire i pixel corrispondenti allo sfondo. Questo
tipo di combinazione permette di ridurre i rilevamenti errati, provenienti dai passaggi
precedenti. Nel dettaglio, la moltiplicazione (pixel per pixel) è eseguita sia tra le immagini I1 e
I2 sia tra immagini I3 e I4, derivanti dai passaggi precedenti, come mostrato in Fig. 35.
77
𝐼𝑀2
𝐼𝑀1
Filtraggio 2D Matched
Gaussian Kernel
πΌπ‘Š1
2D Gabor Wavelet
𝐼1
Filtraggio 2D Matched
Gaussian Kernel
πΌπ‘Š2
2D Gabor Wavelet
𝐼2
𝐼4
𝐼3
Moltiplicazione Pixel-per-Pixel
𝐼𝑃1 = 𝐼1 (𝑖, 𝑗) × πΌ2 (𝑖, 𝑗)
Moltiplicazione Pixel-per-Pixel
𝐼𝑃2 = 𝐼3 (𝑖, 𝑗) × πΌ4 (𝑖, 𝑗)
𝐼𝑃1
𝐼𝑃2
Fig. 35. Diagramma a blocchi per implementare l’operazione di
combinazione delle immagini
Le immagini risultanti IP1 e IP2, sono, quindi, così ottenute
IP1=I1(i,j)×I2(i,j)
IP2=I3(i,j)×I4(i,j)
(10)
Le immagini IP1 e IP2 sono, in seguito, rimappate nell’intervallo (0, 255) e successivamente
segmentate.
4.2.3. Segmentazione e post-processing
Dopo aver esaltato i vasi retinici, con i diversi step della fase di pre-processing, si può
procedere alla segmentazione; la sua implementazione risulta facilitata dalla buona qualità
delle immagini elaborate che devono essere segmentate. Tuttavia, al termine della
segmentazione è comunque necessaria l’introduzione di operazioni di post-processing, al fine
di ridurre gli inevitabili falsi rilevamenti. I diversi step per la fase di segmentazione e postprocessing sono mostrati nel diagramma a blocchi in Fig. 36 e descritti nel seguito.
78
𝐼𝑃1
𝐼𝑃2
Segmentazione
Segmentazione
𝐼𝐡
𝐼𝐴
𝐼𝑠 = 𝐼𝐴 OR 𝐼𝐡
𝐼𝑠
Primo filtraggio
𝐼𝐹
Secondo filtraggio
πΌπ‘‚π‘ˆπ‘‡
Fig. 36. Diagramma a blocchi per la fase di segmentazione e postprocessing
Segmentazione. La segmentazione è eseguita su ogni immagine Ipi, i = 1, 2, applicando due
volte il seguente metodo. Un punto iniziale IPoi(x, y) è selezionato per la segmentazione di
ogni immagine IPi, in modo tale che IPoi(x, y) ≥ gh - 0.05, dove gh è l’intensità di livello di
grigio corrispondente al 99% della dimensione dell’istogramma di ogni immagine IPi [Zha14].
Ogni altro pixel Ipi(x, y) può essere correlato a IPoi(x, y) dalla relazione
Η€IPoi (x,y) - IPi (x,y) Η€ < e
(11)
dove il valore e deriva dalla distribuzione di livelli di grigio di ogni immagine Ipi ed è definito
come la differenza in valore assoluto tra gh e thi. Quest’ultimo parametro, per ogni immagine
IP1, IP2, è calcolato attraverso il valore medio q1, q2 e la deviazione standard r1, r2, dei relativi
istogrammi
π‘‘β„Žπ‘– = π‘žπ‘– + π‘š × π‘Ÿπ‘–
(12)
la scelta del valore del parametro m è condotta attraverso un set di curve ROC (Receiver
Operating Characteristic), relative alle immagini finali IOUT.
Se (11) è soddisfatta, il pixel considerato Ipi(x, y) appartiene ad un vaso, altrimenti è parte
dello sfondo. La segmentazione avviene per tutti i pixel delle immagini IP1, IP2.
Il diagramma a blocchi, in Fig. 37, mostra i passaggi sopra descritti per eseguire la
segmentazione.
79
𝐼𝑃1 , 𝐼𝑃2
Calcolo qi , ri
qi , ri
Calcolo gh, thi , e
gh, thi , e
Selezione IPoi (x, y)
IPoi (x, y)
NO
per ogni pixel
Η€IPoi (x,y) - IPi (x,y) Η€ < e
Pixel di sfondo
SI
Pixel di un vaso
𝐼𝐴 / 𝐼𝐡
Fig. 37. Diagramma a blocchi per la procedura di segmentazione
Post-processing. Le immagini IA, IB, ottenute dal processo di segmentazione, sono
successivamente combinate attraverso l’operatore logico OR.
In seguito vengono eseguiti appropriati passaggi per rimuovere gli isolati falsi rilevamenti di
pixel appartenenti a vasi e ottenere, così, l’immagine IOUT. Inizialmente si esegue
un’operazione di rimozione del rumore introdotto dal bordo della maschera. Successivamente
si valuta l’area A di ciascuna regione rilevata come appartenente ad un vaso; considerato un
valore di soglia At, se risulta A ≤ At, i pixel dell’area in esame sono riclassificati come sfondo,
in quanto considerati un falso rilevamento [ZHA14].
Il diagramma a blocchi della procedura di post-processing è mostrato in Fig. 38.
80
𝐼𝐴 / 𝐼𝐡
𝐼𝑠 = 𝐼𝐴 OR 𝐼𝐡
𝐼𝑆
Prima riduzione di
rumore
𝐼𝐹
Calcolo A per ogni
regione
A
NO
A ≤ At
Pixel bianchi
SI
Pixel neri
πΌπ‘‚π‘ˆπ‘‡
Fig. 38. Diagramma a blocchi per la procedura di post-processing
81
5. Risultati e discussione
5.1. Rete collaborativa per la diagnostica oftalmica
Il lavoro svolto ha permesso di sviluppare modelli di rete collaborativa per la creazione di
vasti database che supportino la diagnostica oftalmica. Nel dettaglio il progetto sostiene il
lavoro di una rete di tipo Virtual Organization nella creazione di un database che contenga
retinografie classificate e di un altro database che sia composto di immagini Ground Truth.
Tutto il lavoro si estende considerando un ambiente distribuito con regole di condivisione che
definiscono chiaramente e attentamente: cosa può essere condiviso in termini di immagini e di
informazioni ad esse relative, chi ha il permesso di condividere considerando tutte le figure
coinvolte interne ed esterne all’organizzazione, e le condizioni in cui avviene la condivisione.
La base per la formazione dei due database sono le banche dati mediche che hanno natura
distribuita e presentano problematiche di gestione in riferimento agli aspetti di privacy, Fig.
39.
-presentazione all’utente come sistemi distribuiti e non collegati
-difficoltà di accesso
-dimensioni ridotte
-problemi di privacy nella condivisione
- insufficienza o mancanza di classificazione e di immagini Ground Truth
-nessuna possibilità di ricerca per parole chiave
-difficoltà di gestione e manutenzione
ARCHIVI
RETINOGRAFIE
ORIGINALI
DATABASE
RETINOGRAFIE
CLASSIFICATE
RETE
COLLABORATIVA
DATABASE
IMMAGINI
GROUND TRUTH
-presentazione all’utente come un unico sistema
-facilità di accesso
-grandi dimensioni
-garanzia del rispetto della privacy nella condivisione
-inclusione di classificazione e immagini Ground Truth affidabili
-possibilità di ricerca per parole chiave attraverso metadati
-facilità di gestione e manutenzione
Fig. 39. Schema delle caratteristiche degli archivi originali e dei
database prodotti attraverso la rete collaborativa
82
Come descritto in Fig. 39, i modelli proposti di rete collaborativa permettono di risolvere
molte delle problematiche legate ai comuni archivi medici, quali:
- la presentazione all’utente come sistemi distribuiti e non collegati che non supportano la
collaborazione a livello internazionale;
- le difficoltà di accesso;
- le dimensioni ridotte che non permettono di archiviare vasti volumi di dati;
- i problemi di privacy nella condivisione, a causa della tipologia di dati trattati che risultano
essere sensibili;
- l’insufficienza o la mancanza di classificazione e di immagini Ground Truth che non
agevola lo sviluppo dei sistemi ARIA;
- l’assenza di possibilità di ricerca per parole chiave che ostacola gli studi in campo
oftalmico;
- la difficoltà di gestione e manutenzione che non assicura la sicurezza del database.
Lo sviluppo dei modelli proposti affronta tutte queste problematiche, creando un sistema di
collaborazione estendibile e flessibile che permette di creare due database di grandi
dimensioni, facilmente gestibili e accessibili, e pensati nel rispetto della privacy dei pazienti.
5.2. Organizzazione del lavoro collaborativo
Per la costituzione dei due database si è considerata la compartecipazione di più figure
professionali, territorialmente suddivise, che costituiscono, quindi, il sistema della rete di tipo
VO, in cui una serie di attori interagiscono per il conseguimento di un obiettivo comune. I
ruoli coinvolti nel processo sono suddivisi in due gruppi, da un lato si sono considerate tutte
le figure professionali (mediche e non) che permettono la classificazione delle retinografie e
la creazione delle immagini GT, dall’altro si sono valutate le figure che consentono la
gestione dei rapporti all’interno e all’esterno della rete di tipo VO, le autorizzazioni e la
manutenzione dell’intero sistema, Fig. 40.
83
Medico analizzatore
retinografia
Medico selezionatore
retinografia
Amministratore
piattaforma
Medico sviluppatore
immagine GT
VO
Esperto
piattaforma
Fornitore immagine
elaborata
GESTIONE SISTEMA
CREAZIONE DATABASE
Esperto qualità immagine
Medico
supervisore
Gestore archiviazione
Fig. 40. Schema attori coinvolti nella rete di tipo VO proposta
Questo tipo di organizzazione permette di suddividere i compiti necessari al funzionamento di
tutto il sistema, in modo tale da costruire database affidabili e di qualità, in quanto
continuamente controllati da attori appositamente introdotti per conseguire questo scopo. Più
nello specifico, si vogliono portare in rilievo due figure di grande importanza:
- l’Amministratore piattaforma a cui è affidata la gestione di tutto il sistema virtuale e quindi
anche dei permessi relativi ai ruoli ricoperti dai diversi utenti, con la possibilità di
effettuare modifiche in ogni momento;
- il Medico supervisore che, presente nella creazione di entrambi i database, assicura la
qualità dei dati archiviati.
Inoltre, la rete di tipo VO è pensata in modo tale che ogni partecipante possa ricoprire più di
un ruolo e che, allo stesso modo, ogni ruolo possa essere ricoperto da più partecipanti. Questa
scelta risulta fondamentale soprattutto nello sviluppo delle immagini GT, in quanto in questo
modo si riescono ad archiviare più immagini GT per ogni retinografia, agevolando i futuri
sviluppi dei sistemi ARIA.
Per lo sviluppo dei due database si sono considerati due processi differenti che si basano sul
lavoro dei diversi partecipanti al progetto. Ogni processo è stato suddiviso in adeguate fasi,
organizzando i diversi compiti in modo tale da assicurare la giusta successione delle
operazioni e comprendendo anche momenti di verifica che garantiscono l’accuratezza dei dati
inseriti nei database. Infatti, prima di ogni archiviazione, per ciascun processo, è stata
84
introdotta una fase di verifica, affidata al Medico supervisore, che se conclusa con esito
negativo, rimanda a passi precedenti, richiamando, ad operazioni di revisione e modifica, gli
attori responsabili. Questo risulta particolarmente importante nel processo di produzione delle
immagini GT, in quanto ci potrebbe essere una cattiva interpretazione riguardo le modalità di
creazione delle stesse, a causa dell’assenza di questa specifica operazione nella normale
pratica clinica e della conseguente mancata abitudine dei medici alla realizzazione di
riferimenti.
Per la corretta gestione delle diverse fasi si è considerata la tecnologia detta workflow che
permette di gestire la sequenza delle attività necessarie per il raggiungimento dell’obiettivo,
sostenendo la collaborazione all’interno della rete di tipo VO. Si sono realizzati due workflow
per garantire il corretto sviluppo sia del processo di classificazione delle retinografie originali
sia del processo di creazione delle immagini GT. Per ogni fase, in ciascun workflow, si è
individuato accuratamente il ruolo interessato per lo sviluppo della stessa e gli aspetti relativi
alle operazioni che ad esso competono, Fig. 41.
CONTENUTO
IN INGRESSO
FASE
RUOLO
COMPITO
CONTENUTO
IN USCITA
Fig. 41. Struttura organizzativa di una generica fase
In questo modo si assicura che ogni nuovo contenuto venga prodotto dal corretto attore. La
tecnologia del workflow permette di supportare efficacemente il flusso di lavoro tra i diversi
ruoli, garantendo che vengano rispettate le fasi di revisione e approvazione, prima di
procedere all’archiviazione.
85
5.3. Struttura dei database
I contenuti dei database sono stati strutturati con molta attenzione, guardando da un lato alla
sicurezza che il trattamento di dati sensibili necessariamente richiede, e dall’altro
all’inserimento di tutte le informazioni utili per supportare i lavori che successivamente
comporteranno l’utilizzo dei database.
I dati sensibili devono essere protetti da figure non autorizzate; a questo scopo si sono
stabilite delle regole di visualizzazione dei contenuti dei database che consentono di non
rendere visibili informazioni private dei pazienti a figure che non ricoprono ruoli adeguati. Si
sono creati opportuni modelli di dati per ciascun database, considerando, in particolare, una
suddivisione dei metadati relativi ad ogni paziente in due campi: Caratterizzatori e
Anagrafica; quest’ultimo visibile solo ad alcuni partecipanti alla rete di tipo VO, assicurando
che i dati che strettamente identificano la persona, non siano in alcun modo divulgati.
In aggiunta ai dati provenienti dagli archivi originali che come detto sono stati riconfigurati
per assicurare la privacy dei pazienti, ad ogni nuovo contenuto vengono affiancate altre
informazioni; queste sono derivanti dal processo di classificazione delle retinografie e vanno a
costituire i metadati che consentiranno di effettuare ricerche mirate sui database:
- sulla qualità dell’immagine retinica (Inadeguata (I) / Minima (M) / Buona (B)) per lo
sviluppo dei sistemi ARIA;
- sulle caratteristiche del paziente (etnia, genere, età), per studi epidemiologici;
- sul tipo di problematica retinica, attraverso le indicazioni di Presenza (P) o Non Presenza
(NP) di lesioni patologiche e dalla loro tipologia.
Nella creazione del database delle immagini GT, invece, bisogna sottolineare che, grazie alla
struttura di rete di tipo VO precedentemente descritta, è possibile archiviare, per ogni
retinografia originale, riferimenti creati da più oftalmologi distribuiti sul territorio. In questo
modo è possibile evitare che si presentino influenze nel giudizio. Inoltre, per ogni immagine
GT, è stato previsto l’affiancamento del livello di incertezza dell’oftalmologo, molto utile
nello sviluppo dei sistemi ARIA.
Bisogna sottolineare che si è posta attenzione anche all’integrità degli archivi originali,
consentendo l’accesso ad essi solo ad alcuni partecipanti alla rete di tipo VO che ricoprono
ruoli di responsabilità. Quindi, partendo da archivi affetti da problematiche quali la mancata
possibilità di effettuare ricerche per parola chiave e la non suddivisione in categorie che
permetta un accesso differenziato per assicurare la privacy dei pazienti, si giunge a database
di più facile gestione, in cui i metadati consentono di effettuare appropriate ricerche, a
seconda delle necessità, ed in cui si assicura la sicurezza dei dati, Fig. 42.
86
SUDDIVISIONE DATI IN
CATEGORIE
SICUREZZA DEI DATI
REGOLE DI
VISUALIZZAZIONE
RICERCA PER PAROLA CHIAVE
METADATI
Fig. 42. Principali obiettivi raggiunti attraverso la struttura proposta
dei contenuti dei database
5.4. Modello di rete oftalmica per sviluppo database per retinopatia diabetica
Ponendosi nel ruolo di un Ospite che accede ai database della rete di tipo VO, si è considerato
di selezionare da questi i dati necessari allo sviluppo di una metodologia di elaborazione di
immagini retiniche, nel caso di retinopatia diabetica. In particolare si è sviluppato un metodo
combinato di pre-processing per la rilevazione dei vasi retinici, al fine di ottenere una base
per la realizzazione di un database di immagini elaborate per retinopatia diabetica.
La ricerca di immagini utili per lo sviluppo della metodologia di elaborazione ha permesso di
individuare diversi archivi di retinografie, tuttavia questi contengono una collezione limitata
di immagini che generalmente provengono da un unico sito, con scarsi riferimenti e
annotazioni che non sempre consentono un adeguata selezione delle immagini da utilizzare. Si
è ritenuto di indirizzare la scelta sul database DRIVE, pubblicamente disponibile [Sta04], che
contiene immagini, di dimensioni 565x584, ottenute da un programma di screening per la
retinopatia diabetica nei Paesi Bassi. Nel programma sono stati esaminati 400 individui affetti
da diabete, di età compresa tra i 25 e i 90 anni, e selezionate 40 retinografie, di cui 33 non
presentano alcun segno di retinopatia diabetica, mentre 7 mostrano una lieve PDR. Queste 7
retinografie sono state individuate grazie al lavoro svolto in [Ram12], in quanto nel database
non è presente un’adeguata classificazione dei contenuti che permetta la giusta selezione delle
retinografie. Tuttavia la scelta di utilizzare questo database è stata guidata dalla presenza, per
ogni immagine, delle immagini GT (anche se in numero limitato, in quanto ogni retinografia è
corredata da una o al massimo due immagini GT) e di una maschera che permette di delineare
il FOV.
Si riportano, in Fig. 43, le 7 retinografie presenti nel DRIVE con lieve PDR, ciascuna
affiancata dall’immagine GT e dalla maschera utilizzata nelle fasi di elaborazione.
87
(a)
(b)
(g)
(h)
(o)
(c)
(p)
(u)
(d)
(e)
(f)
(i)
(l)
(m)
(n)
(q)
(r)
(s)
(t)
(v)
(z)
Fig. 43. Immagini scelte per lo sviluppo della metodologia: (a) IIN1;
(b) IGT1; (c) IMASK1 ; (d) IIN2; (e) IGT2 ; (f) IMASK2 ; (g) IIN10; (h) IGT10; (i)
IMASK10; (l) IIN14; (m) IGT14; (n) IMASK14; (o) IIN18; (p) IGT18; (q) IMASK18 ;
(r) IIN19; (s) IGT19; (t) IMASK19; (u) IIN20; (v) IGT20; (z) IMASK20
Il metodo proposto tratta ognuna delle 7 retinografie, ottenute dal DRIVE, attraverso le fasi di
pre-processing, segmetazione e post-processing, al fine di esaltare i vasi retinici rispetto allo
sfondo, evidenziandoli in modo diverso a seconda che essi si trovino nel disco ottico o nella
rimanente parte di sfondo della retina. In questo modo si giunge alla mappa binaria dei vasi
sanguigni, come mostrato in Fig. 44.
88
Acquisizione
immagine retinica
𝐼𝐼𝑁
Estrazione canale del verde
𝐼𝐺
Estrazione caratteristiche
𝐼𝐺 , β
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sa = (70x73)
𝐼𝑁
𝐼𝑁
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sb = (11x11)
πΌπ‘Š1
Filtraggio 2D Matched
Gaussian Kernel
2D Gabor Wavelet
𝐼4
𝐼3
𝐼2
Moltiplicazione Pixel-per-Pixel
𝐼𝑃1 = 𝐼1 (𝑖, 𝑗) × πΌ2 (𝑖, 𝑗)
𝐼𝑀2
Filtraggio 2D Matched
Gaussian Kernel
πΌπ‘Š2
2D Gabor Wavelet
𝐼1
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sb = (11x11)
Complemento livelli di grigio
𝐼𝑁 (𝑖, 𝑗) = max(𝐼𝐺 ) − 𝐼𝐺 (𝑖, 𝑗)
Contrast-Limited
Adaptive Histogram
Equalization(CLAHE)
Sa = (70x73)
𝐼𝑀1
𝐼𝐺 , β
𝐼𝐺 , β
Moltiplicazione Pixel-per-Pixel
𝐼𝑃2 = 𝐼3 (𝑖, 𝑗) × πΌ4 (𝑖, 𝑗)
𝐼𝑃1
𝐼𝑃2
Segmentazione
Segmentazione
𝐼𝐡
𝐼𝐴
𝐼𝑠 = 𝐼𝐴 OR 𝐼𝐡
𝐼𝑠
Primo filtraggio
𝐼𝐹
Secondo filtraggio
πΌπ‘‚π‘ˆπ‘‡
Fig. 44. Diagramma a blocchi complessivo del metodo proposto
89
La prima operazione da effettuare, per consentire l’applicazione di tutti i passaggi della
metodologia, è l’acquisizione della retinografia con la corrispettiva maschera. Dall’immagine
retinografica di tipo RGB si estrae solo il canale del verde che presenta il miglior contrasto tra
i vasi retinici e lo sfondo. Si riportano, in Fig. 45, le 7 immagini ottenute dall’estrazione del
canale del verde dalla rispettiva retinografia originale di tipo RGB.
(a)
(b)
(e)
(c)
(f)
(d)
(g)
Fig. 45. Estrazione del canale del verde: (a) IG1; (b) IG2; (c) IG10; (d)
IG14; (e) IG18; (f) IG19; (g) IG20
Come si può notare, dalla Fig. 45, le immagini IG sono a livelli di grigio e presentano i vasi
retinici più scuri rispetto allo sfondo. Tuttavia questi non risultano abbastanza evidenziati per
poter essere direttamente estratti; inoltre una segmentazione diretta porterebbe ad estrarre altre
zone retiniche che in questa fase presentano la stessa intensità di livello di grigio dei vasi.
Si vuole sottolineare che la zona del disco ottico (la parte, in Fig. 45, con una maggiore
intensità di livello di grigio) rappresenta, per le sue caratteristiche di intensità, una delle zone
in cui l’estrazione dei vasi retinici è maggiormente complessa. Tuttavia, la rilevazione dei vasi
nel disco ottico risulta fondamentale per la precoce individuazione della PDR.
Per migliorare il contrasto tra i vasi e lo sfondo si procede con la successiva fase di preprocessing. Per ogni immagine IG in esame, prima di procedere con la fase di pre-processing,
si eseguono operazioni di estrazione delle caratteristiche, in cui è calcolata la deviazione
standard r e il valor medio q dell’istogramma, per ottenere il valore di clip limit β,
successivamente utilizzato nell’equalizzazione di tipo CLAHE. Le molte sperimentazioni
condotte hanno evidenziato che, per il metodo proposto, questo valore si ritrova
nell’intervallo [0.03-0.05]. A tal proposito è stata sviluppata una parte della metodologia in
cui si effettuano delle scelte a soglia in base ai valori di r e q:
- se q > 0.4, si sceglie β = 0.03;
- se q ≤ 0.4, si calcola r e si sceglie β = 0.05 se r > 0.075, e β = 0.04 se r ≤ 0.075.
90
Il diagramma a blocchi, in Fig. 46, mostra la procedura implementata che conduce
all’attribuzione del giusto valore al parametro β.
𝐼𝐺
Calcolo valore medio
dell’istogramma
q
NO
q > 0.4
Calcolo deviazione standard
dell’istogramma
r
SI
β = 0.03
NO
r > 0.075
β = 0.04
SI
β = 0.05
Fig. 46. Diagramma a blocchi per la selezione del valore del
parametro di clip limit β
Per migliorare l’esecuzione delle successive procedure di pre-processing, in modo tale da
evidenziare i vasi in modo diverso a seconda che essi si trovino nel disco ottico o nella
rimanente parte di sfondo della retina, si applica più volte, parallelamente, l’equalizzazione di
tipo CLAHE, utilizzando differenti dimensioni S dei tile. La sperimentazione condotta ha
permesso di individuare il valore del parametro S che permette di conseguire prestazioni
migliori con il metodo proposto. Si sono selezionate come dimensioni dei tile Sa = (70x73) e
Sb = (11x11).
In Fig. 47, si riportano esempi dei risultati dell’equalizzazione di tipo CLAHE all’immagine
IG19 e alla sua complementare IN19, con i suddetti valori di β, di Sa e di Sb.
(a)
(b)
(c)
(d)
Fig. 47. Risultati dell’equalizzazione di tipo CLAHE: (a) IM1; (b) IM2;
(c) IW1; (d) IW2
91
Dalle immagini, in Fig. 47, è possibile notare la differente azione dell’equalizzazione di tipo
CLAHE, al variare delle dimensioni dei tile, nell’evidenziazione dei vasi nelle diverse zone
retiniche ed in particolar modo nel disco ottico. Questa procedura permette, quindi, di ottenere
più immagini elaborate, provenienti dalla stessa retinografia originale, che contengono
informazioni differenti sui vasi retinici.
Le operazioni di pre-processing proseguono con il filtraggio 2D Matched Gaussian Kernel e
la trasformazione 2D-Gabor Wavelet. Ognuna di queste procedure ha come ingresso la
rispettiva immagine precedentemente elaborata. Le quantità L = 9 e σ = 2 sono state adottate
per il filtraggio 2D Matched Gaussian Kernel, come in [Cha89], e i valori η = 4, k = [0 2.5]T e
s = 1.5 sono stati considerati per la trasformazione 2D-Gabor Wavelet, come in [Zha14].
Questa scelta di k fornisce il massimo contrasto tra vasi e sfondo e, allo stesso tempo, limita
l’aumento di intensità di grigio dei pixel non appartenenti a vasi. In Fig. 48 si riportano
esempi di immagini risultanti per ogni passaggio considerato.
(a)
(b)
(c)
(d)
Fig. 48. Risultati del filtraggio 2D Matched Gaussian Kernel e della
trasformazione 2D-Gabor Wavelet: (a) I1; (b) I2; (c) I3; (d) I4
Nelle immagini, riportate in Fig. 48, i vasi risultano maggiormente evidenziati rispetto allo
sfondo; tuttavia si può notare come ogni procedura di pre-processing fornisca miglioramenti
in alcune aree dell’immagine, ma presenti contemporaneamente alcuni svantaggi in altre zone
retiniche.
Le successive operazione di moltiplicazione (pixel per pixel) permettono di ridurre questi
inconvenienti, aumentando l’intensità dei livelli di grigio dei pixel luminosi e scurendo i pixel
corrispondenti allo sfondo, come mostrato in Fig. 49.
92
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(m)
(n)
(i)
(l)
(o)
(p)
Fig. 49. Risultati delle operazioni di moltiplicazione tra le coppie I1,
I2, e I3, I4: (a) IP1-1; (b) IP2-1; (c) IP1-2; (d) IP2-2; (e) IP1-10; (f) IP2-10; (g)
IP1-14; (h) IP2-14; (i) IP1-18; (l) IP2-18; (m) IP1-19; (n) IP2-19; (o) IP1-20; (p)
IP2-20
Questa procedura risulta molto utile per ridurre i rilevamenti errati dei pixel nella fase di
segmentazione. In questa fase risulta critica la scelta del valore del parametro m che consente
il calcolo del parametro thi. Il valore di quest’ultimo parametro permette, a sua volta, il calcolo
del parametro e utilizzato come valore di soglia. Per queste ragioni si sono condotte analisi
avvalendosi del riferimento delle immagini GT, della retinografia in esame. Si sono calcolati
il rapporto TPR (True Positive Rate), dato dal rapporto tra il numero di pixel correttamente
identificati come vasi (TP) e il totale dei pixel effettivamente appartenenti ai vasi nelle
immagini GT, e il rapporto FPR (False Positive Rate), dato dal rapporto tra i pixel
erroneamente rilevati come vasi (FP) e il totale dei pixel di sfondo nelle immagini GT
[Soa06]. Attraverso questi valori di TPR e di FPR si possono tracciare le 7 curve ROC,
relative alle immagini IOUT, Fig.50.
93
(a)
(b)
(d)
(c)
(e)
(g)
(f)
Fig. 50. Set di curve ROC, relative all’immagine IOUT, al variare del
valore del parametro m: (a) IOUT1; (b) IOUT2 ; (c) IOUT10; (d) IOUT14; (e)
IOUT18; (f) IOUT19; (g) IOUT20
Le curve, riportate in Fig. 50, sono state ottenute per 0 ≤ m ≤ 4.5, con passo 0.5, considerando
il seguente set di parametri
𝑑 = π‘ž1 + (π‘š − 0.3) × π‘Ÿ1
{ β„Ž1
π‘‘β„Ž2 = π‘ž2 + π‘š × π‘Ÿ2
(13)
in cui il valore del parametro m che interviene nella segmentazione di IP1, è stato ridotto di
0.3.
Attraverso le curve ROC si effettua, quindi, la scelta del valore del parametro m che risulta
fondamentale dal momento che un valore elevato riduce FPR ma anche TPR, con conseguente
perdita dei vasi, mentre un valore basso di m aumenta il rumore a causa di un elevato FPR.
94
Con riferimento alla Fig. 50, per m ≥ 2.50 il valore di FPR tende a zero, ma TPR non supera
lo 0.47 nel migliore dei casi, mentre per m ≤ 0.50 si ottiene TPR ≥ 0.88, ma anche un aumento
di FPR oltre lo 0.30. Con 1.00 ≤ m ≤ 2.00 si ottiene 0.00 ≤ FPR ≤ 0.14 e 0.50 ≤ TPR ≤ 0.89.
Per il metodo proposto si è scelto m = 1.50 che permette di ottenere 0.02 ≤ FPR ≤ 0.03 e 0.64
≤ TPR ≤ 0.77 per le 7 immagini retiniche.
Per ogni retinografia in esame, ricavato il valore di m, è possibile procedere al calcolo del
valore del parametro di soglia e, indispensabile per la segmentazione delle immagini IP1, IP2.
Si procede, quindi, con la fase di segmentazione separatamente per le due immagini IP1, IP2. I
risultati della segmentazione sono riportati in Fig. 51.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(l)
(m)
(n)
(o)
(p)
Fig. 51. Risultati segmentazione: (a) IA1; (b) IB1; (c) IA2; (d) IB2; (e)
IA10; (f) IB10; (g) IA14; (h) IB14; (i) IA18 ; (l) IB18; (m) IA19; (n) IB19; (o) IA20;
(p) IB20
95
Le mappe binarie dei vasi retinici, così separatamente ricavate, contengono alcune
informazioni diverse che devono essere combinate. A tale scopo si ricorre all’operatore logico
OR, per giungere ad un’unica immagine segmentata che riunisca tutte le informazioni
provenienti dalle due mappe binarie dei vasi retinici, Fig. 52.
(a)
(b)
(e)
(c)
(f)
(d)
(g)
Fig. 52. Risultati derivanti dalla combinazione delle due mappe
binarie, relative ad ogni immagine in esame, con l’operatore logico
OR: (a) IOR1; (b) IOR2; (c) IOR10; (d) IOR14; (e) IOR18; (f) IOR19; (g) IOR20
In seguito, la fase di post-processing è completata con due passaggi di rimozione dei pixel
erroneamente attribuiti ai vasi, Fig. 53.
(a)
(b)
(c)
Fig. 53. Risultati dei passaggi di post-prosessing: (a) IOR19; (b) IF19; (c)
IOUT19
Come si può notare dall’immagine IOR19, (a) Fig. 53, il risultato dell’operazione logica di OR,
contiene molti falsi rilevamenti di pixel appartenenti a vasi. Il primo passaggio permette di
rimuovere il rumore introdotto dal bordo della maschera; come esempio si guardi l’immagine
IF19, (b) Fig. 53. Il secondo passaggio, valutando le aree delle zone rilevate come vasi,
permette di rimuovere pixel o gruppi di pixel erroneamente considerati appartenenti ai vasi;
nell’implementare quest’operazione si considera come valore di soglia At = 25 [Zha14]. Si
96
giunge, in questo modo, all’immagine finale IOUT che contiene un minor numero di falsi
rilevamenti.
Il metodo proposto è valutato quantitativamente su tutte le 7 immagini selezionate dal
database DRIVE. Ogni immagine del set è elaborata, secondo il procedimento descritto nel
cap. 4, per ottenere la corrispondente immagine IOUT. Per ciascuna retinografia, con
riferimento alla rispettiva immagine GT, si calcolano i valori di TP e di FP, e quelli relativi ai
pixel correttamente rilevati come sfondo (TN) ed ai pixel erroneamente individuati come
sfondo (FN). Le prestazioni, del metodo combinato di pre-processing proposto, sono state
indagate considerando la variabile Accuracy che è fortemente correlata alla qualità della
segmentazione ed è spesso usata per valutare e confrontare i diversi metodi
π΄π‘π‘π‘’π‘Ÿπ‘Žπ‘π‘¦ =
𝑇𝑃+𝑇𝑁
𝑇𝑃+𝐹𝑁+𝑇𝑁+𝐹𝑃
(14)
inoltre, sui risultati segmentati, sono state calcolate le altre quantità statistiche Precision,
Sensitivity, Specificity
π‘ƒπ‘Ÿπ‘’π‘π‘–π‘ π‘–π‘œπ‘› =
𝑇𝑃
𝑇𝑃+𝐹𝑃
𝑆𝑒𝑛𝑠𝑖𝑑𝑖𝑣𝑖𝑑𝑦 =
𝑆𝑝𝑒𝑐𝑖𝑓𝑖𝑐𝑖𝑑𝑦 =
𝑇𝑃
𝑇𝑃+𝐹𝑁
𝑇𝑁
𝑇𝑁+𝐹𝑃
(15)
(16)
(17)
Le prestazioni ottenute, con il metodo combinato di pre-processing proposto, espresse in
termini di Accuracy, Precision, Sensitivity, Specificity [Zha14], sono mostrate in Tab. 22,
dove i valori del parametro β indicano il clip limit per piccoli e grandi vasi. Bisogna notare
che il metodo proposto presenta un valor medio di Accuracy pari al 96.06%.
97
Im.
β
01
02
10
14
18
19
20
Valore medio
0.0300
0.0300
0.0400
0.0300
0.0300
0.0500
0.0400
0.0357
Accuracy Precision Sensitivity Specificity
0.9593
0.9575
0.9597
0.9563
0.9610
0.9688
0.9615
0.9606
0.7729
0.8787
0.8352
0.7264
0.7548
0.8378
0.7258
0.7902
0.7701
0.6784
0.6357
0.7367
0.7514
0.7744
0.7650
0.7302
0.9778
0.9893
0.9888
0.9756
0.9790
0.9864
0.9771
0.9820
Tab. 22. Prestazioni del metodo proposto
Per un confronto delle prestazioni del metodo proposto, in Tab. 23 si riportano i valori di
Accuracy ottenuti in questo lavoro e quelli raggiunti con i metodi presentati in [Ram12] e in
[Zha14].
Metodo
Proposto
[Ram12]
[Zha14]
Im.
1
02
10
14
18
19
20
0.9593 0.9575 0.9597 0.9563 0.9610 0.9688 0.9615
0.9384 0.9373 0.9372 0.9406 0.9373 0.9489 0.9400
0.9500 0.9498 0.9457 0.9517 0.9501 0.9618 0.9550
Tab. 23. Confronto, per le stesse immagini, dei valori di Accuracy dei
differenti metodi
Il confronto mostra che con il metodo proposto sono stati ottenuti valori maggiori di
Accuracy, per tutte le immagini retiniche prese in esame. I miglioramenti dei valore di
Accuracy, offerti dal metodo proposto, rispetto ai valori ottenuti con i metodi presentati in
[Ram12] e in [Zha14], sono evidenziati in Tab. 24.
98
Im.
Confronto con
[Ram12]
Confronto con
[Zha14]
01
02
10
14
18
19
20
Valore medio
0.0209
0.0202
0.0225
0.0157
0.0237
0.0199
0.0215
0.0206
0.0093
0.0077
0.0140
0.0046
0.0109
0.0070
0.0065
0.0086
Tab. 24. Miglioramenti dei valori di Accuracy offerti dal metodo
proposto, nel confronto con i metodi presentati in [Ram12] e in
[Zha14]
Dai risultati, mostrati in Tab. 24, si riscontrano in media miglioramenti dei valori di Accuracy
di 0.0206 e di 0.0086, ottenuti rispettivamente dal confronto delle prestazioni del metodo
proposto con quelle dei metodi presentati in [Ram12] e in [Zha14].
Quindi dalle retinografie originali, ottenute dal database DRIVE, si ricavano, con il metodo
proposto, mappe binarie dei vasi sanguigni. Queste presentano buoni valori di Accuracy e
forniscono utili informazioni sui vasi nelle diverse zone retiniche, in particolar modo nel disco
ottico.
Nonostante le buone prestazioni, il metodo proposto presenta delle criticità che possono
essere oggetto di studi e miglioramenti futuri. Nell’equalizzazione di tipo CLAHE, infatti, la
scelta del valore del parametro di clip limit β è condotta attraverso delle soglie prestabilite ed
è effettuata considerando solo tre possibili valori finali: 0.03, 0.04, 0.05; inoltre le dimensioni
dei tile sono fisse per ogni retinografia elaborata. A tal proposito si dovrebbe implementare
una scelta dinamica e maggiormente flessibile sia del valore del parametro β sia dei valori dei
parametri Sa ed Sb, valutando nel dettaglio le caratteristiche della retinografia in esame.
Questo miglioramento potrebbe portare ad un ulteriore aumento delle prestazioni del metodo
proposto.
Si mostrano, infine, le immagini IOUT, ottenute dall’elaborazione delle 7 retinografie
considerate, Fig. 54.
99
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(l)
(m)
(n)
(o)
(p)
(i)
Fig. 54. Retinografie originali estratte dal database DRIVE e loro
mappa binaria dei vasi retinici ottenuta con il metodo proposto: (a)
IIN1; (b) IOUT1; (c) IIN2; (d) IOUT2; (e) IIN10; (f) IOUT10; (g) IIN14; (h) IOUT14;
(i) IIN18; (l) IOUT18; (m) IIN19; (n) IOUT19; (o) IIN20; (p) IOUT20
Le immagini elaborate, così ottenute, possono essere caricate sull’apposito archivio
predisposto per la retinopatia diabetica. Da questo archivio, secondo il modello di rete
oftalmica proposto, è possibile creare il database di immagini elaborate per retinopatia
diabetica, attraverso il lavoro dei componenti della rete di tipo VO.
100
5.5. Sviluppi progettuali futuri
Per le successive fasi per la realizzazione dei modelli proposti, la ricerca indirizza verso una
scelta tecnologica di tipo Grid computing che presenta un approccio nei confronti della
condivisione delle risorse che permette di soddisfare nel modo più efficiente e collaborativo le
necessità di una rete di tipo VO. L’ambiente di griglia, oltre a sostenere efficacemente il
lavoro della rete di tipo VO, permette di garantire la sicurezza. Autenticazione e
Autorizzazione sono assicurate, in questo ambiente, da strumenti come certificati X.509 e liste
ACL che permettono di verificare l’identità degli utenti e di definire le azioni che ognuno di
essi è autorizzato a compiere, rispettivamente. Si vuole indicare la tecnologia del Globus
Toolkit come fondamentale per lo sviluppo dell’ambiente di griglia, in quanto contiene
componenti utili quali: GridFTP, GRAM5, GSI C, MyProxy, GSI-OpenSSH, SimpleCA.
Come indicato in letteratura, l’utilizzo dell’intero sistema si può facilitare attraverso il portale
web che permette di ottenere servizi quali la verifica dello stato dei nodi della griglia, lo
scambio di file tra gli utenti e il componente GridFTP, la validazione attraverso la tecnologia
del workflow, la definizione del profilo utente e la possibilità di contatto privato con ognuno
di questi. Con il portale web si possono definire, facilmente e nel dettaglio, tutte le figure
professionali coinvolte, associando, ad ognuna, i permessi che consentono di eseguire le
azioni, in accordo con le responsabilità assunte nella rete di tipo VO.
Tutta questo sistema porta alla creazione collaborativa dei database di grandi dimensioni che
archiviano un vasto volume di dati, a livello internazionale, permettendo di assicurare la
ricercata visibilità, credibilità e utilità per gli sviluppi dei diversi lavori in campo oftalmico. Si
può garantire, come detto, la facilità di accesso, assicurando sempre e comunque la sicurezza
dei dati in tutti i suoi aspetti e mantenendola costantemente ad alti livelli attraverso le
procedure di manutenzione.
101
6. Conclusioni
Con il presente lavoro si è conseguito l’obiettivo di dare origine a modelli innovativi di rete
collaborativa, al fine di agevolare la creazione di complessi database in medicina. In
particolare si è considerata la problematica della mancanza di vasti database per sviluppare i
programmi di screening in campo oftalmico. Si sono sviluppati modelli di rete collaborativa
di tipo Virtual Organization per la creazione di due database, uno volto a contenere
retinografie classificate e l’altro a contenere immagini di riferimento di tipo Ground Truth per
la convalida degli algoritmi ARIA.
La struttura dei database è stata pensata per sostenere le necessità derivanti da un ambiente
distribuito e ricco di dati, affrontando le difficoltà legate ai processi di sviluppo ed alle
esigenze di sicurezza.
La rete collaborativa di tipo VO permette di fronteggiare gli inconvenienti derivanti dalle
dispendiose e laboriose operazioni necessarie alla creazione ed alla gestione dei database. Per
il raggiungimento dell’obiettivo prefissato le figure professionali necessarie sono state
opportunamente selezionate e la loro interazione è stata strutturata in forma collaborativa nei
modelli di rete proposti. Le regole di condivisione definiscono chiaramente e attentamente:
cosa può essere condiviso in termini di immagini e di informazioni ad esse relative, quale
ruolo ha il permesso di condivisione, considerando tutte le figure coinvolte interne ed esterne
all’organizzazione, e le condizioni in cui può avvenire la condivisione stessa. Questo permette
di garantire la qualità e la sicurezza dei database.
Le operazioni che devono essere compiute da ogni profilo coinvolto per la creazione e la
gestione dei database sono state organizzate attraverso la tecnologia del workflow. In questo
modo si può supportare efficacemente il flusso di lavoro tra i diversi ruoli e garantire il
rispetto della corretta esecuzione di ogni fase necessaria per ogni nuova archiviazione.
I contenuti dei database sono stati efficacemente strutturati, in modo tale da presentare utili
metadati per ogni immagine. Questa impostazione è stata stabilita per supportare l’esecuzione
delle diverse operazioni che caratterizzano la natura stessa del database. Inoltre, l’accurata
analisi dei dati ne ha permesso un’attenta suddivisione. Questo è risultato fondamentale per
gestire le informazioni strettamente relative al paziente nel rispetto della privacy, impedendo
l’accesso ad utenti non autorizzati ed esterni all’organizzazione stessa.
Si è anche valutata l’interazione con il lavoro di ogni Ospite, importante fonte di
accrescimento dei dati. È stato inoltre sviluppato un modello innovativo di rete oftalmica per
la formazione di database di immagini elaborate suddivisi per patologia, con l’obiettivo di
espandere la qualità e la quantità dei dati immagazzinati. Idea chiave di questo sviluppo è
utilizzare il lavoro offerto da ogni Ospite, valorizzandolo attraverso processi di controllo e
valutazione a cura delle figure professionali già presenti nei modelli di rete collaborativa
proposti. I dati forniti da ogni Ospite opportunamente trattati sono utilizzati per la formazione
di altri utili database di immagini elaborate suddivisi per patologia. I database, così costituiti,
possono essere resi accessibili ad ogni figura interna o esterna all’organizzazione.
102
In particolare, indicazioni metodologiche per la realizzazione di un database di immagini di
supporto per retinopatia diabetica sono state determinate attraverso lo sviluppo algoritmico di
una procedura di elaborazione che permette di rilevare i vasi sanguigni nelle immagini
retiniche. Questa esperienza ha permesso di constatare l’innegabile esigenza di vasti database
contenenti retinografie classificate, immagini GT e metadati ad entrambe relativi, avvalorando
i benefici derivanti dallo sviluppo dei modelli proposti.
Per la realizzazione successiva dei modelli proposti gli studi indirizzano verso la tecnologia
del Grid computing. Infatti, le ricerche hanno dimostrato che questa tecnologia ben si adatta al
coordinamento di risorse di calcolo distribuite, eterogenee ed indipendenti. Si potrà, in questo
modo, sostenere efficacemente il lavoro collaborativo e garantire la sicurezza richiesta in
ambito medico.
Si configura, così, l’opportunità di realizzare i modelli pensati di rete collaborativa, estensibile
e flessibile, che permette la creazione di database di grandi dimensioni, facilmente gestibili e
accessibili nel rispetto della privacy dei pazienti.
I modelli di rete collaborativa qui proposti possono generare database di qualità garantita,
facilmente accessibili ed utilizzabili che permettono di immagazzinare un vasto numero di
informazioni anche per le patologie più rare. Questo lavoro si configura come un interessante
supporto per incrementare le prestazioni nella diagnostica oftalmica, contribuendo allo
sviluppo dei sistemi ARIA e sostenendo inoltre le procedure di formazione dei giovani
medici.
103
Bibliografia
[Aml14] Amland R.C., Hahn-Cover K.E., Clinical Decision Support for Early Recognition of
Sepsis, American Journal of Medical Quality, SAGE journals, pp. 1-8, 2014, DOI:
10.1177/1062860614557636
[Ban05] Baniulis K., Tamulynas B., Aukstakalnis N., Case Study of Virtual Organization
Learning and Knowledge Testing Environments, 3° International LeGE-WG
Workshop-GRID Infrastructure to Support Future Technology Enhanced Learning,
Berlin 2003. In: Towards the Learning Grid: Advances in Human Learning
Services, vol. 127, Frontiers in AI and Applications. Ritrovato P. et al. (Eds.), IOS
Press, Amsterdam, pp. 79-87, 2005, ISBN: 1-58603-534-7
[Bel07]
Bellotti R., Cerello P., Tangaro S., Bevilacqua V., Castellano M., Mastronardi G.,
De Carlo F., Bagnasco S., Bottigli U., Cataldo R., Catanzariti E., Cheran S.C.,
Delogu P., De Mitri I., De Nunzio G., Fantacci M.E., Fauci F., Gargano G., Golosio
B., Indovina P.L., Lauria A., Lopez Torres E., Magro R., Masala G.L., Massafra R.,
Oliva P., Preite Martinez A., Quarta M., Raso G., Retico A., Sitta M., Stumbo S.,
Tata A., Squarcia S., Schenone A., Molinari E., Canesi B., Distributed medical
images analysis on a Grid infrastructure, Future Generation Computer Systems,
Elsevier, vol. 23, issue 3, pp. 475-484, 2007, DOI: 10.1016/j.future.2006.07.006
[Boc06] Boccaletti S., Latora V., Moreno Y., Chavez M., Hwang D.U., Complex networks:
Structure and dynamics, Physics Reports, Elsevier, vol. 424, issue 4-5, pp. 175-308,
2006, DOI:10.1016/j.physrep.2005.10.009
[Bot14] Botón-Fernández M., Vega-Rodríguez M.A., Castrillo F.P., Self-adaptivity for grid
applications. An Efficient Resources Selection model based on evolutionary
computation algorithms, Parallel Computing, Elsevier, vol. 40, issue 8, pp. 345361, 2014, DOI: 10.1016/j.parco.2014.06.005
[Bre10] Brewer P.E., Results of a survey on using international virtual teams in engineering,
Professional Communication Conference (IPCC), 2015 IEEE International , pp. 14, 2015, DOI: 10.1109/IPCC.2015.7235803
[Bre15] Brewer P.E., Results of a survey on using international virtual teams in engineering,
Professional Communication Conference (IPCC), 2015 IEEE International, pp.1-4,
2015, DOI: 10.1109/IPCC.2015.7235803
[Car09] Carnimeo L., Bevilacqua V., Cariello L., Mastronardi G., Retinal Vessel Extraction
by a Combined Neural Network-Wavelet Enhancement Method, Emerging
Intelligent Computing Technology and Applications with Aspects of Artificial
Intelligence, Lecture Notes in Computer Science, New York: Springer, vol. 5755,
pp. 1106-1116, 2009, DOI: 10.1007/978-3-642-04020-7_118
104
[Car12] Carnimeo L., Benedetto A. C., Mastronardi G., A Voting Procedure Supported by a
Neural Validity Classifier for Optic Disc Detection, Emerging Intelligent
Computing Technology & Appl., Communication in Computer and Information
Science, Berlin Heidelberg: Springer-Verlag, vol. 304, pp. 467-474, 2012, DOI:
10.1007/978-3-642-31837-5_68
[Car15] Carnimeo L., Nitti R., On classifying diabetic patients’ with proliferative
retinopathies via a radial basis probabilistic neural network, Advanced Intelligent
Computing Theories and Applications, Lecture Notes in Computer Science, New
York: Springer, vol. 9227, pp. 115-126, 2015, DOI: 10.1007/978-3-319-220536_14
[Cas09]
Castellano M., Mastronardi G., Bellotti R., Tarricone G., A bioinformatics
knowledge discovery in text application for grid computing, BMC Bioinformatics,
10(Suppl 6):S23, 2009, DOI:10.1186/1471-2105-10-S6-S23
[Cas11] Castellano M., Stifini R., Biomedical Knowledge Engineering Using a
Computational Grid, Biomedical Engineering, Trends in Electronics,
Communications and Software, InTech, vol. 1, no. 1, pp.601-625, 2011,
DOI:10.5772/13809
[Cas14]
Castellano M., Maggi G., Giorgio A., Carnimeo L., Tangaro S.S., Bellotti R.,
Designing Distributed Systems and their Applications, 1° WORKSHOP on the
State of the art and Challenges Of Research Efforts@POLIBA, Politecnico di Bari,
2014
[Cas15]
Castellano M., A Grid Based Collaborative Distributed System for E-Learning
Design and Production, Concepts, Development and Results of the SFINGE
Project, WIP Edizioni, 2015, ISBN: 978-88-8459-340-5
[Cha89] Chaudhuri S., Chatterjee S., Katz N., Nelson M., Goldbaum M., Detection of blood
vessels in retinal images using two-dimensional matched filters, Medical Imaging,
IEEE Transactions on, vol. 8, no. 3, pp.263-269, 1989, DOI:10.1109/42.34715
[Das15] Dash J., Bhoi N., A Survey on Blood Vessel Detection Methodologies in Retinal
Images, Computational Intelligence and Networks (CINE), 2015 International
Conference on, pp.166-171, 2015, DOI: 10.1109/CINE.2015.39
[Fos01]
Foster I., Kesselman C., Tuecke S., The Anatomy of the Grid: Enabling Scalable
Virtual Organizations, International Journal of High Performance Computing
Applications,
vol.
15,
no.
3,
pp.
200-222,
2001,
DOI:
10.1177/109434200101500302
[Gae05]
Gaeta M., Capuano N., Gaeta A., Orciuoli F., Pappacena L., Ritrovato P.,
DIOGENE: A service Oriented Virtual Organisation for e-Learning, 4th
International LeGE-WG Workshop-Towards a European Learning Grid
Infrastructure: Progressing with a European Learning Grid, Stuttgart 2004. In:
105
Towards the Learning Grid: Advances in Human Learning Services, vol. 127,
Frontiers in AI and Applications. Edited by: Ritrovato P. et al., IOS Press,
Amsterdam, pp. 145-158, 2005, ISBN: 1-58603-534-7
[Gol14] Golubev V.M., Dudin Y.B., Ushakov V.N., The Systematization, Development, and
Application of GridSystem Technologies, Scientific and Technical Information
Processing, Springer, vol. 41, issue 1, pp. 12–21, 2014, DOI:
10.3103/S014768821401002X
[Gri15]
Griebel L., Prokosch H.U., Köpcke F., Toddenroth D., Christoph J., Leb I., Engel I.,
Sedlmayr M., A scoping review of cloud computing in healthcare, BMC Medical
Informatics and Decision Making, Springer, vol. 15, issue 1, 2015, DOI:
10.1186/s12911-015-0145-7
[Han09] Han L., The performance model of dynamic virtual organization (VO) formations
within grid computing context, Chaos, Solitons & Fractals, Elsevier, vol. 40, issue
4, pp.1599-1608, 2009, DOI: 10.1016/j.chaos.2007.09.040
[Hoo00] Hoover A., Kouznetsova, V., Goldbaum M., Locating blood vessels in retinal
images by piecewise threshold probing of a matched filter response, Medical
Imaging, IEEE Transactions on, vol. 19, no. 3, pp. 203-210, 2000, DOI:
10.1109/42.845178
[Hua14] Huang H.K., Deshpande R., Documet J., Le A.H., Lee J., Ma K., Liu B.J., Medical
imaging informatics simulators: a tutorial, International Journal of Computer
Assisted Radiology and Surgery, Springer, vol. 9, issue 3, pp. 433-447, 2014, DOI:
10.1007/s11548-013-0939-y
[Kau14] Kaur K., Rai A.K., A Comparative Analysis: Grid, Cluster and Cloud Computing,
International Journal of Advanced Research in Computer and Communication
Engineering, vol. 3, issue 3, 2014, ISSN: 2319-5940
[Lan14]
Lancheros-Cuesta D.J., Tumialan A., Giovanni J., Perez V.H., Carrizosa M.,
Telemedicine platform for monitoring diabetic retinopathy, Information Systems
and Technologies (CISTI), 2014 9th Iberian Conference on, pp. 1-6, 2014, DOI:
10.1109/CISTI.2014.6876924
[Li10]
Li J., Huai J., Hu C., Zhu Y., A secure collaboration service for
dynamic virtual organizations, Information Sciences, Elsevier, vol. 180, issue
17, pp.3086-3107, 2010, DOI: 10.1016/j.ins.2010.05.014
[Luo09] Luo J., Ni X., Yong J., A trust degree based access control in grid environments,
Information Sciences, Elsevier, vol. 179, issue 15, pp. 2618-2628, 2009, DOI:
10.1016/j.ins.2009.01.039
[Min13]
Min B.S., Lim D.K., Kim S.J., Lee J.H., A Novel Method of Determining
Parameters of CLAHE Based on Image Entropy, Int. J. of Software Engin. and Its
Appl., vol. 7, no. 5, pp. 113-120, 2013, DOI: 10.14257/ijseia.2013.7.5.11
106
[New03] Newman M.E.J., The structure and function of complex networks, SIAM, vol. 45,
issue 2, pp. 167-256, 2003, DOI: 10.1137/S003614450342480
[Osa02] Osareh A., Mirmehdi M., Thomas B., Markham R., Classification and Localization
of Diabetic-Related Eye Disease, Springer-Berlin Heidelberg, pp. 502-516, 2002,
DOI: 10.1007/3-540-47979-1_34
[Qur14] Qureshi M.B., Dehnavi M.M., Min-Allah N., Qureshi M.S., Hussain H., Rentifis
I., Tziritas N., Loukopoulos T., Khan S.U., Xu C.Z., Zomaya A.Y., Survey on Grid
Resource Allocation Mechanisms, Journal of Grid Computing, Springer, vol.
12, issue 2, pp. 399-441, 2014, DOI: 10.1007/s10723-014-9292-9
[Ram12] Ramlugun G.S., Nagarajan V.K., Chakraborty C., Small retinal vessels extraction
towards proliferative diabetic retinopathy screening, Expert Systems with
Applications, Elsevier, vol. 39, issue 1, pp. 1141-1146, 2012, DOI:
10.1016/j.eswa.2011.07.115
[Rez04] Reza A.M., Realization of the Contrast Limited Adaptive Histogram Equalization
(CLAHE) for real-time image enhancement, J. of VLSI Signal Processing, vol. 38,
issue 1, pp. 35-44, 2004, DOI: 10.1023/B:VLSI.0000028532.53893.82
[Rod13] Rodero I., Villegas D., Bobroff N., Liu Y., Fong L., Sadjadi S.M., Enabling
Interoperability among Grid Meta-Schedulers, Journal of Grid Computing,
Springer, vol. 11, issue 2, pp. 311-336, 2013, DOI: 10.1007/s10723-013-9252-9
[Sil11]
Silva P.S., Cavallerano J.D., Aiello L.M., Aiello L.P., Telemedicine and diabetic
retinopathy: moving beyond retinal screening, Archives of Ophthalmology, vol.
129, no. 2, pp. 236-242, 2011, DOI: 10.1001/archophthalmol.2010.365
[Sil12]
Silva L.A.B., Costa C., Oliveira J.L., A PACS archive architecture supported on
cloud services, International Journal of Computer Assisted Radiology and Surgery,
vol. 7, issue 3, pp. 349-358, 2012, DOI: 10.1007/s11548-011-0625-x
[Sim15] Sim D.A., Keane P.A., Tufail A., Egan C.A., Aiello L.P., Silva P.S., Automated
Retinal Image Analysis for Diabetic Retinopathy in Telemedicine, Current
Diabetes Reports, Springer, vol. 15, issue 3, DOI: 10.1007/s11892-015-0577-6
[Sin15]
Singh N., Kaur L., A survey on blood vessel segmentation methods in retinal
images, Electronic Design, Computer Networks & Automated Verification
(EDCAV), 2015 International Conference on , pp. 23-28, 2015 DOI:
10.1109/EDCAV.2015.7060532
[Soa06]
Soares J.V.B., Leandro J.J.G., Cesar R.M., Jelinek H.F., Cree M.J., Retinal vessel
segmentation using the 2-D Gabor wavelet and supervised classification, Medical
Imaging, IEEE Transactions on , vol. 25, no. 9, pp. 1214-1222, 2006,
doi:10.1109/TMI.2006.879967
107
[Sta04]
Staal J., Abràmoff M.D., Niemeijer M., Viergever M.A., Van Ginneken B., RidgeBased Vessel Segmentation in Color Images of the Retina, Medical Imaging, IEEE
Transactions on, vol. 23, no. 4, pp. 501-509, 2004, DOI: 10.1109/TMI.2004.825627
[Tru13] Trucco E., Ruggeri A., Karnowski T., Giancardo L., Chaum E., Hubschman J.P., alDiri B., Cheung C.Y., Wong D., Abràmoff M., Lim G., Kumar D., Burlina
P., Bressler N.M., Jelinek H.F., Meriaudeau F., Quellec G., Macgillivray
T., Dhillon B., Validating retinal fundus image analysis algorithms: issues and a
proposal, Investigative ophthalmology & visual science, vol. 54, no. 5, pp. 35463559, 2013, DOI: 10.1167/iovs.12-10347
[Umb10] Umbaugh S.E., Digital Image Processing and Analysis: Human and Computer
Vision Applications with CVIPtools, 2nd. ed., CRC Press, 2010
[Vya14] Vyas G., Thakur A., Bhan A., Analysis of histogram based contrast Enhancement
with noise reduction method for endodontic therapy, Reliability, Infocom
Technologies and Optimization (ICRITO) (Trends and Future Directions), 3rd
International Conference on, pp.1-5, 2014, DOI: 10.1109/ICRITO.2014.7014739
[Wal02] Walter T., Klein J.C., Missin P., Erginay A., A contribution of Image Processing to
the Diagnosis of Diabetic Retinopathy – Detection of Exudates in Color Fundus
Images of the Human Retina, Medical Imaging, IEEE Transactions on, vol. 21, no.
10, pp. 1236-1243, 2002, DOI: 10.1109/TMI.2002.806290
[Wan03] Wang X.F., Chen G., Complex networks: small-world, scale-free and beyond,
Circuits and Systems Magazine, IEEE Transactions on, vol. 3, no. 1, pp. 6-20,
2003, DOI: 10.1109/MCAS.2003.1228503
[Yan12]
Yang B., Liu J., Liu D., Characterizing and Extracting Multiplex Patterns in
Complex Networks, Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE
Transactions on,
vol. 42,
no. 2, pp. 469-481, 2012, DOI:
10.1109/TSMCB.2011.2167751
[Yos12] Yoshida H., Wu Y., Cai W., Brett B., Scalable, high-performance 3D imaging
software platform: System architecture and application to virtual colonoscopy,
Engineering in Medicine and Biology Society (EMBC), 2012 Annual International
Conference
of
the
IEEE ,
pp.
3994-3997,
2012,
DOI:
10.1109/EMBC.2012.6346842
[Zha09] Zhang L., Li Q., You J., Zhang D., A Modified Matched Filter With Double-Sided
Thresholding for Screening Proliferative Diabetic Retinopathy, Information
Technology in Biomedicine, IEEE Transactions on , vol. 13, no. 4, pp. 528-534,
2009, DOI: 10.1109/TITB.2008.2007201
[Zha14] Zhao Y.Q., Wang X.H., Wang X.F., Shih F.Y., Retinal vessels segmentation based
on level set and region growing, Pattern Recognition, Elsevier, vol. 47, issue 7, pp.
2437-2446, 2014, DOI: 10.1016/j.patcog.2014.01.006
108
[Zui94] Zuiderveld K., Contrast Limited Adaptive Histogram Equalization, Graphics Gems
IV. Heckbert P.S. (Ed.), Cambridge, MA, Academic Press, Chapter VIII.5, pp. 474485, 1994, ISBN: 0-12-336155-9
109