Basic Image AlgorithmS Library
2.8.0
|
This class is used for parametrizing F- and H-matrices, generally for optimization purposes. More...
#include <Geometry/Parametrization.hh>
Public Member Functions | |
bool | FMatrixToParams (const BIAS::FMatrix &Mat, std::vector< double > &Params) |
parametizes an F-matrix to seven parameters More... | |
double | GetFScaling () |
double | GetHScaling () |
bool | HMatrixToParams (const BIAS::HMatrix &Mat, std::vector< double > &Params) |
parametizes an H-matrix to eight parameters More... | |
Parametrization () | |
bool | ParamsToFMatrix (BIAS::FMatrix &Mat, const std::vector< double > &Params) |
composes an F-matrix from the seven given parameters The deparametrization only works with the previously parametized values of 'FMatrixToParams', because some internally stored parameters are important for the correct composition. More... | |
bool | ParamsToHMatrix (BIAS::HMatrix &Mat, const std::vector< double > &Params) |
composes an H-matrix from the seven given parameters More... | |
~Parametrization () | |
Static Public Member Functions | |
static bool | EMatrixToParams (BIAS::EMatrix &Mat, Vector< double > &Params, std::vector< BIAS::HomgPoint2D > &inlier1, std::vector< BIAS::HomgPoint2D > &inlier2, bool UseQuaternion=false) |
parametizes an essential-matrix to five parameters More... | |
static bool | ParamsToEMatrix (BIAS::EMatrix &Mat, const Vector< double > &Params, bool UseQuaternion=false) |
composes an essential-matrix from the five given parameters More... | |
Protected Member Functions | |
double | GetBiggestAbsEntry () |
Find the biggest absolute entry of the upper left 2x2 submatrix of the internally stored F matrix member. More... | |
Protected Attributes | |
BIAS::FMatrix | F_ |
int | Fcol_ |
std::vector< double > | FParams_ |
int | Frow_ |
double | Fscale_ |
BIAS::HMatrix | H_ |
std::vector< double > | HParams_ |
double | Hscale_ |
This class is used for parametrizing F- and H-matrices, generally for optimization purposes.
Be sure to use one and the same instance of this class for parametrization and deparametrization of your matrix!!! This parametrization is needed during the MotionModelSelection which is part of my diploma thesis.
Definition at line 50 of file Parametrization.hh.
Parametrization::Parametrization | ( | ) |
Definition at line 36 of file Parametrization.cpp.
Parametrization::~Parametrization | ( | ) |
Definition at line 37 of file Parametrization.cpp.
|
static |
parametizes an essential-matrix to five parameters
Definition at line 252 of file Parametrization.cpp.
References BIAS::Vector3< T >::CoordEuclideanToSphere(), BIAS::RMatrixBase::GetQuaternion(), BIAS::RMatrixBase::GetRotationAxisAngle(), BIAS::EMatrix::GetRotationTranslation(), BIAS::Vector3< T >::NormL2(), BIAS::Vector3< T >::Set(), and TNT::Vector< T >::size().
bool Parametrization::FMatrixToParams | ( | const BIAS::FMatrix & | Mat, |
std::vector< double > & | Params | ||
) |
parametizes an F-matrix to seven parameters
Definition at line 39 of file Parametrization.cpp.
References BIAS::HomgPoint2D::Homogenize(), BIAS::Matrix3x3< T >::IsZero(), and BIAS::Matrix3x3< T >::Scale().
Referenced by BIAS::FMatrixEstimation::Optimize().
|
protected |
Find the biggest absolute entry of the upper left 2x2 submatrix of the internally stored F matrix member.
The position of this element is stored internally and used for the composition of the F matrix in ParamsToFMatrix.
Definition at line 236 of file Parametrization.cpp.
|
inline |
Definition at line 99 of file Parametrization.hh.
|
inline |
Definition at line 100 of file Parametrization.hh.
bool Parametrization::HMatrixToParams | ( | const BIAS::HMatrix & | Mat, |
std::vector< double > & | Params | ||
) |
parametizes an H-matrix to eight parameters
Definition at line 164 of file Parametrization.cpp.
References BIAS::Matrix3x3< T >::IsZero().
Referenced by BIAS::HMatrixEstimation::Optimize().
|
static |
composes an essential-matrix from the five given parameters
Definition at line 301 of file Parametrization.cpp.
References BIAS::Vector3< T >::CoordSphereToEuclidean(), BIAS::Matrix3x3< T >::NormFrobenius(), BIAS::Vector3< T >::NormL2(), BIAS::FMatrixBase::Set(), BIAS::RMatrixBase::Set(), BIAS::RMatrixBase::SetFromQuaternion(), BIAS::Vector< T >::Size(), and TNT::Vector< T >::size().
bool Parametrization::ParamsToFMatrix | ( | BIAS::FMatrix & | Mat, |
const std::vector< double > & | Params | ||
) |
composes an F-matrix from the seven given parameters The deparametrization only works with the previously parametized values of 'FMatrixToParams', because some internally stored parameters are important for the correct composition.
Definition at line 101 of file Parametrization.cpp.
bool Parametrization::ParamsToHMatrix | ( | BIAS::HMatrix & | Mat, |
const std::vector< double > & | Params | ||
) |
composes an H-matrix from the seven given parameters
Definition at line 202 of file Parametrization.cpp.
Referenced by BIAS::HMatrixEstimation::HErrorFunction_(), and BIAS::HMatrixEstimation::Optimize().
|
protected |
Definition at line 104 of file Parametrization.hh.
|
protected |
Definition at line 109 of file Parametrization.hh.
|
protected |
Definition at line 105 of file Parametrization.hh.
|
protected |
Definition at line 109 of file Parametrization.hh.
|
protected |
Definition at line 123 of file Parametrization.hh.
|
protected |
Definition at line 112 of file Parametrization.hh.
|
protected |
Definition at line 113 of file Parametrization.hh.
|
protected |
Definition at line 124 of file Parametrization.hh.