NASA Astrobee Robot Software  0.19.1
Flight software for the Astrobee robots operating inside the International Space Station.
sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT > Class Template Reference

RANSAC Driver class. More...

#include <ransac.h>

Public Member Functions

template<class ContainerT1 , class ContainerT2 >
void inliers (typename FittingFuncT::result_type const &H, std::vector< ContainerT1 > const &p1, std::vector< ContainerT2 > const &p2, std::vector< ContainerT1 > &inliers1, std::vector< ContainerT2 > &inliers2) const
 
template<class ContainerT1 , class ContainerT2 >
std::vector< size_t > inlier_indices (typename FittingFuncT::result_type const &H, std::vector< ContainerT1 > const &p1, std::vector< ContainerT2 > const &p2) const
 
void reduce_min_num_output_inliers ()
 
 RandomSampleConsensus (FittingFuncT const &fitting_func, ErrorFuncT const &error_func, int num_iterations, double inlier_threshold, int min_num_output_inliers, bool reduce_min_num_output_inliers_if_no_fit, bool increase_threshold_if_no_fit)
 Constructor - Stores all the inputs in member variables. More...
 
template<class ContainerT1 , class ContainerT2 >
FittingFuncT::result_type operator() (std::vector< ContainerT1 > const &p1, std::vector< ContainerT2 > const &p2)
 As attempt_ransac but keep trying with smaller numbers of required inliers. More...
 
template<class ContainerT1 , class ContainerT2 >
FittingFuncT::result_type attempt_ransac (std::vector< ContainerT1 > const &p1, std::vector< ContainerT2 > const &p2)
 Run RANSAC on two input data lists using the current parameters. More...
 

Detailed Description

template<class FittingFuncT, class ErrorFuncT>
class sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >

RANSAC Driver class.

Constructor & Destructor Documentation

◆ RandomSampleConsensus()

template<class FittingFuncT , class ErrorFuncT >
sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >::RandomSampleConsensus ( FittingFuncT const &  fitting_func,
ErrorFuncT const &  error_func,
int  num_iterations,
double  inlier_threshold,
int  min_num_output_inliers,
bool  reduce_min_num_output_inliers_if_no_fit,
bool  increase_threshold_if_no_fit 
)
inline

Constructor - Stores all the inputs in member variables.

Member Function Documentation

◆ attempt_ransac()

template<class FittingFuncT , class ErrorFuncT >
template<class ContainerT1 , class ContainerT2 >
FittingFuncT::result_type sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >::attempt_ransac ( std::vector< ContainerT1 > const &  p1,
std::vector< ContainerT2 > const &  p2 
)
inline

Run RANSAC on two input data lists using the current parameters.

◆ inlier_indices()

template<class FittingFuncT , class ErrorFuncT >
template<class ContainerT1 , class ContainerT2 >
std::vector<size_t> sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >::inlier_indices ( typename FittingFuncT::result_type const &  H,
std::vector< ContainerT1 > const &  p1,
std::vector< ContainerT2 > const &  p2 
) const
inline

◆ inliers()

template<class FittingFuncT , class ErrorFuncT >
template<class ContainerT1 , class ContainerT2 >
void sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >::inliers ( typename FittingFuncT::result_type const &  H,
std::vector< ContainerT1 > const &  p1,
std::vector< ContainerT2 > const &  p2,
std::vector< ContainerT1 > &  inliers1,
std::vector< ContainerT2 > &  inliers2 
) const
inline

◆ operator()()

template<class FittingFuncT , class ErrorFuncT >
template<class ContainerT1 , class ContainerT2 >
FittingFuncT::result_type sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >::operator() ( std::vector< ContainerT1 > const &  p1,
std::vector< ContainerT2 > const &  p2 
)
inline

As attempt_ransac but keep trying with smaller numbers of required inliers.

◆ reduce_min_num_output_inliers()

template<class FittingFuncT , class ErrorFuncT >
void sparse_mapping::RandomSampleConsensus< FittingFuncT, ErrorFuncT >::reduce_min_num_output_inliers ( )
inline

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