Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BIAS::CovMatrix3x3 Class Reference

class for 3x3 covariance matrices More...

#include <Geometry/CovMatrix3x3.hh>

+ Inheritance diagram for BIAS::CovMatrix3x3:
+ Collaboration diagram for BIAS::CovMatrix3x3:

Public Member Functions

 CovMatrix3x3 ()
 
 CovMatrix3x3 (const CovMatrix3x3 &mat)
 
 CovMatrix3x3 (const MatrixInitType &i)
 
 CovMatrix3x3 (const Matrix3x3< COVMATRIX3X3_TYPE > &mat)
 
void GetAbsMaxMin (COVMATRIX3X3_TYPE &max, COVMATRIX3X3_TYPE &min) const
 
void GetColumn (const unsigned int col, Vector3< COVMATRIX3X3_TYPE > &r) const
 extract one column ('Spalte') from this matrix (for convenience) More...
 
BIAS::Vector3< COVMATRIX3X3_TYPE > GetColumn (const unsigned int col) const
 
COVMATRIX3X3_TYPE * GetData ()
 
const COVMATRIX3X3_TYPE * GetData () const
 
COVMATRIX3X3_TYPE GetDeterminant () const
 returns the Determinant |A| of this More...
 
HomgPoint3DCov GetHomogenized () const
 Type conversion for homogenous covariances. More...
 
int GetInverse (Matrix3x3< COVMATRIX3X3_TYPE > &inv) const
 Matrix inversion: inverts this and stores resulty in argument inv. More...
 
COVMATRIX3X3_TYPE GetMax () const
 
void GetMaxMin (COVMATRIX3X3_TYPE &max, COVMATRIX3X3_TYPE &min) const
 return biggest and smallest entry More...
 
COVMATRIX3X3_TYPE GetMin () const
 
unsigned GetNumElements () const
 
int GetPCA (Vector3< COVMATRIX3X3_TYPE > &S, Matrix3x3< COVMATRIX3X3_TYPE > &VT)
 
void GetRow (const unsigned int row, Vector3< COVMATRIX3X3_TYPE > &r) const
 extract one row ('Zeile') from ths matrix (for convenience) More...
 
Vector3< COVMATRIX3X3_TYPE > GetRow (const unsigned int row) const
 
int GetS (Vector3< COVMATRIX3X3_TYPE > &S)
 
int GetSearchArea (PMatrixBase &P, HomgPoint3D &point3D, Vector2< double > &x, Vector2< double > &y, double scale)
 Computes the bounding box x=[xmin,xmax] , y=[ymin,ymax] in image as determined from the projected covariance matrix covmat. More...
 
int GetSearchArea (PMatrixBase &P, HomgPoint3D &point3D, Vector2< double > &x, Vector2< double > &y, double scale, double minSearchArea)
 Computes the bounding box x=[xmin,xmax] , y=[ymin,ymax] in image as determined from the projected covariance matrix covmat. More...
 
void InvalidatePCA ()
 Call this function to indicate that the matrix fields have changed The saved PCA is declared invalid and the next call to GetPCA forces a recomputation. More...
 
int InvertIP ()
 In place matrix conversion. More...
 
bool IsIdentity (const COVMATRIX3X3_TYPEeps=std::numeric_limits< COVMATRIX3X3_TYPE >::epsilon()) const
 
bool IsZero (const COVMATRIX3X3_TYPEeps=std::numeric_limits< COVMATRIX3X3_TYPE >::epsilon()) const
 
bool Load (const std::string &fname)
 
void MakeSymmetric ()
 
void Mult (const Vector3< COVMATRIX3X3_TYPE > &argvec, Vector3< COVMATRIX3X3_TYPE > &destvec) const
 matrix - vector multiplicate this matrix with Vector3, storing the result in destvec calculates: destvec = (this Matrix) * argvec More...
 
void Mult (const Matrix3x3< COVMATRIX3X3_TYPE > &argmat, Matrix3x3< COVMATRIX3X3_TYPE > &destmat) const
 matrix-matrix multiplication with other Matrix3x3, storing the result in destmat calculates: destmat = (this mat) * argmat More...
 
void Mult (const Matrix3x4< COVMATRIX3X3_TYPE > &argmat, Matrix3x4< COVMATRIX3X3_TYPE > &destmat) const
 
