[Insight-users] Re: How to perform FFT on a huge dataset?
Luis Ibanez
luis.ibanez at kitware.com
Wed Aug 2 08:21:15 EDT 2006
Hi Guilian,
The bad news is that the streaming architecture of ITK is not
well suited for managing FFT of large images.
The good news is that FFT is separable, and it is actually computed
one line at a time in every direction.
You can perform the FFT of your image by
1) Invoking 2D FFT of every slice and saving them.
2) Then reading the first pixel of every slice in order
to form a 1D array, compute FFT of the array and
save that as the first pixel of every output slice
for the total 3D FFT.
You may want to start by getting familiar with the internals
of the FFT filters in
Insight/Code/Algorithms/
You probably want to start with the file
itkFFTWRealToComplexConjugateImageFilter.txx
Note that this class uses the FFTW libraries that you
can download from
http://www.fftw.org/
If you put this code together, that will make a nice paper
for the Insight Journal:
http://www.insight-journal.org
Regards,
Luis
-------------------
XU,GUILIAN wrote:
> Hello Luis,
>
> I have 1024*1024*1024 image/matrix, I would like to perform FFT on it.
> No computer can handle this big dataset due to memory limitation. Is
> there any idea to work around this issue?
>
> Thanks in advance,
>
> GUILIAN
>
>
>
More information about the Insight-users
mailing list