Sei sulla pagina 1di 52

Ecografia 3D - 4D

Tesina d'esame di
Carlo Guarnieri Cal Carducci
Matricola 550590
in
Sistemi Elettronici per la Formazione
dell'Immagine
Prof. Beniamino Castagnolo

L'Ecografia
z
L'ecografia un sistema di indagine diagnostica medica che
non utilizza radiazioni ionizzanti, ma ultrasuoni e si basa sul
principio dell'emissione di eco e della trasmissione delle onde
ultrasonore.
z
Gli ultrasuoni utilizzati sono compresi tra 2 e 20 MHz. La
frequenza scelta tenendo in considerazione che frequenze
maggiori hanno maggiore potere risolutivo dell'immagine, ma
penetrano meno in profondit nel soggetto. Queste onde sono
generate da un cristallo piezoceramico inserito in una sonda.

L'Ecografia
z
Quando l'onda raggiunge un punto di variazione dell'impedenza
acustica, pu essere riflessa, rifratta, diffusa, attenuata. La
percentuale riflessa porta informazioni sulla differenza di impedenza
tra i due tessuti ed pari a:
z
Vista la grande differenza di impedenza tra un osso ed un tessuto,
con l'ecografia non possibile vedere dietro di esso. Anche zone di
aria o gas (Z piccolo) fanno "ombra", per via di una riflessione totale.
z
Il tempo impiegato dall'onda per percorrere il percorso di andata,
riflessione e ritorno viene fornito al computer, che calcola la
profondit da cui giunta l'eco; questo punto si riferisce ad una
superficie di suddivisione tra tessuti.
R=
( Z
1
Z
2
)
2
( Z
1
+Z
2
)
2
T=
4 Z
1
Z
2
( Z
1
+Z
2
)
2

Riflessione

Rifrazione

Ultrasuoni
z
Una sorgente di vibrazione in un mezzo meccanico, causa la
propagazione di un'onda.
z
Gli ultrasuoni sono onde meccaniche che non possono quindi
esistere nel vuoto.
z
Gli ultrasuoni trasferiscono energia nel mezzo, non massa.
z
Onde Longitudinali: il movimento delle particelle nella direzione
di propagazione
compressione: la propagazione degli ultrasuoni causa una
variazione nel tempo della densit e della pressione.
rarefazione: una volta superata la zona di bassa pressione,
la densit diminuir
z
Onde Trasversali: il movimento delle particelle nella direzione
trasversale a quella di propagazione dell'onda.

Ultrasuoni
z
I parametri che caratterizzano gli ultrasuoni sono:
z
Frequenza
z
Ampiezza
z
Lunghezza d'onda
z
Pressione
z
Velocit di propagazione
z
Potenza
z
Intensit
z
Equazione di continuit
z
Equazione d'onda
c =
Z
p

m
s
|
\ =
c
f
m|
f Hz|
I =
1
2
p
2
Z

kg
s
3
|
p =
p
'
t

2
U =
1
c
2

2
U
t
2
U(t ) =U
0
e
t( ut k z )
adim|
U Pa|

Ultrasuoni
z
I parametri che caratterizzano il mezzo sono:
z
Impedenza
z
Comprimibilit
z
Velocit di propagazione nel mezzo
Z = pc

kg
m
2
s
|
rayl |
G =
AV
V
1
A p

ms
2
kg
|
C =
1
.
pG

m
s
|

L'Ecografia
Sostanzialmente un ecografo costituito da tre parti:
z
una sonda che trasmette e riceve il segnale
z
un sistema elettronico che:
o pilota il trasduttore
o genera l'impulso di trasmissione
o riceve l'eco di ritorno alla sonda
o tratta il segnale ricevuto
z
un sistema di visualizzazione

Sistemi di scansione
I sistemi di scansione sono caratterizzati dal formato dell'immagine
che a sua volta deriva dal trasduttore che si usa.
z
Scansione lineare
Formato dell'immagine rettangolare
Trasduttori lineari
Gruppi di elementi (da 5 o 6) facenti parte di una cortina di cristalli (da
64 a 200 o pi) posti in maniera contigua, vengono eccitati in
successione in maniera da formare una scansione lineare.

Sistemi di scansione
z
Scansione settoriale
Formato dell'immagine settoriale
Trasduttori settoriali meccanici a
singolo cristallo, anulari, array.
z
Nel caso di un settoriale meccanico (singolo cristallo o anulare)
la scansione viene data tramite un sistema di ingranaggi che fa
oscillare il cristallo di un settore (normalmente 90). Durante
l'oscillazione il cristallo viene eccitato con una certa tempistica,
in maniera da inviare gli impulsi ultrasonori, ricevere gli echi di
ritorno e quindi permettere di creare l'immagine ultrasonora
all'interno del campo di vista.

