PCL
pcl::FFTRotationAndScaling Class Reference

FFT registration engine: rotation and scaling More...

#include <FFTRegistration.h>

+ Inheritance diagram for pcl::FFTRotationAndScaling:

Public Member Functions

 FFTRotationAndScaling ()=default
 
 ~FFTRotationAndScaling () override
 
void DisableScalingEvaluation (bool disable=true)
 
void EnableScalingEvaluation (bool enable=true)
 
bool EvaluatesScaling () const
 
bool HasLowFrequencyCutoff () const
 
float LowFrequencyCutoff () const
 
float RotationAngle () const
 
float ScalingRatio () const
 
void SetLowFrequencyCutoff (float r)
 
- Public Member Functions inherited from pcl::FFTRegistrationEngine
 FFTRegistrationEngine ()=default
 
 FFTRegistrationEngine (const FFTRegistrationEngine &)=default
 
 FFTRegistrationEngine (FFTRegistrationEngine &&x)
 
virtual ~FFTRegistrationEngine ()
 
const ComplexImageDFTOfReferenceImage () const
 
void Evaluate (const ImageVariant &image)
 
template<class P >
void Evaluate (const pcl::GenericImage< P > &image)
 
void Initialize (const ImageVariant &image)
 
template<class P >
void Initialize (const pcl::GenericImage< P > &image)
 
bool IsInitialized () const
 
void Reset ()
 

Detailed Description

FFTRotationAndScaling evaluates rotation and scaling image registration parameters. It computes the rotation angle and scaling ratio required to register a target image on a reference image, using an algorithm based on the Fourier-Mellin transform.

Warning
This class is currently experimental. It is not guaranteed to provide reliable image registration parameters.
See also
FFTTranslation, FFTRegistrationEngine

Definition at line 468 of file FFTRegistration.h.

Constructor & Destructor Documentation

◆ FFTRotationAndScaling()

pcl::FFTRotationAndScaling::FFTRotationAndScaling ( )
default

Constructs an FFTRotationAndScaling object.

Scaling ratio evaluation (see EvaluatesScaling()) is disabled by default.

◆ ~FFTRotationAndScaling()

pcl::FFTRotationAndScaling::~FFTRotationAndScaling ( )
inlineoverride

Destroys an FFTRotationAndScaling object.

Definition at line 482 of file FFTRegistration.h.

Member Function Documentation

◆ DisableScalingEvaluation()

void pcl::FFTRotationAndScaling::DisableScalingEvaluation ( bool  disable = true)
inline

Disables evaluation of scaling ratios.

This is a convenience member function, equivalent to EnableScalingEvaluation( !disable )

Definition at line 513 of file FFTRegistration.h.

◆ EnableScalingEvaluation()

void pcl::FFTRotationAndScaling::EnableScalingEvaluation ( bool  enable = true)
inline

Enables evaluation of scaling ratios.

Definition at line 498 of file FFTRegistration.h.

◆ EvaluatesScaling()

bool pcl::FFTRotationAndScaling::EvaluatesScaling ( ) const
inline

Returns true iff this engine evaluates scaling ratios. By default, scale evaluation is disabled.

Definition at line 490 of file FFTRegistration.h.

◆ HasLowFrequencyCutoff()

bool pcl::FFTRotationAndScaling::HasLowFrequencyCutoff ( ) const
inline

Returns true iff this engine uses a low-frequency cutoff to reduce the effects of rotational aliasing.

Definition at line 533 of file FFTRegistration.h.

◆ LowFrequencyCutoff()

float pcl::FFTRotationAndScaling::LowFrequencyCutoff ( ) const
inline

Returns the current low frequency cutoff for this registration engine.

See the documentation for SetLowFrequencyCutoff() for a detailed description of low-frequency cutoffs.

Definition at line 524 of file FFTRegistration.h.

◆ RotationAngle()

float pcl::FFTRotationAndScaling::RotationAngle ( ) const
inline

Returns the evaluated rotation angle in radians.

The returned value is the required rotation angle to register the last evaluated target image on the reference image set upon initialization.

Definition at line 559 of file FFTRegistration.h.

◆ ScalingRatio()

float pcl::FFTRotationAndScaling::ScalingRatio ( ) const
inline

Returns the evaluated scaling ratio.

The returned value is the required scaling ratio to register the last evaluated target image on the reference image set upon initialization.

Definition at line 570 of file FFTRegistration.h.

◆ SetLowFrequencyCutoff()

void pcl::FFTRotationAndScaling::SetLowFrequencyCutoff ( float  r)
inline

Sets the radius of the low-frequency cutoff.

The evaluation of rotation and scaling registration parameters can benefit from a simple low-frequency cutoff operation to reduce rotational aliasing on the computed DFTs. The value set by this function is the radius of the cutoff hole relative to the largest dimension of the reference image. The default value is 1/200. A value of zero disables the low-frequency cutoff feature.

Definition at line 548 of file FFTRegistration.h.

References pcl::Range().


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