OTB  10.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
otb::LeastSquareBilinearTransformEstimator< TPoint > Class Template Reference

#include <otbLeastSquareBilinearTransformEstimator.h>

+ Inheritance diagram for otb::LeastSquareBilinearTransformEstimator< TPoint >:
+ Collaboration diagram for otb::LeastSquareBilinearTransformEstimator< TPoint >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::CovariantVector< PrecisionType, PointDimensionCovariantVectorType
 
typedef itk::Matrix< PrecisionType, 4, 4 > MatrixType
 
typedef itk::Matrix< PrecisionType, 1, 4 > MatrixVecTransposeType
 
typedef itk::Matrix< PrecisionType, 4, 1 > MatrixVecType
 
typedef itk::SmartPointer< SelfPointer
 
typedef TPoint PointType
 
typedef PointType::CoordRepType PrecisionType
 
typedef LeastSquareBilinearTransformEstimator Self
 
typedef itk::Object Superclass
 
typedef std::vector< TiePointsTypeTiePointsContainerType
 
typedef std::pair< PointType, PrecisionTypeTiePointsType
 
typedef itk::Vector< PrecisionType, 4 > VectorType
 

Public Member Functions

void AddTiePoints (const PointType &src, const PrecisionType &dst)
 
void ClearTiePoints ()
 
void Compute ()
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const MatrixTypeGetMatrix () const
 
virtual const char * GetNameOfClass () const
 
virtual const VectorTypeGetOffset () const
 
virtual const CovariantVectorTypeGetRelativeResidual () const
 
virtual const CovariantVectorTypeGetRMSError () const
 
TiePointsContainerTypeGetTiePointsContainer ()
 
 LeastSquareBilinearTransformEstimator ()
 
void lsFitValue (const PointType &point, PrecisionType &dst) const
 
void SetTiePointsContainer (const TiePointsContainerType &container)
 
 ~LeastSquareBilinearTransformEstimator ()=default
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int PointDimension = TPoint::PointDimension
 

Protected Member Functions

void PrintSelf (std::ostream &os, itk::Indent indent) const override
 

Private Member Functions

 LeastSquareBilinearTransformEstimator (const Self &)=delete
 
void operator= (const Self &)=delete
 

Private Attributes

vnl_matrix_fixed< double, 4, 4 > Ata
 
vnl_matrix_fixed< double, 4, 1 > Atb
 
double bl_a
 
double bl_b
 
double bl_c
 
double bl_d
 
MatrixType m_Matrix
 
VectorType m_Offset
 
CovariantVectorType m_RelativeResidual
 
CovariantVectorType m_RMSError
 
TiePointsContainerType m_TiePointsContainer
 

Detailed Description

template<class TPoint>
class otb::LeastSquareBilinearTransformEstimator< TPoint >

This class provide the 2D Bilinear transform LSQR estimation.

z(x,y) = a + b*x + c*y + d*x*y

Definition at line 41 of file otbLeastSquareBilinearTransformEstimator.h.

Member Typedef Documentation

◆ ConstPointer

template<class TPoint >
typedef itk::SmartPointer<const Self> otb::LeastSquareBilinearTransformEstimator< TPoint >::ConstPointer

Definition at line 48 of file otbLeastSquareBilinearTransformEstimator.h.

◆ CovariantVectorType

template<class TPoint >
typedef itk::CovariantVector<PrecisionType, PointDimension> otb::LeastSquareBilinearTransformEstimator< TPoint >::CovariantVectorType

Definition at line 62 of file otbLeastSquareBilinearTransformEstimator.h.

◆ MatrixType

template<class TPoint >
typedef itk::Matrix<PrecisionType, 4, 4> otb::LeastSquareBilinearTransformEstimator< TPoint >::MatrixType

Affine transform components typedefs

Definition at line 67 of file otbLeastSquareBilinearTransformEstimator.h.

◆ MatrixVecTransposeType

template<class TPoint >
typedef itk::Matrix<PrecisionType, 1, 4> otb::LeastSquareBilinearTransformEstimator< TPoint >::MatrixVecTransposeType

Definition at line 69 of file otbLeastSquareBilinearTransformEstimator.h.

◆ MatrixVecType

template<class TPoint >
typedef itk::Matrix<PrecisionType, 4, 1> otb::LeastSquareBilinearTransformEstimator< TPoint >::MatrixVecType

Definition at line 68 of file otbLeastSquareBilinearTransformEstimator.h.

◆ Pointer

template<class TPoint >
typedef itk::SmartPointer<Self> otb::LeastSquareBilinearTransformEstimator< TPoint >::Pointer

Definition at line 47 of file otbLeastSquareBilinearTransformEstimator.h.

◆ PointType

template<class TPoint >
typedef TPoint otb::LeastSquareBilinearTransformEstimator< TPoint >::PointType

Points typedefs

Definition at line 60 of file otbLeastSquareBilinearTransformEstimator.h.

◆ PrecisionType

template<class TPoint >
typedef PointType::CoordRepType otb::LeastSquareBilinearTransformEstimator< TPoint >::PrecisionType

Definition at line 61 of file otbLeastSquareBilinearTransformEstimator.h.

◆ Self

Standard class typedefs.

Definition at line 45 of file otbLeastSquareBilinearTransformEstimator.h.

◆ Superclass

template<class TPoint >
typedef itk::Object otb::LeastSquareBilinearTransformEstimator< TPoint >::Superclass

Definition at line 46 of file otbLeastSquareBilinearTransformEstimator.h.

◆ TiePointsContainerType

template<class TPoint >
typedef std::vector<TiePointsType> otb::LeastSquareBilinearTransformEstimator< TPoint >::TiePointsContainerType

Definition at line 64 of file otbLeastSquareBilinearTransformEstimator.h.

◆ TiePointsType

template<class TPoint >
typedef std::pair<PointType, PrecisionType> otb::LeastSquareBilinearTransformEstimator< TPoint >::TiePointsType

Definition at line 63 of file otbLeastSquareBilinearTransformEstimator.h.

◆ VectorType

template<class TPoint >
typedef itk::Vector<PrecisionType, 4> otb::LeastSquareBilinearTransformEstimator< TPoint >::VectorType

Definition at line 70 of file otbLeastSquareBilinearTransformEstimator.h.

Constructor & Destructor Documentation

◆ LeastSquareBilinearTransformEstimator() [1/2]

◆ ~LeastSquareBilinearTransformEstimator()

Destructor

◆ LeastSquareBilinearTransformEstimator() [2/2]

template<class TPoint >
otb::LeastSquareBilinearTransformEstimator< TPoint >::LeastSquareBilinearTransformEstimator ( const Self )
privatedelete

Member Function Documentation

◆ AddTiePoints()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::AddTiePoints ( const PointType src,
const PrecisionType dst 
)

Add a pair of tie points

Definition at line 52 of file otbLeastSquareBilinearTransformEstimator.hxx.

◆ ClearTiePoints()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::ClearTiePoints

Clear all tie points

Definition at line 45 of file otbLeastSquareBilinearTransformEstimator.hxx.

◆ Compute()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::Compute

The Compute method does the affine least square estimation

Definition at line 68 of file otbLeastSquareBilinearTransformEstimator.hxx.

◆ CreateAnother()

template<class TPoint >
virtual::itk::LightObject::Pointer otb::LeastSquareBilinearTransformEstimator< TPoint >::CreateAnother ( void  ) const

◆ GetMatrix()

template<class TPoint >
virtual const MatrixType& otb::LeastSquareBilinearTransformEstimator< TPoint >::GetMatrix ( ) const
virtual

Get the bilinear transform matrix

◆ GetNameOfClass()

template<class TPoint >
virtual const char* otb::LeastSquareBilinearTransformEstimator< TPoint >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

◆ GetOffset()

template<class TPoint >
virtual const VectorType& otb::LeastSquareBilinearTransformEstimator< TPoint >::GetOffset ( ) const
virtual

Get the bilinear transform offset

◆ GetRelativeResidual()

template<class TPoint >
virtual const CovariantVectorType& otb::LeastSquareBilinearTransformEstimator< TPoint >::GetRelativeResidual ( ) const
virtual

Get the relative residual

◆ GetRMSError()

