CRandomFieldGridMap3D represents a 3D regular grid where each voxel is associated one real-valued property which is to be estimated by this class.
This class implements a Gaussian Markov Random Field (GMRF) estimator, with each voxel being connected to its 6 immediate neighbors (Up, down, left, right, front, back).
Note that this class does not derive from mrpt::maps::CMetricMap since the estimated values do not have sensor-especific semantics, i.e. the grid can be used to estimate temperature, gas concentration, etc.
Usage:
setSize()
.initialize()
. This resets the contents of the map, so previously-added observations will be lost.insertIndividualReading()
Custom connectivity patterns can be defined with setVoxelsConnectivity().
Definition at line 78 of file CRandomFieldGridMap3D.h.
#include <mrpt/maps/CRandomFieldGridMap3D.h>
Classes | |
struct | ConnectivityDescriptor |
Base class for user-supplied objects capable of describing voxels connectivity, used to build prior factors of the MRF graph. More... | |
struct | TInsertionOptions |
Parameters common to any derived class. More... | |
struct | TObservationGMRF |
struct | TPriorFactorGMRF |
Public Types | |
enum | TVoxelInterpolationMethod { gimNearest = 0, gimBilinear } |
Public Member Functions | |
void * | operator new (size_t size) |
void * | operator new[] (size_t size) |
void | operator delete (void *ptr) noexcept |
void | operator delete[] (void *ptr) noexcept |
void | operator delete (void *memory, void *ptr) noexcept |
void * | operator new (size_t size, const std::nothrow_t &) noexcept |
void | operator delete (void *ptr, const std::nothrow_t &) noexcept |
CRandomFieldGridMap3D (double x_min=-2, double x_max=2, double y_min=-2, double y_max=2, double z_min=-2, double z_max=2, double voxel_size=0.5, bool call_initialize_now=true) | |
Constructor. More... | |
void | clear () override |
Erases all added observations and start again with an empty gridmap. More... | |
bool | saveAsCSV (const std::string &filName_mean, const std::string &filName_stddev=std::string()) const |
Save the current estimated mean values to a CSV file (compatible with Paraview) with fields x y z mean_value . More... | |
bool | saveAsVtkStructuredGrid (const std::string &fil) const |
Save the current estimated grid to a VTK file (.vts) as a "structured
grid". More... | |
virtual void | resize (double new_x_min, double new_x_max, double new_y_min, double new_y_max, double new_z_min, double new_z_max, const TRandomFieldVoxel &defaultValueNewvoxels, double additionalMarginMeters=2.0) override |
Changes the size of the grid, maintaining previous contents. More... | |
virtual void | setSize (const double x_min, const double x_max, const double y_min, const double y_max, const double z_min, const double z_max, const double resolution_xy, const double resolution_z=-1.0, const TRandomFieldVoxel *fill_value=nullptr) override |
Changes the size of the grid, erasing previous contents.If resolution_z <0, the same resolution will be used for all dimensions x,y,z as given in resolution_xy More... | |
void | setVoxelsConnectivity (const ConnectivityDescriptor::Ptr &new_connectivity_descriptor) |
Sets a custom object to define the connectivity between voxels. More... | |
bool | insertIndividualReading (const double sensorReading, const double sensorVariance, const mrpt::math::TPoint3D &point, const TVoxelInterpolationMethod method, const bool update_map) |
Direct update of the map with a reading in a given position of the map. More... | |
void | updateMapEstimation () |
Run the method-specific procedure required to ensure that the mean & variances are up-to-date with all inserted observations, using parameters in insertionOptions. More... | |
void | getAsVtkStructuredGrid (vtkStructuredGrid *output, const std::string &label_mean=std::string("mean"), const std::string &label_stddev=std::string("stddev")) const |
Returns the 3D grid contents as an VTK grid. More... | |
virtual void | resize (double new_x_min, double new_x_max, double new_y_min, double new_y_max, double new_z_min, double new_z_max, const TRandomFieldVoxel &defaultValueNewCells, double additionalMarginMeters=2.0) |
Changes the size of the grid, maintaining previous contents. More... | |
virtual void | setSize (const double x_min, const double x_max, const double y_min, const double y_max, const double z_min, const double z_max, const double resolution_xy, const double resolution_z_=-1.0, const TRandomFieldVoxel *fill_value=nullptr) |
Changes the size of the grid, ERASING all previous contents. More... | |
void | fill (const TRandomFieldVoxel &value) |
Fills all the cells with the same value. More... | |
size_t | cellAbsIndexFromCXCYCZ (const int cx, const int cy, const int cz) const |
Gets the absolute index of a voxel in the linear container m_map[] from its cx,cy,cz indices, or -1 if out of map bounds (in any dimension). More... | |
TRandomFieldVoxel * | cellByPos (double x, double y, double z) |
Returns a pointer to the contents of a voxel given by its coordinates, or nullptr if it is out of the map extensions. More... | |
const TRandomFieldVoxel * | cellByPos (double x, double y, double z) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
TRandomFieldVoxel * | cellByIndex (unsigned int cx, unsigned int cy, unsigned int cz) |
Returns a pointer to the contents of a voxel given by its voxel indexes, or nullptr if it is out of the map extensions. More... | |
const TRandomFieldVoxel * | cellByIndex (unsigned int cx, unsigned int cy, unsigned int cz) const |
Returns a pointer to the contents of a voxel given by its voxel indexes, or nullptr if it is out of the map extensions. More... | |
size_t | getSizeX () const |
size_t | getSizeY () const |
size_t | getSizeZ () const |
size_t | getVoxelCount () const |
double | getXMin () const |
double | getXMax () const |
double | getYMin () const |
double | getYMax () const |
double | getZMin () const |
double | getZMax () const |
double | getResolutionXY () const |
double | getResolutionZ () const |
int | x2idx (double x) const |
Transform a coordinate values into voxel indexes. More... | |
int | y2idx (double y) const |
int | z2idx (double z) const |
double | idx2x (int cx) const |
Transform a voxel index into a coordinate value of the voxel central point. More... | |
double | idx2y (int cy) const |
double | idx2z (int cz) const |
virtual mxArray * | writeToMatlab () const |
Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class. More... | |
Static Public Member Functions | |
static void * | operator new (size_t size, void *ptr) |
Public Attributes | |
TInsertionOptions | insertionOptions |
Static Public Attributes | |
static bool | ENABLE_GMRF_PROFILER |
[default:false] Enables a profiler to show a performance report at application end. More... | |
static const size_t | INVALID_VOXEL_IDX |
static mrpt::system::TConsoleColor | logging_levels_to_colors [NUMBER_OF_VERBOSITY_LEVELS] |
Map from VerbosityLevels to their corresponding mrpt::system::TConsoleColor. More... | |
static std::string | logging_levels_to_names [NUMBER_OF_VERBOSITY_LEVELS] |
Map from VerbosityLevels to their corresponding names. More... | |
Protected Member Functions | |
void | internal_initialize (bool erase_prev_contents=true) |
Internal: called called after each change of resolution, size, etc. More... | |
std::vector< TRandomFieldVoxel > & | m_map_castaway_const () const |
Used only from logically const method that really need to modify the object. More... | |
void | dyngridcommon_writeToStream (ARCHIVE &out) const |
Serialization of all parameters, except the contents of each voxel (responsability of the derived class) More... | |
void | dyngridcommon_readFromStream (ARCHIVE &in) |
Serialization of all parameters, except the contents of each voxel (responsability of the derived class) More... | |
CSerializable virtual methods | |
uint8_t | serializeGetVersion () const override |
Must return the current versioning number of the object. More... | |
void | serializeTo (mrpt::serialization::CArchive &out) const override |
Pure virtual method for writing (serializing) to an abstract archive. More... | |
void | serializeFrom (mrpt::serialization::CArchive &in, uint8_t serial_version) override |
Pure virtual method for reading (deserializing) from an abstract archive. More... | |
Protected Attributes | |
ConnectivityDescriptor::Ptr | m_gmrf_connectivity |
Empty: default. More... | |
mrpt::graphs::ScalarFactorGraph | m_gmrf |
std::vector< std::deque< TObservationGMRF > > | m_mrf_factors_activeObs |
Vector with the active observations and their respective Information, for each map cell. More... | |
std::deque< TPriorFactorGMRF > | m_mrf_factors_priors |
Vector with the precomputed priors for each GMRF model. More... | |
std::vector< TRandomFieldVoxel > | m_map |
The cells. More... | |
double | m_x_min |
double | m_x_max |
double | m_y_min |
double | m_y_max |
double | m_z_min |
double | m_z_max |
double | m_resolution_xy |
double | m_resolution_z |
size_t | m_size_x |
size_t | m_size_y |
size_t | m_size_z |
size_t | m_size_x_times_y |
VerbosityLevel | m_min_verbosity_level |
Provided messages with VerbosityLevel smaller than this value shall be ignored. More... | |
Private Types | |
using | BASE = mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel > |
Private Member Functions | |
std::string | generateStringFromFormat (const char *fmt, va_list argp) const |
Helper method for generating a std::string instance from printf-like arguments. More... | |
Private Attributes | |
std::string | m_logger_name |
std::deque< TMsg > | m_history |
std::deque< output_logger_callback_t > | m_listCallbacks |
RTTI stuff | |
using | Ptr = std::shared_ptr< CRandomFieldGridMap3D > |
using | ConstPtr = std::shared_ptr< const CRandomFieldGridMap3D > |
using | UniquePtr = std::unique_ptr< CRandomFieldGridMap3D > |
using | ConstUniquePtr = std::unique_ptr< const CRandomFieldGridMap3D > |
static mrpt::rtti::CLASSINIT | _init_CRandomFieldGridMap3D |
static const mrpt::rtti::TRuntimeClassId | runtimeClassId |
static constexpr const char * | className = "CRandomFieldGridMap3D" |
static const mrpt::rtti::TRuntimeClassId * | _GetBaseClass () |
static constexpr auto | getClassName () |
static const mrpt::rtti::TRuntimeClassId & | GetRuntimeClassIdStatic () |
static mrpt::rtti::CObject * | CreateObject () |
template<typename... Args> | |
static Ptr | Create (Args &&... args) |
template<typename... Args> | |
static UniquePtr | CreateUnique (Args &&... args) |
virtual const mrpt::rtti::TRuntimeClassId * | GetRuntimeClass () const override |
Returns information about the class of an object in runtime. More... | |
virtual mrpt::rtti::CObject * | clone () const override |
Returns a deep copy (clone) of the object, indepently of its class. More... | |
Logging methods | |
bool | logging_enable_console_output |
[Default=true] Set it to false in case you don't want the logged messages to be dumped to the output automatically. More... | |
bool | logging_enable_keep_record |
[Default=false] Enables storing all messages into an internal list. More... | |
void | logStr (const VerbosityLevel level, const std::string &msg_str) const |
Main method to add the specified message string to the logger. More... | |
void | logFmt (const VerbosityLevel level, const char *fmt,...) const MRPT_printf_format_check(3 |
Alternative logging method, which mimics the printf behavior. More... | |
void void | logCond (const VerbosityLevel level, bool cond, const std::string &msg_str) const |
Log the given message only if the condition is satisfied. More... | |
void | setLoggerName (const std::string &name) |
Set the name of the COutputLogger instance. More... | |
std::string | getLoggerName () const |
Return the name of the COutputLogger instance. More... | |
void | setMinLoggingLevel (const VerbosityLevel level) |
Set the minimum logging level for which the incoming logs are going to be taken into account. More... | |
void | setVerbosityLevel (const VerbosityLevel level) |
alias of setMinLoggingLevel() More... | |
VerbosityLevel | getMinLoggingLevel () const |
bool | isLoggingLevelVisible (VerbosityLevel level) const |
void | getLogAsString (std::string &log_contents) const |
Fill the provided string with the contents of the logger's history in std::string representation. More... | |
std::string | getLogAsString () const |
Get the history of COutputLogger instance in a string representation. More... | |
void | writeLogToFile (const std::string *fname_in=NULL) const |
Write the contents of the COutputLogger instance to an external file. More... | |
void | dumpLogToConsole () const |
Dump the current contents of the COutputLogger instance in the terminal window. More... | |
std::string | getLoggerLastMsg () const |
Return the last Tmsg instance registered in the logger history. More... | |
void | getLoggerLastMsg (std::string &msg_str) const |
Fill inputtted string with the contents of the last message in history. More... | |
void | loggerReset () |
Reset the contents of the logger instance. More... | |
void | logRegisterCallback (output_logger_callback_t userFunc) |
bool | logDeregisterCallback (output_logger_callback_t userFunc) |
|
private |
Definition at line 83 of file CRandomFieldGridMap3D.h.
using mrpt::maps::CRandomFieldGridMap3D::ConstPtr = std::shared_ptr<const CRandomFieldGridMap3D > |
Definition at line 85 of file CRandomFieldGridMap3D.h.
using mrpt::maps::CRandomFieldGridMap3D::ConstUniquePtr = std::unique_ptr<const CRandomFieldGridMap3D > |
Definition at line 85 of file CRandomFieldGridMap3D.h.
using mrpt::maps::CRandomFieldGridMap3D::Ptr = std::shared_ptr< CRandomFieldGridMap3D > |
A type for the associated smart pointer
Definition at line 85 of file CRandomFieldGridMap3D.h.
using mrpt::maps::CRandomFieldGridMap3D::UniquePtr = std::unique_ptr< CRandomFieldGridMap3D > |
Definition at line 85 of file CRandomFieldGridMap3D.h.
Enumerator | |
---|---|
gimNearest | |
gimBilinear |
Definition at line 202 of file CRandomFieldGridMap3D.h.
CRandomFieldGridMap3D::CRandomFieldGridMap3D | ( | double | x_min = -2 , |
double | x_max = 2 , |
||
double | y_min = -2 , |
||
double | y_max = 2 , |
||
double | z_min = -2 , |
||
double | z_max = 2 , |
||
double | voxel_size = 0.5 , |
||
bool | call_initialize_now = true |
||
) |
Constructor.
If you set call_initialize_now to false, the object will be initialized immediately (without the heavy initialization of the GMRF), but you then must call setSize()
or clear()
later to properly initialize the object before using it to insert observations.
Definition at line 39 of file CRandomFieldGridMap3D.cpp.
|
staticprotected |
|
inlineinherited |
Gets the absolute index of a voxel in the linear container m_map[] from its cx,cy,cz indices, or -1 if out of map bounds (in any dimension).
Definition at line 232 of file CDynamicGrid3D.h.
|
inlineinherited |
Returns a pointer to the contents of a voxel given by its voxel indexes, or nullptr if it is out of the map extensions.
Definition at line 266 of file CDynamicGrid3D.h.
|
inlineinherited |
Returns a pointer to the contents of a voxel given by its voxel indexes, or nullptr if it is out of the map extensions.
Definition at line 276 of file CDynamicGrid3D.h.
|
inlineinherited |
Returns a pointer to the contents of a voxel given by its coordinates, or nullptr if it is out of the map extensions.
Definition at line 247 of file CDynamicGrid3D.h.
|
inlineinherited |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 255 of file CDynamicGrid3D.h.
|
overridevirtual |
Erases all added observations and start again with an empty gridmap.
Reimplemented from mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >.
Definition at line 83 of file CRandomFieldGridMap3D.cpp.
References mrpt::containers::CDynamicGrid3D< T >::clear().
|
overridevirtual |
Returns a deep copy (clone) of the object, indepently of its class.
Implements mrpt::rtti::CObject.
|
inlinestatic |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
static |
|
inlinestatic |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inherited |
Dump the current contents of the COutputLogger instance in the terminal window.
Definition at line 179 of file COutputLogger.cpp.
|
inlineinherited |
Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer).
Definition at line 169 of file CObject.h.
References mrpt::rtti::CObject::clone().
Referenced by mrpt::obs::CRawlog::addActions(), and mrpt::obs::CRawlog::addObservations().
|
inlineprotectedinherited |
Serialization of all parameters, except the contents of each voxel (responsability of the derived class)
Definition at line 338 of file CDynamicGrid3D.h.
|
inlineprotectedinherited |
Serialization of all parameters, except the contents of each voxel (responsability of the derived class)
Definition at line 327 of file CDynamicGrid3D.h.
|
inlineinherited |
Fills all the cells with the same value.
Definition at line 220 of file CDynamicGrid3D.h.
|
privateinherited |
Helper method for generating a std::string instance from printf-like arguments.
Definition at line 99 of file COutputLogger.cpp.
References mrpt::system::os::vsnprintf().
void CRandomFieldGridMap3D::getAsVtkStructuredGrid | ( | vtkStructuredGrid * | output, |
const std::string & | label_mean = std::string("mean") , |
||
const std::string & | label_stddev = std::string("stddev") |
||
) | const |
Returns the 3D grid contents as an VTK grid.
Definition at line 443 of file CRandomFieldGridMap3D.cpp.
References ASSERT_, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::getSizeX(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::getSizeY(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::getSizeZ(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::idx2x(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::idx2y(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::idx2z(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_map, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_size_x, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_size_y, MRPT_END, MRPT_START, and THROW_EXCEPTION.
Referenced by saveAsVtkStructuredGrid().
|
inlinestaticconstexpr |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inherited |
Get the history of COutputLogger instance in a string representation.
Definition at line 148 of file COutputLogger.cpp.
Referenced by mrpt::graphslam::deciders::CICPCriteriaNRD< GRAPH_T >::getDescriptiveReport().
|
inherited |
Fill the provided string with the contents of the logger's history in std::string representation.
Definition at line 143 of file COutputLogger.cpp.
|
inherited |
Return the last Tmsg instance registered in the logger history.
Definition at line 184 of file COutputLogger.cpp.
References mrpt::system::COutputLogger::TMsg::getAsString().
|
inherited |
Fill inputtted string with the contents of the last message in history.
Definition at line 190 of file COutputLogger.cpp.
|
inherited |
Return the name of the COutputLogger instance.
Definition at line 132 of file COutputLogger.cpp.
Referenced by mrpt::system::COutputLogger::TMsg::TMsg().
|
inlineinherited |
Definition at line 200 of file system/COutputLogger.h.
References mrpt::system::COutputLogger::m_min_verbosity_level.
Referenced by mrpt::maps::CRandomFieldGridMap2D::isEnabledVerbose(), and mrpt::slam::CMetricMapBuilderRBPF::processActionObservation().
|
inlineinherited |
Definition at line 294 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 295 of file CDynamicGrid3D.h.
|
overridevirtual |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::serialization::CSerializable.
|
static |
|
inlineinherited |
Definition at line 284 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 285 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 286 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 287 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 289 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 288 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 291 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 290 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 293 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 292 of file CDynamicGrid3D.h.
|
inlineinherited |
Transform a voxel index into a coordinate value of the voxel central point.
Definition at line 312 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 313 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 314 of file CDynamicGrid3D.h.
bool CRandomFieldGridMap3D::insertIndividualReading | ( | const double | sensorReading, |
const double | sensorVariance, | ||
const mrpt::math::TPoint3D & | point, | ||
const TVoxelInterpolationMethod | method, | ||
const bool | update_map | ||
) |
Direct update of the map with a reading in a given position of the map.
[in] | sensorReading | [in] The value observed in the (x,y,z) position |
[in] | sensorVariance | [in] The variance of the sensor observation |
[in] | point | [in] The (x,y,z) location |
[in] | method | [in] Voxel interpolation method: how many voxels will be affected by the reading |
[in] | update_map | [in] Run a global map update after inserting this observation (algorithm-dependant) |
Definition at line 340 of file CRandomFieldGridMap3D.cpp.
References mrpt::graphs::ScalarFactorGraph::addConstraint(), ASSERT_ABOVE_, ASSERTMSG_, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::cellAbsIndexFromCXCYCZ(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::INVALID_VOXEL_IDX, mrpt::maps::CRandomFieldGridMap3D::TObservationGMRF::Lambda, m_gmrf, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_map, m_mrf_factors_activeObs, MRPT_END, MRPT_START, mrpt::graphs::ScalarFactorGraph::UnaryFactorVirtualBase::node_id, mrpt::maps::CRandomFieldGridMap3D::TObservationGMRF::obsValue, updateMapEstimation(), mrpt::math::TPoint3D::x, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::x2idx(), mrpt::math::TPoint3D::y, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::y2idx(), mrpt::math::TPoint3D::z, and mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::z2idx().
Referenced by TEST().
|
protected |
Internal: called called after each change of resolution, size, etc.
to build the prior factor information
Definition at line 89 of file CRandomFieldGridMap3D.cpp.
References ASSERT_, ASSERT_EQUAL_, fill(), mrpt::maps::CRandomFieldGridMap3D::ConnectivityDescriptor::getEdgeInformation(), mrpt::maps::CRandomFieldGridMap3D::TPriorFactorGMRF::Lambda, MRPT_LOG_DEBUG_STREAM, mrpt::graphs::ScalarFactorGraph::BinaryFactorVirtualBase::node_id_i, mrpt::graphs::ScalarFactorGraph::BinaryFactorVirtualBase::node_id_j, mrpt::system::CTicTac::Tac(), and mrpt::system::CTicTac::Tic().
|
inlineinherited |
Definition at line 201 of file system/COutputLogger.h.
References mrpt::system::COutputLogger::m_min_verbosity_level.
Referenced by mrpt::slam::CMetricMapBuilderRBPF::processActionObservation(), and mrpt::system::COutputLoggerStreamWrapper::~COutputLoggerStreamWrapper().
|
inherited |
Log the given message only if the condition is satisfied.
Definition at line 120 of file COutputLogger.cpp.
|
inherited |
Definition at line 287 of file COutputLogger.cpp.
References getAddress().
|
inherited |
Alternative logging method, which mimics the printf behavior.
Handy for not having to first use mrpt::format to pass a std::string message to logStr
Definition at line 80 of file COutputLogger.cpp.
Referenced by mrpt::graphslam::deciders::CICPCriteriaNRD< GRAPH_T >::CICPCriteriaNRD(), mrpt::hmtslam::CTopLCDetector_GridMatching::computeTopologicalObservationModel(), CGraphSlamHandler< GRAPH_T >::execute(), mrpt::math::CLevenbergMarquardtTempl< VECTORTYPE, USERPARAM >::execute(), CGraphSlamHandler< GRAPH_T >::initOutputDir(), CGraphSlamHandler< GRAPH_T >::initVisualization(), mrpt::nav::CNavigatorManualSequence::navigationStep(), mrpt::nav::CAbstractNavigator::performNavigationStepNavigating(), CGraphSlamHandler< GRAPH_T >::readConfigFname(), CGraphSlamHandler< GRAPH_T >::saveResults(), CGraphSlamHandler< GRAPH_T >::setResultsDirName(), mrpt::nav::CReactiveNavigationSystem::STEP1_InitPTGs(), and CGraphSlamHandler< GRAPH_T >::~CGraphSlamHandler().
|
inherited |
Reset the contents of the logger instance.
Called upon construction.
Definition at line 195 of file COutputLogger.cpp.
References mrpt::system::LVL_INFO.
|
inherited |
Definition at line 274 of file COutputLogger.cpp.
|
inherited |
Main method to add the specified message string to the logger.
Definition at line 61 of file COutputLogger.cpp.
References mrpt::system::COutputLogger::TMsg::body, mrpt::system::COutputLogger::TMsg::dumpToConsole(), mrpt::system::COutputLogger::TMsg::level, mrpt::system::COutputLogger::TMsg::name, and mrpt::system::COutputLogger::TMsg::timestamp.
Referenced by mrpt::slam::PF_implementation< mrpt::math::TPose3D, CMonteCarloLocalization3D, mrpt::bayes::particle_storage_mode::VALUE >::PF_SLAM_implementation_pfAuxiliaryPFStandardAndOptimal(), mrpt::nav::CReactiveNavigationSystem::STEP1_InitPTGs(), and mrpt::system::COutputLoggerStreamWrapper::~COutputLoggerStreamWrapper().
|
inlineprotectedinherited |
Used only from logically const method that really need to modify the object.
Definition at line 320 of file CDynamicGrid3D.h.
|
inlinenoexcept |
Definition at line 85 of file CRandomFieldGridMap3D.h.
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inlinenoexcept |
Definition at line 85 of file CRandomFieldGridMap3D.h.
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inline |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inlinenoexcept |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inlinestatic |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inline |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
inlinevirtualinherited |
Changes the size of the grid, maintaining previous contents.
Definition at line 45 of file CDynamicGrid3D.h.
|
overridevirtual |
Changes the size of the grid, maintaining previous contents.
Definition at line 67 of file CRandomFieldGridMap3D.cpp.
References MRPT_END, MRPT_START, and mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::resize().
Referenced by TEST().
bool mrpt::maps::CRandomFieldGridMap3D::saveAsCSV | ( | const std::string & | filName_mean, |
const std::string & | filName_stddev = std::string() |
||
) | const |
Save the current estimated mean values to a CSV file (compatible with Paraview) with fields x y z mean_value
.
Optionally, std deviations can be also saved to another file with fields x y z stddev_value
, if filName_stddev
is provided.
Definition at line 254 of file CRandomFieldGridMap3D.cpp.
References mrpt::format(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::idx2x(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::idx2y(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::idx2z(), mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_map, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_size_x, and mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_size_y.
Referenced by TEST().
bool CRandomFieldGridMap3D::saveAsVtkStructuredGrid | ( | const std::string & | fil | ) | const |
Save the current estimated grid to a VTK file (.vts) as a "structured grid".
Definition at line 223 of file CRandomFieldGridMap3D.cpp.
References getAsVtkStructuredGrid(), MRPT_END, MRPT_START, and THROW_EXCEPTION.
Referenced by TEST().
|
overrideprotectedvirtual |
Pure virtual method for reading (deserializing) from an abstract archive.
Users don't call this method directly. Instead, use stream >> object;
.
in | The input binary stream where the object data must read from. |
version | The version of the object stored in the stream: use this version number in your code to know how to read the incoming data. |
std::exception | On any I/O error |
Implements mrpt::serialization::CSerializable.
Definition at line 408 of file CRandomFieldGridMap3D.cpp.
References ASSERT_EQUAL_, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::dyngridcommon_readFromStream(), mrpt::maps::CRandomFieldGridMap3D::TInsertionOptions::GMRF_lambdaPrior, mrpt::maps::CRandomFieldGridMap3D::TInsertionOptions::GMRF_skip_variance, insertionOptions, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_map, and MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION.
|
overrideprotectedvirtual |
Must return the current versioning number of the object.
Start in zero for new classes, and increments each time there is a change in the stored format.
Implements mrpt::serialization::CSerializable.
Definition at line 381 of file CRandomFieldGridMap3D.cpp.
|
overrideprotectedvirtual |
Pure virtual method for writing (serializing) to an abstract archive.
Users don't call this method directly. Instead, use stream << object;
.
std::exception | On any I/O error |
Implements mrpt::serialization::CSerializable.
Definition at line 382 of file CRandomFieldGridMap3D.cpp.
References mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::dyngridcommon_writeToStream(), mrpt::maps::CRandomFieldGridMap3D::TInsertionOptions::GMRF_lambdaPrior, mrpt::maps::CRandomFieldGridMap3D::TInsertionOptions::GMRF_skip_variance, insertionOptions, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_map, and mrpt::serialization::CArchive::WriteBuffer().
|
inherited |
Set the name of the COutputLogger instance.
Definition at line 127 of file COutputLogger.cpp.
Referenced by mrpt::slam::CMetricMapBuilderICP::CMetricMapBuilderICP(), mrpt::slam::CMetricMapBuilderRBPF::CMetricMapBuilderRBPF(), mrpt::slam::CMonteCarloLocalization2D::CMonteCarloLocalization2D(), mrpt::slam::CMonteCarloLocalization3D::CMonteCarloLocalization3D(), and mrpt::graphslam::CWindowManager::initCWindowManager().
|
inherited |
Set the minimum logging level for which the incoming logs are going to be taken into account.
String messages with specified VerbosityLevel smaller than the min, will not be outputted to the screen and neither will a record of them be stored in by the COutputLogger instance
Definition at line 133 of file COutputLogger.cpp.
Referenced by mrpt::maps::CRandomFieldGridMap2D::enableVerbose(), mrpt::math::CLevenbergMarquardtTempl< VECTORTYPE, USERPARAM >::execute(), mrpt::hwdrivers::CHokuyoURG::initialize(), and mrpt::graphslam::deciders::CICPCriteriaNRD< GRAPH_T >::loadParams().
|
overridevirtual |
Changes the size of the grid, erasing previous contents.If resolution_z
<0, the same resolution will be used for all dimensions x,y,z as given in resolution_xy
Changes the size of the grid, erasing previous contents.
Definition at line 51 of file CRandomFieldGridMap3D.cpp.
References MRPT_END, MRPT_START, and setSize().
Referenced by TEST().
|
inlinevirtualinherited |
Changes the size of the grid, ERASING all previous contents.
If fill_value is left as nullptr, the contents of cells may be undefined (some will remain with their old values, the new ones will have the default voxel value, but the location of old values may change wrt their old places). If fill_value is not nullptr, it is assured that all cells will have a copy of that value after resizing. If resolution_z
<0, the same resolution will be used for all dimensions x,y,z as given in resolution_xy
Definition at line 172 of file CDynamicGrid3D.h.
|
inherited |
alias of setMinLoggingLevel()
Definition at line 138 of file COutputLogger.cpp.
Referenced by mrpt::nav::CAbstractNavigator::CAbstractNavigator(), mrpt::slam::CMetricMapBuilderRBPF::CMetricMapBuilderRBPF(), mrpt::comms::CServerTCPSocket::CServerTCPSocket(), mrpt::slam::CMetricMapBuilderRBPF::processActionObservation(), and mrpt::math::ransac_detect_2D_lines().
void mrpt::maps::CRandomFieldGridMap3D::setVoxelsConnectivity | ( | const ConnectivityDescriptor::Ptr & | new_connectivity_descriptor | ) |
Sets a custom object to define the connectivity between voxels.
Must call clear() or setSize() afterwards for the changes to take place.
Definition at line 334 of file CRandomFieldGridMap3D.cpp.
References m_gmrf_connectivity.
void CRandomFieldGridMap3D::updateMapEstimation | ( | ) |
Run the method-specific procedure required to ensure that the mean & variances are up-to-date with all inserted observations, using parameters in insertionOptions.
Definition at line 310 of file CRandomFieldGridMap3D.cpp.
References ASSERT_, ASSERTMSG_, mrpt::maps::CRandomFieldGridMap3D::TInsertionOptions::GMRF_skip_variance, insertionOptions, m_gmrf, mrpt::containers::CDynamicGrid3D< TRandomFieldVoxel >::m_map, m_mrf_factors_activeObs, and mrpt::graphs::ScalarFactorGraph::updateEstimation().
Referenced by insertIndividualReading(), and TEST().
|
inherited |
Write the contents of the COutputLogger instance to an external file.
Upon call to this method, COutputLogger dumps the contents of all the logged commands so far to the specified external file. By default the filename is set to ${LOGGERNAME}.log except if the fname parameter is provided
Definition at line 154 of file COutputLogger.cpp.
References ASSERTMSG_, and mrpt::format().
|
inlinevirtualinherited |
Introduces a pure virtual method responsible for writing to a mxArray
Matlab object, typically a MATLAB struct
whose contents are documented in each derived class.
mxArray
(caller is responsible of memory freeing) or nullptr is class does not support conversion to MATLAB. Definition at line 70 of file CSerializable.h.
|
inlineinherited |
Transform a coordinate values into voxel indexes.
Definition at line 297 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 301 of file CDynamicGrid3D.h.
|
inlineinherited |
Definition at line 305 of file CDynamicGrid3D.h.
|
staticprotected |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
staticconstexpr |
Definition at line 85 of file CRandomFieldGridMap3D.h.
|
static |
[default:false] Enables a profiler to show a performance report at application end.
Definition at line 89 of file CRandomFieldGridMap3D.h.
TInsertionOptions mrpt::maps::CRandomFieldGridMap3D::insertionOptions |
Definition at line 152 of file CRandomFieldGridMap3D.h.
Referenced by serializeFrom(), serializeTo(), TEST(), and updateMapEstimation().
|
staticinherited |
Definition at line 227 of file CDynamicGrid3D.h.
|
inherited |
[Default=true] Set it to false in case you don't want the logged messages to be dumped to the output automatically.
Definition at line 239 of file system/COutputLogger.h.
|
inherited |
[Default=false] Enables storing all messages into an internal list.
Definition at line 242 of file system/COutputLogger.h.
|
staticinherited |
Map from VerbosityLevels to their corresponding mrpt::system::TConsoleColor.
Implementation file for the COutputLogger header class.
Handy for coloring the input based on the verbosity of the message
Definition at line 124 of file system/COutputLogger.h.
Referenced by mrpt::system::COutputLogger::TMsg::dumpToConsole().
|
staticinherited |
Map from VerbosityLevels to their corresponding names.
Handy for printing the current message VerbosityLevel along with the actual content
Definition at line 129 of file system/COutputLogger.h.
Referenced by mrpt::system::COutputLogger::TMsg::getAsString().
|
protected |
Definition at line 244 of file CRandomFieldGridMap3D.h.
Referenced by insertIndividualReading(), and updateMapEstimation().
|
protected |
Empty: default.
Definition at line 242 of file CRandomFieldGridMap3D.h.
Referenced by setVoxelsConnectivity().
|
mutableprivateinherited |
Definition at line 312 of file system/COutputLogger.h.
|
privateinherited |
Definition at line 314 of file system/COutputLogger.h.
|
privateinherited |
Definition at line 310 of file system/COutputLogger.h.
|
mutableprotectedinherited |
The cells.
Definition at line 317 of file CDynamicGrid3D.h.
|
protectedinherited |
Provided messages with VerbosityLevel smaller than this value shall be ignored.
Definition at line 252 of file system/COutputLogger.h.
Referenced by mrpt::system::COutputLogger::getMinLoggingLevel(), and mrpt::system::COutputLogger::isLoggingLevelVisible().
|
protected |
Vector with the active observations and their respective Information, for each map cell.
Definition at line 288 of file CRandomFieldGridMap3D.h.
Referenced by insertIndividualReading(), and updateMapEstimation().
|
protected |
Vector with the precomputed priors for each GMRF model.
Definition at line 290 of file CRandomFieldGridMap3D.h.
|
protectedinherited |
Definition at line 322 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 322 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 323 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 323 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 323 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 323 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 321 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 321 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 321 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 321 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 321 of file CDynamicGrid3D.h.
|
protectedinherited |
Definition at line 321 of file CDynamicGrid3D.h.
|
staticprotected |
Definition at line 85 of file CRandomFieldGridMap3D.h.
Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST |