OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep > Class Template Reference

#include <otbGenericInterpolateImageFunction.h>

+ Inheritance diagram for otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >:
+ Collaboration diagram for otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef Superclass::ContinuousIndexType ContinuousIndexType
 
typedef TFunction FunctionType
 
typedef Superclass::IndexType IndexType
 
typedef Superclass::InputImageType InputImageType
 
typedef itk::ConstNeighborhoodIterator< InputImageType, TBoundaryCondition > IteratorType
 
typedef Superclass::OutputType OutputType
 
typedef itk::SmartPointer< SelfPointer
 
typedef Superclass::RealType RealType
 
typedef GenericInterpolateImageFunction Self
 
typedef InputImageType::SizeType SizeType
 
typedef itk::InterpolateImageFunction< TInputImage, TCoordRep > Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
OutputType EvaluateAtContinuousIndex (const ContinuousIndexType &index) const override
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int ImageDimension = Superclass::ImageDimension
 
unsigned int m_WindowSize
 
FunctionType m_Function
 
unsigned int m_ImageDimension
 
unsigned int m_OffsetTableSize
 
unsigned int * m_OffsetTable
 
unsigned int ** m_WeightOffsetTable
 
bool m_TablesHaveBeenGenerated
 
bool m_NormalizeWeight
 
virtual void SetRadius (unsigned int rad)
 
virtual unsigned int GetRadius () const
 
virtual FunctionTypeGetFunction (void)
 
virtual void Initialize ()
 
virtual void SetNormalizeWeight (bool _arg)
 
virtual bool GetNormalizeWeight ()
 
 GenericInterpolateImageFunction ()
 
 ~GenericInterpolateImageFunction () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void Modified (void) const override
 
virtual void ResetOffsetTable ()
 
virtual void InitializeTables ()
 
virtual void FillWeightOffsetTable ()
 
 GenericInterpolateImageFunction (const Self &)=delete
 
void operator= (const Self &)=delete
 

Detailed Description

template<class TInputImage, class TFunction, class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
class otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >

Generic interpolation of an otb::Image.

GenericInterpolateImageFunction interpolates image intensity according to a resampling profil.

The Initialize() method need to be call to create the filter.

Definition at line 44 of file otbGenericInterpolateImageFunction.h.

Member Typedef Documentation

◆ ConstPointer

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef itk::SmartPointer<const Self> otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::ConstPointer

Definition at line 51 of file otbGenericInterpolateImageFunction.h.

◆ ContinuousIndexType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef Superclass::ContinuousIndexType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::ContinuousIndexType

ContinuousIndex typedef support.

Definition at line 74 of file otbGenericInterpolateImageFunction.h.

◆ FunctionType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef TFunction otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::FunctionType

Definition at line 70 of file otbGenericInterpolateImageFunction.h.

◆ IndexType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef Superclass::IndexType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::IndexType

Dimension underlying input image. Index and typedef support.

Definition at line 67 of file otbGenericInterpolateImageFunction.h.

◆ InputImageType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef Superclass::InputImageType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::InputImageType

Definition at line 61 of file otbGenericInterpolateImageFunction.h.

◆ IteratorType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef itk::ConstNeighborhoodIterator<InputImageType, TBoundaryCondition> otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::IteratorType

Definition at line 71 of file otbGenericInterpolateImageFunction.h.

◆ OutputType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef Superclass::OutputType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::OutputType

Input and output images typedef definition.

Definition at line 57 of file otbGenericInterpolateImageFunction.h.

◆ Pointer

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef itk::SmartPointer<Self> otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::Pointer

Definition at line 50 of file otbGenericInterpolateImageFunction.h.

◆ RealType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef Superclass::RealType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::RealType

Definition at line 69 of file otbGenericInterpolateImageFunction.h.

◆ Self

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef GenericInterpolateImageFunction otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::Self

Standard class typedefs.

Definition at line 48 of file otbGenericInterpolateImageFunction.h.

◆ SizeType

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef InputImageType::SizeType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::SizeType

Definition at line 68 of file otbGenericInterpolateImageFunction.h.

◆ Superclass

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
typedef itk::InterpolateImageFunction<TInputImage, TCoordRep> otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::Superclass

Definition at line 49 of file otbGenericInterpolateImageFunction.h.

Constructor & Destructor Documentation

◆ GenericInterpolateImageFunction() [1/2]

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::GenericInterpolateImageFunction
protected

Constructor

Definition at line 31 of file otbGenericInterpolateImageFunction.hxx.

◆ ~GenericInterpolateImageFunction()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::~GenericInterpolateImageFunction
overrideprotected

Destructor

Definition at line 44 of file otbGenericInterpolateImageFunction.hxx.

◆ GenericInterpolateImageFunction() [2/2]

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::GenericInterpolateImageFunction ( const Self )
privatedelete

Store the window radius.

Member Function Documentation

