ITK
4.9.0
Insight Segmentation and Registration Toolkit
|
#include <itkFFTPadImageFilter.h>
Pad an image to make it suitable for an FFT transformation.
FFT filters usually requires a specific image size. The size is decomposed in several prime factors, and the filter only supports prime factors up to a maximum value. This filter automatically finds the greatest prime factor required by the available implementation and pads the input appropriately.
This code was adapted from the Insight Journal contribution:
"FFT Based Convolution" by Gaetan Lehmann http://hdl.handle.net/10380/3154
Definition at line 51 of file itkFFTPadImageFilter.h.
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::PadImageFilterBase< TInputImage, TOutputImage > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
static const unsigned int | ImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::PadImageFilterBase< TInputImage, TOutputImage > | |
static const unsigned int | ImageDimension = TInputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Member Functions | |
FFTPadImageFilter (const Self &) ITK_DELETE_FUNCTION | |
void | operator= (const Self &) ITK_DELETE_FUNCTION |
Private Attributes | |
DefaultBoundaryConditionType | m_DefaultBoundaryCondition |
SizeValueType | m_SizeGreatestPrimeFactor |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(OutputImageDimension), itkGetStaticConstMacro(InputImageDimension) > | InputToOutputRegionCopierType |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) > | OutputToInputRegionCopierType |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
typedef BoundaryConditionType* itk::FFTPadImageFilter< TInputImage, TOutputImage >::BoundaryConditionPointerType |
Definition at line 101 of file itkFFTPadImageFilter.h.
typedef ImageBoundaryCondition< TInputImage > itk::FFTPadImageFilter< TInputImage, TOutputImage >::BoundaryConditionType |
Typedef to describe the boundary condition.
Definition at line 96 of file itkFFTPadImageFilter.h.
typedef SmartPointer<const Self> itk::FFTPadImageFilter< TInputImage, TOutputImage >::ConstPointer |
Definition at line 59 of file itkFFTPadImageFilter.h.
typedef ZeroFluxNeumannBoundaryCondition< TInputImage > itk::FFTPadImageFilter< TInputImage, TOutputImage >::DefaultBoundaryConditionType |
Definition at line 102 of file itkFFTPadImageFilter.h.
typedef InputImageType::IndexType itk::FFTPadImageFilter< TInputImage, TOutputImage >::IndexType |
Definition at line 67 of file itkFFTPadImageFilter.h.
typedef InputImageType::PixelType itk::FFTPadImageFilter< TInputImage, TOutputImage >::InputImagePixelType |
Definition at line 64 of file itkFFTPadImageFilter.h.
typedef TInputImage itk::FFTPadImageFilter< TInputImage, TOutputImage >::InputImageType |
Some convenient typedefs.
Definition at line 62 of file itkFFTPadImageFilter.h.
typedef OutputImageType::PixelType itk::FFTPadImageFilter< TInputImage, TOutputImage >::OutputImagePixelType |
Definition at line 65 of file itkFFTPadImageFilter.h.
typedef TOutputImage itk::FFTPadImageFilter< TInputImage, TOutputImage >::OutputImageType |
Definition at line 63 of file itkFFTPadImageFilter.h.
typedef SmartPointer<Self> itk::FFTPadImageFilter< TInputImage, TOutputImage >::Pointer |
Definition at line 58 of file itkFFTPadImageFilter.h.
typedef InputImageType::RegionType itk::FFTPadImageFilter< TInputImage, TOutputImage >::RegionType |
Definition at line 66 of file itkFFTPadImageFilter.h.
typedef FFTPadImageFilter itk::FFTPadImageFilter< TInputImage, TOutputImage >::Self |
Standard class typedefs.
Definition at line 56 of file itkFFTPadImageFilter.h.
typedef InputImageType::SizeType itk::FFTPadImageFilter< TInputImage, TOutputImage >::SizeType |
Definition at line 68 of file itkFFTPadImageFilter.h.
typedef PadImageFilterBase<TInputImage, TOutputImage> itk::FFTPadImageFilter< TInputImage, TOutputImage >::Superclass |
Definition at line 57 of file itkFFTPadImageFilter.h.
|
protected |
|
inlineprotected |
Definition at line 106 of file itkFFTPadImageFilter.h.
|
private |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::PadImageFilterBase< TInputImage, TOutputImage >.
|
overrideprotectedvirtual |
Generate the information describing the output data. The default implementation of this method will copy information from the input to the output. A filter may override this method if its output will have different information than its input. For instance, a filter that shrinks an image will need to provide an implementation for this method that changes the spacing of the pixels. Such filters should call their superclass' implementation of this method prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.
Reimplemented from itk::ProcessObject.
|
virtual |
Runtime information support.
Reimplemented from itk::PadImageFilterBase< TInputImage, TOutputImage >.
|
virtual |
Set/Get the greatest prime factor allowed on the size of the padded image. The filter increase the size of the image to reach a size with the greatest prime factor smaller or equal to the specified value. The default value is 13, which is the greatest prime number for which the FFT are precomputed in FFTW, and thus gives very good performance. A greatest prime factor of 2 produce a size which is a power of 2, and thus is suitable for vnl base fft filters. A greatest prime factor of 1 or less - typically 0 - disable the extra padding.
|
static |
Standard New method.
|
private |
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::PadImageFilterBase< TInputImage, TOutputImage >.
|
virtual |
Set/Get the greatest prime factor allowed on the size of the padded image. The filter increase the size of the image to reach a size with the greatest prime factor smaller or equal to the specified value. The default value is 13, which is the greatest prime number for which the FFT are precomputed in FFTW, and thus gives very good performance. A greatest prime factor of 2 produce a size which is a power of 2, and thus is suitable for vnl base fft filters. A greatest prime factor of 1 or less - typically 0 - disable the extra padding.
|
static |
ImageDimension constants
Definition at line 76 of file itkFFTPadImageFilter.h.
|
static |
ImageDimension constants
Definition at line 72 of file itkFFTPadImageFilter.h.
|
private |
Definition at line 118 of file itkFFTPadImageFilter.h.
|
private |
Definition at line 116 of file itkFFTPadImageFilter.h.
|
static |
ImageDimension constants
Definition at line 74 of file itkFFTPadImageFilter.h.