PCL
pcl::InPlaceFourierTransform Class Reference

In-place discrete Fourier transform of two-dimensional complex images. More...

#include <FourierTransform.h>

+ Inheritance diagram for pcl::InPlaceFourierTransform:

Public Types

using transform_type = FFTDirection::value_type
 

Public Member Functions

 InPlaceFourierTransform (const InPlaceFourierTransform &)=default
 
 InPlaceFourierTransform (transform_type type=FFTDirection::Forward)
 
 ~InPlaceFourierTransform () override
 
transform_type Type () const
 
- Public Member Functions inherited from pcl::ImageTransformation
 ImageTransformation ()=default
 
 ImageTransformation (const ImageTransformation &)=default
 
virtual ~ImageTransformation ()
 
template<class P >
GenericImage< P > & operator>> (GenericImage< P > &image) const
 
ImageVariantoperator>> (ImageVariant &image) const
 
- Public Member Functions inherited from pcl::ParallelProcess
 ParallelProcess ()=default
 
 ParallelProcess (const ParallelProcess &)=default
 
virtual ~ParallelProcess ()
 
void DisableParallelProcessing (bool disable=true) noexcept
 
void EnableParallelProcessing (bool enable=true, int maxProcessors=0) noexcept
 
bool IsParallelProcessingEnabled () const noexcept
 
int MaxProcessors () const noexcept
 
ParallelProcessoperator= (const ParallelProcess &)=default
 
void SetMaxProcessors (int maxProcessors) noexcept
 
void Swap (ParallelProcess &process) noexcept
 

Protected Member Functions

void Apply (pcl::ComplexImage &) const override
 
void Apply (pcl::DComplexImage &) const override
 
- Protected Member Functions inherited from pcl::ImageTransformation
virtual void Apply (pcl::DImage &image) const
 
virtual void Apply (pcl::Image &image) const
 
virtual void Apply (pcl::UInt16Image &image) const
 
virtual void Apply (pcl::UInt32Image &image) const
 
virtual void Apply (pcl::UInt8Image &image) const
 

Detailed Description

InPlaceFourierTransform performs in-place, discrete Fourier transforms of complex-sampled two-dimensional images using fast Fourier transform algorithms.

InPlaceFourierTransform can only be applied to 32-bit and 64-bit floating point complex images: either ComplexImage or DComplexImage.

Note
Important - For performance reasons, InPlaceFourierTransform can change the dimensions of a transformed image (width and/or height in pixels) to their nearest optimized FFT lengths. This may involve reallocation of pixel data. If the transformed image already has optimized dimensions, no size change or reallocation occurs. See the GenericFFT::GenericFFT( int ) constructor for details on optimized FFT lengths.
See also
FourierTransform

Definition at line 110 of file FourierTransform.h.

Member Typedef Documentation

◆ transform_type

using pcl::InPlaceFourierTransform::transform_type = FFTDirection::value_type

Represents a FFT direction and type.

Definition at line 117 of file FourierTransform.h.

Constructor & Destructor Documentation

◆ InPlaceFourierTransform() [1/2]

pcl::InPlaceFourierTransform::InPlaceFourierTransform ( transform_type  type = FFTDirection::Forward)
inline

Constructs an InPlaceFourierTransform instance.

Parameters
typeTransform direction and type. This parameter can have one of the following values:

FFTDirection::Forward Fourier transform. This is the default value.
FFTDirection::Backward Inverse Fourier transform

Definition at line 132 of file FourierTransform.h.

◆ InPlaceFourierTransform() [2/2]

pcl::InPlaceFourierTransform::InPlaceFourierTransform ( const InPlaceFourierTransform )
default

Copy constructor.

◆ ~InPlaceFourierTransform()

pcl::InPlaceFourierTransform::~InPlaceFourierTransform ( )
inlineoverride

Destroys an InPlaceFourierTransform object.

Definition at line 145 of file FourierTransform.h.

Member Function Documentation

◆ Apply() [1/2]

void pcl::InPlaceFourierTransform::Apply ( pcl::ComplexImage image) const
overrideprotectedvirtual

Applies this transformation to a 32-bit complex image.

Reimplemented from pcl::ImageTransformation.

◆ Apply() [2/2]

void pcl::InPlaceFourierTransform::Apply ( pcl::DComplexImage image) const
overrideprotectedvirtual

Applies this transformation to a 64-bit complex image.

Reimplemented from pcl::ImageTransformation.

◆ Type()

transform_type pcl::InPlaceFourierTransform::Type ( ) const
inline

Returns the type and direction of this Fourier transform. See the FFTDirection namespace for possible values.

Definition at line 153 of file FourierTransform.h.


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