◆ CreateAnother()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
virtual::itk::LightObject::Pointer otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::CreateAnother ( void  ) const

◆ EvaluateAtContinuousIndex()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::OutputType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::EvaluateAtContinuousIndex ( const ContinuousIndexType index) const
override

Evaluate the function at a ContinuousIndex position

Returns the interpolated image intensity at a specified point position. No bounds checking is done. The point is assume to lie within the image buffer.

ImageFunction::IsInsideBuffer() can be used to check bounds before calling the method.

Evaluate at image index position

Definition at line 182 of file otbGenericInterpolateImageFunction.hxx.

◆ FillWeightOffsetTable()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::FillWeightOffsetTable
protectedvirtual

Fill the weight offset table

Definition at line 114 of file otbGenericInterpolateImageFunction.hxx.

◆ GetFunction()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
virtual FunctionType& otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::GetFunction ( void  )
inlinevirtual

Set/Get the window radius Get the functor list

Definition at line 103 of file otbGenericInterpolateImageFunction.h.

◆ GetNameOfClass()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
virtual const char* otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::GetNameOfClass ( ) const
virtual

◆ GetNormalizeWeight()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
virtual bool otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::GetNormalizeWeight ( )
virtual

Store the window radius.

◆ GetRadius()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
virtual unsigned int otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::GetRadius ( ) const
inlinevirtual

Store the window radius.

Definition at line 91 of file otbGenericInterpolateImageFunction.h.

◆ Initialize()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::Initialize
virtual

Initialize tables: need to be call explicitly

Definition at line 167 of file otbGenericInterpolateImageFunction.hxx.

◆ InitializeTables()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::InitializeTables
protectedvirtual

Initialize used tables

Definition at line 91 of file otbGenericInterpolateImageFunction.hxx.

◆ Modified()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::Modified ( void  ) const
overrideprotected

Call the superclass implementation and set the TablesHaveBeenGenerated flag to false

Definition at line 83 of file otbGenericInterpolateImageFunction.hxx.

◆ New()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
static Pointer otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::operator= ( const Self )
privatedelete

Store the window radius.

◆ PrintSelf()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

Store the window radius.

Definition at line 312 of file otbGenericInterpolateImageFunction.hxx.

◆ ResetOffsetTable()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::ResetOffsetTable
protectedvirtual

Delete tables.

Delete every tables.

Definition at line 51 of file otbGenericInterpolateImageFunction.hxx.

◆ SetNormalizeWeight()

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
virtual void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::SetNormalizeWeight ( bool  _arg)
virtual

Weights normalization accessors

◆ SetRadius()

template<class TInputImage , class TFunction , class TBoundaryCondition , class TCoordRep >
void otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::SetRadius ( unsigned int  rad)
virtual

Set/Get the window radius

Definition at line 74 of file otbGenericInterpolateImageFunction.hxx.

Member Data Documentation

◆ ImageDimension

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
const unsigned int otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::ImageDimension = Superclass::ImageDimension
static

Dimension underlying input image.

Definition at line 77 of file otbGenericInterpolateImageFunction.h.

◆ m_Function

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
FunctionType otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_Function
private

Used function

Definition at line 143 of file otbGenericInterpolateImageFunction.h.

◆ m_ImageDimension

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
unsigned int otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_ImageDimension
private

Store the image dimension.

Definition at line 146 of file otbGenericInterpolateImageFunction.h.

◆ m_NormalizeWeight

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
bool otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_NormalizeWeight
private

Weights normalization

Definition at line 166 of file otbGenericInterpolateImageFunction.h.

◆ m_OffsetTable

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
unsigned int* otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_OffsetTable
mutableprivate

The offset array, used to keep a list of relevant offsets in the neihborhoodIterator

Definition at line 157 of file otbGenericInterpolateImageFunction.h.

◆ m_OffsetTableSize

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
unsigned int otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_OffsetTableSize
mutableprivate

These members are declared mutable so that they can be regenerated seamlessly inside the EvaluateAtContinuousIndex method if they need to Size of the offset table

Definition at line 153 of file otbGenericInterpolateImageFunction.h.

◆ m_TablesHaveBeenGenerated

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
bool otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_TablesHaveBeenGenerated
mutableprivate

True if internal statistics have been generated

Definition at line 163 of file otbGenericInterpolateImageFunction.h.

◆ m_WeightOffsetTable

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
unsigned int** otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_WeightOffsetTable
mutableprivate

Index into the weights array for each offset

Definition at line 160 of file otbGenericInterpolateImageFunction.h.

◆ m_WindowSize

template<class TInputImage , class TFunction , class TBoundaryCondition = itk::ZeroFluxNeumannBoundaryCondition<TInputImage>, class TCoordRep = double>
unsigned int otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::m_WindowSize
private

Store the window radius.

Definition at line 140 of file otbGenericInterpolateImageFunction.h.


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