eVision C++ API 26.10.0-beta.2.dev
Loading...
Searching...
No Matches
eVision::EFourierTransformer Class Reference

Utility class to manage direct and inverse Fast Fourier Transforms. More...

#include <eVision/EasyImage/EFourierTransformer.h>

Collaboration diagram for eVision::EFourierTransformer:

Public Member Functions

 EFourierTransformer ()
 Constructs an EFourierTransformer object initialized to its default values.
 EFourierTransformer (const eVision::EFourierTransformer &other)
 Constructs an EFourierTransformer object initialized to its default values.
virtual ~EFourierTransformer () throw ()
eVision::EFourierTransformer & operator= (const eVision::EFourierTransformer &other)
 Assignment operator.
void Load (const std::string &path)
 Loads the EFourierTransformer. The given ESerializer must have been created for reading.
void Load (eVision::ESerializer *serializer)
 Loads the EFourierTransformer. The given ESerializer must have been created for reading.
void Save (const std::string &path)
 Saves the EFourierTransformer. The given ESerializer must have been created for writing.
void Save (eVision::ESerializer *serializer)
 Saves the EFourierTransformer. The given ESerializer must have been created for writing.
void DirectTransform (const eVision::EROIBW8 &spatialImage, eVision::EFourierImage &frequentialImage, eVision::EFrequentialDomainFormat domainFormat) const
 Computes the direct transform.
void DirectTransform (const eVision::EROIBW8 &spatialImage, eVision::EFourierImage &frequentialImage) const
 Computes the direct transform.
void DirectTransform (const eVision::EROIBW16 &spatialImage, eVision::EFourierImage &frequentialImage, eVision::EFrequentialDomainFormat domainFormat) const
 Computes the direct transform.
void DirectTransform (const eVision::EROIBW16 &spatialImage, eVision::EFourierImage &frequentialImage) const
 Computes the direct transform.
void DirectTransform (const eVision::EROIBW32f &spatialImage, eVision::EFourierImage &frequentialImage, eVision::EFrequentialDomainFormat domainFormat) const
 Computes the direct transform.
void DirectTransform (const eVision::EROIBW32f &spatialImage, eVision::EFourierImage &frequentialImage) const
 Computes the direct transform.
void InverseTransform (const eVision::EFourierImage &frequentialImage, eVision::EROIBW8 &spatialImage) const
 Computes the inverse transform.
void InverseTransform (const eVision::EFourierImage &frequentialImage, eVision::EROIBW16 &spatialImage) const
 Computes the inverse transform.
void InverseTransform (const eVision::EFourierImage &frequentialImage, eVision::EROIBW32f &spatialImage) const
 Computes the inverse transform.
 EFourierTransformer (CppWrapperInternal::InternalConstructor)

Public Attributes

CppWrapperInternal::WrappedClass wrappedClass_

Detailed Description

Utility class to manage direct and inverse Fast Fourier Transforms.

License(s): EasyImage

Constructor & Destructor Documentation

◆ EFourierTransformer() [1/3]

eVision::EFourierTransformer::EFourierTransformer ( )

Constructs an EFourierTransformer object initialized to its default values.

◆ EFourierTransformer() [2/3]

eVision::EFourierTransformer::EFourierTransformer ( const eVision::EFourierTransformer & other)

Constructs an EFourierTransformer object initialized to its default values.

Parameters
otherAnother EFourierTransformer.

◆ ~EFourierTransformer()

eVision::EFourierTransformer::~EFourierTransformer ( )
throw ( )
virtual

◆ EFourierTransformer() [3/3]

eVision::EFourierTransformer::EFourierTransformer ( CppWrapperInternal::InternalConstructor )

Member Function Documentation

◆ DirectTransform() [1/6]

void eVision::EFourierTransformer::DirectTransform ( const eVision::EROIBW16 & spatialImage,
eVision::EFourierImage & frequentialImage ) const

Computes the direct transform.

Parameters
spatialImageInput image in spatial domain.
frequentialImageOutput image in frequential domain. Must be of the same size as spatialImage if domainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice the width (and same height) if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.

No scaling is applied, scaling applied in EFourierTransformer::InverseTransform.

◆ DirectTransform() [2/6]

void eVision::EFourierTransformer::DirectTransform ( const eVision::EROIBW16 & spatialImage,
eVision::EFourierImage & frequentialImage,
eVision::EFrequentialDomainFormat domainFormat ) const

Computes the direct transform.

Parameters
spatialImageInput image in spatial domain.
frequentialImageOutput image in frequential domain. Must be of the same size as spatialImage if domainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice the width (and same height) if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.
domainFormatFormat of the output frequential image

No scaling is applied, scaling applied in EFourierTransformer::InverseTransform.

◆ DirectTransform() [3/6]

void eVision::EFourierTransformer::DirectTransform ( const eVision::EROIBW32f & spatialImage,
eVision::EFourierImage & frequentialImage ) const

Computes the direct transform.

Parameters
spatialImageInput image in spatial domain.
frequentialImageOutput image in frequential domain. Must be of the same size as spatialImage if domainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice the width (and same height) if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.

