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

Conversion of a rotation covariance in Euler-angles representation to a covariance in Quaternion representation using the unscented transform. More...

#include <Geometry/CovEuler2Quaternion.hh>

+ Inheritance diagram for BIAS::CovEuler2Quaternion:
+ Collaboration diagram for BIAS::CovEuler2Quaternion:

Public Member Functions

void AddDebugLevel (const long int lv)
 
void AddDebugLevel (const std::string &name)
 
 CovEuler2Quaternion ()
 
BIAS::PoseParametrizationCovariance CTransform (const BIAS::Matrix< double > &cov_pose, const BIAS::Vector< double > &pose)
 
bool DebugLevelIsSet (const long int lv) const
 
bool DebugLevelIsSet (const std::string &name) const
 
int GetDebugLevel () const
 
std::ostream & GetDebugStream () const
 
void GetDebugStream (std::ostream &os) const
 
long int Name2DebugLevel (const std::string &name) const
 looks up a debuglevel in the internal map, returns 0 if not found More...
 
long int NewDebugLevel (const std::string &name)
 creates a new debuglevel More...
 
void PrintDebugLevel (std::ostream &os=std::cout) const
 
void RemoveDebugLevel (const long int lv)
 
void RemoveDebugLevel (const std::string &name)
 
void SetAlpha (const double alpha)
 Sets the alpha parameter. More...
 
void SetBeta (const double beta)
 Sets the beta parameter. More...
 
void SetDebugLevel (const long int lv)
 
void SetDebugLevel (const std::string &name)
 
void SetDebugStream (const std::ostream &os)
 
void SetUseSVD (const bool use_svd)
 
void ShowDebugLevel (std::ostream &os=std::cout) const
 prints all internally known debuglevels More...
 
int Transform (const Vector< double > &src_mean, const Matrix< double > &src_cov, Vector< double > &dst_mean, Matrix< double > &dst_cov) const
 computes the second order approximation of the transformations of the mean and the associated covariance for the point transformation Transform_(). More...
 
virtual ~CovEuler2Quaternion ()
 

Static Public Member Functions

static long int GetGlobalDebugLevel ()
 
static void SetGlobalDebugLevel (long int lev)
 

Protected Member Functions

int ComputeSigmaPoints_ (const Vector< double > &src_mean, const Matrix< double > &src_cov, std::vector< WeightedSigmaPoint > &sigma_points) const
 The covariance of a n-dimensional vector is approximated using 2n+1 so called sigma points with associated weights. More...
 
long ConsumeNextFreeDebuglevel_ ()
 returns the next available debuglevel More...
 
virtual int Transform_ (const BIAS::Vector< double > &src, BIAS::Vector< double > &dst) const
 implements a point transformation More...
 

Protected Attributes

long int _liDebugLevel
 
long int _liNextDebugLevel
 new concept, debuglevel are managed here in the debug class More...
 
std::map< std::string, long int > _String2Debuglevel
 
double Alpha_
 the alpha parameter determines the spread of the sigma points More...
 
double Beta_
 beta is used to incorporate prior knowledge of the distribution of x. More...
 
double Kappa_
 kappa is a secondary scaling parameter. More...
 
bool UseSVD_
 

Static Protected Attributes

static std::ostream _zDebugStream
 
static long int GlobalDebugLevel = 0
 

Detailed Description

Conversion of a rotation covariance in Euler-angles representation to a covariance in Quaternion representation using the unscented transform.

Author
streckel 07/2006

Definition at line 16 of file CovEuler2Quaternion.hh.

Constructor & Destructor Documentation

BIAS::CovEuler2Quaternion::CovEuler2Quaternion ( )
inline

Definition at line 19 of file CovEuler2Quaternion.hh.

virtual BIAS::CovEuler2Quaternion::~CovEuler2Quaternion ( )
inlinevirtual

Definition at line 21 of file CovEuler2Quaternion.hh.

Member Function Documentation

void BIAS::Debug::AddDebugLevel ( const long int  lv)
inlineinherited
void BIAS::Debug::AddDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 362 of file Debug.hh.

int UnscentedTransform::ComputeSigmaPoints_ ( const Vector< double > &  src_mean,
const Matrix< double > &  src_cov,
std::vector< WeightedSigmaPoint > &  sigma_points 
) const
protectedinherited

The covariance of a n-dimensional vector is approximated using 2n+1 so called sigma points with associated weights.

The points and weights are computed in this function

Returns
0=ok, <0 on error (bad cov, ...)

Definition at line 138 of file UnscentedTransform.cpp.

References BIAS::UnscentedTransform::Alpha_, BIAS::UnscentedTransform::Beta_, BIAS::Debug::DebugLevelIsSet(), BIAS::Matrix< T >::GetCol(), BIAS::Matrix< T >::GetCols(), BIAS::UnscentedTransform::Kappa_, Lapack_Cholesky_SymmetricPositiveDefinit(), BIAS::Less(), TNT::Matrix< T >::num_cols(), TNT::Matrix< T >::num_rows(), BIAS::Vector< T >::Size(), BIAS::SVD::SqrtT(), and BIAS::UnscentedTransform::UseSVD_.

Referenced by BIAS::UnscentedTransform::Transform().

long BIAS::Debug::ConsumeNextFreeDebuglevel_ ( )
inlineprotectedinherited

returns the next available debuglevel

Author
woelk 09/2006

Definition at line 521 of file Debug.hh.