COVMATRIX3X3_TYPE Normalize ()
 divide this by biggest absolute entry, returns biggest entry More...
 
double NormFrobenius () const
 
COVMATRIX3X3_TYPE NormL1 () const
 
double NormL2 () const
 
bool operator!= (const Matrix3x3< COVMATRIX3X3_TYPE > &arg) const
 
Matrix3x3< COVMATRIX3X3_TYPE > & operator*= (const Matrix3x3< COVMATRIX3X3_TYPE > &arg)
 woelk 11/2007 (c) www.vision-n.de More...
 
Matrix3x3< COVMATRIX3X3_TYPE > & operator*= (const COVMATRIX3X3_TYPE &arg)
 woelk 11/2007 (c) www.vision-n.de More...
 
Matrix3x3< COVMATRIX3X3_TYPE > & operator+= (const Matrix3x3< COVMATRIX3X3_TYPE > &arg)
 
Matrix3x3< COVMATRIX3X3_TYPE > & operator-= (const Matrix3x3< COVMATRIX3X3_TYPE > &arg)
 
Matrix3x3< COVMATRIX3X3_TYPE > & operator/= (const COVMATRIX3X3_TYPE &arg)
 
CovMatrix3x3operator= (const CovMatrix3x3 &mat)
 
CovMatrix3x3operator= (const BIAS::Matrix3x3< COVMATRIX3X3_TYPE > &mat)
 
bool operator== (const Matrix3x3< COVMATRIX3X3_TYPE > &arg) const
 
COVMATRIX3X3_TYPE * operator[] (const unsigned row)
 
const COVMATRIX3X3_TYPE * operator[] (const unsigned row) const
 
bool Save (const std::string &fname) const
 
void Scale (const COVMATRIX3X3_TYPE &scalar, Matrix3x3< COVMATRIX3X3_TYPE > &destmat) const
 scalar-matrix multiplication More...
 
void SetAsCrossProductMatrix (const Vector3< COVMATRIX3X3_TYPE > &vec)
 Sets matrix from vector as cross product matrix of this vector. More...
 
void SetAsCrossProductMatrix (const COVMATRIX3X3_TYPE &x, const COVMATRIX3X3_TYPE &y, const COVMATRIX3X3_TYPE &z)
 Sets matrix from vector as cross product matrix of a vector. More...
 
void SetColumn (const unsigned int col, const Vector3< COVMATRIX3X3_TYPE > &c)
 
void SetFromColumnVectors (const BIAS::Vector3< COVMATRIX3X3_TYPE > &v0, const BIAS::Vector3< COVMATRIX3X3_TYPE > &v1, const BIAS::Vector3< COVMATRIX3X3_TYPE > &v2)
 set this matrix from 3 vectors each representating a column More...
 
void SetFromHomogenized (const HomgPoint3DCov &ch, const HomgPoint3D &ph)
 Type conversion for homogenous covariances. More...
 
void SetFromRowVectors (const BIAS::Vector3< COVMATRIX3X3_TYPE > &v0, const BIAS::Vector3< COVMATRIX3X3_TYPE > &v1, const BIAS::Vector3< COVMATRIX3X3_TYPE > &v2)
 set this matrix from 3 vectors, each representating a row More...
 
void SetFromVector (const TNT::Vector< COVMATRIX3X3_TYPE > &vec)
 sets the diagonalelements of this 3x3 Matrix rowwise with the values of the 9 (x1) vector More...
 
void SetIdentity ()
 set the elements of this matrix to the identity matrix (possibly overriding the inherited method) More...
 
void SetRow (const unsigned int row, const Vector3< COVMATRIX3X3_TYPE > &r)
 
void SetZero ()
 
double Trace () const
 returns matrix's trace. More...
 
Matrix3x3< COVMATRIX3X3_TYPE > Transpose () const
 returns transposed matrix tested 12.06.2002 More...
 
void Transpose (const Matrix3x3< COVMATRIX3X3_TYPE > &arg)
 sets this as transposed arg, fw More...
 
void TransposedMult (const Vector3< COVMATRIX3X3_TYPE > &argvec, Vector3< COVMATRIX3X3_TYPE > &destvec) const
 multiplies matrix from left with transposed argvec, resulting in transposed destvec More...
 