No scaling is applied, scaling applied in EFourierTransformer::InverseTransform.

◆ DirectTransform() [4/6]

void eVision::EFourierTransformer::DirectTransform ( const eVision::EROIBW32f & spatialImage,
eVision::EFourierImage & frequentialImage,
eVision::EFrequentialDomainFormat domainFormat ) const

Computes the direct transform.

Parameters
spatialImageInput image in spatial domain.
frequentialImageOutput image in frequential domain. Must be of the same size as spatialImage if domainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice the width (and same height) if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.
domainFormatFormat of the output frequential image

No scaling is applied, scaling applied in EFourierTransformer::InverseTransform.

◆ DirectTransform() [5/6]

void eVision::EFourierTransformer::DirectTransform ( const eVision::EROIBW8 & spatialImage,
eVision::EFourierImage & frequentialImage ) const

Computes the direct transform.

Parameters
spatialImageInput image in spatial domain.
frequentialImageOutput image in frequential domain. Must be of the same size as spatialImage if domainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice the width (and same height) if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.

No scaling is applied, scaling applied in EFourierTransformer::InverseTransform.

◆ DirectTransform() [6/6]

void eVision::EFourierTransformer::DirectTransform ( const eVision::EROIBW8 & spatialImage,
eVision::EFourierImage & frequentialImage,
eVision::EFrequentialDomainFormat domainFormat ) const

Computes the direct transform.

Parameters
spatialImageInput image in spatial domain.
frequentialImageOutput image in frequential domain. Must be of the same size as spatialImage if domainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice the width (and same height) if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.
domainFormatFormat of the output frequential image

No scaling is applied, scaling applied in EFourierTransformer::InverseTransform.

◆ InverseTransform() [1/3]

void eVision::EFourierTransformer::InverseTransform ( const eVision::EFourierImage & frequentialImage,
eVision::EROIBW16 & spatialImage ) const

Computes the inverse transform.

Parameters
frequentialImageInput image in frequential domain. frequentialImage's width must be a multiple of 2 if its EFourierImage::GetFrequentialDomainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.
spatialImageOutput image in spatial domain. Must be of the same size as frequentialImage if its EFourierImage::GetFrequentialDomainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice thinner if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.

Scaling is applied, no scaling applied in EFourierTransformer::DirectTransform. The frequential format of EFourierImage is taken into account when applying the inverse fourier transform.

◆ InverseTransform() [2/3]

void eVision::EFourierTransformer::InverseTransform ( const eVision::EFourierImage & frequentialImage,
eVision::EROIBW32f & spatialImage ) const

Computes the inverse transform.

Parameters
frequentialImageInput image in frequential domain. frequentialImage's width must be a multiple of 2 if its EFourierImage::GetFrequentialDomainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.
spatialImageOutput image in spatial domain. Must be of the same size as frequentialImage if its EFourierImage::GetFrequentialDomainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice thinner if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.

Scaling is applied, no scaling applied in EFourierTransformer::DirectTransform. The frequential format of EFourierImage is taken into account when applying the inverse fourier transform.

◆ InverseTransform() [3/3]

void eVision::EFourierTransformer::InverseTransform ( const eVision::EFourierImage & frequentialImage,
eVision::EROIBW8 & spatialImage ) const

Computes the inverse transform.

Parameters
frequentialImageInput image in frequential domain. frequentialImage's width must be a multiple of 2 if its EFourierImage::GetFrequentialDomainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.
spatialImageOutput image in spatial domain. Must be of the same size as frequentialImage if its EFourierImage::GetFrequentialDomainFormat is EFrequentialDomainFormat::EFrequentialDomainFormat_Packed or twice thinner if it is EFrequentialDomainFormat::EFrequentialDomainFormat_ComplexExtended.

Scaling is applied, no scaling applied in EFourierTransformer::DirectTransform. The frequential format of EFourierImage is taken into account when applying the inverse fourier transform.

◆ Load() [1/2]

void eVision::EFourierTransformer::Load ( const std::string & path)

Loads the EFourierTransformer. The given ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ Load() [2/2]

void eVision::EFourierTransformer::Load ( eVision::ESerializer * serializer)

Loads the EFourierTransformer. The given ESerializer must have been created for reading.

Parameters
serializerThe serializer.

◆ operator=()

eVision::EFourierTransformer & eVision::EFourierTransformer::operator= ( const eVision::EFourierTransformer & other)

Assignment operator.

Parameters
otherAnother EFourierTransformer.

◆ Save() [1/2]

void eVision::EFourierTransformer::Save ( const std::string & path)

Saves the EFourierTransformer. The given ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ Save() [2/2]

void eVision::EFourierTransformer::Save ( eVision::ESerializer * serializer)

Saves the EFourierTransformer. The given ESerializer must have been created for writing.

Parameters
serializerThe ESerializer object that is written to.

Member Data Documentation

◆ wrappedClass_

CppWrapperInternal::WrappedClass eVision::EFourierTransformer::wrappedClass_