10 #ifndef CHeightGridMap2D_MRF_MRF_H
11 #define CHeightGridMap2D_MRF_MRF_H
42 double x_max = 2,
double y_min = -2,
double y_max = 2,
43 double resolution = 0.5,
46 bool run_first_map_estimation_now =
true);
59 std::ostream& out)
const override;
72 const double x,
const double y,
const double z,
79 const size_t cx,
const size_t cy,
double& z_out)
const override;
81 const double x,
const double y,
double& z_out)
const override;
103 bool run_map_estimation_at_ctor;
105 double min_x, max_x, min_y, max_y, resolution;
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
#define MAP_DEFINITION_END(_CLASS_NAME_)
#define MAP_DEFINITION_START(_CLASS_NAME_)
Add a MAP_DEFINITION_START() ...
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...
Virtual base class for Digital Elevation Model (DEM) maps.
CHeightGridMap2D_MRF represents digital-elevation-model over a 2D area, with uncertainty,...
virtual CRandomFieldGridMap2D::TInsertionOptionsCommon * getCommonInsertOptions() override
Get the part of the options common to all CRandomFieldGridMap2D classes.
bool internal_insertObservation(const mrpt::obs::CObservation *obs, const mrpt::poses::CPose3D *robotPose=nullptr) override
Internal method called by insertObservation()
virtual bool insertIndividualPoint(const double x, const double y, const double z, const CHeightGridMap2D_Base::TPointInsertParams ¶ms=CHeightGridMap2D_Base::TPointInsertParams()) override
Update the DEM with one new point.
void internal_clear() override
Erase all the contents of the map.
virtual void dem_update_map() override
Ensure that all observations are reflected in the map estimate.
virtual size_t dem_get_size_y() const override
virtual bool dem_get_z_by_cell(const size_t cx, const size_t cy, double &z_out) const override
Get cell 'z' by (cx,cy) cell indices.
virtual size_t dem_get_size_x() const override
virtual bool dem_get_z(const double x, const double y, double &z_out) const override
Get cell 'z' (x,y) by metric coordinates.
virtual void getAs3DObject(mrpt::opengl::CSetOfObjects::Ptr &outObj) const override
Returns a 3D object representing the map.
CHeightGridMap2D_MRF(TMapRepresentation mapType=mrGMRF_SD, double x_min=-2, double x_max=2, double y_min=-2, double y_max=2, double resolution=0.5, bool run_first_map_estimation_now=true)
Constructor.
virtual double dem_get_resolution() const override
mrpt::maps::CHeightGridMap2D_MRF::TInsertionOptions insertionOptions
double internal_computeObservationLikelihood(const mrpt::obs::CObservation *obs, const mrpt::poses::CPose3D &takenFrom) override
Internal method called by computeObservationLikelihood()
CRandomFieldGridMap2D represents a 2D grid map where each cell is associated one real-valued property...
TMapRepresentation
The type of map representation to be used, see CRandomFieldGridMap2D for a discussion.
@ mrGMRF_SD
Gaussian Markov Random Field, squared differences prior weights between 4 neighboring cells (see disc...
Declares a class that represents any robot's observation.
std::shared_ptr< CSetOfObjects > Ptr
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
GLenum const GLfloat * params
GLsizei const GLchar ** string
GLsizei GLsizei GLchar * source
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
Extra params for insertIndividualPoint()
Parameters related with inserting observations into the map.
TInsertionOptions()
Default values loader.
void dumpToTextStream(std::ostream &out) const override
This method should clearly display all the contents of the structure in textual form,...
void loadFromConfigFile(const mrpt::config::CConfigFileBase &source, const std::string §ion) override
This method load the options from a ".ini"-like file or memory-stored string list.
Parameters common to any derived class.