#include <Matcher_Point2Plane.h>
Public Member Functions | |
void | initialize (const mrpt::containers::yaml ¶ms) override |
Matcher_Point2Plane () | |
Public Member Functions inherited from mp2p_icp::Matcher_Points_Base | |
void | initialize (const mrpt::containers::yaml ¶ms) override |
Matcher_Points_Base ()=default | |
Public Member Functions inherited from mp2p_icp::Matcher | |
virtual bool | match (const metric_map_t &pcGlobal, const metric_map_t &pcLocal, const mrpt::poses::CPose3D &localPose, const MatchContext &mc, MatchState &ms, Pairings &out) const |
Private Member Functions | |
void | implMatchOneLayer (const mrpt::maps::CMetricMap &pcGlobal, const mrpt::maps::CPointsMap &pcLocal, const mrpt::poses::CPose3D &localPose, MatchState &ms, const layer_name_t &globalName, const layer_name_t &localName, Pairings &out) const override |
Private Attributes | |
double | distanceThreshold = 0.50 |
uint32_t | knn = 5 |
bool | localPointMustFitPlaneToo = false |
double | localToGlobalPlaneMinAbsCosine = 0.8 |
uint32_t | minimumPlanePoints = 5 |
double | planeEigenThreshold = 0.01 |
double | searchRadius = 0.50 |
Additional Inherited Members | |
Static Public Member Functions inherited from mp2p_icp::Matcher_Points_Base | |
static TransformedLocalPointCloud | transform_local_to_global (const mrpt::maps::CPointsMap &pcLocal, const mrpt::poses::CPose3D &localPose, const std::size_t maxLocalPoints=0, const uint64_t localPointsSampleSeed=0) |
Public Attributes inherited from mp2p_icp::Matcher_Points_Base | |
bool | allowMatchAlreadyMatchedGlobalPoints_ = false |
bool | allowMatchAlreadyMatchedPoints_ = false |
std::optional< std::size_t > | kdtree_leaf_max_points_ |
uint64_t | localPointsSampleSeed_ = 0 |
uint64_t | maxLocalPointsPerLayer_ = 0 |
std::map< std::string, std::map< std::string, double > > | weight_pt2pt_layers |
Public Attributes inherited from mp2p_icp::Matcher | |
uint32_t | runFromIteration = 0 |
uint32_t | runUpToIteration = 0 |
0: no limit More... | |
Protected Member Functions inherited from mp2p_icp::Matcher_Points_Base | |
bool | impl_match (const metric_map_t &pcGlobal, const metric_map_t &pcLocal, const mrpt::poses::CPose3D &localPose, const MatchContext &mc, MatchState &ms, Pairings &out) const override final |
Pointcloud matcher: point to plane-fit of nearby points
Finds point-to-plane pairings between local
point layers and points fitting a plane in layers of the global
input metric map.
By default, each local
point layer is matched against the layer with the same name in the global
map, unless especified otherwise in the base class member weight_pt2pt_layers
. Refer to example configuration YAML files for example configurations.
Definition at line 30 of file Matcher_Point2Plane.h.
Matcher_Point2Plane::Matcher_Point2Plane | ( | ) |
Definition at line 23 of file Matcher_Point2Plane.cpp.
|
overrideprivatevirtual |
Implements mp2p_icp::Matcher_Points_Base.
Definition at line 68 of file Matcher_Point2Plane.cpp.
|
overridevirtual |
distanceThreshold
: Max. inliers pt-plane distance [meters][mandatory]knn
: Number of neighbors to look for [mandatory]minimumPlanePoints
: Minimum number of found points [mandatory]searchRadius
: Max radius search for neighbors [meters][mandatory]planeEigenThreshold
: maximum e0/e2 ratio [mandatory]localPointMustFitPlaneToo
: if true
, each local point must also fulfill the plane-like condition to generate a pt-plane pairing [optional] (Default: false)localToGlobalPlaneMinAbsCosine
: If localPointMustFitPlaneToo
is true
, the minimum absolute value of the cosine of the plane-to-plane angles to generate a valid pairing optionalWhere e0 and e2 are the smallest and largest eigenvalues of the Gaussian covariance fitting the knn closest global points for each local point.
Plus: the parameters of Matcher_Points_Base::initialize()
Reimplemented from mp2p_icp::Matcher.
Definition at line 28 of file Matcher_Point2Plane.cpp.
|
private |
Definition at line 58 of file Matcher_Point2Plane.h.
|
private |
Definition at line 60 of file Matcher_Point2Plane.h.
|
private |
Definition at line 63 of file Matcher_Point2Plane.h.
|
private |
Definition at line 64 of file Matcher_Point2Plane.h.
|
private |
Definition at line 61 of file Matcher_Point2Plane.h.
|
private |
Definition at line 62 of file Matcher_Point2Plane.h.
|
private |
Definition at line 59 of file Matcher_Point2Plane.h.