PoseParametrizationCovariance CovEuler2Quaternion::CTransform ( const BIAS::Matrix< double > &  cov_pose,
const BIAS::Vector< double > &  pose 
)

Definition at line 11 of file CovEuler2Quaternion.cpp.

References BIAS::UnscentedTransform::Transform().

bool BIAS::Debug::DebugLevelIsSet ( const long int  lv) const
inlineinherited
bool BIAS::Debug::DebugLevelIsSet ( const std::string &  name) const
inlineinherited

Definition at line 350 of file Debug.hh.

int BIAS::Debug::GetDebugLevel ( ) const
inlineinherited
std::ostream& BIAS::Debug::GetDebugStream ( ) const
inlineinherited

Definition at line 405 of file Debug.hh.

void BIAS::Debug::GetDebugStream ( std::ostream &  os) const
inlineinherited

Definition at line 414 of file Debug.hh.

static long int BIAS::Debug::GetGlobalDebugLevel ( )
inlinestaticinherited

Definition at line 431 of file Debug.hh.

long int BIAS::Debug::Name2DebugLevel ( const std::string &  name) const
inlineinherited

looks up a debuglevel in the internal map, returns 0 if not found

Author
woelk 09/2006

Definition at line 454 of file Debug.hh.

long int BIAS::Debug::NewDebugLevel ( const std::string &  name)
inlineinherited
void BIAS::Debug::PrintDebugLevel ( std::ostream &  os = std::cout) const
inlineinherited

Definition at line 383 of file Debug.hh.

void BIAS::Debug::RemoveDebugLevel ( const long int  lv)
inlineinherited

Definition at line 369 of file Debug.hh.

void BIAS::Debug::RemoveDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 376 of file Debug.hh.

void BIAS::UnscentedTransform::SetAlpha ( const double  alpha)
inlineinherited

Sets the alpha parameter.

The alpha parameter determines the spread of the sigma points

Definition at line 80 of file UnscentedTransform.hh.

void BIAS::UnscentedTransform::SetBeta ( const double  beta)
inlineinherited

Sets the beta parameter.

beta is used to incorporate prior knowledge of the distribution of x. For Gaussian distributions beta = 2.0 is optiomal

Definition at line 86 of file UnscentedTransform.hh.

void BIAS::Debug::SetDebugLevel ( const long int  lv)
inlineinherited
void BIAS::Debug::SetDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 325 of file Debug.hh.

void BIAS::Debug::SetDebugStream ( const std::ostream &  os)
inlineinherited

Definition at line 398 of file Debug.hh.

static void BIAS::Debug::SetGlobalDebugLevel ( long int  lev)
inlinestaticinherited

Definition at line 424 of file Debug.hh.

void BIAS::UnscentedTransform::SetUseSVD ( const bool  use_svd)
inlineinherited

Definition at line 89 of file UnscentedTransform.hh.

void BIAS::Debug::ShowDebugLevel ( std::ostream &  os = std::cout) const
inlineinherited

prints all internally known debuglevels

Author
woelk 09/2006

Definition at line 496 of file Debug.hh.

int UnscentedTransform::Transform ( const Vector< double > &  src_mean,
const Matrix< double > &  src_cov,
Vector< double > &  dst_mean,
Matrix< double > &  dst_cov 
) const
virtualinherited
int CovEuler2Quaternion::Transform_ ( const BIAS::Vector< double > &  src,
BIAS::Vector< double > &  dst 
) const
protectedvirtual

implements a point transformation

Returns
0 on success

Implements BIAS::UnscentedTransform.

Definition at line 23 of file CovEuler2Quaternion.cpp.

References BIAS::RMatrixBase::GetQuaternion(), TNT::Vector< T >::newsize(), and BIAS::RMatrixBase::SetZYX().

Member Data Documentation

long int BIAS::Debug::_liDebugLevel
protectedinherited

Definition at line 510 of file Debug.hh.

Referenced by BIAS::Debug::operator=(), and BIAS::ImageBase::operator=().

long int BIAS::Debug::_liNextDebugLevel
protectedinherited

new concept, debuglevel are managed here in the debug class

Definition at line 516 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

std::map<std::string, long int> BIAS::Debug::_String2Debuglevel
protectedinherited

Definition at line 517 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

std::ostream BIAS::Debug::_zDebugStream
staticprotectedinherited

Definition at line 511 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

double BIAS::UnscentedTransform::Alpha_
protectedinherited

the alpha parameter determines the spread of the sigma points

Definition at line 94 of file UnscentedTransform.hh.

Referenced by BIAS::UnscentedTransform::ComputeSigmaPoints_().

double BIAS::UnscentedTransform::Beta_
protectedinherited

beta is used to incorporate prior knowledge of the distribution of x.

For Gaussian distributions beta = 2.0 is optiomal

Definition at line 97 of file UnscentedTransform.hh.

Referenced by BIAS::UnscentedTransform::ComputeSigmaPoints_().

long int BIAS::Debug::GlobalDebugLevel = 0
staticprotectedinherited

Definition at line 513 of file Debug.hh.

double BIAS::UnscentedTransform::Kappa_
protectedinherited

kappa is a secondary scaling parameter.

In other papers from Uhlman kappa is fixed to 1.0

Definition at line 100 of file UnscentedTransform.hh.

Referenced by BIAS::UnscentedTransform::ComputeSigmaPoints_().

bool BIAS::UnscentedTransform::UseSVD_
protectedinherited

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