void TransposeIP ()
 tranpose this matrix "in place" example: 0 1 2 –> 0 3 6 3 4 5 –> 1 4 7 6 7 8 –> 2 5 8 More...
 
 ~CovMatrix3x3 ()
 

Protected Member Functions

int _Decompose ()
 

Protected Attributes

bool _IsDecomposed
 flag indicating whether the stored PCA is still valid More...
 
Vector3< COVMATRIX3X3_TYPE > _S
 
SVD _svd
 
Matrix3x3< COVMATRIX3X3_TYPE > _U
 
Matrix3x3< COVMATRIX3X3_TYPE > _VT
 
Matrix3x3< COVMATRIX3X3_TYPE > ConsistencyBackup_
 saves matrix fields to make consistency checks possible later More...
 
COVMATRIX3X3_TYPE Data_ [9]
 

Detailed Description

class for 3x3 covariance matrices

This class represents a 3x3 convariance matrix with the capability of doing a PCA (principle component analysis).

Attention
For performance reasons, the PCA is only done once and saved, subsequent calls to GetPCA() only return a copy. If the covariance matrix is changed, you must call InvalidatePCA() to force a recomputation at the next GetPCA()-Call !
Examples:
ExampleConic.cpp, ExampleThreeDOutVRML.cpp, and ExampleTriangulate.cpp.

Definition at line 50 of file CovMatrix3x3.hh.

Constructor & Destructor Documentation

CovMatrix3x3::CovMatrix3x3 ( )

Definition at line 32 of file CovMatrix3x3.cpp.

References _IsDecomposed.

CovMatrix3x3::~CovMatrix3x3 ( )

Definition at line 37 of file CovMatrix3x3.cpp.

CovMatrix3x3::CovMatrix3x3 ( const CovMatrix3x3 mat)

Definition at line 39 of file CovMatrix3x3.cpp.

BIAS::CovMatrix3x3::CovMatrix3x3 ( const MatrixInitType i)
inlineexplicit

Definition at line 59 of file CovMatrix3x3.hh.

BIAS::CovMatrix3x3::CovMatrix3x3 ( const Matrix3x3< COVMATRIX3X3_TYPE > &  mat)
inline

Definition at line 62 of file CovMatrix3x3.hh.

Member Function Documentation

int CovMatrix3x3::_Decompose ( )
protected
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetAbsMaxMin ( COVMATRIX3X3_TYPE &  max,
COVMATRIX3X3_TYPE &  min 
) const
inherited
Author
woelk 11/2007 (c) www.vision-n.de
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetColumn ( const unsigned int  col,
Vector3< COVMATRIX3X3_TYPE > &  r 
) const
inherited

extract one column ('Spalte') from this matrix (for convenience)

BIAS::Vector3<COVMATRIX3X3_TYPE > BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetColumn ( const unsigned int  col) const
inlineinherited

Definition at line 202 of file Matrix3x3.hh.

COVMATRIX3X3_TYPE * BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetData ( )
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de

Definition at line 99 of file Matrix3x3.hh.

Referenced by GetPCA(), and GetS().

const COVMATRIX3X3_TYPE * BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetData ( ) const
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de

Definition at line 103 of file Matrix3x3.hh.

COVMATRIX3X3_TYPE BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetDeterminant ( ) const
inherited

returns the Determinant |A| of this

Author
grest
HomgPoint3DCov BIAS::CovMatrix3x3::GetHomogenized ( ) const
inline

Type conversion for homogenous covariances.

Author
streckel 05/2006

Definition at line 116 of file CovMatrix3x3.hh.

int BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetInverse ( Matrix3x3< COVMATRIX3X3_TYPE > &  inv) const
inherited

Matrix inversion: inverts this and stores resulty in argument inv.

Returns -1 if determinant is zero, 0 on success.

Author
woelk 07/2005
COVMATRIX3X3_TYPE BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetMax ( ) const
inherited
Author
woelk 11/2007 (c) www.vision-n.de
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetMaxMin ( COVMATRIX3X3_TYPE &  max,
COVMATRIX3X3_TYPE &  min 
) const
inherited

return biggest and smallest entry

Author
woelk 08/2004
COVMATRIX3X3_TYPE BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetMin ( ) const
inherited
Author
woelk 11/2007 (c) www.vision-n.de
unsigned BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetNumElements ( ) const
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de

