A generic RANSAC implementation with models as matrices.
See RANSAC_Template::execute for more info on usage.
#include <mrpt/math/ransac.h>
Public Types | |
typedef void(* | TRansacFitFunctor) (const CMatrixTemplateNumeric< NUMTYPE > &allData, const mrpt::vector_size_t &useIndices, std::vector< CMatrixTemplateNumeric< NUMTYPE > > &fitModels) |
The type of the function passed to mrpt::math::ransac - See the documentation for that method for more info. More... | |
typedef void(* | TRansacDistanceFunctor) (const CMatrixTemplateNumeric< NUMTYPE > &allData, const std::vector< CMatrixTemplateNumeric< NUMTYPE > > &testModels, const NUMTYPE distanceThreshold, unsigned int &out_bestModelIndex, mrpt::vector_size_t &out_inlierIndices) |
The type of the function passed to mrpt::math::ransac - See the documentation for that method for more info. More... | |
typedef bool(* | TRansacDegenerateFunctor) (const CMatrixTemplateNumeric< NUMTYPE > &allData, const mrpt::vector_size_t &useIndices) |
The type of the function passed to mrpt::math::ransac - See the documentation for that method for more info. More... | |
Public Member Functions | |
RANSAC_Template () | |
bool | execute (const CMatrixTemplateNumeric< NUMTYPE > &data, TRansacFitFunctor fit_func, TRansacDistanceFunctor dist_func, TRansacDegenerateFunctor degen_func, const double distanceThreshold, const unsigned int minimumSizeSamplesToFit, mrpt::vector_size_t &out_best_inliers, CMatrixTemplateNumeric< NUMTYPE > &out_best_model, const double prob_good_sample=0.999, const size_t maxIter=2000) const |
An implementation of the RANSAC algorithm for robust fitting of models to data. More... | |
typedef bool(* mrpt::math::RANSAC_Template< NUMTYPE >::TRansacDegenerateFunctor) (const CMatrixTemplateNumeric< NUMTYPE > &allData, const mrpt::vector_size_t &useIndices) |
typedef void(* mrpt::math::RANSAC_Template< NUMTYPE >::TRansacDistanceFunctor) (const CMatrixTemplateNumeric< NUMTYPE > &allData, const std::vector< CMatrixTemplateNumeric< NUMTYPE > > &testModels, const NUMTYPE distanceThreshold, unsigned int &out_bestModelIndex, mrpt::vector_size_t &out_inlierIndices) |
typedef void(* mrpt::math::RANSAC_Template< NUMTYPE >::TRansacFitFunctor) (const CMatrixTemplateNumeric< NUMTYPE > &allData, const mrpt::vector_size_t &useIndices, std::vector< CMatrixTemplateNumeric< NUMTYPE > > &fitModels) |
|
inline |
bool RANSAC_Template::execute | ( | const CMatrixTemplateNumeric< NUMTYPE > & | data, |
TRansacFitFunctor | fit_func, | ||
TRansacDistanceFunctor | dist_func, | ||
TRansacDegenerateFunctor | degen_func, | ||
const double | distanceThreshold, | ||
const unsigned int | minimumSizeSamplesToFit, | ||
mrpt::vector_size_t & | out_best_inliers, | ||
CMatrixTemplateNumeric< NUMTYPE > & | out_best_model, | ||
const double | prob_good_sample = 0.999 , |
||
const size_t | maxIter = 2000 |
||
) | const |
An implementation of the RANSAC algorithm for robust fitting of models to data.
data | A DxN matrix with all the observed data. D is the dimensionality of data points and N the number of points. |
This | implementation is highly inspired on Peter Kovesi's MATLAB scripts (http://www.csse.uwa.edu.au/~pk). |
verbose
parameter has been removed, supersedded by COutputLogger settings. Definition at line 26 of file ransac.cpp.
References ASSERT_, mrpt::random::CRandomGenerator::drawUniformVector(), mrpt::format(), min, MRPT_END, MRPT_LOG_DEBUG, MRPT_LOG_INFO, MRPT_LOG_WARN, MRPT_START, and mrpt::random::randomGenerator.
Referenced by mrpt::pbmap::ConsistencyTest::estimatePoseRANSAC().
Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |