OTB
9.0.0
Orfeo Toolbox
|
#include <otbPleiadesPToXSAffineTransformCalculator.h>
Public Types | |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef TransformType::OutputVectorType | OffsetType |
typedef itk::SmartPointer< Self > | Pointer |
typedef PleiadesPToXSAffineTransformCalculator | Self |
typedef itk::LightObject | Superclass |
typedef itk::ScalableAffineTransform< double, 2 > | TransformType |
Public Member Functions | |
virtual const char * | GetNameOfClass () const |
Static Public Member Functions | |
static bool | CanCompute (const ImageMetadata &panchromaticImd, const ImageMetadata &xsImd) |
static TransformType::Pointer | Compute (const ImageMetadata &panchromaticImd, const ImageMetadata &xsImd) |
static OffsetType | ComputeOffset (const ImageMetadata &panchromaticImd, const ImageMetadata &xsImd) |
Private Member Functions | |
void | operator= (const Self &)=delete |
PleiadesPToXSAffineTransformCalculator ()=delete | |
PleiadesPToXSAffineTransformCalculator (const Self &)=delete | |
Compute the affine transform linking P and XS pixel position for Pleiades sensor bundles.
Pleiades sensor bundle are exactly homotetic, it is therefore possible to corregister the panchromatic and multispectral images with a simple affine transform without using any sensor modelling. This yields a very accurate corregistration and avoid the use of a DSM which may cause registration errors due to height errors.
This calculator is a helper class to build the affine transform. It consists in only two static methods: one to check if the transform calculation applies to the given pair of images, the other to actually estimate the transform.
The estimated transform returned by the latter transforms pancrhomatic image positions to multispectral image positions. If the inverse transform is needed, one can call the GetInverse() method of the transform to retrieve it.
Definition at line 55 of file otbPleiadesPToXSAffineTransformCalculator.h.
typedef itk::SmartPointer<const Self> otb::PleiadesPToXSAffineTransformCalculator::ConstPointer |
Definition at line 61 of file otbPleiadesPToXSAffineTransformCalculator.h.
typedef TransformType::OutputVectorType otb::PleiadesPToXSAffineTransformCalculator::OffsetType |
Definition at line 66 of file otbPleiadesPToXSAffineTransformCalculator.h.
typedef itk::SmartPointer<Self> otb::PleiadesPToXSAffineTransformCalculator::Pointer |
Definition at line 60 of file otbPleiadesPToXSAffineTransformCalculator.h.
Definition at line 58 of file otbPleiadesPToXSAffineTransformCalculator.h.
typedef itk::LightObject otb::PleiadesPToXSAffineTransformCalculator::Superclass |
Definition at line 59 of file otbPleiadesPToXSAffineTransformCalculator.h.
typedef itk::ScalableAffineTransform<double, 2> otb::PleiadesPToXSAffineTransformCalculator::TransformType |
Definition at line 63 of file otbPleiadesPToXSAffineTransformCalculator.h.
|
privatedelete |
|
privatedelete |
|
static |
This function checks if the transform calculation applies to the given pair of ImageMetadata. Checked items are:
|
static |
This function computes the transform for a pair of ImageMetadata. Note that the CanCompute() method is first called, and that an exception will be raised if computation can not be done.
This function reads both ImageMetadata support data and builds a transform that will exactly coregister the corresponding images.
|
static |
This function computes the offset in pan pixels for a pair of ImageMetadata. Note that the CanCompute() method is first called, and that an exception will be raised if computation can not be done.
|
virtual |
|
privatedelete |