10 #ifndef CICPCRITERIAERD_H 11 #define CICPCRITERIAERD_H 93 template <
class GRAPH_T =
typename mrpt::graphs::CNetworkOfPoses2DInf>
104 using pose_t =
typename GRAPH_T::constraint_t::type_value;
123 const std::map<std::string, bool>& events_occurred);
124 void getEdgesStats(std::map<std::string, int>* edge_types_to_num)
const;
167 const std::set<mrpt::graphs::TNodeID>& nodes_set);
169 const std::set<mrpt::graphs::TNodeID>& nodes_set);
181 std::set<mrpt::graphs::TNodeID>* nodes_set,
199 std::map<mrpt::graphs::TNodeID, mrpt::obs::CObservation2DRangeScan::Ptr>
201 std::map<mrpt::graphs::TNodeID, mrpt::obs::CObservation3DRangeScan::Ptr>
mrpt::img::TColor m_search_disk_color
see Constructor for initialization
typename parent_t::range_ops_t range_ops_t
void checkRegistrationCondition2D(const std::set< mrpt::graphs::TNodeID > &nodes_set)
typename GRAPH_T::constraint_t::type_value pose_t
type of underlying poses (2D/3D).
ICP-based Edge Registration.
void dumpToTextStream(std::ostream &out) const
This method should clearly display all the contents of the structure in textual form, sending it to a std::ostream.
This is a virtual base class for sets of options than can be loaded from and/or saved to configuratio...
mrpt::img::TColor m_laser_scans_color
see Constructor for initialization
void notifyOfWindowEvents(const std::map< std::string, bool > &events_occurred)
Get a list of the window events that happened since the last call.
void dumpVisibilityErrorMsg(std::string viz_flag, int sleep_time=500)
bool updateState(mrpt::obs::CActionCollection::Ptr action, mrpt::obs::CSensoryFrame::Ptr observations, mrpt::obs::CObservation::Ptr observation)
Generic method for fetching the incremental action/observation readings from the calling function...
double ICP_goodness_thresh
mrpt::obs::CObservation2DRangeScan::Ptr m_last_laser_scan2D
Edge Registration Decider Interface from which RangeScanner-based ERDs can inherit from...
mrpt::obs::CObservation3DRangeScan::Ptr m_last_laser_scan3D
void toggleLaserScansVisualization()
togle the LaserScans visualization on and off
This class allows loading and storing values and vectors of different types from a configuration text...
size_t LC_min_nodeid_diff
int m_text_index_search_disk
void registerNewEdge(const mrpt::graphs::TNodeID &from, const mrpt::graphs::TNodeID &to, const constraint_t &rel_edge)
Register a new constraint/edge in the current graph.
std::map< mrpt::graphs::TNodeID, mrpt::obs::CObservation2DRangeScan::Ptr > m_nodes_to_laser_scans2D
void getDescriptiveReport(std::string *report_str) const
Fill the provided string with a detailed report of the decider/optimizer state.
std::string keystroke_laser_scans
void checkRegistrationCondition3D(const std::set< mrpt::graphs::TNodeID > &nodes_set)
double m_offset_y_search_disk
void loadFromConfigFile(const mrpt::config::CConfigFileBase &source, const std::string §ion)
This method load the options from a ".ini"-like file or memory-stored string list.
void checkIfInvalidDataset(mrpt::obs::CActionCollection::Ptr action, mrpt::obs::CSensoryFrame::Ptr observations, mrpt::obs::CObservation::Ptr observation)
GLsizei const GLchar ** string
std::map< std::string, int > m_edge_types_to_nums
void printParams() const
Print the problem parameters - relevant to the decider/optimizer to the screen in a unified/compact w...
GLsizei GLsizei GLchar * source
mrpt::obs::CObservation2DRangeScan::Ptr m_fake_laser_scan2D
uint64_t TNodeID
A generic numeric type for unique IDs of nodes or entities.
mrpt::graphslam::deciders::CRangeScanOps< GRAPH_T > range_ops_t
Typedef for accessing methods of the RangeScanRegistrationDecider_t parent class. ...
std::map< mrpt::graphs::TNodeID, mrpt::obs::CObservation3DRangeScan::Ptr > m_nodes_to_laser_scans3D
void getNearbyNodesOf(std::set< mrpt::graphs::TNodeID > *nodes_set, const mrpt::graphs::TNodeID &cur_nodeID, double distance)
Get a list of the nodeIDs whose position is within a certain distance to the specified nodeID...
void updateVisuals()
Update the relevant visual features in CDisplayWindow.
void getEdgesStats(std::map< std::string, int > *edge_types_to_num) const
Fill the given map with the type of registered edges as well as the corresponding number of registrat...
bool visualize_laser_scans
double distance(const TPoint2D &p1, const TPoint2D &p2)
Gets the distance between two points in a 2D space.
typename parent_t::nodes_to_scans2D_t nodes_to_scans2D_t
void loadParams(const std::string &source_fname)
Fetch the latest observation that the current instance received (most probably during a call to the u...
std::map< mrpt::graphs::TNodeID, mrpt::obs::CObservation2DRangeScan::Ptr > nodes_to_scans2D_t
std::string scans_img_external_dir
typename GRAPH_T::constraint_t constraint_t
Handy typedefs.
void initializeVisuals()
Initialize visual objects in CDisplayWindow (e.g.