31 #include "rtabmap/core/rtabmap_core_export.h"
50 const std::string & filePath,
52 const std::map<int, Transform> & poses,
53 const std::multimap<int, Link> & constraints = std::multimap<int, Link>(),
54 const std::map<int, double> & stamps = std::map<int, double>(),
58 const std::string & filePath,
60 std::map<int, Transform> & poses,
61 std::multimap<int, Link> * constraints = 0,
62 std::map<int, double> * stamps = 0);
65 const std::string & filePath,
66 const std::map<int, GPS> & gpsValues,
67 unsigned int rgba = 0xFFFFFFFF);
78 const std::vector<Transform> &poses_gt,
79 const std::vector<Transform> &poses_result,
91 const std::vector<Transform> &poses_gt,
92 const std::vector<Transform> &poses_result,
105 const std::map<int, Transform> &groundTruth,
106 const std::map<int, Transform> &poses,
107 float & translational_rmse,
108 float & translational_mean,
109 float & translational_median,
110 float & translational_std,
111 float & translational_min,
112 float & translational_max,
113 float & rotational_rmse,
114 float & rotational_mean,
115 float & rotational_median,
116 float & rotational_std,
117 float & rotational_min,
118 float & rotational_max);
121 const std::map<int, Transform> & poses,
122 const std::multimap<int, Link> & links,
123 float & maxLinearErrorRatio,
124 float & maxAngularErrorRatio,
125 float & maxLinearError,
126 float & maxAngularError,
127 const Link ** maxLinearErrorLink = 0,
128 const Link ** maxAngularErrorLink = 0,
129 bool for3DoF =
false);
131 std::vector<double> RTABMAP_CORE_EXPORT
getMaxOdomInf(
const std::multimap<int, Link> & links);
133 std::multimap<int, Link>::iterator RTABMAP_CORE_EXPORT
findLink(
134 std::multimap<int, Link> & links,
137 bool checkBothWays =
true,
139 std::multimap<int, std::pair<int, Link::Type> >
::iterator RTABMAP_CORE_EXPORT
findLink(
140 std::multimap<
int, std::pair<int, Link::Type> > & links,
143 bool checkBothWays =
true,
145 std::multimap<int, int>::iterator RTABMAP_CORE_EXPORT
findLink(
146 std::multimap<int, int> & links,
149 bool checkBothWays =
true);
150 std::multimap<int, Link>::const_iterator RTABMAP_CORE_EXPORT
findLink(
151 const std::multimap<int, Link> & links,
154 bool checkBothWays =
true,
156 std::multimap<int, std::pair<int, Link::Type> >::const_iterator RTABMAP_CORE_EXPORT
findLink(
157 const std::multimap<
int, std::pair<int, Link::Type> > & links,
160 bool checkBothWays =
true,
162 std::multimap<int, int>::const_iterator RTABMAP_CORE_EXPORT
findLink(
163 const std::multimap<int, int> & links,
166 bool checkBothWays =
true);
167 std::list<Link> RTABMAP_CORE_EXPORT
findLinks(
168 const std::multimap<int, Link> & links,
172 const std::multimap<int, Link> & links);
176 std::multimap<int, Link> RTABMAP_CORE_EXPORT
filterLinks(
177 const std::multimap<int, Link> & links,
179 bool inverted =
false);
183 std::map<int, Link> RTABMAP_CORE_EXPORT
filterLinks(
184 const std::map<int, Link> & links,
186 bool inverted =
false);
190 const std::map<int, Transform> & poses,
192 float horizontalFOV = 45.0
f,
193 float verticalFOV = 45.0
f,
194 float nearClipPlaneDistance = 0.1
f,
195 float farClipPlaneDistance = 100.0
f,
196 bool negative =
false);
207 const std::map<int, Transform> & poses,
210 bool keepLatest =
true);
220 const std::map<int, Transform> & poses,
225 const std::map<int, Transform> & poses,
226 const std::multimap<int, Link> & links,
227 std::multimap<int, int> & hyperNodes,
228 std::multimap<int, Link> & hyperLinks);
239 std::list<std::pair<int, Transform> > RTABMAP_CORE_EXPORT
computePath(
240 const std::map<int, rtabmap::Transform> & poses,
241 const std::multimap<int, int> & links,
244 bool updateNewCosts =
false);
257 const std::multimap<int, Link> & links,
260 bool updateNewCosts =
false,
261 bool useSameCostForAllLinks =
false);
272 std::list<std::pair<int, Transform> > RTABMAP_CORE_EXPORT
computePath(
276 bool lookInDatabase =
true,
277 bool updateNewCosts =
false,
278 float linearVelocity = 0.0
f,
279 float angularVelocity = 0.0
f);
289 const std::map<int, rtabmap::Transform> & poses,
303 const std::map<int, Transform> & poses,
309 const std::map<int, Transform> & poses,
315 const std::map<int, Transform> & poses,
321 const std::map<int, Transform> & poses,
338 const std::vector<std::pair<int, Transform> > &
path,
339 unsigned int fromIndex = 0,
340 unsigned int toIndex = 0);
344 const std::map<int, Transform> &
path);
346 std::list<std::map<int, Transform> > RTABMAP_CORE_EXPORT
getPaths(
347 std::map<int, Transform> poses,
348 const std::multimap<int, Link> & links);
350 void RTABMAP_CORE_EXPORT
computeMinMax(
const std::map<int, Transform> & poses,