Basic Image AlgorithmS Library
2.8.0
|
analytic properties of affine image warp More...
#include <Image/TextureTransformAffine.hh>
Public Member Functions | |
virtual TextureTransformAffine * | Clone () const |
virtual covariant copy constructor, caller must eventually destroy the created object More... | |
void | ComposeWithInverseDeltaP (const Vector< double > &deltaP) |
concatenate *this and an inverse transform with param deltaP and save new parameter vector to *this. More... | |
Vector< double > | ExtractParameters (const Matrix3x3< double > &A) const |
virtual Vector< double > | GetInverseParameters () const |
returns parameter vector which undoes the current warp More... | |
const Vector2< double > & | GetOrigin () const |
origin relative to which rotation and scale is performed More... | |
void | GetParameters (Vector< double > &p) const |
get the current parameter vector More... | |
void | InterpretParameters (const Vector< double > &p, double &A00, double &A01, double &A10, double &A11, double &tx, double &ty) |
set up A and t from parameters More... | |
int | MapBackward (const HomgPoint2D &sink, HomgPoint2D &src) const |
map a point in image "source" to a point in image "sink" More... | |
int | MapForward (const HomgPoint2D &src, HomgPoint2D &sink) const |
map a point in image "source" to a point in image "sink" More... | |
int | ParameterInversionJacobian (Matrix< double > &Jac) const |
compute parameters for inverse operation and obtain the jacobian of the inverse parameters with respect to the original parameters for error propagation More... | |
int | ParameterJacobianBackward (Matrix< double > &Jac, const HomgPoint2D &sink) |
transformed position change when parameters change More... | |
int | ParameterJacobianForward (Matrix< double > &Jac, const HomgPoint2D &src) |
transformed position change when parameters change More... | |
bool | ParameterJacobianIsConstant () const |
the jacobian depends on x More... | |
void | SetOrigin (const Vector2< double > &origin) |
origin relative to which rotation and scale is performed More... | |
void | SetParameters (const Vector< double > &p) |
a11-1, a12, a21, a22-1, dx, dy More... | |
int | TextureJacobianBackward (const HomgPoint2D &sink, Matrix2x2< double > &Jac) const |
shape change of the local region when mapping backward More... | |
int | TextureJacobianForward (const HomgPoint2D &src, Matrix2x2< double > &Jac) const |
shape change of the local region when mapping forward More... | |
virtual bool | TextureJacobianIsConstant () const |
local warp is the same at any image position More... | |
TextureTransformAffine () | |
virtual | ~TextureTransformAffine () |
Protected Attributes | |
Matrix2x2< double > | A_ |
cached local warp and inverse More... | |
Matrix2x2< double > | Ainv_ |
Vector2< double > | origin_ |
origin relative to which rotation and scale is performed More... | |
Vector< double > | P_ |
current set of parameters, see SetParameters for meaning More... | |
double | tx_ |
cached displacement and inverse More... | |
double | txinv_ |
double | ty_ |
double | tyinv_ |
analytic properties of affine image warp
See BIAS::TextureTransform for explanation of methods.
Definition at line 40 of file TextureTransformAffine.hh.
|
inline |
Definition at line 42 of file TextureTransformAffine.hh.
|
inlinevirtual |
Definition at line 47 of file TextureTransformAffine.hh.
|
inlinevirtual |
virtual covariant copy constructor, caller must eventually destroy the created object
Implements BIAS::TextureTransform.
Definition at line 109 of file TextureTransformAffine.hh.
|
virtual |
concatenate *this and an inverse transform with param deltaP and save new parameter vector to *this.
Apart from very simple transformations like displacement THIS IS NOT A SIMPLE ADDITION but rather a multiplication-like operation!
This function is particularly important for inverse compositional image alignment (KLT)
Implements BIAS::TextureTransform.
Definition at line 202 of file TextureTransformAffine.cpp.
References BIAS::SVD::Invert(), and BIAS::MatrixZero.
|
inline |
Definition at line 128 of file TextureTransformAffine.hh.
|
inlinevirtual |
returns parameter vector which undoes the current warp
Reimplemented from BIAS::TextureTransform.
Definition at line 86 of file TextureTransformAffine.hh.
References BIAS::MatrixZero.
|
inline |
origin relative to which rotation and scale is performed
Definition at line 105 of file TextureTransformAffine.hh.
|
inlineinherited |
get the current parameter vector
Definition at line 83 of file TextureTransform.hh.
Referenced by BIAS::ImageAlignment::Align().
|
inline |
set up A and t from parameters
Definition at line 114 of file TextureTransformAffine.hh.
References BIAS::Vector< T >::Size().
|
virtual |
map a point in image "source" to a point in image "sink"
Implements BIAS::TextureTransform.
Definition at line 115 of file TextureTransformAffine.cpp.
|
virtual |
map a point in image "source" to a point in image "sink"
Implements BIAS::TextureTransform.
Definition at line 106 of file TextureTransformAffine.cpp.
|
virtual |
compute parameters for inverse operation and obtain the jacobian of the inverse parameters with respect to the original parameters for error propagation
Reimplemented from BIAS::TextureTransform.
Definition at line 37 of file TextureTransformAffine.cpp.
References BIAS::Matrix< T >::GetData(), and TNT::Matrix< T >::newsize().
|
virtual |
transformed position change when parameters change
Reimplemented from BIAS::TextureTransform.
Definition at line 140 of file TextureTransformAffine.cpp.
References TNT::Matrix< T >::newsize(), and BIAS::Matrix< T >::SetZero().
|
virtual |
transformed position change when parameters change
Reimplemented from BIAS::TextureTransform.
Definition at line 125 of file TextureTransformAffine.cpp.
References TNT::Matrix< T >::newsize(), and BIAS::Matrix< T >::SetZero().
|
inlinevirtual |
the jacobian depends on x
Implements BIAS::TextureTransform.
Definition at line 75 of file TextureTransformAffine.hh.
|
inline |
origin relative to which rotation and scale is performed
Definition at line 99 of file TextureTransformAffine.hh.
|
virtual |
a11-1, a12, a21, a22-1, dx, dy
Implements BIAS::TextureTransform.
Definition at line 182 of file TextureTransformAffine.cpp.
References BIAS::Vector< T >::Size().
|
inlinevirtual |
shape change of the local region when mapping backward
Reimplemented from BIAS::TextureTransform.
Definition at line 59 of file TextureTransformAffine.hh.
|
inlinevirtual |
shape change of the local region when mapping forward
Reimplemented from BIAS::TextureTransform.
Definition at line 53 of file TextureTransformAffine.hh.
|
inlinevirtual |
local warp is the same at any image position
Implements BIAS::TextureTransform.
Definition at line 66 of file TextureTransformAffine.hh.
|
protected |
cached local warp and inverse
Definition at line 144 of file TextureTransformAffine.hh.
|
protected |
Definition at line 144 of file TextureTransformAffine.hh.
|
protected |
origin relative to which rotation and scale is performed
Definition at line 148 of file TextureTransformAffine.hh.
|
protectedinherited |
current set of parameters, see SetParameters for meaning
Definition at line 145 of file TextureTransform.hh.
Referenced by BIAS::TextureTransformDisparity::ComposeWithInverseDeltaP(), BIAS::TextureTransformDisplacement::ComposeWithInverseDeltaP(), BIAS::TextureTransformRotation::ComposeWithInverseDeltaP(), BIAS::TextureTransformEuclidian::ComposeWithInverseDeltaP(), BIAS::TextureTransformDisparity::MapBackward(), BIAS::TextureTransformDisplacement::MapBackward(), BIAS::TextureTransformEuclidian::MapBackward(), BIAS::TextureTransformDisparity::MapForward(), BIAS::TextureTransformDisplacement::MapForward(), BIAS::TextureTransformEuclidian::ParameterInversionJacobian(), BIAS::TextureTransformRotation::ParameterJacobianBackward(), BIAS::TextureTransformEuclidian::ParameterJacobianBackward(), BIAS::TextureTransformSimilar::ParameterJacobianBackward(), BIAS::TextureTransformRotation::ParameterJacobianForward(), BIAS::TextureTransformEuclidian::ParameterJacobianForward(), BIAS::TextureTransformSimilar::ParameterJacobianForward(), BIAS::TextureTransformRotation::SetOrigin(), BIAS::TextureTransformSimilar::SetOrigin(), BIAS::TextureTransformEuclidian::SetOrigin(), BIAS::TextureTransformDisparity::SetParameters(), BIAS::TextureTransformDisplacement::SetParameters(), BIAS::TextureTransformRotation::SetParameters(), BIAS::TextureTransformEuclidian::SetParameters(), BIAS::TextureTransformSimilar::SetParameters(), BIAS::TextureTransformDisparity::TextureTransformDisparity(), BIAS::TextureTransformDisplacement::TextureTransformDisplacement(), BIAS::TextureTransformEuclidian::TextureTransformEuclidian(), BIAS::TextureTransformRotation::TextureTransformRotation(), and BIAS::TextureTransformSimilar::TextureTransformSimilar().
|
protected |
cached displacement and inverse
Definition at line 146 of file TextureTransformAffine.hh.
|
protected |
Definition at line 146 of file TextureTransformAffine.hh.
|
protected |
Definition at line 146 of file TextureTransformAffine.hh.
|
protected |
Definition at line 146 of file TextureTransformAffine.hh.