Definition at line 107 of file Matrix3x3.hh.

int CovMatrix3x3::GetPCA ( Vector3< COVMATRIX3X3_TYPE > &  S,
Matrix3x3< COVMATRIX3X3_TYPE > &  VT 
)
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetRow ( const unsigned int  row,
Vector3< COVMATRIX3X3_TYPE > &  r 
) const
inherited

extract one row ('Zeile') from ths matrix (for convenience)

Vector3<COVMATRIX3X3_TYPE > BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::GetRow ( const unsigned int  row) const
inlineinherited

Definition at line 196 of file Matrix3x3.hh.

int CovMatrix3x3::GetS ( Vector3< COVMATRIX3X3_TYPE > &  S)
int CovMatrix3x3::GetSearchArea ( PMatrixBase P,
HomgPoint3D point3D,
Vector2< double > &  x,
Vector2< double > &  y,
double  scale 
)

Computes the bounding box x=[xmin,xmax] , y=[ymin,ymax] in image as determined from the projected covariance matrix covmat.

multiplied with scale

Author
frahm, woelk 02 2003

Definition at line 123 of file CovMatrix3x3.cpp.

References GetPCA(), BIAS::Matrix3x3< T >::GetRow(), BIAS::HomgPoint3D::Homogenize(), BIAS::HomgPoint2D::Homogenize(), BIAS::HomgPoint3D::Set(), BIAS::Vector3< T >::Set(), and BIAS::Vector2< T >::Set().

int CovMatrix3x3::GetSearchArea ( PMatrixBase P,
HomgPoint3D point3D,
Vector2< double > &  x,
Vector2< double > &  y,
double  scale,
double  minSearchArea 
)

Computes the bounding box x=[xmin,xmax] , y=[ymin,ymax] in image as determined from the projected covariance matrix covmat.

A min Search Area can be specified with minSearchArea(which is the radius of the uncertainty sphere).

Author
Daniel Grest, Feb 2003

A min Search Area can be specified with minSearchArea(which is the radius of the uncertainty sphere).

Definition at line 186 of file CovMatrix3x3.cpp.

References GetPCA(), BIAS::Matrix3x3< T >::GetRow(), BIAS::HomgPoint3D::Homogenize(), BIAS::HomgPoint2D::Homogenize(), BIAS::HomgPoint3D::Set(), BIAS::Vector3< T >::Set(), BIAS::Vector2< T >::Set(), and BIAS::Vector3< T >::SetZero().

void BIAS::CovMatrix3x3::InvalidatePCA ( )
inline

Call this function to indicate that the matrix fields have changed The saved PCA is declared invalid and the next call to GetPCA forces a recomputation.

Author
koeser 09/2003

Definition at line 112 of file CovMatrix3x3.hh.

int BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::InvertIP ( )
inherited

In place matrix conversion.

Returns -1 if determinant is zero, 0 on success.

Author
woelk 07/2005
bool BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::IsIdentity ( const COVMATRIX3X3_TYPE  eps = std::numeric_limits<T>::epsilon()) const
inherited
Author
woelk 12/2007 (c) www.vision-n.de
bool BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::IsZero ( const COVMATRIX3X3_TYPE  eps = std::numeric_limits<T>::epsilon()) const
inherited
Author
woelk 11/2007 (c) www.vision-n.de
bool BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Load ( const std::string &  fname)
inherited
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::MakeSymmetric ( )
inherited
Author
woelk 11/2007 (c) www.vision-n.de
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Mult ( const Vector3< COVMATRIX3X3_TYPE > &  argvec,
Vector3< COVMATRIX3X3_TYPE > &  destvec 
) const
inlineinherited

matrix - vector multiplicate this matrix with Vector3, storing the result in destvec calculates: destvec = (this Matrix) * argvec

Author
Ingo Thomsen, Jan Woetzel untested (04/17/2002)
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Mult ( const Matrix3x3< COVMATRIX3X3_TYPE > &  argmat,
Matrix3x3< COVMATRIX3X3_TYPE > &  destmat 
) const
inlineinherited

matrix-matrix multiplication with other Matrix3x3, storing the result in destmat calculates: destmat = (this mat) * argmat

