Un nuovo sistema di image processing per lo screening della celiachia Ninfea Lo Mascolo UNIVERSITÀ DEGLI STUDI DI CATANIA Corso di Laurea in Ingegneria Informatica Facoltà di Ingegneria,Dipartimento di Ingegneria Elettrica, Elettronica e di Sistemi
Obiettivi Realizzare un sistema di lettura e conversione in un esito clinico delle informazioni ottenute dal test genetico effettuato per valutare una eventuale predisposizione alla celiachia. Fornire uno strumento di lavoro di facile utilizzo in ambiente medico, attraverso l implementazione di un interfaccia grafica.
La celiachia La celiachia è un enteropatia autoimmune dovuta ad un'intolleranza permanente alla gliadina. Quest ultima è una componente proteica del glutine, che a sua volta è contenuto in molti cereali: frumento, nell'orzo, nella segale, nel farro, nel kamut ed in altri cereali minori. Nei soggetti affetti o predisposti, risultano tossici tutti gli alimenti derivati dai suddetti cereali o contenenti glutine in seguito a contaminazione. E stata dimostrata una forte associazione di questa malattia con i geni del complesso HLA. La presenza degli alleli HLA è, infatti, un indicatore di predisposizione alla celiachia ed è essenziale per la patogenesi della malattia. Negli individui affetti, in particolare, la gliadina, dopo essere stata fagocitata in sede intestinale dalle cellule presentanti l'antigene (APC, Antigen-Presenting Cell), viene esposta dalle molecole DQ2 e DQ8 del sistema HLA per essere riconosciuta come antigene "non-self" dai linfociti T, cioè come antigene estraneo da attaccare e distruggere.
Il test genetico Il test genetico per l identificazione della celiachia è basato sull analisi elettroforetica su gel agarosio del DNA estratto da campioni di sangue, e permette di rivelare la predisposizione genetica alla celiachia in soggetti potenzialmente affetti o parenti più stretti. L analisi elettroforetica fornisce un immagine costituita da una serie di cluster luminosi che rappresenta la presenza degli alleli indicatori di celiachia. Purtroppo, tale immagine, non si presenta del tutto nitida, di conseguenza, sarà necessaria un elaborazione digitale per rendere possibile l interpretazione dei risultati in maniera inequivocabile.
Software per lo screening della celiachia DESCRIZIONE DEL SOFTWARE: Il software creato in ambiente Borland C++ Builder V 6.0 Build 10.155 consta di una GUI user-friendly e di una connessione con un database esterno, realizzata utilizzando gli oggetti ADO messi a disposizione dal compilatore. ATTIVITA E RISULTATI: Il programma elabora l immagine digitale acquisita in ingresso, che descrive visivamente l esito di un test genetico ottenuto mediante elettroforesi del DNA, e restituisce come output uno stream di nove cifre, costituito da 0 e 1, dal quale si potrà successivamente evincere la predisposizione o meno del soggetto alla celiachia. L immagine digitale da analizzare può contenere 4 test oppure 2 test:
Acquisizione e thresholding dell immagine Acquisizione dell immagine mediante una libreria C++ per la manipolazione di immagini; Matrice dei grigi, cioè l espressione di ogni pixel nel suo valore numerico, da 0 a 255, in cui allo 0 corrisponde il nero (assenza totale di luminanza), al 255 il bianco (luminanza massima); Costruzione di un array bidimensionale, che ricalchi la matrice, sul quale poter operare; Thresholding, al fine di ottenere dei bordi uniformemente neri, cioè con valore di luminanza 0, per cercare di delineare e distinguere le diverse parti dell immagine; Calcolo di un vettore somma delle colonne, i cui elementi saranno cioè costituiti dalla somma numerica dei valori di luminanza di tutti i pixel appartenenti ad ogni singola colonna.
Algoritmo per l enumerazione e traslazione dei test (I) Dopo aver ricostruito con i nuovi valori della matrice sogliata il vettore somma delle colonne ed aver calcolato con gli stessi criteri un vettore somma delle righe, si riescono a trovare le coordinate necessarie per identificare il numero di test dell immagine. Conoscere il numero di test, è necessario per poter successivamente suddividere la zona a metà, in orizzontale ed in verticale o solo in orizzontale ottenendo così 4 o 2 sottoimmagini e le loro matrici.
Algoritmo per l enumerazione e traslazione dei test (II) Per effettuare la rotazione, note le ascisse x1, x2 e l ordinata y2, sono necessarie altre 3 coordinate, ottenute utilizzando la matrice sogliata: ys,yd, xb che rispetto all immagine si trovano nell estremo vertice a sinistra, a destra e in basso. 1 caso: y2-ys > y2-yd angolo di rotazione in gradi: m=(360 /2π) arctg((y2-yd)/(x2-xb)) 2 caso: y2-ys < y2-yd angolo di rotazione in gradi: m= 360 -((360 /2π) arctg((y2-ys)/(xb-x1)))
Filtraggio (I) 1) Filtro mediano orizzontale non lineare, di maschera 5x1, volto ad esaltare i valori di luminanza accentuati ed attenuare invece i grigi dello sfondo: I parametri w1, w2, w3, w4 e w5 sono assunti pari ai corrispondenti valori della matrice se questi sono maggiori di 100, zero altrimenti. m1, m2, m3, m4 ed m5 sono stati fissati opportunamente in seguito alle numerose prove effettuate. 2) Filtro gaussiano con soglia, con maschera standard di dimensione 3x3. I valori della matrice ricavati, sono stati sottoposti ad un ulteriore sogliatura con riferimento sempre a 100: i termini inferiori sono stati annullati, quelli uguali o superiori a tale soglia portati al valore massimo di 255.
Filtraggio (II) 3) Filtro gaussiano semplice 3x3, la cui maschera, costituita dai coefficienti m precedentemente utilizzati, verrà applicata direttamente ai valori che costituiscono la matrice per ricavarne il nuovo termine da posizionare sempre al centro della maschera. Immagine filtrata
Ricerca degli alleli e analisi interpretativa (I) Per distinguere le due righe di Cluster: si identificano i raggruppamenti di valori non nulli del vettore somma delle righe, che rappresentano sicuramente i due cluster orizzontali di accentuata luminanza e qualche eventuale residuo di rumore; si calcolano: pixel iniziale e finale il valore globale del cluster e il valore mediano della distanza tra il pixel iniziale del primo cluster e quello finale del secondo.
Ricerca degli alleli e analisi interpretativa (II) Per individuare lo stato dei singoli cluster: Considerando inizialmente solo la riga inferiore (riga di convalidazione) di segmenti illuminati: Si compara il valore di intensità di ogni cluster con un valore-soglia al di sotto del quale lo si considererà spento, al di sopra del quale invece acceso (OFF oppure ON); Si conta il numero dei cluster ritenuti accesi. Se tale numero risulta pari a 8 => TEST VALIDO: si controlla lo stato ON/OFF di ogni cluster, nella riga superiore (riga che fornisce l esito). RISULTATO: Sequenza di 9 cifre, di cui la prima sarà 1 o 0 a seconda se gli alleli riscontrati nella riga inferiore saranno 8 o meno (e darà quindi valenza al test), le altre invece saranno rispettivamente 1 o 0 in corrispondenza di un allele acceso o spento.
Interfaccia grafica e database L interfaccia è costituita da pochi elementi di facile utilizzo: SI = predisposto alla celiachia. NO = non predisposto. Non Valido = risultato del test è uguale a zero, ovvero nella riga di convalidazione alcuni clusters sono OFF. Nella parte sinistra viene visualizzata la stringa numerica associata a ciascun test eseguito, e quindi l esito del test genetico nella parte destra. L esito, sopra menzionato, è stato ottenuto a partire da una tabella in cui sono contenuti i valori delle stringhe che determinano l eventuale presenza dell allele DQ2 e DQ8.
Esempi dei risultati ottenuti (I) 1) ESEMPIO (4 TEST): Immagine originale e dopo il primo thresholding.
4 TEST prima (A) e dopo (B) il filtraggio digitale Test n 1 Test n 2 A B A B Test n 3 Test n 4 A B A B
L immagine presenta degli alleli di verifica del test non sufficientemente illuminati da poter essere considerati accesi, infatti i test 2 e 4 verranno scartati:
Esempi dei risultati ottenuti (II) 2) ESEMPIO (2 TEST): Immagine originale e dopo il primo thresholding.
2 TEST prima (A) e dopo (B) il filtraggio digitale Test n 1 A B Test n 2 A B
Il test n 2 risulterà valido, ma il confronto con le stringhe della tabella darà esito negativo.
Invece, il test n 1 non verrà considerato attendibile.
Conclusioni (I) In questo è lavoro stato descritto un nuovo sistema che permette di ricavare a partire da immagini fotografiche informazioni rilevanti e interpretare i risultati di un test genetico di predisposizione alla celiachia, ottenuto tramite elettroforesi su gel di agarosio. Attraverso l implementazione di filtri digitali standard e ad hoc, è stato possibile eliminare gran parte del rumore in eccesso che poteva compromettere l esito dei test. Si è riusciti a riconoscere lo stato ON/OFF dei cluster, cioè delle macchie di maggiore intensità luminosa che permettono di determinare la presenza/assenza degli alleli DQ2 e DQ8 responsabili della predisposizione genetica alla celiachia. Tramite la realizzazione di un interfaccia grafica (GUI) si è ottenuto uno strumento di lavoro, di utilizzo semplice e intuitivo in campo medico, grazie al quale è possibile scegliere le immagini da processare e visualizzarne i risultati.
Conclusioni (II) Il software, implementato in ambiente Borland C++ Builder V 6.0 Build 10.155, permette di ottenere velocemente ottimi risultati con un elevata percentuale di successo sul campione di immagini analizzato, per cui, si dimostra utile per la precisione con cui viene interpretato il risultato del test e per i bassi tempi di processamento.