Basic Image AlgorithmS Library
2.8.0
|
analytic properties of Euclidian image warp (rot. More...
#include <Image/TextureTransformEuclidian.hh>
Public Member Functions | |
virtual TextureTransformEuclidian * | 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... | |
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... | |
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 &src) |
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) |
rotation(rad), scale-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... | |
TextureTransformEuclidian () | |
virtual | ~TextureTransformEuclidian () |
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 Euclidian image warp (rot.
+displ.)
See BIAS::TextureTransform for explanation of methods.
Definition at line 40 of file TextureTransformEuclidian.hh.
|
inline |
Definition at line 42 of file TextureTransformEuclidian.hh.
References TNT::Vector< T >::newsize(), and BIAS::TextureTransform::P_.
Referenced by Clone().
|
inlinevirtual |
Definition at line 49 of file TextureTransformEuclidian.hh.
|
inlinevirtual |
virtual covariant copy constructor, caller must eventually destroy the created object
Implements BIAS::TextureTransform.
Definition at line 185 of file TextureTransformEuclidian.hh.
References TextureTransformEuclidian().
|
inlinevirtual |
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 158 of file TextureTransformEuclidian.hh.
References A_, BIAS::MatrixIdentity, origin_, BIAS::TextureTransform::P_, SetParameters(), tx_, and ty_.
|
inlinevirtualinherited |
returns parameter vector which undoes the current warp
Reimplemented in BIAS::TextureTransformAffine.
Definition at line 130 of file TextureTransform.hh.
Referenced by BIAS::ImageAlignment::Align().
|
inline |
origin relative to which rotation and scale is performed
Definition at line 220 of file TextureTransformEuclidian.hh.
References origin_.
|
inlineinherited |
get the current parameter vector
Definition at line 83 of file TextureTransform.hh.
Referenced by BIAS::ImageAlignment::Align().
|
inlinevirtual |
map a point in image "source" to a point in image "sink"
Implements BIAS::TextureTransform.
Definition at line 60 of file TextureTransformEuclidian.hh.
References A_, Ainv_, BIAS::Equal(), MapForward(), BIAS::TextureTransform::P_, txinv_, and tyinv_.
|
inlinevirtual |
map a point in image "source" to a point in image "sink"
Implements BIAS::TextureTransform.
Definition at line 51 of file TextureTransformEuclidian.hh.
Referenced by MapBackward().
|
inlinevirtual |
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 189 of file TextureTransformEuclidian.hh.
References TNT::Matrix< T >::newsize(), BIAS::TextureTransform::P_, and BIAS::Matrix< T >::SetZero().
|
inlinevirtual |
transformed position change when parameters change
Reimplemented from BIAS::TextureTransform.
Definition at line 111 of file TextureTransformEuclidian.hh.
References TNT::Matrix< T >::newsize(), origin_, and BIAS::TextureTransform::P_.
|
inlinevirtual |
transformed position change when parameters change
Reimplemented from BIAS::TextureTransform.
Definition at line 92 of file TextureTransformEuclidian.hh.
References TNT::Matrix< T >::newsize(), origin_, and BIAS::TextureTransform::P_.
|
inlinevirtual |
the jacobian depends on x
Implements BIAS::TextureTransform.
Definition at line 134 of file TextureTransformEuclidian.hh.
|
inline |
origin relative to which rotation and scale is performed
Definition at line 214 of file TextureTransformEuclidian.hh.
References origin_, BIAS::TextureTransform::P_, and SetParameters().
|
inlinevirtual |
rotation(rad), scale-1, dx,dy.
All parameters with respect to origin_! x' = A*(x-origin)+d+origin where A==(s+1)[cos -sin; sin cos]
Implements BIAS::TextureTransform.
Definition at line 141 of file TextureTransformEuclidian.hh.
References A_, Ainv_, BIAS::Matrix2x2< T >::Invert(), origin_, BIAS::TextureTransform::P_, BIAS::Vector< T >::Size(), tx_, txinv_, ty_, and tyinv_.
Referenced by ComposeWithInverseDeltaP(), and SetOrigin().
|
inlinevirtual |
shape change of the local region when mapping backward
Reimplemented from BIAS::TextureTransform.
Definition at line 83 of file TextureTransformEuclidian.hh.
References Ainv_.
|
inlinevirtual |
shape change of the local region when mapping forward
Reimplemented from BIAS::TextureTransform.
Definition at line 77 of file TextureTransformEuclidian.hh.
References A_.
|
inlinevirtual |
local warp is the same at any image position
Implements BIAS::TextureTransform.
Definition at line 90 of file TextureTransformEuclidian.hh.
|
protected |
cached local warp and inverse
Definition at line 226 of file TextureTransformEuclidian.hh.
Referenced by ComposeWithInverseDeltaP(), MapBackward(), MapForward(), SetParameters(), and TextureJacobianForward().
|
protected |
Definition at line 226 of file TextureTransformEuclidian.hh.
Referenced by MapBackward(), SetParameters(), and TextureJacobianBackward().
|
protected |
origin relative to which rotation and scale is performed
Definition at line 230 of file TextureTransformEuclidian.hh.
Referenced by ComposeWithInverseDeltaP(), GetOrigin(), ParameterJacobianBackward(), ParameterJacobianForward(), SetOrigin(), and SetParameters().
|
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(), ComposeWithInverseDeltaP(), BIAS::TextureTransformDisparity::MapBackward(), BIAS::TextureTransformDisplacement::MapBackward(), MapBackward(), BIAS::TextureTransformDisparity::MapForward(), BIAS::TextureTransformDisplacement::MapForward(), ParameterInversionJacobian(), BIAS::TextureTransformRotation::ParameterJacobianBackward(), ParameterJacobianBackward(), BIAS::TextureTransformSimilar::ParameterJacobianBackward(), BIAS::TextureTransformRotation::ParameterJacobianForward(), BIAS::TextureTransformSimilar::ParameterJacobianForward(), ParameterJacobianForward(), BIAS::TextureTransformRotation::SetOrigin(), BIAS::TextureTransformSimilar::SetOrigin(), SetOrigin(), BIAS::TextureTransformDisparity::SetParameters(), BIAS::TextureTransformDisplacement::SetParameters(), BIAS::TextureTransformRotation::SetParameters(), SetParameters(), BIAS::TextureTransformSimilar::SetParameters(), BIAS::TextureTransformDisparity::TextureTransformDisparity(), BIAS::TextureTransformDisplacement::TextureTransformDisplacement(), TextureTransformEuclidian(), BIAS::TextureTransformRotation::TextureTransformRotation(), and BIAS::TextureTransformSimilar::TextureTransformSimilar().
|
protected |
cached displacement and inverse
Definition at line 228 of file TextureTransformEuclidian.hh.
Referenced by ComposeWithInverseDeltaP(), MapForward(), and SetParameters().
|
protected |
Definition at line 228 of file TextureTransformEuclidian.hh.
Referenced by MapBackward(), and SetParameters().
|
protected |
Definition at line 228 of file TextureTransformEuclidian.hh.
Referenced by ComposeWithInverseDeltaP(), MapForward(), and SetParameters().
|
protected |
Definition at line 228 of file TextureTransformEuclidian.hh.
Referenced by MapBackward(), and SetParameters().