Author
Ingo Thomsen, Jan Woetzel untested (04/17/2002)
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Mult ( const Matrix3x4< COVMATRIX3X3_TYPE > &  argmat,
Matrix3x4< COVMATRIX3X3_TYPE > &  destmat 
) const
inherited
Author
woelk 06 2003
COVMATRIX3X3_TYPE BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Normalize ( )
inherited

divide this by biggest absolute entry, returns biggest entry

Author
woelk 11/2007 (c) www.vision-n.de
double BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::NormFrobenius ( ) const
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de
COVMATRIX3X3_TYPE BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::NormL1 ( ) const
inlineinherited
double BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::NormL2 ( ) const
inlineinherited

Definition at line 255 of file Matrix3x3.hh.

bool BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator!= ( const Matrix3x3< COVMATRIX3X3_TYPE > &  arg) const
inlineinherited

Definition at line 274 of file Matrix3x3.hh.

Matrix3x3<COVMATRIX3X3_TYPE >& BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator*= ( const Matrix3x3< COVMATRIX3X3_TYPE > &  arg)
inlineinherited

woelk 11/2007 (c) www.vision-n.de

Definition at line 143 of file Matrix3x3.hh.

Matrix3x3<COVMATRIX3X3_TYPE >& BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator*= ( const COVMATRIX3X3_TYPE &  arg)
inherited

woelk 11/2007 (c) www.vision-n.de

Matrix3x3<COVMATRIX3X3_TYPE >& BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator+= ( const Matrix3x3< COVMATRIX3X3_TYPE > &  arg)
inherited
Author
woelk 11/2007 (c) www.vision-n.de
Matrix3x3<COVMATRIX3X3_TYPE >& BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator-= ( const Matrix3x3< COVMATRIX3X3_TYPE > &  arg)
inherited
Author
woelk 11/2007 (c) www.vision-n.de
Matrix3x3<COVMATRIX3X3_TYPE >& BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator/= ( const COVMATRIX3X3_TYPE &  arg)
inherited
Author
woelk 11/2007 (c) www.vision-n.de
CovMatrix3x3 & CovMatrix3x3::operator= ( const CovMatrix3x3 mat)
CovMatrix3x3& BIAS::CovMatrix3x3::operator= ( const BIAS::Matrix3x3< COVMATRIX3X3_TYPE > &  mat)
inline

Definition at line 73 of file CovMatrix3x3.hh.

References BIAS::Matrix3x3< T >::operator=().

bool BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator== ( const Matrix3x3< COVMATRIX3X3_TYPE > &  arg) const
inherited
COVMATRIX3X3_TYPE * BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator[] ( const unsigned  row)
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de

Definition at line 91 of file Matrix3x3.hh.

const COVMATRIX3X3_TYPE * BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::operator[] ( const unsigned  row) const
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de

Definition at line 95 of file Matrix3x3.hh.

bool BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Save ( const std::string &  fname) const
inherited
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Scale ( const COVMATRIX3X3_TYPE &  scalar,
Matrix3x3< COVMATRIX3X3_TYPE > &  destmat 
) const
inlineinherited

scalar-matrix multiplication

void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetAsCrossProductMatrix ( const Vector3< COVMATRIX3X3_TYPE > &  vec)
inherited

Sets matrix from vector as cross product matrix of this vector.

void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetAsCrossProductMatrix ( const COVMATRIX3X3_TYPE &  x,
const COVMATRIX3X3_TYPE &  y,
const COVMATRIX3X3_TYPE &  z 
)
inherited

Sets matrix from vector as cross product matrix of a vector.

with components (x, y, z)

void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetColumn ( const unsigned int  col,
const Vector3< COVMATRIX3X3_TYPE > &  c 
)
inherited
Author
woelk 11/2007 (c) www.vision-n.de
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetFromColumnVectors ( const BIAS::Vector3< COVMATRIX3X3_TYPE > &  v0,
const BIAS::Vector3< COVMATRIX3X3_TYPE > &  v1,
const BIAS::Vector3< COVMATRIX3X3_TYPE > &  v2 
)
inherited

set this matrix from 3 vectors each representating a column

void BIAS::CovMatrix3x3::SetFromHomogenized ( const HomgPoint3DCov ch,
const HomgPoint3D ph 
)
inline

Type conversion for homogenous covariances.

Author
streckel 05/2006

