VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkImageRFFT Class Reference

Reverse Fast Fourier Transform. More...

#include <vtkImageRFFT.h>

Inheritance diagram for vtkImageRFFT:
[legend]
Collaboration diagram for vtkImageRFFT:
[legend]

Public Types

typedef vtkImageFourierFilter Superclass
 
- Public Types inherited from vtkImageFourierFilter
typedef vtkImageDecomposeFilter Superclass
 
- Public Types inherited from vtkImageDecomposeFilter
typedef vtkImageIterateFilter Superclass
 
- Public Types inherited from vtkImageIterateFilter
typedef vtkThreadedImageAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkImageRFFTNewInstance () const
 
int SplitExtent (int splitExt[6], int startExt[6], int num, int total)
 
- Public Member Functions inherited from vtkImageFourierFilter
vtkImageFourierFilterNewInstance () const
 
void ExecuteFft (vtkImageComplex *in, vtkImageComplex *out, int N)
 
void ExecuteRfft (vtkImageComplex *in, vtkImageComplex *out, int N)
 
- Public Member Functions inherited from vtkImageDecomposeFilter
void SetDimensionality (int dim)
 
virtual int GetDimensionality ()
 
void PermuteIncrements (vtkIdType *increments, vtkIdType &inc0, vtkIdType &inc1, vtkIdType &inc2)
 
void PermuteExtent (int *extent, int &min0, int &max0, int &min1, int &max1, int &min2, int &max2)
 
vtkImageDecomposeFilterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
- Public Member Functions inherited from vtkImageIterateFilter
vtkImageIterateFilterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int GetIteration ()
 
virtual int GetNumberOfIterations ()
 

Static Public Member Functions

static vtkImageRFFTNew ()
 
static int IsTypeOf (const char *type)
 
static vtkImageRFFTSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkImageFourierFilter
static int IsTypeOf (const char *type)
 
static vtkImageFourierFilterSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkImageDecomposeFilter
static int IsTypeOf (const char *type)
 
static vtkImageDecomposeFilterSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkImageIterateFilter
static int IsTypeOf (const char *type)
 
static vtkImageIterateFilterSafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkImageRFFT ()
 
 ~vtkImageRFFT ()
 
virtual int IterativeRequestInformation (vtkInformation *in, vtkInformation *out)
 
virtual int IterativeRequestUpdateExtent (vtkInformation *in, vtkInformation *out)
 
virtual void ThreadedRequestData (vtkInformation *vtkNotUsed(request), vtkInformationVector **inputVector, vtkInformationVector *vtkNotUsed(outputVector), vtkImageData ***inDataVec, vtkImageData **outDataVec, int outExt[6], int threadId)
 
- Protected Member Functions inherited from vtkImageFourierFilter
 vtkImageFourierFilter ()
 
 ~vtkImageFourierFilter ()
 
void ExecuteFftStep2 (vtkImageComplex *p_in, vtkImageComplex *p_out, int N, int bsize, int fb)
 
void ExecuteFftStepN (vtkImageComplex *p_in, vtkImageComplex *p_out, int N, int bsize, int n, int fb)
 
void ExecuteFftForwardBackward (vtkImageComplex *in, vtkImageComplex *out, int N, int fb)
 
- Protected Member Functions inherited from vtkImageDecomposeFilter
 vtkImageDecomposeFilter ()
 
 ~vtkImageDecomposeFilter ()
 
- Protected Member Functions inherited from vtkImageIterateFilter
 vtkImageIterateFilter ()
 
 ~vtkImageIterateFilter ()
 
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
virtual int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int IterativeRequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
virtual void SetNumberOfIterations (int num)
 

Additional Inherited Members

- Protected Attributes inherited from vtkImageDecomposeFilter
int Dimensionality
 
- Protected Attributes inherited from vtkImageIterateFilter
int NumberOfIterations
 
int Iteration
 
vtkAlgorithm ** IterationData
 
vtkInformationVector * InputVector
 
vtkInformationVector * OutputVector
 

Detailed Description

Reverse Fast Fourier Transform.

vtkImageRFFT implements the reverse fast Fourier transform. The input can have real or complex data in any components and data types, but the output is always complex doubles with real values in component0, and imaginary values in component1. The filter is fastest for images that have power of two sizes. The filter uses a butterfly fitlers for each prime factor of the dimension. This makes images with prime number dimensions (i.e. 17x17) much slower to compute. Multi dimensional (i.e volumes) FFT's are decomposed so that each axis executes in series. In most cases the RFFT will produce an image whose imaginary values are all zero's. In this case vtkImageExtractComponents can be used to remove this imaginary components leaving only the real image.

See Also
vtkImageExtractComponenents
Tests:
vtkImageRFFT (Tests)

Definition at line 44 of file vtkImageRFFT.h.

Member Typedef Documentation

Definition at line 48 of file vtkImageRFFT.h.

Constructor & Destructor Documentation

vtkImageRFFT::vtkImageRFFT ( )
inlineprotected

Definition at line 63 of file vtkImageRFFT.h.

vtkImageRFFT::~vtkImageRFFT ( )
inlineprotected

Definition at line 64 of file vtkImageRFFT.h.

Member Function Documentation

static vtkImageRFFT* vtkImageRFFT::New ( )
static
static int vtkImageRFFT::IsTypeOf ( const char *  type)
static
virtual int vtkImageRFFT::IsA ( const char *  type)
virtual

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

static vtkImageRFFT* vtkImageRFFT::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkImageRFFT::NewInstanceInternal ( ) const
protectedvirtual

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

vtkImageRFFT* vtkImageRFFT::NewInstance ( ) const
int vtkImageRFFT::SplitExtent ( int  splitExt[6],
int  startExt[6],
int  num,
int  total 
)

For streaming and threads. Splits output update extent into num pieces. This method needs to be called num times. Results must not overlap for consistent starting extent. Subclass can override this method. This method returns the number of pieces resulting from a successful split. This can be from 1 to "total". If 1 is returned, the extent cannot be split.

virtual int vtkImageRFFT::IterativeRequestInformation ( vtkInformation *  in,
vtkInformation *  out 
)
protectedvirtual

Reimplemented from vtkImageIterateFilter.

virtual int vtkImageRFFT::IterativeRequestUpdateExtent ( vtkInformation *  in,
vtkInformation *  out 
)
protectedvirtual

Reimplemented from vtkImageIterateFilter.

virtual void vtkImageRFFT::ThreadedRequestData ( vtkInformation *  vtkNotUsedrequest,
vtkInformationVector **  inputVector,
vtkInformationVector *  vtkNotUsedoutputVector,
vtkImageData ***  inDataVec,
vtkImageData **  outDataVec,
int  outExt[6],
int  threadId 
)
protectedvirtual

The documentation for this class was generated from the following file: