Acquisizione, Processing, Ricostruzione E Visualizzazione

Acquisizione, Processing, Ricostruzione E Visualizzazione

In questo articolo si descrive il pacchetto software realizzato. Viene dettagliato il funzionamento delle finestre di dialogo dalla fase d misura al processo di visualizzazione delle ricostruzione effettuate. Il processo di scansione viene effettuato impostando e tenendo sotto controllo tutti i parametri di interesse. Al termine della misura è possibile analizzare i dati acquisiti e selezionare la ROI effettiva per la ricostruzione del coefficiente di assorbimento del mezzo. Gli algoritmi di ricostruzione e di rendering sono stati implementati in modo da essere efficacemente utilizzati durante il processo di calcolo della distribuzione di dose.

ACQUISIZIONE DELLE IMMAGINI

La finestra di dialogo riportata in Figura 1 è stata costruita per avere a disposizione un’interfaccia grafica capace di comandare il sistema di rotazione ed il rivelatore CCD. I parametri di input necessari a misurare la trasformata di Radon sono: il tempo di rilevazione della CCD (tempo di esposizione); la velocità di rotazione dell’azionamento in p.u.; l’angolo totale di rotazione; il numero di proiezioni. La Figura 1 riporta una proiezione di una provetta contenente un gel trasparente ed una sostanza disciolta al suo interno.

Il FOV acquisito in questa fase di studio è più grande della ROI costituita dalla provetta. Tuttavia, lo studio del dosimetro è finalizzato alla costruzione di fantocci con volume di interesse maggiore rispetto a quello attuale. La qualità degli algoritmi di ricostruzione e del software verranno testati anche su volumi di interesse più grandi.

Il sistema di scansione comincia ad acquisire le proiezioni una volta premuto il pulsante “Scan”. La Progress Bar in alto indica lo stato di avanzamento del processo di acquisizione. Durante l’acquisizione delle varie proiezioni viene stimato l’errore tra l’asse di rotazione reale della provetta e l’asse virtuale orizzontale dell’immagine. Il montaggio della provetta deve avvenire con la massima precisione in modo da rendere irrilevante l’errore tra i due assi: la qualità del processo di ricostruzione è influenzata dalle condizioni geometriche di base.

Le quattro figure poste in alto della finestra di dialogo servono proprio a stimare la precisione del montaggio della provetta. Il primo ed il terzo grafico da sinistra rappresentano l’andamento di una derivata. Per calcolare la posizione della provetta vengono infatti analizzate due colonne della matrice che rappresenta l’immagine. I picchi positivo e negativo della derivata calcolata su questi due vettori rappresentano ragionevolmente i punti di intersezione tra il vettore e la superficie esterna della provetta. Attraverso questi quattro punti di riferimento è possibile calcolare l’angolo di inclinazione della provetta per ogni singola rotazione rispetto all’asse di rotazione del motore.

Durante il processo di scansione è possibile monitorare i parametri di maggiore interesse; il software permette di informare l’operatore fornendo il tempo necessario per acquisire ogni proiezione, il tempo totale di scansione e la statistica su ogni proiezione misurata (Valor medio e deviazione standard).

Ogni singola proiezione successivamente corretta viene impilata in una matrice a tre dimensioni con il criterio spiegato nel paragrafo 3.1.

La dinamica di ogni proiezione viene riportata nel grafico localizzato a destra dell’immagine. Per calcolare la dinamica dell’immagine si utilizza la funzione imhist. Questa funzione crea un grafico che in ascisse presenta una serie di valori equispaziati (in genere da 0 a 255, corrispondenti alle intensità dei pixel in un’immagine a toni di grigio) e sulle ordinate vi è il numero di pixel di quell’intensità presenti nell’immagine.

Una volta effettuata la misura di tutte le proiezioni i dati acquisiti vengono salvati in una cartella creata automaticamente per l’esperimento. I dati vengono archiviati nel file chiamato “esperimento.mat”. Nella tabella 1 si elencano le variabili contenute nel file.

Figura 2   Controllo della precisione del sistema di rotazione con l’ausilio di un fantoccio cilindrico costituito da PVC opaco

 Tabella 1    Descrizione del file “esperimento.mat”

Nome variabile

dimensione

tipo variabile

byte

matrice3d

511x508x180

int16 array

93 (Mb)

angolo_totale

1×1

double array

8

descrizione_esperimento

1×12

char array

24

Durata

1×1

double array

8

num_pr

1×1

double array

8

statistica_errore_asse1

1×180

double array

1440

statistica_errore_asse2

