class mp2p_icp::Matcher_Point2Plane

Overview

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 specified otherwise in the base class member weight_pt2pt_layers. Refer to example configuration YAML files for example configurations.

#include <Matcher_Point2Plane.h>

class Matcher_Point2Plane: public mp2p_icp::Matcher_Points_Base
{
public:
    // methods

    virtual void initialize(const mrpt::containers::yaml& params);
};

Inherited Members

public:
    // structs

    struct TransformedLocalPointCloud;

    // fields

    uint32_t runUpToIteration = 0;

    // methods

    virtual void initialize(const mrpt::containers::yaml& params);

    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;

    virtual void initialize(const mrpt::containers::yaml& params);

Methods

virtual void initialize(const mrpt::containers::yaml& params)

Parameters :

  • 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 optional

Where 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()