Sistemi di scansione

Sistemi di scansione

Sistemi di scansione
z
Scansione convex
Formato dell'immagine a tronco di cono
Trasduttori convex
z
Nel caso di un trasduttore convex i cristalli vengono eccitati
esattamente come nel trasduttore lineare, ma il campo di vista
sar a tronco di cono, dato che i cristalli sono posizionati su una
superficie curva.

Sistemi di scansione

L'Ecografia
z
La generazione dell'immagine avviene attraverso l'elaborazione
di una serie di dati:
z
Il tempo di ricezione dell'eco
z
Intensit dell'eco
z
La densit del mezzo e la posizione
z
Si possono perci distinguere in base
all'elaborazione, diversi tipi di ecografia:
z
1D
z
2D
z
Doppler
z
3D
z
4D

Perch 3D / 4D?
z
Accuratezza e Ripetibilit
z
Meno dipendente dall'abilit del tecnico di riuscire a
visualizzare in mente una struttura 3D di immagini 2D
z
pi facile tracciare la crescita di tumori o lesioni
z
notevolmente utile vedere strutture in movimento a fini
z
chirurgici
z
diagnostici

Ecografia 3D
z
L'idea di prendere immagini 2D e posizionarle in modo da
produrre una visualizzazione 3D
z
composta dai seguenti processi:
1) Acquisizione
2) Rendering / Ricostruzione
3) Navigazione

1. Acquisizione
z
3 Tipologie:
a)Scansione meccanica (a - b)
b)Array di trasduttori bi-dimensionale (c)
c)Acquisizione a mano libera (d)

1a. Scansione Meccanica
z
Il trasduttore viene mosso lungo un determinato percorso
attraverso un motorino
z
Ad ogni movimento, l'array di trasduttori acquisisce una
scansione 2D in modalit B-scan
z
Pi veloce il movimento, meno fedele l'immagine
z
L'immagine pu essere distorta
z
Principalmente adottato in applicazioni cliniche
dove non ci sono movimenti repentini

1b. Array di trasduttori
z
Tipicamente cosituito da un array di 128x128 elementi
z
Pi sono gli elementi, maggiore la risoluzione
z
Negli anni '90 erano appena 20x20
z
Difficolt di allineamento dei sensori
z
Elevato numero in uno spazio ridotto
z
Elevato numero di connessioni
z
Velocit
z
Uso dei trasduttori in parallelo
z
16384 impulsi sonori che viaggiano in 10cm alla velocit di
1540 m/s

1c. Acquisizione a mano libera
z
Trasduttore 1D con sensore di posizione esterno
z
Il sensore di posizione esterno ha 6 gradi di libert (quindi
necessita di calibrazione)
z
Viene eseguita una misura del percorso e dell'immagine
z
Interpolazione dei dati
z
Necessit per i tecnici di effettuare una scansione a mano
z
Lavoro pi intensivo (movimento impreciso e lento)
z
Pi sorgenti di errore: non viene acquisito sempre lo stesso
tracciato
z
2 tipi di sensori di posizione
z
Ottici: videocamere di calibrazione
z
Magnetici: campo magnetico

1c. Acquisizione a mano libera

1c. Acquisizione a mano libera
z
Questo tipo di acquisizione impone l'utilizzo di un sensore
esterno che sia di riferimento nei movimenti
Necessit di calibrazione ad ogni sessione
z
Presenta un'elevata complessit
z
Irregolarit nella distanza tra i frame
z
Intersezione di frame
z
Movimenti significativi in-plane
z
Movimenti della sonda non-monotonici out-of-plane
z
Ogni immagine acquisita viene etichettata con le coordinate
relative al sensore esterno
z
necessario fare attenzione a non uscire fuori dall'area di
rilevamento del sensore
z
Queste difficolt sono il principale limite alla diffusione di questa
tecnologia

1c. Acquisizione a mano libera
z
Per superare queste limitazioni, negli ultimi anni sono stati
sviluppati dei metodi di ricostruzione che non necessitino del
sensore esterno.
z
L'idea di estrarre le informazioni necessarie dalle immagini
stesse
z
Gli offset in-plane tra frame adiacenti possono essere
ricavati con tecniche standard o di motion tracking
z
Gli offset out-of-plane possono essere stimati tramite
z
Direzione di elevazione
z
Decorrelazione speckle
estraendo informazioni sulla separazione assoluta tra due
set di dati.

