MRPT  1.9.9
metric_map_types.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #pragma once
10 
14 #include <mrpt/obs/obs_frwds.h>
15 
16 namespace mrpt::maps
17 {
18 /** Parameters for the determination of matchings between point clouds, etc. \sa
19  * CMetricMap::determineMatching2D, CMetricMap::determineMatching3D */
21 {
22  /** Maximum linear distance between two points to be paired (meters) */
24  /** Allowed "angular error" (in radians): this permits larger pairing
25  * threshold distances to more distant points. */
27  /** If set to true (default), only the closest correspondence will be
28  * returned. If false all are returned. */
30  /** Additional consistency filter: "onlyKeepTheClosest" allows one
31  * correspondence for each "local map" point, but many of them may have as
32  * corresponding pair the same "global point", which this flag avoids. */
34  /** (Default=1) Only consider 1 out of this number of points from the
35  * "other" map. */
37  /** Index of the first point in the "other" map to start checking for
38  * correspondences (Default=0) */
40  /** The point used to calculate angular distances: e.g. the coordinates of
41  * the sensor for a 2D laser scanner. */
43 
44  /** Ctor: default values */
46  : maxDistForCorrespondence(0.50f),
48  onlyKeepTheClosest(true),
49  onlyUniqueRobust(false),
52  angularDistPivotPoint(0, 0, 0)
53  {
54  }
55 };
56 
57 /** Additional results from the determination of matchings between point clouds,
58  * etc., apart from the pairings themselves \sa CMetricMap::determineMatching2D,
59  * CMetricMap::determineMatching3D */
61 {
62  /** The ratio [0,1] of points in otherMap with at least one correspondence.
63  */
65  /** The sum of all matched points squared distances.If undesired, set to
66  * nullptr, as default. */
67  float sumSqrDist;
68 
70 };
71 
72 /** Parameters for CMetricMap::compute3DMatchingRatio() */
74 {
75  /** (Default: 0.10f) The minimum distance between 2 non-probabilistic map
76  * elements for counting them as a correspondence. */
78  /** (Default: 2.0f) The minimum Mahalanobis distance between 2 probabilistic
79  * map elements for counting them as a correspondence. */
81 
83 };
84 
85 /** Common params to all maps derived from mrpt::maps::CMetricMap */
88 {
90  public:
91  /** (Default=true) If false, calling CMetricMap::getAs3DObject() will have
92  * no effects */
94  /** (Default=true) Enable computing observation likelihoods with this map */
96  /** (Default=true) Enable inserting observations in this map */
98 
99  void loadFromConfigFile(
101  const std::string& sectionNamePrefix) override; // See base docs
102  void saveToConfigFile(
104  const std::string& section) const override;
105 };
106 
107 }
108 
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
This class allows loading and storing values and vectors of different types from a configuration text...
This is a virtual base class for sets of options than can be loaded from and/or saved to configuratio...
Common params to all maps derived from mrpt::maps::CMetricMap
bool enableObservationInsertion
(Default=true) Enable inserting observations in this map
void loadFromConfigFile(const mrpt::config::CConfigFileBase &source, const std::string &sectionNamePrefix) override
This method load the options from a ".ini"-like file or memory-stored string list.
void saveToConfigFile(mrpt::config::CConfigFileBase &target, const std::string &section) const override
This method saves the options to a ".ini"-like file or memory-stored string list.
bool enableObservationLikelihood
(Default=true) Enable computing observation likelihoods with this map
bool enableSaveAs3DObject
(Default=true) If false, calling CMetricMap::getAs3DObject() will have no effects
The virtual base class which provides a unified interface for all persistent objects in MRPT.
Definition: CSerializable.h:31
GLsizei const GLchar ** string
Definition: glext.h:4101
GLsizei GLsizei GLchar * source
Definition: glext.h:4082
Additional results from the determination of matchings between point clouds, etc.,...
float correspondencesRatio
The ratio [0,1] of points in otherMap with at least one correspondence.
float sumSqrDist
The sum of all matched points squared distances.If undesired, set to nullptr, as default.
Parameters for the determination of matchings between point clouds, etc.
float maxDistForCorrespondence
Maximum linear distance between two points to be paired (meters)
size_t decimation_other_map_points
(Default=1) Only consider 1 out of this number of points from the "other" map.
bool onlyKeepTheClosest
If set to true (default), only the closest correspondence will be returned.
bool onlyUniqueRobust
Additional consistency filter: "onlyKeepTheClosest" allows one correspondence for each "local map" po...
size_t offset_other_map_points
Index of the first point in the "other" map to start checking for correspondences (Default=0)
float maxAngularDistForCorrespondence
Allowed "angular error" (in radians): this permits larger pairing threshold distances to more distant...
TMatchingParams()
Ctor: default values.
mrpt::math::TPoint3D angularDistPivotPoint
The point used to calculate angular distances: e.g.
Parameters for CMetricMap::compute3DMatchingRatio()
float maxMahaDistForCorr
(Default: 2.0f) The minimum Mahalanobis distance between 2 probabilistic map elements for counting th...
float maxDistForCorr
(Default: 0.10f) The minimum distance between 2 non-probabilistic map elements for counting them as a...
Lightweight 3D point.



Page generated by Doxygen 1.9.1 for MRPT 1.9.9 Git: 814d80880 Fri Aug 24 01:51:28 2018 +0200 at mar 26 may 2026 12:30:59 CEST