Definition at line 127 of file CovMatrix3x3.hh.

References BIAS::HomgPoint3DCov::Homogenize().

void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetFromRowVectors ( const BIAS::Vector3< COVMATRIX3X3_TYPE > &  v0,
const BIAS::Vector3< COVMATRIX3X3_TYPE > &  v1,
const BIAS::Vector3< COVMATRIX3X3_TYPE > &  v2 
)
inherited

set this matrix from 3 vectors, each representating a row

void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetFromVector ( const TNT::Vector< COVMATRIX3X3_TYPE > &  vec)
inherited

sets the diagonalelements of this 3x3 Matrix rowwise with the values of the 9 (x1) vector

Author
Ingo Thomsen, Jan Woetzel
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetIdentity ( )
inlineinherited

set the elements of this matrix to the identity matrix (possibly overriding the inherited method)

Author
Ingo Thomsen, Jan Woetzel
Date
04/17/2002 untested
Examples:
ExampleConic.cpp, and ExampleThreeDOutVRML.cpp.
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetRow ( const unsigned int  row,
const Vector3< COVMATRIX3X3_TYPE > &  r 
)
inherited
Author
woelk 11/2007 (c) www.vision-n.de
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::SetZero ( )
inlineinherited
Author
woelk 11/2007 (c) www.vision-n.de
double BIAS::CovMatrix3x3::Trace ( ) const
inline

returns matrix's trace.

If this = V * S * V^T, trace means |S|^2 and provides a scalar measure of how uncertain a 3D point is.

Note the difference to det() which means geometric averaging of singular values rather than arithmetic. If you want to imagine an ellipsoid, trace is proportional to the mean axis length, while det is more like the space inside the ellipsoid.

Author
koeser

Definition at line 85 of file CovMatrix3x3.hh.

Matrix3x3<COVMATRIX3X3_TYPE > BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Transpose ( ) const
inherited

returns transposed matrix tested 12.06.2002

Author
Felix Woelk
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Transpose ( const Matrix3x3< COVMATRIX3X3_TYPE > &  arg)
inlineinherited

sets this as transposed arg, fw

void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::TransposedMult ( const Vector3< COVMATRIX3X3_TYPE > &  argvec,
Vector3< COVMATRIX3X3_TYPE > &  destvec 
) const
inlineinherited

multiplies matrix from left with transposed argvec, resulting in transposed destvec

Author
woelk 05/2003
void BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::TransposeIP ( )
inlineinherited

tranpose this matrix "in place" example: 0 1 2 –> 0 3 6 3 4 5 –> 1 4 7 6 7 8 –> 2 5 8

Member Data Documentation

bool BIAS::CovMatrix3x3::_IsDecomposed
protected

flag indicating whether the stored PCA is still valid

Definition at line 141 of file CovMatrix3x3.hh.

Referenced by _Decompose(), CovMatrix3x3(), GetPCA(), GetS(), and operator=().

Vector3<COVMATRIX3X3_TYPE> BIAS::CovMatrix3x3::_S
protected

Definition at line 151 of file CovMatrix3x3.hh.

Referenced by _Decompose(), GetPCA(), GetS(), and operator=().

SVD BIAS::CovMatrix3x3::_svd
protected

Definition at line 150 of file CovMatrix3x3.hh.

Referenced by _Decompose().

Matrix3x3<COVMATRIX3X3_TYPE> BIAS::CovMatrix3x3::_U
protected

Definition at line 152 of file CovMatrix3x3.hh.

Referenced by _Decompose(), and operator=().

Matrix3x3<COVMATRIX3X3_TYPE> BIAS::CovMatrix3x3::_VT
protected

Definition at line 152 of file CovMatrix3x3.hh.

Referenced by _Decompose(), GetPCA(), and operator=().

Matrix3x3<COVMATRIX3X3_TYPE> BIAS::CovMatrix3x3::ConsistencyBackup_
protected

saves matrix fields to make consistency checks possible later

Definition at line 147 of file CovMatrix3x3.hh.

Referenced by _Decompose(), GetPCA(), GetS(), and operator=().

COVMATRIX3X3_TYPE BIAS::Matrix3x3< COVMATRIX3X3_TYPE >::Data_[9]
protectedinherited

Definition at line 282 of file Matrix3x3.hh.


The documentation for this class was generated from the following files: