Basic Image AlgorithmS Library
2.8.0
|
monte carlo propagation of uncertainty More...
#include <MathAlgo/MonteCarloTransform.hh>
Public Member Functions | |
void | AddDebugLevel (const long int lv) |
void | AddDebugLevel (const std::string &name) |
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 |
MonteCarloTransform () | |
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 | SetDebugLevel (const long int lv) |
void | SetDebugLevel (const std::string &name) |
void | SetDebugStream (const std::ostream &os) |
void | SetNumSamplesPerDimension (const int num) |
Sets the number of samples per dimension. More... | |
void | SetUniformDistribution (const bool uqrn) |
switch gauss/uniform distribution More... | |
void | SetUseQuasiRandomNumbers (const bool uqrn) |
void | ShowDebugLevel (std::ostream &os=std::cout) const |
prints all internally known debuglevels More... | |
void | Skew (const std::vector< Vector< double > > &dst_samples, double skewnness) const |
int | Transform (const Vector< double > &src_mean, const Matrix< double > &src_cov, Vector< double > &dst_mean, Matrix< double > &dst_cov) const |
computes the Monte Carlo approximation of the transformations of the mean and the associated covariance for the point transformation Transform_(). More... | |
int | Transform (const Vector< double > &src_mean, const Matrix< double > &src_cov, std::vector< Vector< double > > &dst_samples) const |
virtual | ~MonteCarloTransform () |
Static Public Member Functions | |
static long int | GetGlobalDebugLevel () |
static void | SetGlobalDebugLevel (long int lev) |
Protected Member Functions | |
long | ConsumeNextFreeDebuglevel_ () |
returns the next available debuglevel More... | |
int | GetSamples_ (const Vector< double > &src_mean, const Matrix< double > &src_cov, std::vector< Vector< double > > &src_samples) const |
computes src_mean.Size()* NumSamplesPerDimension_ samples drawn from multidiemsional normal distribution with first two moments src_mean and src_cov More... | |
virtual int | Transform_ (const Vector< double > &src, Vector< double > &dst) const =0 |
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 |
int | NumSamplesPerDimension_ |
bool | uniformDistribution_ |
set to true if you want to sample uniform instead of gauss More... | |
bool | UseQuasiRandomNumbers_ |
Static Protected Attributes | |
static std::ostream | _zDebugStream |
static long int | GlobalDebugLevel = 0 |
monte carlo propagation of uncertainty
Definition at line 43 of file MonteCarloTransform.hh.
MonteCarloTransform::MonteCarloTransform | ( | ) |
Definition at line 38 of file MonteCarloTransform.cpp.
References BIAS::Debug::NewDebugLevel().
|
virtual |
Definition at line 52 of file MonteCarloTransform.cpp.
|
inlineinherited |
Definition at line 355 of file Debug.hh.
Referenced by BIAS::GLProjectionParametersBase::AddDebugLevel(), BIAS::Triangulation::CorrectCorrespondences(), BIAS::FilterBase< InputStorageType, OutputStorageType >::FilterBase(), BIAS::ShowCamWxVideoSourceFactory::OpenDevice(), and BIAS::SceneOpenSceneGraph::SceneOpenSceneGraph().
|
inlineinherited |
|
inlineprotectedinherited |
|
inlineinherited |
Definition at line 341 of file Debug.hh.
Referenced by BIAS::GenSynthMatches::_AddUniformDistributedOutliers(), BIAS::GenSynthMatches::_CreateCamMovement(), BIAS::GenSynthMatches::_CreateStatic2DPoints(), BIAS::UnscentedTransform::ComputeSigmaPoints_(), BIAS::Triangulation::CorrectCorrespondences(), BIAS::GenSynthMatches::GetGTNormalizedF(), GetSamples_(), and Transform().
|
inlineinherited |
|
inlineinherited |
Definition at line 332 of file Debug.hh.
Referenced by BIAS::listenthread(), BIAS::Image< StorageType >::operator=(), and BIAS::ImageBase::operator=().
|
inlineinherited |
|
inlineinherited |
|
inlinestaticinherited |
|
protected |
computes src_mean.Size()* NumSamplesPerDimension_ samples drawn from multidiemsional normal distribution with first two moments src_mean and src_cov
Definition at line 174 of file MonteCarloTransform.cpp.
References BIAS::Debug::DebugLevelIsSet(), BIAS::Equal(), BIAS::Random::GetMeanAndCovariance(), BIAS::Random::GetNormalDistributed(), BIAS::Random::GetQuasiNormalDistributed(), BIAS::Random::GetQuasiUniformDistributed(), BIAS::Random::GetUniformDistributed(), NumSamplesPerDimension_, BIAS::Vector< T >::Size(), BIAS::Matrix< T >::Trace(), uniformDistribution_, Upper_symmetric_eigenvalue_solve(), and UseQuasiRandomNumbers_.
Referenced by Transform().
|
inlineinherited |
|
inlineinherited |
creates a new debuglevel
Definition at line 474 of file Debug.hh.
Referenced by BIAS::COSAC< SolutionType >::COSAC(), BIAS::ProjectionParametersPerspectiveDepth::Init(), MonteCarloTransform(), BIAS::PMatrixEstimation::PMatrixEstimation(), BIAS::PreemptiveRANSAC< SolutionType >::PreemptiveRANSAC(), BIAS::RANSACPreKnowledge< SolutionType >::RANSACPreKnowledge(), BIAS::ROI::ROI(), BIAS::RotationAveraging::RotationAveraging(), BIAS::SceneOpenSceneGraph::SceneOpenSceneGraph(), BIAS::ThreeDOutOpenSceneGraph::ThreeDOutOpenSceneGraph(), BIAS::Triangulation::Triangulation(), and BIAS::UnscentedTransform::UnscentedTransform().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 318 of file Debug.hh.
Referenced by BIAS::ShowCamWxVideoSourceFactory::CreateBumbleBee(), BIAS::ShowCamWxVideoSourceFactory::CreateDCAM(), BIAS::VideoSource_MDcam::ScanBus(), BIAS::GLProjectionParametersBase::SetDebugLevel(), BIAS::VideoSource_Disk::VideoSource_Disk(), BIAS::VideoSource_DV2::VideoSource_DV2(), BIAS::VideoSource_DV::VideoSource_DV_Internal_Init_(), and BIAS::VideoSource_V4L::VideoSource_V4L().
|
inlineinherited |
|
inlineinherited |
|
inlinestaticinherited |
|
inline |
Sets the number of samples per dimension.
Definition at line 69 of file MonteCarloTransform.hh.
|
inline |
switch gauss/uniform distribution
Definition at line 76 of file MonteCarloTransform.hh.
|
inline |
Definition at line 72 of file MonteCarloTransform.hh.
|
inlineinherited |
void MonteCarloTransform::Skew | ( | const std::vector< Vector< double > > & | dst_samples, |
double | skewnness | ||
) | const |
Definition at line 372 of file MonteCarloTransform.cpp.
|
virtual |
computes the Monte Carlo approximation of the transformations of the mean and the associated covariance for the point transformation Transform_().
Implements BIAS::UncertaintyTransformBase.
Definition at line 119 of file MonteCarloTransform.cpp.
References BIAS::Matrix< T >::IsZero(), BIAS::MatrixZero, TNT::Vector< T >::newsize(), TNT::Matrix< T >::newsize(), TNT::Matrix< T >::num_cols(), TNT::Matrix< T >::num_rows(), BIAS::Vector< T >::OuterProduct(), BIAS::Vector< T >::SetZero(), BIAS::Matrix< T >::SetZero(), BIAS::Vector< T >::Size(), and Transform_().
int MonteCarloTransform::Transform | ( | const Vector< double > & | src_mean, |
const Matrix< double > & | src_cov, | ||
std::vector< Vector< double > > & | dst_samples | ||
) | const |
Definition at line 57 of file MonteCarloTransform.cpp.
References BIAS::Debug::DebugLevelIsSet(), GetSamples_(), and Transform_().
|
protectedinherited |
Definition at line 510 of file Debug.hh.
Referenced by BIAS::Debug::operator=(), and BIAS::ImageBase::operator=().
|
protectedinherited |
new concept, debuglevel are managed here in the debug class
Definition at line 516 of file Debug.hh.
Referenced by BIAS::Debug::operator=().
|
protectedinherited |
Definition at line 517 of file Debug.hh.
Referenced by BIAS::Debug::operator=().
|
staticprotectedinherited |
Definition at line 511 of file Debug.hh.
Referenced by BIAS::Debug::operator=().
|
staticprotectedinherited |
|
protected |
Definition at line 81 of file MonteCarloTransform.hh.
Referenced by GetSamples_().
|
protected |
set to true if you want to sample uniform instead of gauss
Definition at line 86 of file MonteCarloTransform.hh.
Referenced by GetSamples_().
|
protected |
Definition at line 83 of file MonteCarloTransform.hh.
Referenced by GetSamples_().