ITK/Release 4/Refactor Numerical Libraries/Inventory/Fourier Transforms: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
Line 51: Line 51:
* 3
* 3
* 5
* 5
It seems that VXL ultimately calls FFT functions from FORTRAN
  CALL GPFA(A,B,TRIGS,INC,JUMP,N,LOT,ISIGN,NIPQ,INFO)
in the file
  vnl_fft.h


= Benchmark Test =
= Benchmark Test =


= Options =
= Options =

Revision as of 22:23, 25 August 2011

The Problem

ITK obtains Fast Fourier Transform (FFT) functionalities from

  • VXL - as software included as third party library
  • FFTW - as a configuration time option

To choose between these two options you use, at CMake configuration time, the following variable


Where is the Code

ITK classes that provide FFT filters can be found in the Module:

   ITK/Modules/Filtering/FFT

They include

  • itkFFTShiftImageFilter.h
  • itkFFTWForwardFFTImageFilter.h
  • itkFFTWInverseFFTImageFilter.h
  • itkForwardFFTImageFilter.h
  • itkInverseFFTImageFilter.h
  • itkVnlForwardFFTImageFilter.h
  • itkVnlInverseFFTImageFilter.h
  • vnl_fft_3d.h


VXL

The FFT code in VXL is in the directory

 ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo

and include the following files

  • vnl_fft_1d.h
  • vnl_fft_1d.txx
  • vnl_fft_2d.h
  • vnl_fft_2d.txx
  • vnl_fft_base.h
  • vnl_fft_base.txx
  • vnl_fft.cxx
  • vnl_fft.h
  • vnl_fft_prime_factors.h
  • vnl_fft_prime_factors.txx

The code acepts images whose number of pixels is a multiple of powers of the following prime numbers:

  • 2
  • 3
  • 5

It seems that VXL ultimately calls FFT functions from FORTRAN

  CALL GPFA(A,B,TRIGS,INC,JUMP,N,LOT,ISIGN,NIPQ,INFO)

in the file

  vnl_fft.h

Benchmark Test

Options