Model search implementations: RANSAC and genetic algorithm.
The type TModelFit is a user-supplied struct/class that implements this interface:
There are two methods provided in this class to fit a model:
For an example of usage, see "samples/model_search_test/"
Definition at line 64 of file model_search.h.
#include <mrpt/math/model_search.h>
Classes | |
struct | TSpecies |
Public Member Functions | |
template<typename TModelFit > | |
bool | ransacSingleModel (const TModelFit &p_state, size_t p_kernelSize, const typename TModelFit::Real &p_fitnessThreshold, typename TModelFit::Model &p_bestModel, vector_size_t &p_inliers) |
Run the ransac algorithm searching for a single model. | |
template<typename TModelFit > | |
bool | geneticSingleModel (const TModelFit &p_state, size_t p_kernelSize, const typename TModelFit::Real &p_fitnessThreshold, size_t p_populationSize, size_t p_maxIteration, typename TModelFit::Model &p_bestModel, vector_size_t &p_inliers) |
Run a generic programming version of ransac searching for a single model. | |
Private Member Functions | |
void | pickRandomIndex (size_t p_size, size_t p_pick, vector_size_t &p_ind) |
Select random (unique) indices from the 0..p_size sequence. | |
void | pickRandomIndex (std::set< size_t > p_set, size_t p_pick, vector_size_t &p_ind) |
Select random (unique) indices from the set. |
bool mrpt::math::ModelSearch::geneticSingleModel | ( | const TModelFit & | p_state, |
size_t | p_kernelSize, | ||
const typename TModelFit::Real & | p_fitnessThreshold, | ||
size_t | p_populationSize, | ||
size_t | p_maxIteration, | ||
typename TModelFit::Model & | p_bestModel, | ||
vector_size_t & | p_inliers | ||
) |
Run a generic programming version of ransac searching for a single model.
Definition at line 107 of file model_search_impl.h.
References ASSERT_, and pickRandomIndex().
void mrpt::math::ModelSearch::pickRandomIndex | ( | std::set< size_t > | p_set, |
size_t | p_pick, | ||
vector_size_t & | p_ind | ||
) | [private] |
Select random (unique) indices from the set.
The set is destroyed during pick
void mrpt::math::ModelSearch::pickRandomIndex | ( | size_t | p_size, |
size_t | p_pick, | ||
vector_size_t & | p_ind | ||
) | [private] |
Select random (unique) indices from the 0..p_size sequence.
Referenced by geneticSingleModel(), and ransacSingleModel().
bool mrpt::math::ModelSearch::ransacSingleModel | ( | const TModelFit & | p_state, |
size_t | p_kernelSize, | ||
const typename TModelFit::Real & | p_fitnessThreshold, | ||
typename TModelFit::Model & | p_bestModel, | ||
vector_size_t & | p_inliers | ||
) |
Run the ransac algorithm searching for a single model.
Definition at line 44 of file model_search_impl.h.
References ASSERT_, log(), pickRandomIndex(), and pow().
Page generated by Doxygen 1.7.3 for MRPT 0.9.4 SVN: at Sat Mar 26 06:16:28 UTC 2011 |