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::MSAC< SolutionType > Class Template Reference

this class does something, but WHAT? Is it the M-Estimator SAmple Consensus ?? More...

#include <MathAlgo/MSAC.hh>

+ Inheritance diagram for BIAS::MSAC< SolutionType >:
+ Collaboration diagram for BIAS::MSAC< SolutionType >:

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
 
virtual bool EvaluateSolution (const SolutionType &solution, std::vector< bool > &inlier, int &num_inliers, double &evaluate_score)
 
virtual bool GenerateSamples (int sample_index, std::vector< unsigned int > &which_samples)
 
int GetDebugLevel () const
 
std::ostream & GetDebugStream () const
 
void GetDebugStream (std::ostream &os) const
 
virtual int GetSampleSolution (std::vector< unsigned int > &which_samples, SolutionType &solutions)
 
int Init (int data_size)
 
int Init (int data_size, double terminate_score, int solution_count)
 
 MSAC ()
 
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
 
virtual bool RefineSolution (std::vector< unsigned int > &which_samples, SolutionType &solution, std::vector< bool > &new_inliers)
 
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 ShowDebugLevel (std::ostream &os=std::cout) const
 prints all internally known debuglevels More...
 
int SolveMaster (SolutionType &solution, std::vector< bool > &inliers)
 
virtual ~MSAC ()
 

Static Public Member Functions

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

Protected Member Functions

int _CalculateSampleCount (double expected_inlier_fraction)
 
double _CalculateTerminateScore (double sigma, double expected_inlier_fraction)
 
bool _GenerateSamplesRandom (int sample_index, std::vector< unsigned int > &which_samples)
 
long ConsumeNextFreeDebuglevel_ ()
 returns the next available debuglevel More...
 

Protected Attributes

double _dExpectedInlierFraction
 
double _dExpectedSigma
 
double _dTerminateScore
 
int _iDataSize
 
int _iSampleSize
 
int _iSolutionCount
 
long int _liDebugLevel
 
long int _liNextDebugLevel
 new concept, debuglevel are managed here in the debug class More...
 
double _MSACConfidenceThresh
 
bool _MSACRefineSolution
 
double _MSACSigmaFac
 
std::map< std::string, long int > _String2Debuglevel
 

Static Protected Attributes

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

Detailed Description

template<class SolutionType>
class BIAS::MSAC< SolutionType >

this class does something, but WHAT? Is it the M-Estimator SAmple Consensus ??

Author
MIP

Definition at line 51 of file MSAC.hh.

Constructor & Destructor Documentation

template<class SolutionType >
BIAS::MSAC< SolutionType >::MSAC ( )
template<class SolutionType >
BIAS::MSAC< SolutionType >::~MSAC ( )
virtual

Definition at line 128 of file MSAC.hh.

Member Function Documentation

template<class SolutionType >
int BIAS::MSAC< SolutionType >::_CalculateSampleCount ( double  expected_inlier_fraction)
protected

Definition at line 381 of file MSAC.hh.

template<class SolutionType >
double BIAS::MSAC< SolutionType >::_CalculateTerminateScore ( double  sigma,
double  expected_inlier_fraction 
)
protected

Definition at line 367 of file MSAC.hh.

template<class SolutionType >
bool BIAS::MSAC< SolutionType >::_GenerateSamplesRandom ( int  sample_index,
std::vector< unsigned int > &  which_samples 
)
protected

Definition at line 316 of file MSAC.hh.

References BIAS::Random::GetUniformDistributedInt().

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.

long BIAS::Debug::ConsumeNextFreeDebuglevel_ ( )
inlineprotectedinherited

returns the next available debuglevel

Author
woelk 09/2006

Definition at line 521 of file Debug.hh.

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.

template<class SolutionType >
bool BIAS::MSAC< SolutionType >::EvaluateSolution ( const SolutionType &  solution,
std::vector< bool > &  inlier,
int &  num_inliers,
double &  evaluate_score 
)
virtual

Definition at line 283 of file MSAC.hh.

template<class SolutionType >
bool BIAS::MSAC< SolutionType >::GenerateSamples ( int  sample_index,
std::vector< unsigned int > &  which_samples 
)
virtual

Definition at line 306 of file MSAC.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.

template<class SolutionType >
int BIAS::MSAC< SolutionType >::GetSampleSolution ( std::vector< unsigned int > &  which_samples,
SolutionType &  solutions 
)
virtual

Definition at line 272 of file MSAC.hh.

template<class SolutionType >
int BIAS::MSAC< SolutionType >::Init ( int  data_size)

Definition at line 133 of file MSAC.hh.

template<class SolutionType >
int BIAS::MSAC< SolutionType >::Init ( int  data_size,
double  terminate_score,
int  solution_count 
)

Definition at line 145 of file MSAC.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.

template<class SolutionType >
bool BIAS::MSAC< SolutionType >::RefineSolution ( std::vector< unsigned int > &  which_samples,
SolutionType &  solution,
std::vector< bool > &  new_inliers 
)
virtual

Definition at line 295 of file MSAC.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::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::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.

template<class SolutionType >
int BIAS::MSAC< SolutionType >::SolveMaster ( SolutionType &  solution,
std::vector< bool > &  inliers 
)

Definition at line 168 of file MSAC.hh.

Member Data Documentation

template<class SolutionType >
double BIAS::MSAC< SolutionType >::_dExpectedInlierFraction
protected

Definition at line 88 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
double BIAS::MSAC< SolutionType >::_dExpectedSigma
protected

Definition at line 87 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
double BIAS::MSAC< SolutionType >::_dTerminateScore
protected

Definition at line 92 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
int BIAS::MSAC< SolutionType >::_iDataSize
protected

Definition at line 89 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
int BIAS::MSAC< SolutionType >::_iSampleSize
protected

Definition at line 91 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
int BIAS::MSAC< SolutionType >::_iSolutionCount
protected

Definition at line 90 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

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=().

template<class SolutionType >
double BIAS::MSAC< SolutionType >::_MSACConfidenceThresh
protected

Definition at line 85 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
bool BIAS::MSAC< SolutionType >::_MSACRefineSolution
protected

Definition at line 84 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

template<class SolutionType >
double BIAS::MSAC< SolutionType >::_MSACSigmaFac
protected

Definition at line 86 of file MSAC.hh.

Referenced by BIAS::MSAC< SolutionType >::MSAC().

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=().

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

Definition at line 513 of file Debug.hh.


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