1c. Acquisizione a mano libera
z
Poich il fascio ultrasonico non perfettamente focalizzato, la
quantit di segnale scatterata indietro in ogni punto dipende
dagli scatter in un certo volume (resolution cell) intorno al punto
z
Se due punti relativi a B-scan adiacenti presentano overlapping
delle relative resolution cell, i due punti saranno correlati
z
La correlazione dipender dalla quantit di overlap e perci
dalla separazione tra i due punti
z
Perci calcolando la correlazione dei due set di dati sar
possibile inferirne la loro separazione altimetrica utilizzando una
curva di decorrellazione precalibrata
z
Avendo almeno 3 coppie di punti non allineati, sar possibile
ricavare la differenza di altezza, l'inclinazione e rotazione della
coppia di frame

1c. Acquisizione a mano libera
z
Decorrelazione speckle: considerando due set di dati relativi a due
frame adiacenti A e B. La correlazione tra i dati varia con l'overlap
delle resolution cell e perci con la loro separazione. La curva
permette di ricavare la distanza d1 noto il valore della correlazione 1

1c. Acquisizione a mano libera
Difficolt principali:
z
I tessuti umani contengono zone si scattering coerente che
si decorrelano ad una velocit inferiore rispetto a zone a
prevalenza di speckle
z
Ci sono altre cause di decorrelazione (rumore, movimenti in-
plane, rotazione del trasduttore, compressione del tessuto,
movimenti fisiologici) che possono essere interpretate come
variazioni di altezza
z
La decorrelazione speckle fornisce un valore assoluto di
separazione tra le patch di dati
Ambiguit direzionale

2. Rendering / Ricostruzione
z
Viene effettuato da software dedicato
z
Rendering
z
Rende l'immagine pi limpida e dettagliata
z
Rendering Volume
z
Corregge l'immagine 3D per essere visualizzata
su uno schermo 2D
z
Ray casting
z
Composizione dei piani
z
Rendering Superfici
z
Smoothing e Texturing
z
Illuminazione
z
Trasparenza

2. Rendering / Ricostruzione

2. Rendering / Ricostruzione
Ricostruzione robusta 3D a mano libera
1. Ogni frame viene suddiviso in una griglia 12x8 di frammenti
contenenti circa 5000 campioni, sufficienti per valutarne le statistiche
del secondo ordine
z
Acquisizione tramite trasduttore lineare a 5-10 Mhz
z
Digitalizzazione a 14 bit dei segnali di eco RF e compensazione
tempo-guadagno
z
Funzionamento in tempo reale con frequenza di acquisizione di
30 fps
z
Campionamento a 66,67 Mhz sincrono con il clock interno della
macchina ad ultrasuoni per diminuire il jitter di fase tra linee
adiacenti
z
Filtraggio dei vettori RF a 5-10 Mhz, compressione logaritmica e
rilevazione di inviluppo tramite trasformata di Hilbert

2. Rendering / Ricostruzione
2. Per ogni frame A, viene trovato un set di frame Bi 'nel raggio' di A,
intendendo che i frame trovati devono soddisfare alcune richieste:
z
La maggioranza dei frammenti su i frame Bi deve avere un offset
massimo comparabile con la lunghezza del raggio di ricerca di
allineamento nel piano.
z
Devono essere sufficientemente vicini dal punto di vista
dell'elevazione da poter essere correlati con i frammenti di A.
Quelli troppo distanti saranno totalmente incorrelati e di
conseguenza non potranno fornire alcuna stima sull'elevazione o
separazione.
3. Per ogni coppia di frame individuata, viene stimata la separazione
spaziale tra i frammenti corrispondenti in termini di 3 gradi di libert,
assiale, laterale e di traslazione lungo z. Quest'operazione viene
eseguita nel modo pi preciso possibile, ricorrendo a tecniche per
compensare lo scattering coerente e metodi per calcolare lo shift
laterale con precisione al di sotto del campione stesso.

2. Rendering / Ricostruzione
4. Utilizzando i dati sulla distanza tra frammenti ricavata al passaggio
precedente, vengono creati diversi gruppi di frame grossolanamente
spaziati. Ogni gruppo sar formato da frame che coprano l'intero set
di dati, ma ognuno sar ricostruito in maniera indipendente. Questo
permette di aumentare la robustezza dell'algoritmo in vista della
ricostruzione finale, senza escludere alcun set di dati.
5. Per ogni coppia di frame di cui stata stimata la distanza ne viene
verificata l'eventuale intersezione. In caso affermativo, vengono
corretti i pesi relativi alla distanza di separazione.
6. Ogni set viene ricostruito considerando 3 frame alla volta, invece che
2 come nelle tecniche tradizionali, in modo da poter rivelare ogni
movimento non-monotonico della sonda.

2. Rendering / Ricostruzione
z
Selezione dei frame
Ci sono due requisiti da considerare nella selezione dei set di frame
per la ricostruzione indipendente:
1. Si vorrebbe che i frame consecutivi in ogni set fossero quanto pi
possibile ampiamente spaziati pur rimanendo nei limiti del 'raggio'
In questi termini possibile operare sulla parte ripida della curva
di correlazione poich piccole fluttuazioni nel valore di non
producono grandi errori nella stima dell'elevazione d.
2. Si vorrebbe che i set fossero mutuamente indipendenti, senza
alcun frame condiviso tra pi di un set.
Se si verifica un conflitto tra queste due specifiche, sar necessario
accettare una spaziatura quasi-ottimale al fine di preservare
l'indipendenza dei set di frame.

2. Rendering / Ricostruzione
z
Abbiamo una sequenza numerata di frame spaziati in maniera
irregolare da cui vogliamo estrarre una sequenza grossolanamente
ordinata. A partire dal frame f e rimanendo nel 'raggio', ci si pu
muovere nella sequenza di massimo rmax step (valore ricavato nella
precedente stima) a cui corrisponde il frame fm.

2. Rendering / Ricostruzione
z
Viene introdotto un valore rhalf corrispondente ad un valore di step
minore di rmax per tracciare movimenti non-monotonici della sonda. A
questo valore rhalf corrisponde di conseguenza un frame fh che a
seconda dei casi, potr venire a trovarsi in una delle seguenti
situazioni:

2. Rendering / Ricostruzione
z
Utilizzando questi due valori possibile costruire una sequenza
ordinata un frame alla volta. La parte centrale dell'algoritmo consiste
in una ricerca ciclica del frame successivo, basandosi sulle
informazioni derivanti dai due precedenti b1 e b2.
z
Il nuovo frame si dovr trovare nel range b1 e b2 e dovr lasciare
spazio sufficiente per un altro frame.
f
n
= min

b
2
+r
max
(b
2
)
b
1
+r
half
(b
1
)


2. Rendering / Ricostruzione
Algoritmo in meta-codice per ordinamento di un singolo set

2. Rendering / Ricostruzione
z
Quando l'operazione di ordinamento avviene su pi set di dati
contemporaneamente, uno stesso frame potrebbe essere scelto in
pi di un set. necessario perci modificare il criterio e renderlo
meno stringente in maniera tale da rendere pi flessibile la scelta. Se
il frame stato gi scelto, se ne cercher uno vicino.

2. Rendering / Ricostruzione
Algoritmo in meta-codice per ordinamento sequenze multiple

2. Rendering / Ricostruzione
z
Intersezione tra frames
Poich la curva di decorrelazione fornisce quantit in valore
assoluto, l'obiettivo riuscire a ricavare il segno dai dati stessi.

2. Rendering / Ricostruzione
z
Se consideriamo il piano formato dalla matrice 12x8 di offset,
possiamo di conseguenza considerare ogni possibile retta
intersecante i vari punti e sceglierne quella che minimizzi i minimi
quadrati derivanti dall'interpolazione del piano.
Nell'immagine precedente, la scelta a residui minimi sarebbe stata
quella di cambiare il segno per y > 3.
z
Come citato in precedenza sono presenti numerose sorgenti di errore
che fanno si che gli offset lungo z non vadano mai a zero. Queste
tendono a manifestarsi nell'intorno dell'intersezione poich in questi
punti la decorrelazione non dovuta ad un moto di traslazione, bens

2. Rendering / Ricostruzione
ad una rotazione di un frame rispetto all'altro. Poich la curva di
decorrelazione quasi piatta nell'intorno dello zero, anche una
piccola sottostima della correlazione pu dar luogo ad una forte
sovrastima della separazione altimetrica.
z
Si presenta perci una considerevole incertezza nei valori di z, ma
allo stesso momento una grande abbandonza di dati ridondanti.
z
Viene quindi utilizzato un robusto algoritmo di regressione che miri ad
ignorare valori al di fuori dell'intervallo di confidenza.

