PCL
pcl::InterpolatingGeometricTransformation Class Reference

Abstract base class of all PCL interpolating geometric image transformations. More...

#include <GeometricTransformation.h>

+ Inheritance diagram for pcl::InterpolatingGeometricTransformation:

Public Member Functions

 InterpolatingGeometricTransformation (const InterpolatingGeometricTransformation &)=default
 
 InterpolatingGeometricTransformation (InterpolatingGeometricTransformation &&x)
 
 InterpolatingGeometricTransformation (PixelInterpolation &p)
 
void DisableUnclippedInterpolation (bool disable=true)
 
void EnableUnclippedInterpolation (bool enable=true)
 
PixelInterpolationInterpolation ()
 
const PixelInterpolationInterpolation () const
 
InterpolatingGeometricTransformationoperator= (const InterpolatingGeometricTransformation &)=default
 
InterpolatingGeometricTransformationoperator= (InterpolatingGeometricTransformation &&x)
 
void SetInterpolation (PixelInterpolation &p)
 
bool UsingUnclippedInterpolation () const
 
- Public Member Functions inherited from pcl::GeometricTransformation
 GeometricTransformation ()=default
 
 GeometricTransformation (const GeometricTransformation &)=default
 
 GeometricTransformation (GeometricTransformation &&)=default
 
 ~GeometricTransformation () override
 
virtual void GetNewSizes (int &width, int &height) const =0
 
GeometricTransformationoperator= (const GeometricTransformation &)=default
 
GeometricTransformationoperator= (GeometricTransformation &&)=default
 
- 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
 

Additional Inherited Members

- Static Public Member Functions inherited from pcl::GeometricTransformation
template<class P >
static void ApplyGammaExponentCorrection (typename P::sample *samples, size_type length, double gamma, AbstractImage::ThreadData &threadData, int maxProcessors=PCL_MAX_PROCESSORS)
 
template<class P >
static void ApplyInverseGammaExponentCorrection (typename P::sample *samples, size_type length, double gamma, AbstractImage::ThreadData &threadData, int maxProcessors=PCL_MAX_PROCESSORS)
 
template<class P >
static void ApplyInverseSRGBGammaCorrection (typename P::sample *samples, size_type length, AbstractImage::ThreadData &threadData, int maxProcessors=PCL_MAX_PROCESSORS)
 
template<class P >
static void ApplySRGBGammaCorrection (typename P::sample *samples, size_type length, AbstractImage::ThreadData &threadData, int maxProcessors=PCL_MAX_PROCESSORS)
 
- Protected Member Functions inherited from pcl::ImageTransformation
virtual void Apply (pcl::ComplexImage &image) const
 
virtual void Apply (pcl::DComplexImage &image) const
 
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

InterpolatingGeometricTransformation represents a geometrical transformation that uses a pixel interpolating algorithm to yield transformed pixel sample values. Transformations implemented as derived classes of InterpolatingGeometricTransformation can be applied to all standard image types defined in PCL.

See also
GeometricTransformation, PixelInterpolation, ImageTransformation

Definition at line 527 of file GeometricTransformation.h.

Constructor & Destructor Documentation

◆ InterpolatingGeometricTransformation() [1/3]

pcl::InterpolatingGeometricTransformation::InterpolatingGeometricTransformation ( PixelInterpolation p)
inline

Constructs a InterpolatingGeometricTransformation object that will use the specified pixel interpolation p.

The specified PixelInterpolation object must remain valid and accessible as long as this object exists, or until this object is associated with a different pixel interpolation.

Definition at line 539 of file GeometricTransformation.h.

◆ InterpolatingGeometricTransformation() [2/3]

pcl::InterpolatingGeometricTransformation::InterpolatingGeometricTransformation ( const InterpolatingGeometricTransformation )
default

Copy constructor. The constructed object will use the same pixel interpolation as the specified source object.

The PixelInterpolation object used by both this object and the source object must remain valid and accessible as long as at least one of both objects is associated with it.

◆ InterpolatingGeometricTransformation() [3/3]

pcl::InterpolatingGeometricTransformation::InterpolatingGeometricTransformation ( InterpolatingGeometricTransformation &&  x)
inline

Move constructor.

Definition at line 558 of file GeometricTransformation.h.

Member Function Documentation

◆ DisableUnclippedInterpolation()

void pcl::InterpolatingGeometricTransformation::DisableUnclippedInterpolation ( bool  disable = true)
inline

Disables the use of unclipped pixel interpolations. See UsingUnclippedInterpolation() for more information.

Definition at line 657 of file GeometricTransformation.h.

◆ EnableUnclippedInterpolation()

void pcl::InterpolatingGeometricTransformation::EnableUnclippedInterpolation ( bool  enable = true)
inline

Enables the use of unclipped pixel interpolations. See UsingUnclippedInterpolation() for more information.

Definition at line 648 of file GeometricTransformation.h.

◆ Interpolation() [1/2]

PixelInterpolation& pcl::InterpolatingGeometricTransformation::Interpolation ( )
inline

Returns a reference to the PixelInterpolation object that this transformation is currently using.

Definition at line 605 of file GeometricTransformation.h.

◆ Interpolation() [2/2]

const PixelInterpolation& pcl::InterpolatingGeometricTransformation::Interpolation ( ) const
inline

Returns a reference to the unmodifiable PixelInterpolation object that this transformation is currently using.

Definition at line 595 of file GeometricTransformation.h.

◆ operator=() [1/2]

InterpolatingGeometricTransformation& pcl::InterpolatingGeometricTransformation::operator= ( const InterpolatingGeometricTransformation )
default

Copy assignment operator. Returns a reference to this object.

After assignment, this object will use the same pixel interpolation as the specified source object. The previously used pixel interpolation is simply forgotten by this object, which will no longer depend on it.

The PixelInterpolation object used by both this object and the source object must remain valid and accessible as long as at least one of both objects is associated with it.

◆ operator=() [2/2]

InterpolatingGeometricTransformation& pcl::InterpolatingGeometricTransformation::operator= ( InterpolatingGeometricTransformation &&  x)
inline

Move assignment operator. Returns a reference to this object.

Definition at line 582 of file GeometricTransformation.h.

References pcl::GeometricTransformation::operator=().

◆ SetInterpolation()

void pcl::InterpolatingGeometricTransformation::SetInterpolation ( PixelInterpolation p)
inline

Causes this transformation to use the specified pixel interpolation p.

The new pixel interpolation will be used to generate transformed pixel values after calling this function. The previously used pixel interpolation is simply forgotten by this object, which will no longer depend on it.

The specified PixelInterpolation object must remain valid and accessible as long as this object exists, or until this object is associated with a different pixel interpolation.

Definition at line 623 of file GeometricTransformation.h.

◆ UsingUnclippedInterpolation()

bool pcl::InterpolatingGeometricTransformation::UsingUnclippedInterpolation ( ) const
inline

Returns true if this image transformation applies unclipped pixel interpolations. Unclipped interpolations don't constrain interpolated pixel sample values to the native range of the pixel data type of the transformed image. This allows to apply interpolating transformations to images that exceed their representable ranges; for example, when images are used to store and manipulate arbitrary matrices for convenience.

Unclipped transformations are always disabled by default.

Definition at line 639 of file GeometricTransformation.h.


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