15 #include <mrpt/core/exceptions.h> 27 if (params.has(
"pair_weights"))
43 ASSERT_(sc.guessRelativePose.has_value());
45 mrpt::poses::CPose3D(sc.guessRelativePose.value());
void load_from(const mrpt::containers::yaml &p)
bool impl_optimal_pose(const Pairings &pairings, OptimalTF_Result &out, const SolverContext &sc) const override
bool innerLoopVerbose
Prints GN inner loop details.
std::optional< mrpt::poses::CPose3D > linearizationPoint
Simple non-linear optimizer to find the SE(3) optimal transformation.
ICP registration for points and planes.
void initialize(const mrpt::containers::yaml ¶ms) override
virtual void initialize(const mrpt::containers::yaml ¶ms)
IMPLEMENTS_MRPT_OBJECT(metric_map_t, mrpt::serialization::CSerializable, mp2p_icp) using namespace mp2p_icp
bool optimal_tf_gauss_newton(const Pairings &in, OptimalTF_Result &result, const OptimalTF_GN_Parameters &gnParams=OptimalTF_GN_Parameters())
uint32_t maxInnerLoopIterations