Basic Image AlgorithmS Library
2.8.0
|
class Normalization Functions, e.g. More...
#include <Base/Geometry/Normalization.hh>
Public Member Functions | |
int | Hartley (const std::vector< HomgPoint2D > &Points, std::vector< HomgPoint2D > &NormPoints, KMatrix &Normalization) const |
linearly transform Points with 3x3 matrix, such that they have mean zero and stddev sqrt(2) More... | |
int | Hartley (const std::vector< HomgPoint3D > &Points, std::vector< HomgPoint3D > &NormPoints, Matrix4x4< double > &normMatrix) const |
Normalization () | |
default constructor, does nothing More... | |
int | Woelk (const std::vector< HomgPoint2D > &Points, std::vector< HomgPoint2D > &NormPoints, Matrix3x3< double > &Normalization) const |
normalization for fisheye cameras wher points may have a w component = 0 More... | |
|
inline |
default constructor, does nothing
Definition at line 51 of file Normalization.hh.
int Normalization::Hartley | ( | const std::vector< HomgPoint2D > & | Points, |
std::vector< HomgPoint2D > & | NormPoints, | ||
KMatrix & | Normalization | ||
) | const |
linearly transform Points with 3x3 matrix, such that they have mean zero and stddev sqrt(2)
Points | original (homogenized) points |
NormPoints | normalized (homogenized) points correponding to Points |
Normalization | matrix used for normalization |
Definition at line 102 of file Normalization.cpp.
References BIAS::HomgPoint2D::Homogenize(), BIAS::Matrix3x3< T >::Mult(), and BIAS::Matrix3x3< T >::SetIdentity().
int Normalization::Hartley | ( | const std::vector< HomgPoint3D > & | Points, |
std::vector< HomgPoint3D > & | NormPoints, | ||
Matrix4x4< double > & | normMatrix | ||
) | const |
Definition at line 39 of file Normalization.cpp.
References BIAS::Matrix4x4< T >::Mult(), and BIAS::Matrix4x4< T >::SetIdentity().
int Normalization::Woelk | ( | const std::vector< HomgPoint2D > & | Points, |
std::vector< HomgPoint2D > & | NormPoints, | ||
Matrix3x3< double > & | Normalization | ||
) | const |
normalization for fisheye cameras wher points may have a w component = 0
Linearly transform Points with 3x3 matrix, such that their zero is (0,0,1) using a rotation matrix. If the average angle of the points with (0,0,1) is less than 60 deg, the points are scaled such that afterwards their average angle with (0,0,1) is as close aspossible to 60 deg subject to the constrant that no point has an angle greater than 80deg with (0,0,1)
Points | original points, can be at infinity |
NormPoints | normalized points correponding to Points |
Normalization | matrix used for normalization |
Definition at line 163 of file Normalization.cpp.
References BIAS::Vector3< T >::CrossProduct(), BIAS::Equal(), BIAS::MatrixIdentity, BIAS::Matrix3x3< T >::Mult(), BIAS::Vector3< T >::NormL2(), BIAS::Vector3< T >::ScalarProduct(), BIAS::Vector3< T >::Set(), and BIAS::RMatrixBase::Set().