Comments
Description
Transcript
Slides
ANALISI DI IMMAGINI
MEDICHE
IN AMBIENTE HPC:
ALCUNI ESEMPI
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
Dipartimento di
Matematica e Applicazioni
1
Facoltà di Scienze MMFFNN
Il contesto della ricerca
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
Progetti di ricerca nazionali /multidisciplinari
Prof. M. Bertero (PRIN 2000-2002, 2004-2006, 2006-2008)
Prof. G. Rodriguez (PRIN 2000-2002, PRIN 2008-2010)
Dipartimento di Fisiopatologia Clinica, Università di Firenze
Ospedale Careggi di Firenze
Prof. F. Sgallari (GNCS 2003-2004)
Neurofisiologia, Facoltà di Medicina e Chirurgia, Università di Genova /
Azienda Ospedaliera S. Martino
Proff. A. Pupi , A. Formiconi (PRIN 2000-2002, 2004-2006, FIRB 2002-2005)
Dipartimento di Informatica e Scienze dell’Informazione, Facoltà di Scienze
MMFFNN, Università di Genova
Facoltà di Ingegneria, Università di Bologna,
Esaote s.p.a. (Bologna)
Proff. A. Murli , G. Laccetti
Progetto SPACI (2002-2005)
Progetto SCOPE (2006-2008)
2
Il contesto della ricerca
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
Applicazioni di imaging medico
Brain
SPECT (2D, 3D)
Ecocardiografia
MRI
(2D, 3D, 4D)
(Ippocampo, 2D, 2D+1)
3
Il contesto della ricerca
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
Applicazioni di imaging medico
Brain
SPECT (2D, 3D)
Ricostruzione 3D da proiezioni 2D
Ecocardiografia
(2D, 3D, 3D+1)
Despeckling
Segmentazione
Tracking
del ventricolo sinistro
MRI
(2D, 2D+1)
Segmentazione ippocampo
4
Alcune parole chiave
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
requirements dell’applicazione
Strumenti software (semi)automatici, robusti e affidabili
Real-time
“affordable” computing-power
Fusione /integrazione di esami diagnostici
Follow-up del paziente
……
Computer Aided Diagnosis tools
5
Alcune parole chiave
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
requirements del calcolo scientifico ad alte prestazioni
Introduzione del parallelismo
Località dei dati
Granularità delle operazioni
Livelli di parallelismo
Scalabilità
Isoefficienza
Precondizionatori domain decomposition
Multirisoluzione
Multigrid
algebrico (AMG)
Solutori ricorsivi multilivello (ARMS)
Portabilità
6
La Computational Science
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
Physics problem
math model
approximation
discretization
numerics
algorithm
software
system
7
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
SPECT: Single Photon Emission Computed Tomography
Ricostruzione 3D a partire da un set di
acquisizioni 2D, che misurano la
concentrazione del radiofarmaco
z1
u1
u3
z2
z3
u
z4
z5
u2
128x120x64
problema inverso
u = K-1z
8
K: Blurred Radon Transform
SPECT: Single Photon Emission Computed Tomography
Modello fully 3D
Modello 2D+1
Semplificazione del modello 3D che assume
costanti le interazioni tra le sezioni 2D
Modello 3D + TV
Ricostruzione edge preserving
9
SPECT 2D+1: Strategia di parallelizzazione
P0
N/2
P1
N/2
P2
Il parallelismo è insito nel
modello matematico
disaccoppiato .
Ciascun processore
ricostruisce una sequenza
di problemi 2D
N/2
P3
N/2
La soluzione 3D
viene ottenuta
combinando i risultati 2D
(problemi praticamente
indipendenti)
10
SPECT fully 3D: Strategia di parallelizzazione
Il parallelismo è indotto
dal processo di acquisizione dati
La suddivisione dei processori a gruppi
migliore la scalabilità dell’algoritmo
I step: Coarse grain decomposition
P0
P1
P2
II step: fine grain decomposition
P0
P1
Pn
11
SPECT 3D: tempi
Problema 2D+1
1 ricostruzione:
1 ricostruzione:
40 minuti (1 processore)
10 minuti (4 processori)
Problema 2D+1 + TV
23 minuti (1 processore)
12 minuti (2 processori)
Problema fully 3D:
Cluster Pentium 4 - 2.8 GHz,
switch Giga Ethernet.
1 ricostruzione:
1 ora e 30 minuti (1 processore)
10 minuti (10 processori)
Problema 3D + TV
1ricostruzione:
2 ore (1 processore)
10 minuti (12 processori )
12
Speed up
2D+1
3D+TV
L. D'Amore, et al. MEDITOMO: a high performance software for SPECT imaging,
Journal of Computer Mathematics, 2009.
L. D'Amore, et al. High Performance edge-preserving regularization in 3D SPECT imaging,
Parallel Computing, 2008
13
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
ECOCARDIOGRAFIA: Problematiche
Dati perturbati
Le immagini ad ultrasuoni
sono degradate dal rumore
speckle
Mancanza di informazioni
Occlusioni, movimento della
valvola cardiaca
40 frame 440x440 Esaote s.p.a.
14
ECOCARDIOGRAFIA: despeckling + segmentazione + moto
Il modello matematico
L’analisi multiscala basata sulle PDE : formulazione level set del moto a
curvatura media
u
ε 2 |u| g( | Gσ I 0| ) 2
ε |u|
u (t ,0) 0
u
t
g: funzione edge detecting che caratterizza
il moto della superficie di segmentazione ut
u (0, x) u 0 ( x)
uu
(evoluzione della superficie di
segmentazione u t fino alla
determinazione dei contorni
significativi)
funzione iniziale di segmentazione
u0
15
Dall’ imaging alle PDE
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
località delle operazioni alla base della visione
piramidale
Le operazioni di base dell’imaging preservano la
località delle informazioni pur contribuendo a
fornire le caratteristiche della soluzione globale
• multiscala
• multirisoluzione
località delle operazioni di base delle PDE
Nelle PDE i nuclei computazionali a blocchi preservano la località dei modelli
differenziali pur tenendo conto delle caratteristiche globali della soluzione
• approccio domain decomposition
• approccio multigrid
16
Dalle PDE all’HPC
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
località delle operazioni in ambienti HPC
introduzione del parallelismo già al livello della fase
di costruzione del modello numerico (discretizazzione)
• scalabilità delle operazioni globali
•
La slice partitioning porta all’effetto superficie /volume dell’overhead
di comunicazione
•
isoefficienza dipendente dalla lunghezza della sequenza
17
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
deSpeckle
Flusso ottico
previsione
segmentazione
deSpeckle
Flusso ottico
previsione
segmentazione
18
ECOCG: tracking sequenza 2D (40 frame)
despeckle
segmentazione
segmentazi
one con
previsione
del
contorno
moto
19
ECOCG: tracking sequenza 2D
Despeckle + moto + segmentazione
Speed-up
Immagine 440 x 440
Tempi di esecuzione
Immagine 440 x 440 x 40
Intel Xeon ( processore quad core 2.3 GHz)
D’Amore L . et al. Segmentazione di sequenze di
immagini digitali mediante previsione del moto, 2008
20
ECOCG 4D : tempo e speed up
Tomtec s.p.a.
150x150x100x14
Tempo di esecuzione di un
passo di scala di tutta la sequenza
Speed-up relativo ad un
passo di scala di tutta la sequenza
Cluster di 16 Pentium 4 con Fast Ethernet switch
HP cluster di 32 Biprocessori Itanium 1.4 GHz con switch Quadrics QsNet
L. D’Amore et al., Towards a parallel component in Petsc Programming environment a case study in
Echocardiography, Parallel Computing, 2006
21
Codice
Utente
Codice
PETSc
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
struttura del codice
MAIN
Solutore (KSP, SNES)
Precondizionatori
(PC)
Inizializzazione
dell’ambiente
costruzione
/* Creo il contesto Solutore Lineare */
ierr = KSPCreate(PETSC_COMM_WORLD,&ksp);CHKERRQ(ierr);
/* definisco
dati
il Precondizionatore */
/* Inizializzazione
dell’applicazione */
ierr=KSPGetPC(ksp,&pc); CHKERRQ(ierr);
ierr=PCSetType(pc,PCBJACOBI); CHKERRQ(ierr);
#include "petscksp.h"
#undef __FUNCT__
/*__FUNCT__
Configuro
#define
"main"
il KSP */
int main(int
**args) {
ierr = argc,char
KSPSetFromOptions(ksp);CHKERRQ(ierr);
/* Inizializzazione ambiente PETSc */
PetscInitialize(&argc,&args,(char *)0,help);
ierr =/*
PetscOptionsGetInt(PETSC_NULL,"-m",&m,PETSC_NULL);CHKERRQ(ierr);
Risolvo il sistema lineare */
= KSPSolve(ksp,b,x);CHKERRQ(ierr);
ierr = ierr
PetscOptionsGetInt(PETSC_NULL,"-n",&n,PETSC_NULL);CHKERRQ(ierr);
Analisi risultati
/* visualizzazione risultati */
ierr = VecView(x,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
ierr = VecAXPY(x,neg_one,u);CHKERRQ(ierr);
ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr);
ierr = KSPGetIterationNumber(ksp,&its);CHKERRQ(ierr);
PetscPrintf(PETSC_COMM_WORLD,"Norma errore %A iter. %D\n“, norm,i
/* deallocazione della memoria PETSc */
ierr = KSPDestroy(ksp);CHKERRQ(ierr);
ierr = VecDestroy(u);CHKERRQ(ierr); ierr = VecDestroy(x);CHKERRQ(ierr
22
ierr = VecDestroy(b);CHKERRQ(ierr); ierr = MatDestroy(A);CHKERRQ(ier
ierr = PetscFinalize();CHKERRQ(ierr);
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
integrazione nel PSE MEdIGrid
23
UNIVERSITA’ DI NAPOLI
FEDERICO II
LUISA D’AMORE
integrazione nell’ infrastruttura di S.Co.Pe
medigrid
PETSc
24
Collaboratori UNINA/CNR
M. Lapegna, UNINA Federico II
V. Boccia, UNINA Federico II
L. Carracciuolo, CNR
R. Campagna, UNINA Federico II
D. Casaburi, UNINA Federico II
A. Galletti, UNINA Parthenope
L. Marcellino, UNINA Parthenope
V. Mele, UNINA Federico II
25