ICP_LibPointmatcher.h
Go to the documentation of this file.
1 /* -------------------------------------------------------------------------
2  * A repertory of multi primitive-to-primitive (MP2P) ICP algorithms in C++
3  * Copyright (C) 2018-2024 Jose Luis Blanco, University of Almeria
4  * See LICENSE for license information.
5  * ------------------------------------------------------------------------- */
12 #pragma once
13 
14 #include <mp2p_icp/ICP.h>
16 #include <mp2p_icp/Parameters.h>
17 #include <mp2p_icp/Results.h>
18 #include <mp2p_icp/metricmap.h>
19 #include <mrpt/rtti/CObject.h>
20 
21 #include <vector>
22 
23 namespace mp2p_icp
24 {
29 class ICP_LibPointmatcher : public ICP
30 {
31  DEFINE_MRPT_OBJECT(ICP_LibPointmatcher, mp2p_icp)
32 
33  public:
34  void initialize_derived(const mrpt::containers::yaml& params) override;
35 
36  void align(
37  const metric_map_t& pcLocal, const metric_map_t& pcGlobal,
38  const mrpt::math::TPose3D& initialGuessLocalWrtGlobal,
39  const Parameters& p, Results& result,
40  const std::optional<mrpt::poses::CPose3DPDFGaussianInf>& prior =
41  std::nullopt,
42  const mrpt::optional_ref<LogRecord>& outputDebugInfo =
43  std::nullopt) override;
44 
46  {
49  unsigned int KDTreeMatcher_knn = 1;
50  std::string outlierFilter = "VarTrimmedDistOutlierFilter";
51  std::map<std::string, double> outlierParams = {
52  {"minRatio", 0.05},
53  {"maxRatio", 0.95},
54  {"lambda", 2.35},
55  };
56  std::string errorMinimizer = "PointToPlaneErrorMinimizer";
57  };
58 
60 
62  static bool methodAvailable();
63 
64  private:
66 #if defined(MP2P_HAS_LIBPOINTMATCHER)
67 
68 #endif
69 };
70 } // namespace mp2p_icp
ICP.h
Generic ICP algorithm container.
mp2p_icp
Definition: covariance.h:17
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher::SurfaceNormalDataPointsFilter_knn
unsigned int SurfaceNormalDataPointsFilter_knn
Definition: ICP_LibPointmatcher.h:48
mp2p_icp::ICP_LibPointmatcher::pm_icp_yaml_settings_
std::string pm_icp_yaml_settings_
Definition: ICP_LibPointmatcher.h:65
mp2p_icp::ICP_LibPointmatcher::align
void align(const metric_map_t &pcLocal, const metric_map_t &pcGlobal, const mrpt::math::TPose3D &initialGuessLocalWrtGlobal, const Parameters &p, Results &result, const std::optional< mrpt::poses::CPose3DPDFGaussianInf > &prior=std::nullopt, const mrpt::optional_ref< LogRecord > &outputDebugInfo=std::nullopt) override
Definition: ICP_LibPointmatcher.cpp:75
Parameters.h
testing::internal::string
::std::string string
Definition: gtest.h:1979
mp2p_icp::ICP
Definition: ICP.h:51
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher::errorMinimizer
std::string errorMinimizer
Definition: ICP_LibPointmatcher.h:56
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher::RandomSamplingDataPointsFilter_prob
double RandomSamplingDataPointsFilter_prob
Definition: ICP_LibPointmatcher.h:47
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher::outlierParams
std::map< std::string, double > outlierParams
Definition: ICP_LibPointmatcher.h:51
mp2p_icp::ICP_LibPointmatcher::methodAvailable
static bool methodAvailable()
Definition: ICP_LibPointmatcher.cpp:35
IterTermReason.h
mp2p_icp::ICP_LibPointmatcher::parametersLibpointmatcher
ParametersLibpointmatcher parametersLibpointmatcher
Definition: ICP_LibPointmatcher.h:59
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher::KDTreeMatcher_knn
unsigned int KDTreeMatcher_knn
Definition: ICP_LibPointmatcher.h:49
mp2p_icp::ICP_LibPointmatcher::initialize_derived
void initialize_derived(const mrpt::containers::yaml &params) override
Definition: ICP_LibPointmatcher.cpp:67
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher::outlierFilter
std::string outlierFilter
Definition: ICP_LibPointmatcher.h:50
mp2p_icp::ICP_LibPointmatcher
Definition: ICP_LibPointmatcher.h:29
mp2p_icp::ICP_LibPointmatcher::ParametersLibpointmatcher
Definition: ICP_LibPointmatcher.h:45
metricmap.h
Generic representation of pointcloud(s) and/or extracted features.
mp2p_icp::metric_map_t
Generic container of pointcloud(s), extracted features and other maps.
Definition: metricmap.h:49
mp2p_icp::Results
Definition: Results.h:21
mp2p_icp::Parameters
Definition: Parameters.h:26
Results.h


mp2p_icp
Author(s):
autogenerated on Thu Dec 26 2024 03:48:11