1×180

double array

1440

  1. ELABORAZIONE DELLE MISURE E PROCESSING DELL’IMMAGINE

Terminato il processo di acquisizione si passa a lavorare su un’altra finestra di dialogo denominata “Roi Folder”. In questa fase si deve selezionare la ROI che deve essere effettivamente ricostruita.

Si cerca inoltre di correggere ulteriormente un eventuale errore di montaggio della provetta. Si sottolinea, infatti, che il dosimetro perde progressivamente le sue caratteristiche a causa del processo di diffusione e di autossidazione. Per un singolo dosimetro la misura sul banco ottico può essere eseguita solo una volta. In pratica per effettuare un set di misure (ad esempio su 180 proiezioni) sono necessari circa 45 minuti. Se al termine della scansione si rileva un non perfetto montaggio della provetta è preferibile provare a correggere questo difetto in fase di post-processing invece di ripetere la misura.

Un tentativo di correzione tramite l’image processing consiste nell’elaborare in serie ogni singola proiezione ricalcolando i riferimenti con il metodo delle derivate descritto nel paragrafo precedente. Una volta calcolata la posizione dell’asse della provetta è possibile riportarlo a coincidere con la riga centrale della matrice tramite un processo di rotazione e traslazione. Dato che la misura è gia stata campionata e digitalizzata risulta però problematico applicare un algoritmo di rotazione ad ogni singola matrice.

Il processo di traslazione non produce invece alcuna modifica sulla quota parte della matrice che viene successivamente selezionata come ROI. In particolare con i tasti “Cut up” e “Cut down” è possibile traslare le proiezioni con un algoritmo che permette di spostare le righe della matrice di una posizione verso l’alto o verso il basso.

Con il pulsante denominato “Statistical measurement” è possibile analizzare il comportamento del sistema di scansione durante il processo di misura. Per ogni proiezione viene calcolato il valore medio o mediano della misura effettuata e la deviazione standard. L’analisi oltre ad essere eseguita sul FOV viene anche effettuata su una superficie minore contenente il dosimetro e su un punto di Flat dove la luce non subisce un’attenuazione trascurabile durante il suo percorso. Oltre all’andamento dei valori medi sono visualizzate anche le deviazioni standard di ogni tipo di misura. L’analisi cronologica del processo di misura è sicuramente molto importante per studiare ed eventualmente correggere la calibrazione del sistema. Il valor medio della trasmittanza misurata nella ROI che contiene il dosimetro, mette normalmente in evidenza il processo di autossidazione del gel: l’evoluzione nel tempo delle caratteristiche fisico-chimiche del dosimetro molto spesso porta ad osservare una diminuzione del numero di conteggi durante i 45 minuti della misura.

La Figura 4 riporta la serie di grafici appena descritti. I dati visualizzati riguardano l’acquisizione di un dosimetro non irraggiato.

Il pulsante denominato “Correction Flat e Dark” permette di correggere ogni singola proiezione con l’ausilio delle misure di Flat e Dark. I frame di calibrazione di queste due misure possono essere acquisiti utilizzando la finestra di dialogo del paragrafo 4.1.

In Figura 5 ed in Figura 6 sono riportati i grafici costruiti delle due matrici di calibrazione. Questi dati possono essere osservati premendo il pulsante “Draw (Flat & Dark)”. Ambedue i grafici mettono in evidenza dei picchi di conteggio sulla periferia del Chip del CCD.

Nella finestra sono stati inseriti anche due check box denominati: “Refers” e “Refers statici”. Quando i check box sono selezionati, sull’immagine di ogni proiezione vengono anche disegnate delle linee o segmenti di riferimento. Se il check “Refers” è selezionato è possibile controllare il taglio che verrà eseguito sulla matrice per la selezione della ROI. Se il check “Refers statici” è selezionato vengono visualizzate due linee parallele di colore nero che seguono il profilo della provetta e permettono di valutarne qualitativamente il centraggio sul banco ottico. Nella Figura 7 e nella Figura 8 sono visualizzate due fasi successive del processo di selezione della ROI. Premendo il pulsante “Save roi for each slice” la matrice 3D contenente la sequenza delle proiezioni (o dei sinogrammi) viene tagliata e salvata in un file “roi3d.mat” insieme ad una singola proiezione che viene utilizzata come preview durante la scelta successiva degli esperimenti.

 

Figura 5   Matrice di calibrazione del Dark (Misure con otturatore del CCD chiuso)

 

Figura 6   Matrice di calibrazione del Flat Frame (Misure effettuate senza nessun mezzo assorbente interposto tra la sorgente ed il rilevatore)

