[Insight-users] about inverse fft

kavec at messi.uku.fi kavec at messi.uku.fi
Thu May 18 03:51:42 EDT 2006


Hi Harish,

ITK supports a complex pixel type, but there is no complex FFT or iFFT at the
moment, I guess. I have implemented complex FFT/iFFT myself (+ some supporting
filter(s) for easy zero padding etc.) using fftw the similar way as ITK
implements non-complex FFT. I have no problems to share it with you or ITK, but
have no time to write to Insight journal, which is a prerequisite for including
the code to the official ITK source code.

Let me know if you are interested in. Can you tell me what are you working on?

Cheers,

Martin

Quoting Haris Saybasili <haris.saybasili at gmail.com>:

> Hi,
>
> I am trying to take the inverse FFT of a complex image. However, I couldn't
> make it work. I searched the mailing list, and found the following mail (
> http://public.kitware.com/pipermail/insight-users/2005-June/013559.html).
>
> I use the latest ITK version. The mail is quite old, but is it true?
>
> Thanks in advance...
>
> haris
>
> >* Martin,
> *>*
> *>* I believe that the current FFT implementations will only work with
> *>* taking forward FFT of float and double data types (i.e. not complex,
> *>* integer, RGB, vector, or any other type of data). The current
> *>* implementation also takes advantage of the complex conjugate symmetry
> *>* when working with real data.
> *>*
> *>* Hans
> *>*
> *>*
> *>*
> *>*
> *>* On Jun 09, 2005 07:41 AM, Martin Kavec <kavec at messi.uku.fi
> <http://www.itk.org/mailman/listinfo/insight-users>> wrote:
> *>*
> *>* > Hi,
> *>* >
> *>* > following code does not compile:
> *>* >
> *>* >   typedef std::complex<float> ComplexPixelType;
> *>* >   const   unsigned int        Dimension = 3;
> *>* >
> *>* >   typedef itk::Image< ComplexPixelType, Dimension > ComplexImageType;
> *>* >
> *>* >   typedef itk::ImageFileReader< ComplexImageType >  ReaderType;
> *>* >   ReaderType::Pointer reader = ReaderType::New();
> *>* >   reader->SetFileName( "foo.hdr" );
> *>* >
> *>* >
> *>* > typedef itk::VnlFFTComplexConjugateToRealImageFilter< ComplexPixelType
> *>* >   ,
> *>* > Dimension >  FFTFilterType;
> *>* >   FFTFilterType::Pointer fftFilter = FFTFilterType::New();
> *>* >
> *>* >   fftFilter->SetInput( reader->GetOutput() );
> *>* >
> *>* > So I am in doubts, if Fourier transform in ITK is actually a complex
> *>* > FFT?
> *>* >*
>




More information about the Insight-users mailing list