2. Rendering / Ricostruzione
z
Ricostruzione non-monotonica
Dati tre frame A, B e C, gli offset relativi alla coppia AB e BC
possono essere trovati indipendentemente, ma le loro direzioni
relative sono sconosciute. Il frame C ha due possibili posizioni
rispetto ad A.

2. Rendering / Ricostruzione
z
possibile eliminare l'ambiguit utilizzando l'informazione sulla
distanza tra A e C e risolvendo un sistema ai minimi quadrati per i tre
frame insieme.
z
Per una singola coppia di frame il problema pu essere messo nella
forma d = Xw , dove d il vettore con le stime delle distanze tra
frammenti, X una matrice di coefficienti e w il vettore contenente i
parametri di offset tra i frame:
z
L'ulteriore informazione sulla non coincidenza di A e C, permette di
semplificare il sistema rispetto alle possibili direzioni AB e BC.
(
d
AB
d
AC
d
BC
)
=
(
X 0
X X
0 X
)
(
w
AB
w
BC
)

2. Rendering / Ricostruzione
z
L'algoritmo pu essere riassunto in 3 fasi:
a) I set multipli di frame sono ricostruiti indipendentemente.
b) Vengono confrontati per trovare un consenso sulla corretta
ricostruzione dando vita ad un'unica sequenza ordinata.
c) Infine i frame rimanenti vengono aggiunti alla struttura.

3. Navigazione
z
Effettuata tramite PC
z
Manipolazione delle immagini
z
Superfici
z
Usata per organi, arterie
z
Sezioni
z
Vista multi-planare
z
Risultato diverso dall'acquisizione B-scan
z
Voxel
z
Individuazione strutture, misure di volume
z
Ray casting

3. Navigazione
Ecografia Real-time 4D
z
L'imaging ultrasonico una tecnica medica usata in ambito ostetrico,
che fornisce rapidamente all'operatore un'immagine animata 3D del
feto. Questa visualizzazione interattiva porter ad una migliore
diagnosi e di conseguenza ad un incremento del benessere della
societ.
z
Il problema fondamentale risiede nella necessit di processare e
renderizzare, in ogni secondo, massicce quantit di dati.
z
Fino a poco tempo fa non c'era alcuna possibilit di sviluppare
macchine ad ultrasuoni del genere a causa della mancanza o del
costo di hardware adeguato e di piattaforme software che dessero ai
progettisti la capacit di sviluppare una ricostruzione volumetrica
interattiva.

3. Navigazione
Tecnologia
z
Dopo l'avvento in quest'era delle attuali GPU multi-core, la capacit
delle schede grafiche divenuta sempre pi flessibile, da permettere
una visualizzazione interattiva. Offrono un livello di programmabilit e
performance che non solo rende possibile eseguire task tradizionali
su PC economici, ma permettono l'uso di algoritmi di rendering
estramamente complessi che prima non potevano essere utilizzati in
tempo reale.
z
Queste nuove GPU sono davvero brillanti ed efficienti nella
manipolazione e visualizzazione di enormi dataset grafici, cos come
la loro architettura fortemente parallela li rende pi utili per una serie
di algoritmi complessi piuttosto che per applicazioni generiche.
z
La pipeline grafica di queste GPU oggi programmabile ed questa
la vera forza che ha portato all'innovazione nella visualizzazione
medica interattiva.

3. Navigazione
z
Diventa perci possibile soddisfare il 'sogno' degli operatori:
z
Visualizzazione interattiva ad alta qualit.
z
Combinazione di performance real-time con imaging ad alta
risoluzione.

3. Navigazione
z
Diventa possibile sviluppare un sistema di ecografia 4D con hardware
economico e software flessibile da poter girare su macchine diverse.
z
Una possibile soluzione hardware prevede l'uso di una scheda nVidia
GeForce 9800 GS (del valore di poche centinaia di euro) con le
seguenti caratteristiche:

64 Processori di flusso

Clock a 530 Mhz

Interfaccia di memoria a 256 bit

Larghezza di banda della memoria a 51.2 GB/s

Velocit di riempimento della texture a 17 miliardi di tasselli al


secondo
z
Mentre dal punto di vista software, gli shaders vengono programmati
nella pipeline grafica della GPU. Cg (C per grafica) viene utilizzato
come linguaggio di shading per vertici e frammenti. OpenGL come API
grafica 3D, modello di pipeline grafica ed interfaccia tra CPU e GPU.

3. Navigazione