ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkFFTWForwardFFTImageFilter.h>
FFTW-based forward Fast Fourier Transform.
This filter computes the forward Fourier transform of an image. The implementation is based on the FFTW library.
This filter is multithreaded and supports input images of any size.
In order to use this class, ITK_USE_FFTWF must be set to ON in the CMake configuration to support float images, and ITK_USE_FFTWD must set to ON to support double images.
This implementation was taken from the Insight Journal paper: https://hdl.handle.net/10380/3154 or http://insight-journal.com/browse/publication/717
Definition at line 54 of file itkFFTWForwardFFTImageFilter.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | FFTWProxyType = typename fftw::Proxy< InputPixelType > |
using | InputImageType = TInputImage |
using | InputPixelType = typename InputImageType::PixelType |
using | InputSizeType = typename InputImageType::SizeType |
using | OutputImageType = TOutputImage |
using | OutputPixelType = typename OutputImageType::PixelType |
using | OutputSizeType = typename OutputImageType::SizeType |
using | Pointer = SmartPointer< Self > |
using | Self = FFTWForwardFFTImageFilter |
using | Superclass = ForwardFFTImageFilter< TInputImage, TOutputImage > |
Public Types inherited from itk::ForwardFFTImageFilter< TInputImage, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageType = TInputImage |
using | InputIndexType = typename InputImageType::IndexType |
using | InputPixelType = typename InputImageType::PixelType |
using | InputSizeType = typename InputImageType::SizeType |
using | OutputImageType = TOutputImage |
using | OutputIndexType = typename OutputImageType::IndexType |
using | OutputPixelType = typename OutputImageType::PixelType |
using | OutputSizeType = typename OutputIndexType::SizeType |
using | Pointer = SmartPointer< Self > |
using | Self = ForwardFFTImageFilter |
using | Superclass = ImageToImageFilter< InputImageType, OutputImageType > |
Public Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | OutputImagePixelType = typename Superclass::OutputImagePixelType |
using | OutputImageRegionType = typename Superclass::OutputImageRegionType |
using | Pointer = SmartPointer< Self > |
using | Self = ImageToImageFilter |
using | Superclass = ImageSource< TOutputImage > |
Public Types inherited from itk::ImageSource< TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = Superclass::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = Superclass::DataObjectPointerArraySizeType |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer< Self > |
using | Self = ImageSource |
using | Superclass = ProcessObject |
Public Types inherited from itk::ProcessObject | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = DataObject::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArray = std::vector< DataObjectPointer > |
using | DataObjectPointerArraySizeType = DataObjectPointerArray::size_type |
using | MultiThreaderType = MultiThreaderBase |
using | NameArray = std::vector< DataObjectIdentifierType > |
using | Pointer = SmartPointer< Self > |
using | Self = ProcessObject |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ForwardFFTImageFilter< 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 constexpr unsigned int | ImageDimension = InputImageType::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Attributes | |
bool | m_CanUseDestructiveAlgorithm |
int | m_PlanRigor |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ImageSource< TOutputImage > | |
bool | m_DynamicMultiThreading |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::ConstPointer = SmartPointer< const Self > |
Definition at line 71 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::FFTWProxyType = typename fftw::Proxy< InputPixelType > |
The proxy type is a wrapper for the FFTW API. Because the proxy is defined only for double and float, trying to use any other pixel type is unsupported, as is trying to use double if only the float FFTW version is configured in, or float if only double is configured.
Definition at line 78 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::InputImageType = TInputImage |
Standard class type aliases.
Definition at line 61 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::InputPixelType = typename InputImageType::PixelType |
Definition at line 62 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::InputSizeType = typename InputImageType::SizeType |
Definition at line 63 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::OutputImageType = TOutputImage |
Definition at line 64 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::OutputPixelType = typename OutputImageType::PixelType |
Definition at line 65 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::OutputSizeType = typename OutputImageType::SizeType |
Definition at line 66 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::Pointer = SmartPointer< Self > |
Definition at line 70 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::Self = FFTWForwardFFTImageFilter |
Definition at line 68 of file itkFFTWForwardFFTImageFilter.h.
using itk::FFTWForwardFFTImageFilter< TInputImage, TOutputImage >::Superclass = ForwardFFTImageFilter< TInputImage, TOutputImage > |
Definition at line 69 of file itkFFTWForwardFFTImageFilter.h.
|
protected |
|
inlineoverrideprotected |
Definition at line 119 of file itkFFTWForwardFFTImageFilter.h.
|
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::Object.
|
overrideprotectedvirtual |
A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling DynamicThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter can be threaded, it should NOT provide a GenerateData() method but should provide a DynamicThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Set/Get the behavior of wisdom plan creation. The default is provided by FFTWGlobalConfiguration::GetPlanRigor().
The parameter is one of the FFTW planner rigor flags FFTW_ESTIMATE, FFTW_MEASURE, FFTW_PATIENT, FFTW_EXHAUSTIVE provided by FFTWGlobalConfiguration.
This has no effect with ITK_USE_CUFFTW enabled.
|
overridevirtual |
Reimplemented from itk::ForwardFFTImageFilter< TInputImage, TOutputImage >.
|
static |
Method for creation through the object factory.
|
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::ImageToImageFilter< TInputImage, TOutputImage >.
|
inlinevirtual |
Set/Get the behavior of wisdom plan creation. The default is provided by FFTWGlobalConfiguration::GetPlanRigor().
The parameter is one of the FFTW planner rigor flags FFTW_ESTIMATE, FFTW_MEASURE, FFTW_PATIENT, FFTW_EXHAUSTIVE provided by FFTWGlobalConfiguration.
This has no effect with ITK_USE_CUFFTW enabled.
Definition at line 100 of file itkFFTWForwardFFTImageFilter.h.
References itk::FFTWGlobalConfiguration::GetPlanRigorName().
|
overrideprotectedvirtual |
Actually generate new output
Reimplemented from itk::ProcessObject.
|
static |
Define the image dimension.
Definition at line 88 of file itkFFTWForwardFFTImageFilter.h.
|
private |
Definition at line 128 of file itkFFTWForwardFFTImageFilter.h.
|
private |
Definition at line 130 of file itkFFTWForwardFFTImageFilter.h.