MRPT  1.9.9
RANSAC and other model fitting algorithms

Detailed Description

Collaboration diagram for RANSAC and other model fitting algorithms:

Classes

class  mrpt::math::ModelSearch
 Model search implementations: RANSAC and genetic algorithm. More...
 
class  mrpt::math::RANSAC_Template< NUMTYPE >
 A generic RANSAC implementation with models as matrices. More...
 

Typedefs

using mrpt::math::RANSAC = RANSAC_Template< double >
 The default instance of RANSAC, for double type. More...
 

RANSAC detectors

template<typename NUMTYPE >
void mrpt::math::ransac_detect_3D_planes (const CVectorDynamic< NUMTYPE > &x, const CVectorDynamic< NUMTYPE > &y, const CVectorDynamic< NUMTYPE > &z, std::vector< std::pair< size_t, TPlane >> &out_detected_planes, const double threshold, const size_t min_inliers_for_valid_plane=10)
 Fit a number of 3-D planes to a given point cloud, automatically determining the number of existing planes by means of the provided threshold and minimum number of supporting inliers. More...
 
template<typename NUMTYPE >
void mrpt::math::ransac_detect_2D_lines (const CVectorDynamic< NUMTYPE > &x, const CVectorDynamic< NUMTYPE > &y, std::vector< std::pair< size_t, TLine2D >> &out_detected_lines, const double threshold, const size_t min_inliers_for_valid_line=5)
 Fit a number of 2-D lines to a given point cloud, automatically determining the number of existing lines by means of the provided threshold and minimum number of supporting inliers. More...
 
template<class POINTSMAP >
void mrpt::math::ransac_detect_3D_planes (const POINTSMAP *points_map, std::vector< std::pair< size_t, TPlane >> &out_detected_planes, const double threshold, const size_t min_inliers_for_valid_plane)
 A stub for ransac_detect_3D_planes() with the points given as a mrpt::maps::CPointsMap. More...
 

Typedef Documentation

◆ RANSAC

using mrpt::math::RANSAC = typedef RANSAC_Template<double>

The default instance of RANSAC, for double type.

Definition at line 80 of file ransac.h.

Function Documentation

◆ ransac_detect_2D_lines()

template<typename NUMTYPE >
void mrpt::math::ransac_detect_2D_lines ( const CVectorDynamic< NUMTYPE > &  x,
const CVectorDynamic< NUMTYPE > &  y,
std::vector< std::pair< size_t, TLine2D >> &  out_detected_lines,
const double  threshold,
const size_t  min_inliers_for_valid_line = 5 
)

Fit a number of 2-D lines to a given point cloud, automatically determining the number of existing lines by means of the provided threshold and minimum number of supporting inliers.

Parameters
out_detected_linesThe output list of pairs: number of supporting inliers, detected line.
thresholdThe maximum distance between a point and a temptative line such as the point is considered an inlier.
min_inliers_for_valid_lineThe minimum number of supporting inliers to consider a line as valid.

Definition at line 265 of file ransac_applications.cpp.

References ASSERT_, mrpt::math::RANSAC_Template< NUMTYPE >::execute(), mrpt::system::LVL_INFO, MRPT_END, MRPT_START, mrpt::math::CMatrixDynamic< T >::setRow(), and mrpt::system::COutputLogger::setVerbosityLevel().

Here is the call graph for this function:

◆ ransac_detect_3D_planes() [1/2]

template<typename NUMTYPE >
void mrpt::math::ransac_detect_3D_planes ( const CVectorDynamic< NUMTYPE > &  x,
const CVectorDynamic< NUMTYPE > &  y,
const CVectorDynamic< NUMTYPE > &  z,
std::vector< std::pair< size_t, TPlane >> &  out_detected_planes,
const double  threshold,
const size_t  min_inliers_for_valid_plane = 10 
)

Fit a number of 3-D planes to a given point cloud, automatically determining the number of existing planes by means of the provided threshold and minimum number of supporting inliers.

Parameters
out_detected_planesThe output list of pairs: number of supporting inliers, detected plane.
thresholdThe maximum distance between a point and a temptative plane such as the point is considered an inlier.
min_inliers_for_valid_planeThe minimum number of supporting inliers to consider a plane as valid.

Referenced by mrpt::math::ransac_detect_3D_planes().

Here is the caller graph for this function:

◆ ransac_detect_3D_planes() [2/2]

template<class POINTSMAP >
void mrpt::math::ransac_detect_3D_planes ( const POINTSMAP *  points_map,
std::vector< std::pair< size_t, TPlane >> &  out_detected_planes,
const double  threshold,
const size_t  min_inliers_for_valid_plane 
)
inline

A stub for ransac_detect_3D_planes() with the points given as a mrpt::maps::CPointsMap.

Definition at line 64 of file ransac_applications.h.

References mrpt::math::ransac_detect_3D_planes().

Here is the call graph for this function:



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 8fe78517f Sun Jul 14 19:43:28 2019 +0200 at lun oct 28 02:10:00 CET 2019