Figura 7   Fase finale della scelta di una ROI. I due campi numerici in basso (dove sono inseriti i numeri 1) indicano che non è stato effettuato un taglio della matrice in senso verticale. Il campo numerico che riporta il valore 71 permette di selezionare solo le 71*2  righe centrali della matrice

 

slice imaging selezione roi matlab
Figura 8   Fase finale della scelta di una ROI. Nei due campi numerici in basso sono inseriti i numeri 1 e 150. Premendo il pulsante “Save ROI for each slice” si seleziona una ROI con il taglio delle ultime 150 colonne della matrice

Ogni singola proiezione può essere visualizzata grazie alla barra di scorrimento verticale posta sul lato sinistro della finestra di dialogo. La correttezza del montaggio della provetta può essere valutata qualitativamente premendo il pulsante “Movie” ed osservando lo scorrimento delle proiezioni in rapida sequenza. La toolbox di Matlab sull’image processing mette inoltre a disposizione una funzione che consente di valutare il valore di ogni singolo elemento della matrice una volta che si posiziona il puntatore del mouse sull’immagine; per effettuare questo controllo bisogna premere il pulsante “Pixval”.

  1. ELABORAZIONE ED ANALISI DEI DATI ACQUISITI

Prima di effettuare la ricostruzione del dosimetro o di qualsiasi altro fantoccio può essere utile studiare ed elaborare ulteriormente le misure effettuate.

Una volta selezionata una cartella esperimento è possibile caricare il file “roi3d.mat” per analizzare i dati della matrice globale e di ogni singola proiezione. Premendo il pulsante “Load” viene caricata la matrice tridimensionale contenente la ROI selezionata con il procedura del paragrafo precedente.

La statistica dei conteggi ADU contenuti nella matrice 3D viene riportata nell’istogramma colorato in rosso. L’istogramma fornisce una raffigurazione sintetica del contenuto cromatico o di luminosità dell’immagine. La visualizzazione di questo grafico permette di fornire un’informazione sulla dinamica dell’immagine (estensione della gamma tonale).

In ascisse di questo istogramma possono essere riportate due grandezze:

  1. Il numero di conteggi ADU misurati dal CCD

  2. Il numero di conteggi corretti successivamente con le misure di Flat o di Dark se nella finestra “Roi folder” è stato utilizzato l’algoritmo implementato nel pulsante “Correction (Flat & Dark)”

In ordinate si riporta invece il numero di elementi  all’interno della matrice 3D che contengono i valori riportati in ascisse.

L’istogramma colorato in nero riporta invece una statistica analoga a quella appena descritta ma ricavata solo dalla proiezione i-esima visualizzata.

L’immagine ben bilanciata prende solitamente la gamma dinamica completa: l’istogramma è ben distribuito e ragionevolmente simmetrico.

In figura 6, sotto il grafico che  visualizza l’istrogramma (in rosso) della matrice 3D sono stati inseriti due campi numerici che riportano il valore minimo ed il valore massimo degli elementi della matrice. Modificando questi valori è possibile applicare un filtro che permette di tagliare le  due code estreme dell’istogramma. Questo processo viene denominato Contrast stretching. L’obiettivo di questo stiramento è quello di cercare di sfruttare l’intero intervallo dei possibili valori. In questo modo si varia la dinamica dell’istogramma. Anche se non c’è un collegamento diretto tra contrasto dell’immagine e istogramma, solitamente la distanziazione dei picchi dell’istogramma aumenta il contrasto.

Il CCD presenta normalmente numerosi pixel “caldi” (pixel isolati molto chiari) e “freddi” (pixel isolati molto scuri). L’algoritmo di Contrast Streching permette di normalizzare i valori degli elementi di matrice costituiti da questi pixel caldi e freddi producendo un buon risultato senza compromettere la qualità dell’immagine.

Il pulsante “adjust the intensity” utilizza il comando imadjust presente in Matlab. Tramite imadjust è possibile definire un nuovo range sull’istogramma dell’ immagine desiderata, così da esaltare, ad esempio, il contrasto. Bisogna sottolineare che questi comandi tendono a modificare i dati misurati. Dato che nella fase successiva ai dati si applicano gli algoritmi di ricostruzione e dato che un obiettivo del lavoro consiste nel riuscire ad ottenere una ricostruzione della distribuzione di dose anche dal punto di vista quantitativo, la modifica delle misure effettuate potrebbe portare ad un errore successivo sulla valutazione delle immagini.

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *