Si provi ad immaginare di porre una telecamera di fronte al rivelatore e di osservare a distanza la formazione delle bolle, effettuando il conteggio. Quello che compie il cervello umano in questo caso, dopo aver ricevuto informazioni dall’occhio, è un vero e proprio confronto tra un’immagine già analizzata e immagazzinata nella memoria, raffigurante il rivelatore in un preciso istante t passato, ed il fotogramma corrispondente al momento presente. Un individuo posto davanti allo schermo perciò osserverà le evaporazioni presenti nella fiala non appena queste saranno visibili, non aggiornando il conteggio se non nel caso in cui compaia una nuova bolla. Proprio a questo si ispira fortemente la nuova metodologia proposta per la lettura attiva dei dosimetri a bolle contenenti le superheated emulsions. Tale tecnica consiste semplicemente nell’estensione dell’analisi descritta nel paragrafo precedente, a più fotogrammi scattati ad intervalli regolari durante la misura. Si parte da una situazione iniziale in cui il rivelatore è privo di bolle e si acquisisce perciò un’immagine che costituisca un background da sottrarre ai fotogrammi successivi. Il passo seguente consiste perciò nello scattare una fotografia ad un istante t deciso dallo sperimentatore, e dopo aver sottratto la figura precedente, effettuare il conteggio delle evaporazioni presenti. Non appena terminato questo passaggio il fotogramma attuale assume il ruolo del background ed il procedimento viene iterato fino al termine del tempo prestabilito per compiere la misura. Prima di analizzare il codice Matlab vero e proprio tuttavia, è necessario descrivere alcuni aspetti che caratterizzano questo apparato sperimentale. Tali aspetti incidono notevolmente sulla scrittura di un ulteriore algoritmo da combinare con quello trovato ed analizzato nei paragrafi precedenti, che possa essere efficiente e garantire dei risultati accettabili. In primo luogo è utile visualizzare come avviene la trasmissione delle immagini. Lo strumento atto a catturare la fiala, come già detto, è un telefono cellulare Samsung SM- G386F che trasmette i dati al computer tramite l’applicazione IP Webcam. Il
59
dispositivo ed il pc devono essere collegati alla medesima rete wireless affinché il trasferimento di informazioni avvenga. Una volta avviato il flusso video, l’applicazione assegna alla webcam un indirizzo IP, e quindi è possibile l’invio delle immagini tramite browser. Con Matlab in particolare è possibile controllare l’acquisizione definendo una variabile che permetta la connessione tra il programma ed il dispositivo. Successivamente il fotogramma viene catturato utilizzando il comando imread e assegnandolo ad un’ulteriore variabile. Qui di seguito si possono trovare due righe di codice che permettono le azioni appena descritte.
url='http://131.114.217.56:8080/shot.jpg'; A=imread(url);
Per quanto riguarda la funzione che ha permesso la rielaborazione delle immagini e la conta delle bolle presenti nel rivelatore, è necessario spiegare la logica che ha guidato la scrittura dell’algoritmo. Il primo passo è stato quello di scrivere le proprietà e le caratteristiche più adatte per raggiungere gli scopi prefissati. Chiamando ad esempio A un fotogramma catturato ad un istante t e B quello successivo acquisito al tempo t+Δt, la chiave di tutto il processo consiste nel trovare il metodo migliore per sottrarre le due immagini, riducendo il più possibile le sorgenti di rumore. Si è applicato perciò l’algoritmo di Canny alle due figure ottenendo le due matrici binarie C e D, rispettivamente gli edge detection di A e di B. A questo punto si sono prese in considerazione le varie possibilità di combinazione di C e D. Dato che con una semplice sottrazione tra matrici, i risultati sarebbero stati influenzati fortemente dalla luminosità ambientale e dalle sue variazioni, si è deciso di ricorrere al seguente comando:
60
Dove l’and non è altri che l’operatore congiunzione, mentre lo xor è detto
disgiunzione esclusiva e restituisce VERO (V), se e soltanto se i due ingressi,
sono diversi tra loro.
Per delle matrici binarie, come in questo caso, assegnando al bianco il valore 1 e al nero il valore 0, si possono ottenere i seguenti risultati:
Se Cij è pari a 1 e Dij è pari a 0 allora Fij vale 0;
Se Cij è pari a 0 e Dij è pari a 0 allora Fij vale 0;
Se Cij è pari a 1 e Dij è pari a 1 allora Fij vale 0;
Se Cij è pari a 0 e Dij è pari a 1 allora Fij vale 1.
Questo da un lato garantisce quanto richiesto, cioè una conta efficace, compiuta fotogramma per fotogramma, eliminando di volta in volta le bolle già considerate, dall’altro assicura una buona risposta al rumore data dal risultato esposto nel primo punto dell’elenco qui sopra.
A questo punto è possibile presentare il codice della funzione utilizzata per effettuare l’analisi ed il conteggio:
function X=active_counter(url,t) tic; A=imread(url); i=0 C=canny(A); pause(5); while (toc<t) B=imread(url); D=canny(B); subplot(1,2,1); imshow(D); subplot(1,2,2); F=xor(C,D)-and(C,not(D)); imshow(F);
61 [L,i2]=bwlabel(F); i=i+i2 C=D; pause(60); end
Osservando l’algoritmo si nota immediatamente come il tempo, che è espresso in secondi, sia controllato rispettivamente da tic, che avvia il cronometro, e toc, che invece lo ferma. Il Δt cioè la spaziatura temporale intercorrente tra un fotogramma ed il successivo, è salvaguardato dalla sesta e dall’ultima riga del codice nelle quali compaiono i comandi pause(t’) e pause(t’’). Il parametro t’, che nell’algoritmo è pari a 5 secondi determina il momento in cui l’analisi ha realmente inizio, e dunque dopo l’acquisizione del background, mentre t’’ viene deciso tenendo in considerazione molteplici aspetti, come la sensibilità del rivelatore, l’attività della sorgente e la sua distanza dalla fiala, o più semplicemente il rate di formazione delle bolle. In generale, in assenza di questa riga di codice, la funzione era in grado di compiere 3 o 4 iterazioni al secondo, in base alla grandezza dell’area su cui si compie l’analisi. Il valore scelto nei casi che si osserveranno in seguito, in cui la sorgente ha un’attività pari a 30 mCi, ed è posta a 3 cm dalla sorgente è stato di 60 secondi, dal momento che il rate di formazione era compreso tra 1 e 3 bolle al minuto in base alla sensibilità ed alla temperatura dell’emulsione, un numero facilmente contabile dal sistema, e che raramente contiene al suo interno casi di sovrapposizione. Il risultato del conteggio, che è dato dal parametro i, viene incrementato in ciascuna iterazione grazie al medesimo comando che è utilizzato nella funzione counter descritta in precedenza.
Nel capitolo successivo saranno mostrati i risultati delle misure effettuate utilizzando il codice appena visto.
62
Capitolo 3
Misure
Descrizione delle condizioni di misura
Le misure sono state effettuate, come già detto in precedenza, utilizzando una sorgente di 241Am-Be. I neutroni emessi da tale sorgente sono generati dall’interazione tra le particelle α sprigionate dal 241
Am (tempo di dimezzamento pari a 433 anni), ed il berillio (Be) che svolge il ruolo di bersaglio. All’interno del 241Am-Be avviene la seguente reazione [24]:
4
2α+ 94Be (target) →126C + neutron + 5.71 MeV.
Lo spettro energetico della sorgente è presentato nella figura sottostante.
Figura 48. Spettro della sorgente di 241Am-Be, misurato al PTB (Physikalisch-Technische
63
La sorgente, che è dotata di un involucro protettivo, può essere manipolata solo dal personale autorizzato, e la postazione dell’operatore è stata preparata a debita distanza dalla zona controllata dove avviene l’irraggiamento della fiala. Questo è un altro dei vantaggi garantiti dalla nuova metodologia sviluppata, che trasferendo i dati tramite browser, consente a chi svolge l’esperimento, di limitare ulteriormente l’esposizione. E’ necessario dire tuttavia che in questo caso particolare la dose in gioco era esigua, infatti a contatto con l’involucro protettivo della sorgente, questa è pari a circa 20 μSv/h. Dunque mantenendosi ad una distanza sufficiente è facile per i lavoratori esposti, rimanere sotto i limiti stabiliti dalla legge e trattati nel capitolo 1.
I rivelatori sono costituiti da fiale contenenti gocce di freon C-318 sospese, come visto in precedenza, in una matrice gelatinosa. Tali rivelatori sono prodotti presso l’Università di Yale in collaborazione con il Laboratorio di Misure Nucleari della Scuola di Ingegneria Pisa [16]. Per effettuare la misura ogni volta una fiala veniva inserita all’interno del contenitore a pareti piatte già menzionato nel capitolo 2, contenente acqua ad una temperatura pari a 36 °C. E’ importante dire inoltre, che per ottenere differenti numeri di bolle all’interno dei detector, sono stati compiuti irraggiamenti di differente durata temporale, fissando invece la distanza tra la sorgente ed il rivelatore a 3±0.1 cm. Nel paragrafo seguente sono mostrati i risultati delle misure effettuate.
Risultati
Si presenta adesso una tabella riassuntiva con gli errori relativi presenti nel sistema di lettura attiva sviluppato, in confronto col sistema automatico passivo visto in precedenza, assumendo che il numero di bolle ottenuto con la conta manuale sia quello esatto, e si mostreranno alcune delle immagini dei rivelatori durante l’elaborazione e dopo i vari irraggiamenti.
64
Tabella 6. Riepilogo dei dati ottenuti in differenti condizioni sperimentali.
Tempo di esposizione (minuti) Conteggio manuale Conteggio attivo Errore conteggio attivo Conteggio passivo Errore conteggio passivo Risoluzione delle immagini 5 9 8 11,1% 11 22,2 640x800 5 8 8 0 9 12,5 640x800 5 9 10 11,1% 10 11,1 1920x1080 10 18 17 5,5% 19 5,5 640x800 10 21 19 9,5% 21 0 640x800 10 20 20 0 20 0 1920x1080 15 28 29 3,5% 27 3,5 640x800 15 27 26 3,7% 24 11,1 640x800 15 27 27 0 24 11,1 640x800 15 29 31 6,9% 28 3,4 1920x1080 20 39 41 5,1% 36 7,7 640x800 20 42 39 7,1 40 4,7 640x800 20 38 38 0 42 10,5 1920x1080 30 67 70 4,4 61 8,9 1920x1080 30 64 60 6,3 57 10,9 1920x1080
65
Figura 49. Immagine di un rivelatore precedente all'irraggiamento
66
Figura 51. Rielaborazione attuata col Canny edge detection algorithm. Il sistema passivo conta 11 bolle mentre quello attivo 8.
67
Figura 53. Canny edge detection della figura precedente. Qui il sistema passivo conta 24 bolle, quello attivo 27.
Figura 54. Immagine dopo un secondo irraggiamento di 15 minuti. Si possono contare 27 bolle anche in questo caso.
68
Figura 55. Canny edge detection della figura precedente. In questo caso il sistema passivo conta 24 bolle, quello attivo 26.
Figura 56. Immagine della fiala successiva ad un irraggiamento di 20 minuti. Si possono contare 39 bolle.
69
Figura 57. Canny edge detection della figura precedente. Qui il sistema passivo conta 36 bolle mentre quello attivo 41.
Figura 58. Immagine della fiala successivamente ad un irraggiamento di 30 minuti. Si possono contare 64 bolle.
70
Figura 59. Canny edge detection della figura precedente. In questo caso il sistema passivo conta 57 bolle, quello attivo 60.
Figura 60. Immagine della fiala successiva ad un irraggiamento di 10 minuti. Si possono contare 20 bolle.
71
Figura 61. Canny edge detection della figura precedente. In questo caso il sistema passivo conta 20 bolle, quello attivo 20.
Figura 62. Immagine della fiala successiva ad un terzo irraggiamento di 15 minuti. Si possono contare 29 bolle.
72
Figura 63. Canny edge detection della figura precedente. In questo caso il sistema passivo conta 28 bolle, quello attivo 31.
E’ importante specificare che all’interno delle misure, nel passaggio dal sistema passivo a quello attivo è stato modificato il valore del parametro interno alla funzione bwareaopen. Questa modifica è stata compiuta a causa della maggiore sensibilità del sistema di lettura attiva, alle variazioni ambientali di luminosità che si possono osservare tra un fotogramma ed il successivo. Proprio tale aspetto ha evidenziato la necessità di aumentare il valore minimo di pixel bianchi, in un oggetto identificato dall’algoritmo di
edge detection, affinché questo sia associato ad una bolla e contato. Dunque
fissata la distanza tra l’obiettivo della fotocamera e la fiala a 7 cm, si è scelto il valore del parametro. Con la risoluzione pari a 640x800 è stato stabilito per il sistema passivo un minimo di 6 pixel, mentre per il sistema attivo 36. Nelle misure effettuate con una risoluzione di 1920x1080 invece i valori scelti sono stati rispettivamente di 40 e 250 pixel.
73
Passando alle misure vere e proprie, si nota come l’errore medio compiuto dal sistema di conteggio passivo, sia significativamente più alto rispetto a quello medio ottenuto nelle prove esibite nel capitolo precedente. Si passa infatti dal 6,75%, all'8,2%. Tale incremento può essere causato da molteplici aspetti, infatti le foto su cui si è effettuato il conteggio passivo, sono state scattate al termine della lettura attiva mantenendo immutate le condizioni di illuminazione, che invece nei test del precedente capitolo erano più favorevoli. Inoltre bisogna tenere in considerazione che la risoluzione dell’SM-G386F è nettamente inferiore a quella osservata nelle prove effettuate al capitolo 2. Nonostante questi aspetti sfavorevoli, col metodo di lettura attiva l’errore medio scende al 4,9% e si ha dunque un miglioramento sostanziale anche rispetto a quanto visto in precedenza.
Detto questo, è possibile analizzare i punti di forza e i difetti di questa nuova tecnica di lettura attiva, rispetto a quella passiva. Tra i benefici apportati, possiamo annoverare sicuramente: il vantaggio di avere una stima rapida ed efficiente del numero di bolle e dunque, conoscendo la sensibilità del rivelatore, della dose, senza dover attendere la fine di un irraggiamento; la possibilità di ridurre notevolmente gli errori di sovrapposizione tra le evaporazioni localizzate, dal momento che questo fenomeno può essere controllato calibrando a dovere il sistema e stabilendo un adeguato intervallo temporale tra i fotogrammi; la sottrazione iniziale del background inoltre elimina ulteriori fonti di errore presenti nel caso passivo, favorendo l’esclusione dal conteggio, di oggetti presenti inizialmente nell’immagine e che potrebbero essere identificati erroneamente con delle bolle per la loro forma e dimensione. Tra gli svantaggi invece si hanno, in primo luogo, gli errori derivati dalla grande sensibilità del sistema alle variazioni di luminosità ambientali, che possono essere amplificate dalle pareti cilindriche del rivelatore, dando vita ad effetti indesiderati e dunque ad un conteggio inesatto; può accadere inoltre che le evaporazioni non vengano contate a
74
causa del valore troppo alto del parametro interno alla funzione bwareaopen, causando così ulteriori imprecisioni. Delle soluzioni adottabili per ovviare a questi problemi si parlerà nel capitolo seguente insieme ai possibili sviluppi di questa metodologia di lettura dei superheated
75