16 #include <mrpt/core/exceptions.h> 17 #include <mrpt/math/geometry.h> 29 if (p.has(
"pairingsWeightParameters"))
41 const Pairings* effectivePairings = &pairings;
42 std::optional<Pairings> altPairings;
47 effectivePairings = &altPairings.value();
bool optimal_tf_horn(const mp2p_icp::Pairings &in, const WeightParameters &wp, OptimalTF_Result &result)
virtual void initialize(const mrpt::containers::yaml ¶ms)
IMPLEMENTS_MRPT_OBJECT(metric_map_t, mrpt::serialization::CSerializable, mp2p_icp) using namespace mp2p_icp
void load_from(const mrpt::containers::yaml &p)
MatchedPointLineList paired_pt2ln
Pairings pt2ln_pl_to_pt2pt(const Pairings &in, const SolverContext &sc)
bool impl_optimal_pose(const Pairings &pairings, OptimalTF_Result &out, const SolverContext &sc) const override
Classic Horn's solution for optimal SE(3) transformation.
ICP solver for pointclouds split in different "layers".
WeightParameters pairingsWeightParameters
MatchedPointPlaneList paired_pt2pl
void initialize(const mrpt::containers::yaml ¶ms) override