LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::monteCarloEstimator Class Reference

A parent class for estimating a transform from point sets while detecting and discarding outliers. More...

#include <ltiMonteCarloEstimator.h>

Inheritance diagram for lti::monteCarloEstimator:
Inheritance graph
[legend]
Collaboration diagram for lti::monteCarloEstimator:
Collaboration graph
[legend]

List of all members.

Classes

class  parameters
 The parameters for the class monteCarloEstimator. More...

Public Member Functions

 monteCarloEstimator ()
 monteCarloEstimator (const parameters &par)
 monteCarloEstimator (const monteCarloEstimator &other)
virtual ~monteCarloEstimator ()
virtual const char * getTypeName () const
virtual bool apply (const matrix< fpoint > &src, fvector &dest) const =0
virtual bool apply (const matrix< fpoint > &src, fvector &dest, fvector &error) const =0
virtual bool apply (const matrix< dpoint > &src, dvector &dest) const =0
virtual bool apply (const matrix< dpoint > &src, dvector &dest, dvector &error) const =0
monteCarloEstimatorcopy (const monteCarloEstimator &other)
monteCarloEstimatoroperator= (const monteCarloEstimator &other)
virtual functorclone () const =0
const parametersgetParameters () const
virtual bool setParameters (const transformEstimator::parameters &theParams)
virtual bool setParameters (const pointSetNormalization::parameters &theParams)
bool setParameters (const parameters &theParams)

Protected Member Functions

parametersgetWritableParameters ()

Detailed Description

A parent class for estimating a transform from point sets while detecting and discarding outliers.

To archive this a random set of samples is drawn from the input data to estimate their transform. Common Monte Carlo estimators are e.g. RANSAC and least median of squares algorithm.

See also:
lti::ransacEstimator, lti::transformEstimator

Constructor & Destructor Documentation

lti::monteCarloEstimator::monteCarloEstimator (  ) 

Default constructor.

lti::monteCarloEstimator::monteCarloEstimator ( const parameters par  ) 

Construct a functor using the given parameters.

lti::monteCarloEstimator::monteCarloEstimator ( const monteCarloEstimator other  ) 

Copy constructor.

Parameters:
other the object to be copied
virtual lti::monteCarloEstimator::~monteCarloEstimator (  )  [virtual]

Destructor.


Member Function Documentation

virtual bool lti::monteCarloEstimator::apply ( const matrix< dpoint > &  src,
dvector dest,
dvector error 
) const [pure virtual]

Estimates a transform from the supplied point sets.

All points of one point set give a matrix row, whereas all elements of a specifec correspondence stand in a matrix column.

Parameters:
src matrix<dpoint> with the point sets.
dest dvector the estimated transform.
error fvector containing the deviation of each point from the estimated transform. Usually this is the residual, also a if a squared residual is computed inside the transform estimator.
Returns:
true if apply successful or false otherwise.

Implements lti::robustEstimator.

Implemented in lti::ransacEstimator.

virtual bool lti::monteCarloEstimator::apply ( const matrix< dpoint > &  src,
dvector dest 
) const [pure virtual]

Estimates a transform from the supplied point sets.

All points of one point set give a matrix row, whereas all elements of a specifec correspondence stand in a matrix column.

Parameters:
src matrix<dpoint> with the point sets.
dest dvector the estimated transform.
Returns:
true if apply successful or false otherwise.

Implements lti::robustEstimator.

Implemented in lti::ransacEstimator.

virtual bool lti::monteCarloEstimator::apply ( const matrix< fpoint > &  src,
fvector dest,
fvector error 
) const [pure virtual]

Estimates a transform from the supplied point sets.

All points of one point set give a matrix row, whereas all elements of a specifec correspondence stand in a matrix column.

Parameters:
src matrix<fpoint> with the point sets.
dest fvector the estimated transform.
error fvector containing the deviation of each point from the estimated transform. Usually this is the residual, also a if a squared residual is computed inside the transform estimator.
Returns:
true if apply successful or false otherwise.

Implements lti::robustEstimator.

Implemented in lti::ransacEstimator.

virtual bool lti::monteCarloEstimator::apply ( const matrix< fpoint > &  src,
fvector dest 
) const [pure virtual]

Estimates a transform from the supplied point sets.

All points of one point set give a matrix row, whereas all elements of a specifec correspondence stand in a matrix column.

Parameters:
src matrix<fpoint> with the point sets.
dest fector the estimated transform.
Returns:
true if apply successful or false otherwise.

Implements lti::robustEstimator.

Implemented in lti::ransacEstimator.

virtual functor* lti::monteCarloEstimator::clone (  )  const [pure virtual]

Returns a pointer to a clone of this functor.

Implements lti::robustEstimator.

Implemented in lti::ransacEstimator.

monteCarloEstimator& lti::monteCarloEstimator::copy ( const monteCarloEstimator other  ) 

Copy data of "other" functor.

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::robustEstimator.

Reimplemented in lti::ransacEstimator.

const parameters& lti::monteCarloEstimator::getParameters (  )  const

Returns used parameters.

Reimplemented from lti::robustEstimator.

Reimplemented in lti::ransacEstimator.

virtual const char* lti::monteCarloEstimator::getTypeName (  )  const [virtual]

Returns the name of this type ("monteCarloEstimator").

Reimplemented from lti::robustEstimator.

Reimplemented in lti::ransacEstimator.

parameters& lti::monteCarloEstimator::getWritableParameters (  )  [protected]

Returns used parameters.

Reimplemented from lti::robustEstimator.

monteCarloEstimator& lti::monteCarloEstimator::operator= ( const monteCarloEstimator other  ) 

Alias for copy member.

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::robustEstimator.

Reimplemented in lti::ransacEstimator.

bool lti::monteCarloEstimator::setParameters ( const parameters theParams  )  [virtual]

Set the paramters of the Monte Carlo estimator.

Parameters:
theParams the new parameters, which will be copied.
Returns:
true on success and false otherwise.

Reimplemented from lti::robustEstimator.

virtual bool lti::monteCarloEstimator::setParameters ( const pointSetNormalization::parameters theParams  )  [virtual]

Set the paramters of the transform estimator used internally.

Parameters:
theParams the new normalization parameters, which will be copied.
Returns:
true on success and false otherwise, e.g. if the internal normalization method and the given parameters do not match.

Reimplemented from lti::robustEstimator.

virtual bool lti::monteCarloEstimator::setParameters ( const transformEstimator::parameters theParams  )  [virtual]

Set the paramters of the transform estimator used internally.

Parameters:
theParams the new transform estimator parameters, which will be copied.
Returns:
true on success and false otherwise, e.g. if the internal transform estimator and the given parameters do not match.

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

Generated on Sat Apr 10 15:27:36 2010 for LTI-Lib by Doxygen 1.6.1