template<class TPoint >
virtual const CovariantVectorType& otb::LeastSquareBilinearTransformEstimator< TPoint >::GetRMSError ( ) const
virtual

Get the RMS error

◆ GetTiePointsContainer()

template<class TPoint >
TiePointsContainerType& otb::LeastSquareBilinearTransformEstimator< TPoint >::GetTiePointsContainer ( )

Get the GCPsContainer

Returns
The GCPs container

◆ lsFitValue()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::lsFitValue ( const PointType point,
PrecisionType dst 
) const

interpolate LS-fit value at location (xx,yy) - returns z(xx,yy).

Parameters
xx"x" coordinate at which to interpolate.
yy"y" coordinate at which to interpolate.

Definition at line 90 of file otbLeastSquareBilinearTransformEstimator.hxx.

◆ New()

template<class TPoint >
static Pointer otb::LeastSquareBilinearTransformEstimator< TPoint >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::operator= ( const Self )
privatedelete

◆ PrintSelf()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

The PrintSelf method

Definition at line 96 of file otbLeastSquareBilinearTransformEstimator.hxx.

◆ SetTiePointsContainer()

template<class TPoint >
void otb::LeastSquareBilinearTransformEstimator< TPoint >::SetTiePointsContainer ( const TiePointsContainerType container)

Set the GCP container

Member Data Documentation

◆ Ata

template<class TPoint >
vnl_matrix_fixed<double, 4, 4> otb::LeastSquareBilinearTransformEstimator< TPoint >::Ata
private

◆ Atb

template<class TPoint >
vnl_matrix_fixed<double, 4, 1> otb::LeastSquareBilinearTransformEstimator< TPoint >::Atb
private

◆ bl_a

template<class TPoint >
double otb::LeastSquareBilinearTransformEstimator< TPoint >::bl_a
private

Definition at line 141 of file otbLeastSquareBilinearTransformEstimator.h.

◆ bl_b

template<class TPoint >
double otb::LeastSquareBilinearTransformEstimator< TPoint >::bl_b
private

Definition at line 141 of file otbLeastSquareBilinearTransformEstimator.h.

◆ bl_c

template<class TPoint >
double otb::LeastSquareBilinearTransformEstimator< TPoint >::bl_c
private

Definition at line 141 of file otbLeastSquareBilinearTransformEstimator.h.

◆ bl_d

template<class TPoint >
double otb::LeastSquareBilinearTransformEstimator< TPoint >::bl_d
private

Definition at line 141 of file otbLeastSquareBilinearTransformEstimator.h.

◆ m_Matrix

template<class TPoint >
MatrixType otb::LeastSquareBilinearTransformEstimator< TPoint >::m_Matrix
private

Affine transform matrix

Definition at line 133 of file otbLeastSquareBilinearTransformEstimator.h.

◆ m_Offset

template<class TPoint >
VectorType otb::LeastSquareBilinearTransformEstimator< TPoint >::m_Offset
private

Affine transform offset

Definition at line 136 of file otbLeastSquareBilinearTransformEstimator.h.

◆ m_RelativeResidual

template<class TPoint >
CovariantVectorType otb::LeastSquareBilinearTransformEstimator< TPoint >::m_RelativeResidual
private

Relative residual

Definition at line 130 of file otbLeastSquareBilinearTransformEstimator.h.

◆ m_RMSError

template<class TPoint >
CovariantVectorType otb::LeastSquareBilinearTransformEstimator< TPoint >::m_RMSError
private

RMS error

Definition at line 127 of file otbLeastSquareBilinearTransformEstimator.h.

◆ m_TiePointsContainer

template<class TPoint >
TiePointsContainerType otb::LeastSquareBilinearTransformEstimator< TPoint >::m_TiePointsContainer
private

Container of GCPs

Definition at line 124 of file otbLeastSquareBilinearTransformEstimator.h.

◆ PointDimension

template<class TPoint >
const unsigned int otb::LeastSquareBilinearTransformEstimator< TPoint >::PointDimension = TPoint::PointDimension
static

Extract dimension from input and output image.

Definition at line 57 of file otbLeastSquareBilinearTransformEstimator.h.


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