In this thesis work the acceleration of an MRI application has been treated.
Accelerating this medical diagnostic technique can be very important in order to reduce times in which the immobility of the patient is required, furthermore it can be fundamental in case of fMRI or when the patient monitoring has to be real-time, in continuous way.
The points on which we focus are the sampling methods, the algorithms used for the processing and the hardware used for the processing.
Excellent results are pointed out from my studies.
The accelerated version of the Nonuniform Fast Fourier Transform algorithm of type 3 that I studied has been developed in CUDA C language.
The speedup, that is the ratio between the computation time of the CPU version and the GPU one, has been carried out and it is equal to 65. BIG IMPROVEMENT!
Furthermore, some tests have been executed in order to validate the implemented algorithm by varying the number of samples in input.
1. Università degli Studi di Napoli “Federico II”
CLASSE DELLE LAUREE MAGISTRALI IN INGEGNERIA ELETTRONICA, LM-29
TESI DI LAUREA
Accelerating NMR
via NUFFT algorithms on GPUs
Supervisors:
Candidate:
Prof. Amedeo Capozzoli
Federico Maria Ariù
matr. M61/000013
Ing. Claudio Curcio
Ing. Angelo Liseno
Anno accademico 2012/2013
2. MRI
Magnetic Resonance Imaging (MRI) is a medical diagnostic technique based on
the physical principle of nuclear magnetic resonance and allows to reconstruct
images of the human body.
MRI has become one of the most used medical diagnostic modalities and it is
used for many purposes, e.g. brain and orthopedic surveys.
Accelerating NMR via NUFFT algorithms on GPUs
3. Sampling and processing speed in MRI
In many recent applications the need for decrease sampling and processing
times arises as much as possible.
Decreasing the required times for the patient
immobility
Monitoring activities and reactions of patients (e.g.
functional MRI, fMRI)
Continuous monitoring of patient’s conditions
during surgery
Accelerating NMR via NUFFT algorithms on GPUs
4. Factors of sampling and processing speed
1- ACQUISITION METHODS
2- PROCESSING ALGORITHMS
3-PROCESSING HARDWARE
Accelerating NMR via NUFFT algorithms on GPUs
5. Thesis statement
The purpose of the thesis was to implement an MRI algorithm based on the
suitable use of parallel computing systems (Graphic Processing Unit, or GPU)
and fast processing algorithms able to handle non-standard acquired data.
Accelerating NMR via NUFFT algorithms on GPUs
6. MRI reconstruction
MRI system’s data-unknown relation is :
m(k x (t ), k y (t )) S ( x, y) ( x, y)e
j 2 [ k x ( t ) x k y ( t ) y ]
- Cartesian grid discretization
- Time discretization
m(k x (tk ), k y (tk )) xy S ( x p , yq ) ( x p , yq )e
p
dxdy
m: measured data
S: sensitivity map
ρ: spin density
t: time parameter
j 2 [ k x ( t k ) x p k y ( t k ) yq ]
q
Data are linked to spin density through sensitivity map as a Fourier transform relation.
Data are the sampled values of the spectrum on the (Kx(t), Ky(t)) trajectory described by
varying time
Trasformata di Fourier
The relation between ρ and m could be written as a Discrete Fourier Transform (DFT)
Accelerating NMR via NUFFT algorithms on GPUs
7. Fast sampling
It is possible to use several data sampling method:
Cartesian
-
slow
+
straightforward
processing
Uniform DFT
(k x (t ), k y (t )) curve
Radial
-
elaborate
processing
Spiral
+
fast
-
elaborate
processing
+
fast
Non Uniform DFT (NUDFT)
About cartesian sampling, processing can be attributed to a uniform DFT
accelerated by a standard FFT algorithm in order to obtain a time complexity
O(NlogN)
Accelerating NMR via NUFFT algorithms on GPUs
8. Fast data processing
More sophisticated algorithms allowing to use faster sampling methods are
required.
From a numerical point of view, Non Uniform Fast Fourier Transform (NUFFT)
algorithms restore time complexity of FFT algorithms.
3 algorithms NUFFT types can be characterized:
-NUFFT of type 1 – NED (Non-Equispaced Data)
-NUFFT of type 2 – NER (Non-Equispaced Results)
-NUFFT of type 3 – (Non-Equispaced Data and Results)
Accelerating NMR via NUFFT algorithms on GPUs
9. Fast data processing
MRI system’s data-unknown relation is :
m(k x (tk ), k y (tk )) xy S ( x p , yq ) ( x p , yq ) e
j 2 [ k x ( t k ) x p k y ( t k ) y q ]
p
q
m: measured data
S: sensitivity map
ρ: spin density
t: time parameter
The relation above can be rewritten as a system
of linear equations:
A m
(NER-NUFFT)
A A A m
(NED-NUFFT)
where
A (m) mi e
j 2 [ k x ( t ) x p k y ( t ) y q ]
i
In order to reverse the relation, multiplying the system by the adjoint matrix,
depending on the chosen sampling method, matrix-vector multiplications can be
more rapidly processed by using NER and NED NUFFT algorithms.
Such system of linear equations has been solved by applying the biconjugate
gradient stabilized method (BICGSTAB).
Accelerating NMR via NUFFT algorithms on GPUs
10. GPU implementation
An MRI algorithm based on a BICGSTAB routine using NER and NED NUFFT was
developed both for the GPU and CPU version. Firstly the algorithm was implemented in
Matlab language, after in C language and finally in CUDA C for the GPU version.
Matlab
C
CUDA C
The convenience of a GPU-implemented algorithm is the data parallelism, that is the
possibility to solve simultaneously arithmetic operations on various data, obtaining
better performance in terms of speed and processing.
GPU acceleration was executed on Nvidia Tesla Kepler K20c.
Accelerating NMR via NUFFT algorithms on GPUs
11. MRI numerical results
Processing times of MRI application were validated using simulated data from
a nonuniform (spyral type) sampling method.
The image reconsruction pointed out the same accuracy shown in the
literature [“A fast wavelet-based reconstruction method for MRI”, by
Guerquin-Kern, IEEE Transaction on Medical Imaging] linked to the simulator.
Sampling grid
Phantom reconstruction
Computation time[sec]
CPU 196
GPU 3
speedup
TimeCPU
65
TimeGPU
Accelerating NMR via NUFFT algorithms on GPUs
12. Non Uniform Fast Fourier Transform of
type 3 (NUFFT-3)
NUFFT-3 allows to use a multi resolution approach on the MRI application when the
examination with more details of certain areas rather than others is required.
N 1
F ( sk , t k ) f j e
isk x j
e
t k y j
j 0
NUFFT -3 2D steps – Greengard&Lee approach:
N 1
f x y (n1x, n2 y ) f j g x y (n1x x j , n2 y y j )
1. Projection of the samples on a uniform grid
x y
f x y
2. Precompensation
3. FFT
F x yx y (m1s, m2 t )
xy
2
(n1x, n2 y )
( M r X 1) ( M r y 1)
2
2
n1
M rX
2
n2
M ry
j 0
1
x ( n1 x ) 2 y ( n2 y ) 2
4 x y
e
f x y (n1x.n2 y )
f x yx y (n1x, n2 y)e im1n1 x s e im2 n2yt
2
sp
st
F x yx y (m1s, m2t ) g x y (m1s sk ,m2t tk )
2 m1 ,m2 msp
m
4. Spectrum reconstruction on irregular frequencies
5. Postcompensation
F x y ( sk , tk )
F ( sk , t k )
1
4 x y
t 2
e sk x e k y F x y ( sk , t k )
2
Accelerating NMR via NUFFT algorithms on GPUs
13. NUFFT-3 execution times:
CPU vs GPU
Tests on the execution times of the NUFFT-3, for the GPU and CPU version,
were carried out by varying the number of samples.
speedupNUFFT 32 D
TimeCPU
20
TimeGPU
Accelerating NMR via NUFFT algorithms on GPUs
14. Conclusions
An MRI reconstruction algorithm from simulated data sampled on a spiral grid
was implemented.
The convenience of using NER and NED NUFFT algorithms was demonstrated.
MRI processing was entirely developed on GPU.
A two-dimensional NUFFT-3 for the processing of nonuniform samples for multi
resolution imaging applications was implemented.
The performance of the NUFFT-3 implemented algorithm was verified.
Accelerating NMR via NUFFT algorithms on GPUs
15. Thank you for your time
Accelerating NMR via NUFFT algorithms on GPUs