51 typedef std::deque<CBeacon>::iterator
iterator;
59 virtual
bool internal_insertObservation( const
mrpt::obs::CObservation *obs, const
mrpt::poses::CPose3D *robotPose = NULL )
MRPT_OVERRIDE;
60 double internal_computeObservationLikelihood( const
mrpt::obs::CObservation *obs, const
mrpt::poses::CPose3D &takenFrom )
MRPT_OVERRIDE;
66 void resize(const
size_t N);
69 const
CBeacon& operator [](
size_t i)
const {
96 m_beacons.push_back( m );
179 const std::string &file,
180 const char *style=
"b",
181 float confInterval = 0.95f )
const;
207 float &correspondencesRatio,
208 std::vector<bool> &otherCorrespondences)
const;
229 void simulateBeaconReadings(
230 const
mrpt::poses::CPose3D &in_robotPose,
231 const
mrpt::poses::CPoint3D &in_sensorLocationOnRobot,
232 mrpt::obs::CObservationBeaconRanges &out_Observations ) const;
240 void saveMetricMapRepresentationToFile(const
std::
string &filNamePrefix ) const
MRPT_OVERRIDE;
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
#define DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
This declaration must be inserted in all CSerializable classes definition, before the class declarati...
#define MAP_DEFINITION_END(_CLASS_NAME_, _LINKAGE_)
#define MAP_DEFINITION_START(_CLASS_NAME_, _LINKAGE_)
Add a MAP_DEFINITION_START() ... MAP_DEFINITION_END() block inside the declaration of each metric map...
The class for storing individual "beacon landmarks" under a variety of 3D position PDF distributions.
A class for storing a map of 3D probabilistic beacons, using a Montecarlo, Gaussian,...
void changeCoordinatesReference(const mrpt::poses::CPose3D &newOrg)
Changes the reference system of the map to a given 3D pose.
float compute3DMatchingRatio(const mrpt::maps::CMetricMap *otherMap, const mrpt::poses::CPose3D &otherMapPose, const TMatchingRatioParams ¶ms) const MRPT_OVERRIDE
Computes the ratio in [0,1] of correspondences between "this" and the "otherMap" map,...
virtual void internal_clear() MRPT_OVERRIDE
Internal method called by clear()
size_t size() const
Returns the stored landmarks count.
const CBeacon & get(size_t i) const
Access to individual beacons.
bool isEmpty() const MRPT_OVERRIDE
Returns true if the map is empty/no observation has been inserted.
const_iterator begin() const
const_iterator end() const
bool saveToMATLABScript3D(const std::string &file, const char *style="b", float confInterval=0.95f) const
Save to a MATLAB script which displays 3D error ellipses for the map.
std::deque< CBeacon >::const_iterator const_iterator
CBeacon & get(size_t i)
Access to individual beacons.
void computeMatchingWith3DLandmarks(const mrpt::maps::CBeaconMap *otherMap, mrpt::utils::TMatchingPairList &correspondences, float &correspondencesRatio, std::vector< bool > &otherCorrespondences) const
Perform a search for correspondences between "this" and another lansmarks map: Firsly,...
void changeCoordinatesReference(const mrpt::poses::CPose3D &newOrg, const mrpt::maps::CBeaconMap *otherMap)
Changes the reference system of the map "otherMap" and save the result in "this" map.
std::deque< CBeacon > TSequenceBeacons
virtual void determineMatching2D(const mrpt::maps::CMetricMap *otherMap, const mrpt::poses::CPose2D &otherMapPose, mrpt::utils::TMatchingPairList &correspondences, const TMatchingParams ¶ms, TMatchingExtraResults &extraResults) const MRPT_OVERRIDE
Computes the matching between this and another 2D point map, which includes finding:
std::deque< CBeacon >::iterator iterator
void push_back(const CBeacon &m)
Inserts a copy of the given mode into the SOG.
TSequenceBeacons m_beacons
The individual beacons.
Declares a virtual base class for all metric maps storage classes.
A class used to store a 2D pose.
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
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...
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
void saveToTextFile(const std::string &file, mrpt::math::TMatrixTextFileFormat fileFormat=mrpt::math::MATRIX_FORMAT_ENG, bool appendMRPTHeader=false, const std::string &userHeader=std::string()) const
Save matrix to a text file, compatible with MATLAB text format (see also the methods of matrix classe...
#define MRPT_OVERRIDE
C++11 "override" for virtuals:
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
This struct contains data for choosing the method by which new beacons are inserted in the map.
bool MC_performResampling
If set to false (default), the samples will be generated the first time a beacon is observed,...
float SOG_maxDistBetweenGaussians
A parameter for initializing 2D/3D SOGs.
float MC_thresholdNegligible
Threshold for the maximum difference from the maximun (log) weight in the set of samples for erasing ...
float maxElevation_deg
Minimum and maximum elevation angles (in degrees) for inserting new beacons at the first observation:...
float SOG_separationConstant
Constant used to compute the std.
void dumpToTextStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE
This method should clearly display all the contents of the structure in textual form,...
float MC_maxStdToGauss
The threshold for the maximum std (X,Y,and Z) before colapsing the particles into a Gaussian PDF (def...
float SOG_thresholdNegligible
Threshold for the maximum difference from the maximun (log) weight in the SOG for erasing a given mod...
TInsertionOptions()
Initilization of default parameters.
void loadFromConfigFile(const mrpt::utils::CConfigFileBase &source, const std::string §ion) MRPT_OVERRIDE
This method load the options from a ".ini"-like file or memory-stored string list.
unsigned int MC_numSamplesPerMeter
Number of particles per meter of range, i.e.
bool insertAsMonteCarlo
Insert a new beacon as a set of montecarlo samples (default=true), or, if false, as a sum of gaussian...
float MC_afterResamplingNoise
The std.dev.
With this struct options are provided to the likelihood computations.
TLikelihoodOptions()
Initilization of default parameters.
void loadFromConfigFile(const mrpt::utils::CConfigFileBase &source, const std::string §ion) MRPT_OVERRIDE
This method load the options from a ".ini"-like file or memory-stored string list.
float rangeStd
The standard deviation used for Beacon ranges likelihood (default=0.08m).
void dumpToTextStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE
This method should clearly display all the contents of the structure in textual form,...
Parameters for the determination of matchings between point clouds, etc.
Parameters for CMetricMap::compute3DMatchingRatio()