17 std::tuple<mp2p_icp::ICP::Ptr, mp2p_icp::Parameters>
19 const mrpt::containers::yaml& icpParams,
20 const mrpt::system::VerbosityLevel& vLevel)
28 mrpt::rtti::classFactory(icpClassName));
31 "Could not instantiate ICP algorithm named '%s'",
32 icpClassName.c_str());
34 icp->setVerbosityLevel(vLevel);
37 bool isDerived =
false;
38 if (icpParams.has(
"derived"))
45 if (icpParams.has(
"solvers")) icp->initialize_solvers(icpParams[
"solvers"]);
48 if (icpParams.has(
"matchers"))
49 icp->initialize_matchers(icpParams[
"matchers"]);
52 ASSERT_(icpParams.has(
"quality"));
53 icp->initialize_quality_evaluators(icpParams[
"quality"]);
59 ASSERT_(icpParams.has(
"params"));
Loads and setup an ICP pipeline from a YAML configuration file.
void load_from(const mrpt::containers::yaml &p)
std::tuple< mp2p_icp::ICP::Ptr, mp2p_icp::Parameters > icp_pipeline_from_yaml(const mrpt::containers::yaml &config, const mrpt::system::VerbosityLevel &vLevel=mrpt::system::LVL_INFO)
virtual void initialize_derived([[maybe_unused]] const mrpt::containers::yaml &p)