diff --git a/api/latest/OdometryF2M_8h_source.html b/api/latest/OdometryF2M_8h_source.html index 0758d555..f670a449 100644 --- a/api/latest/OdometryF2M_8h_source.html +++ b/api/latest/OdometryF2M_8h_source.html @@ -214,7 +214,7 @@ $(document).ready(function(){initNavTree('OdometryF2M_8h_source.html',''); initR
rtabmap::OdometryInfo
What one Odometry iteration produced, beyond the pose.
Definition OdometryInfo.h:64
rtabmap::Odometry
Abstract base class for visual, lidar and visual-inertial odometry backends.
Definition Odometry.h:57
rtabmap::Odometry::Type
Type
Odometry backend selected by Parameters::kOdomStrategy().
Definition Odometry.h:60
-
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
+
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
rtabmap::Registration
Abstract base for registering two observations (visual, ICP, or both).
Definition Registration.h:61
rtabmap::SensorData
Container class for all sensor data captured at a specific time.
Definition SensorData.h:97
rtabmap::Signature
Represents a node in RTAB-Map's pose graph.
Definition Signature.h:84
diff --git a/api/latest/OptimizerCVSBA_8h_source.html b/api/latest/OptimizerCVSBA_8h_source.html index cdf62396..c019326f 100644 --- a/api/latest/OptimizerCVSBA_8h_source.html +++ b/api/latest/OptimizerCVSBA_8h_source.html @@ -158,24 +158,24 @@ $(document).ready(function(){initNavTree('OptimizerCVSBA_8h_source.html',''); in
49
50 virtual Type type() const {return kTypeCVSBA;}
51
-
52 virtual std::map<int, Transform> optimizeBA(
+
52 virtual std::map<int, Transform> optimizeBA(
53 int rootId,
54 const std::map<int, Transform> & poses,
55 const std::multimap<int, Link> & links,
56 const std::map<int, std::vector<CameraModel> > & models,
57 std::map<int, cv::Point3f> & points3DMap,
58 const std::map<int, std::map<int, FeatureBA> > & wordReferences, // <ID words, IDs frames + keypoint(x,y,depth)>
-
59 std::set<int> * outliers = 0);
+
59 BAOutliers * outliers = 0);
60};
61
62} /* namespace rtabmap */
63#endif /* OPTIMIZERCVSBA_H_ */
rtabmap::OptimizerCVSBA
Definition OptimizerCVSBA.h:36
-
rtabmap::OptimizerCVSBA::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+
rtabmap::OptimizerCVSBA::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
rtabmap::OptimizerCVSBA::type
virtual Type type() const
Returns the concrete back-end identifier (one of Type).
Definition OptimizerCVSBA.h:50
-
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
-
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:91
+
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
+
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:94
rtabmap
Definition BayesFilter.h:39
rtabmap::ParametersMap
std::map< std::string, std::string > ParametersMap
Parameter keys mapped to their values, as used by every configurable class (see Parameters).
Definition Parameters.h:44
diff --git a/api/latest/OptimizerCeres_8h_source.html b/api/latest/OptimizerCeres_8h_source.html index 47e7bc62..b20bec13 100644 --- a/api/latest/OptimizerCeres_8h_source.html +++ b/api/latest/OptimizerCeres_8h_source.html @@ -173,14 +173,14 @@ $(document).ready(function(){initNavTree('OptimizerCeres_8h_source.html',''); in
64 double * finalError = 0,
65 int * iterationsDone = 0);
66
-
67 virtual std::map<int, Transform> optimizeBA(
+
67 virtual std::map<int, Transform> optimizeBA(
68 int rootId,
69 const std::map<int, Transform> & poses,
70 const std::multimap<int, Link> & links,
71 const std::map<int, std::vector<CameraModel> > & models, // in case of stereo, Tx should be set
72 std::map<int, cv::Point3f> & points3DMap,
73 const std::map<int, std::map<int, FeatureBA> > & wordReferences, // <ID words, IDs frames + keypoint(x,y,depth)>
-
74 std::set<int> * outliers = 0);
+
74 BAOutliers * outliers = 0);
75
76private:
77 double pixelVariance_;
@@ -193,12 +193,12 @@ $(document).ready(function(){initNavTree('OptimizerCeres_8h_source.html',''); in
83} /* namespace rtabmap */
84#endif /* OPTIMIZERCERES_H_ */
rtabmap::OptimizerCeres
Definition OptimizerCeres.h:36
-
rtabmap::OptimizerCeres::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
rtabmap::OptimizerCeres::parseParameters
virtual void parseParameters(const ParametersMap &parameters)
Reads shared knobs from parameters and applies them to this instance.
rtabmap::OptimizerCeres::optimize
virtual std::map< int, Transform > optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization with marginal covariance of rootId.
rtabmap::OptimizerCeres::type
virtual Type type() const
Returns the concrete back-end identifier (one of Type).
Definition OptimizerCeres.h:54
-
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
-
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:91
+
rtabmap::OptimizerCeres::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
+
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:94
rtabmap
Definition BayesFilter.h:39
rtabmap::ParametersMap
std::map< std::string, std::string > ParametersMap
Parameter keys mapped to their values, as used by every configurable class (see Parameters).
Definition Parameters.h:44
diff --git a/api/latest/OptimizerG2O_8h_source.html b/api/latest/OptimizerG2O_8h_source.html index b7e7b40b..cf2fa7a5 100644 --- a/api/latest/OptimizerG2O_8h_source.html +++ b/api/latest/OptimizerG2O_8h_source.html @@ -173,14 +173,14 @@ $(document).ready(function(){initNavTree('OptimizerG2O_8h_source.html',''); init
64 double * finalError = 0,
65 int * iterationsDone = 0);
66
-
67 virtual std::map<int, Transform> optimizeBA(
+
67 virtual std::map<int, Transform> optimizeBA(
68 int rootId,
69 const std::map<int, Transform> & poses,
70 const std::multimap<int, Link> & links,
71 const std::map<int, std::vector<CameraModel> > & models, // in case of stereo, Tx should be set
72 std::map<int, cv::Point3f> & points3DMap,
73 const std::map<int, std::map<int, FeatureBA> > & wordReferences, // <ID words, IDs frames + keypoint(x,y,depth)>
-
74 std::set<int> * outliers = 0);
+
74 BAOutliers * outliers = 0);
75
76 bool saveGraph(
77 const std::string & fileName,
@@ -201,11 +201,11 @@ $(document).ready(function(){initNavTree('OptimizerG2O_8h_source.html',''); init
91#endif /* OPTIMIZERG2O_H_ */
rtabmap::OptimizerG2O
Definition OptimizerG2O.h:38
rtabmap::OptimizerG2O::parseParameters
virtual void parseParameters(const ParametersMap &parameters)
Reads shared knobs from parameters and applies them to this instance.
-
rtabmap::OptimizerG2O::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
rtabmap::OptimizerG2O::optimize
virtual std::map< int, Transform > optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization with marginal covariance of rootId.
rtabmap::OptimizerG2O::type
virtual Type type() const
Returns the concrete back-end identifier (one of Type).
Definition OptimizerG2O.h:54
-
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
-
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:91
+
rtabmap::OptimizerG2O::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
+
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:94
rtabmap
Definition BayesFilter.h:39
rtabmap::ParametersMap
std::map< std::string, std::string > ParametersMap
Parameter keys mapped to their values, as used by every configurable class (see Parameters).
Definition Parameters.h:44
diff --git a/api/latest/OptimizerGTSAM_8h_source.html b/api/latest/OptimizerGTSAM_8h_source.html index 0b66499d..68df2681 100644 --- a/api/latest/OptimizerGTSAM_8h_source.html +++ b/api/latest/OptimizerGTSAM_8h_source.html @@ -167,14 +167,14 @@ $(document).ready(function(){initNavTree('OptimizerGTSAM_8h_source.html',''); in
58 double * finalError = 0,
59 int * iterationsDone = 0);
60
-
61 virtual std::map<int, Transform> optimizeBA(
+
61 virtual std::map<int, Transform> optimizeBA(
62 int rootId,
63 const std::map<int, Transform> & poses,
64 const std::multimap<int, Link> & links,
65 const std::map<int, std::vector<CameraModel> > & models,
66 std::map<int, cv::Point3f> & points3DMap,
67 const std::map<int, std::map<int, FeatureBA> > & wordReferences,
-
68 std::set<int> * outliers = 0);
+
68 BAOutliers * outliers = 0);
69
70private:
71 int internalOptimizerType_;
@@ -209,10 +209,10 @@ $(document).ready(function(){initNavTree('OptimizerGTSAM_8h_source.html',''); in
rtabmap::OptimizerGTSAM
Definition OptimizerGTSAM.h:40
rtabmap::OptimizerGTSAM::type
virtual Type type() const
Returns the concrete back-end identifier (one of Type).
Definition OptimizerGTSAM.h:48
rtabmap::OptimizerGTSAM::optimize
virtual std::map< int, Transform > optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization with marginal covariance of rootId.
-
rtabmap::OptimizerGTSAM::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+
rtabmap::OptimizerGTSAM::optimizeBA
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
rtabmap::OptimizerGTSAM::parseParameters
virtual void parseParameters(const ParametersMap &parameters)
Reads shared knobs from parameters and applies them to this instance.
-
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
-
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:91
+
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
+
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:94
rtabmap
Definition BayesFilter.h:39
rtabmap::ParametersMap
std::map< std::string, std::string > ParametersMap
Parameter keys mapped to their values, as used by every configurable class (see Parameters).
Definition Parameters.h:44
diff --git a/api/latest/OptimizerTORO_8h_source.html b/api/latest/OptimizerTORO_8h_source.html index 0f287359..43fa5183 100644 --- a/api/latest/OptimizerTORO_8h_source.html +++ b/api/latest/OptimizerTORO_8h_source.html @@ -186,8 +186,8 @@ $(document).ready(function(){initNavTree('OptimizerTORO_8h_source.html',''); ini
rtabmap::OptimizerTORO
Definition OptimizerTORO.h:36
rtabmap::OptimizerTORO::optimize
virtual std::map< int, Transform > optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization with marginal covariance of rootId.
rtabmap::OptimizerTORO::type
virtual Type type() const
Returns the concrete back-end identifier (one of Type).
Definition OptimizerTORO.h:57
-
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
-
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:91
+
rtabmap::Optimizer
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
+
rtabmap::Optimizer::Type
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:94
rtabmap
Definition BayesFilter.h:39
rtabmap::ParametersMap
std::map< std::string, std::string > ParametersMap
Parameter keys mapped to their values, as used by every configurable class (see Parameters).
Definition Parameters.h:44
diff --git a/api/latest/Optimizer_8h_source.html b/api/latest/Optimizer_8h_source.html index c070e502..62943507 100644 --- a/api/latest/Optimizer_8h_source.html +++ b/api/latest/Optimizer_8h_source.html @@ -140,185 +140,188 @@ $(document).ready(function(){initNavTree('Optimizer_8h_source.html',''); initRes
32
33#include <map>
34#include <list>
-
35#include <rtabmap/core/Link.h>
-
36#include <rtabmap/core/Parameters.h>
-
37#include <rtabmap/core/Signature.h>
-
38
-
39namespace rtabmap {
-
40
-
-
50class FeatureBA
-
51{
-
52public:
-
53 FeatureBA(const cv::KeyPoint & kptIn, const float & depthIn = 0.0f, const cv::Mat & descriptorIn = cv::Mat(), int cameraIndexIn = 0):
-
54 kpt(kptIn),
-
55 depth(depthIn),
-
56 descriptor(descriptorIn),
-
57 cameraIndex(cameraIndexIn)
-
58 {
-
59 //UDEBUG("kpt=(%f,%f) depth=%f, camIndex=%d", kpt.pt.x, kpt.pt.y, depth, cameraIndex);
-
60 }
-
61 cv::KeyPoint kpt;
-
62 float depth;
-
63 cv::Mat descriptor;
-
64 int cameraIndex;
-
65};
+
35#include <set>
+
36#include <rtabmap/core/Link.h>
+
37#include <rtabmap/core/Parameters.h>
+
38#include <rtabmap/core/Signature.h>
+
39
+
40namespace rtabmap {
+
41
+
+ +
52{
+
53public:
+
54 FeatureBA(const cv::KeyPoint & kptIn, const float & depthIn = 0.0f, const cv::Mat & descriptorIn = cv::Mat(), int cameraIndexIn = 0):
+
55 kpt(kptIn),
+
56 depth(depthIn),
+
57 descriptor(descriptorIn),
+
58 cameraIndex(cameraIndexIn)
+
59 {
+
60 //UDEBUG("kpt=(%f,%f) depth=%f, camIndex=%d", kpt.pt.x, kpt.pt.y, depth, cameraIndex);
+
61 }
+
62 cv::KeyPoint kpt;
+
63 float depth;
+
64 cv::Mat descriptor;
+ +
66};
-
66
-
-
87class RTABMAP_CORE_EXPORT Optimizer
-
88{
-
89public:
-
-
91 enum Type {
-
92 kTypeUndef = -1,
-
93 kTypeTORO = 0,
-
94 kTypeG2O = 1,
-
95 kTypeGTSAM = 2,
-
96 kTypeCeres = 3,
-
97 kTypeCVSBA = 4
-
98 };
+
67
+
68typedef std::map<int, std::set<int> > BAOutliers; // <word ID, rejected pose IDs>, matching wordReferences
+
69
+
+
90class RTABMAP_CORE_EXPORT Optimizer
+
91{
+
92public:
+
+
94 enum Type {
+
95 kTypeUndef = -1,
+
96 kTypeTORO = 0,
+
97 kTypeG2O = 1,
+
98 kTypeGTSAM = 2,
+
99 kTypeCeres = 3,
+
100 kTypeCVSBA = 4
+
101 };
-
99
-
106 static bool isAvailable(Optimizer::Type type);
-
107
-
114 static Optimizer * create(const ParametersMap & parameters);
-
115
-
117 static Optimizer * create(Optimizer::Type type, const ParametersMap & parameters = ParametersMap());
+
102
+
109 static bool isAvailable(Optimizer::Type type);
+
110
+
117 static Optimizer * create(const ParametersMap & parameters);
118
- -
128 int fromId,
-
129 const std::map<int, Transform> & posesIn,
-
130 const std::multimap<int, Link> & linksIn,
-
131 std::map<int, Transform> & posesOut,
-
132 std::multimap<int, Link> & linksOut) const;
-
133
-
134public:
-
135 virtual ~Optimizer() {}
+
120 static Optimizer * create(Optimizer::Type type, const ParametersMap & parameters = ParametersMap());
+
121
+ +
131 int fromId,
+
132 const std::map<int, Transform> & posesIn,
+
133 const std::multimap<int, Link> & linksIn,
+
134 std::map<int, Transform> & posesOut,
+
135 std::multimap<int, Link> & linksOut) const;
136
-
138 virtual Type type() const = 0;
+
137public:
+
138 virtual ~Optimizer() {}
139
-
142 int iterations() const {return iterations_;}
-
-
143 bool isSlam2d() const {return slam2d_;}
-
-
144 bool isCovarianceIgnored() const {return covarianceIgnored_;}
-
-
145 double epsilon() const {return epsilon_;}
+
141 virtual Type type() const = 0;
+
142
+
145 int iterations() const {return iterations_;}
-
146 bool isRobust() const {return robust_;}
+
146 bool isSlam2d() const {return slam2d_;}
-
147 bool priorsIgnored() const {return priorsIgnored_;}
+
147 bool isCovarianceIgnored() const {return covarianceIgnored_;}
-
148 bool landmarksIgnored() const {return landmarksIgnored_;}
+
148 double epsilon() const {return epsilon_;}
-
149 float gravitySigma() const {return gravitySigma_;}
-
151
-
154 void setIterations(int iterations) {iterations_ = iterations;}
-
155 void setSlam2d(bool enabled) {slam2d_ = enabled;}
-
156 void setCovarianceIgnored(bool enabled) {covarianceIgnored_ = enabled;}
-
157 void setEpsilon(double epsilon) {epsilon_ = epsilon;}
-
158 void setRobust(bool enabled) {robust_ = enabled;}
-
159 void setPriorsIgnored(bool enabled) {priorsIgnored_ = enabled;}
-
160 void setLandmarksIgnored(bool enabled) {landmarksIgnored_ = enabled;}
-
161 void setGravitySigma(float value) {gravitySigma_ = value;}
-
163
-
170 virtual void parseParameters(const ParametersMap & parameters);
-
171
-
189 std::map<int, Transform> optimizeIncremental(
-
190 int rootId,
-
191 const std::map<int, Transform> & poses,
-
192 const std::multimap<int, Link> & constraints,
-
193 std::list<std::map<int, Transform> > * intermediateGraphes = 0,
-
194 double * finalError = 0,
-
195 int * iterationsDone = 0);
-
196
-
203 std::map<int, Transform> optimize(
-
204 int rootId,
-
205 const std::map<int, Transform> & poses,
-
206 const std::multimap<int, Link> & constraints,
-
207 std::list<std::map<int, Transform> > * intermediateGraphes = 0,
-
208 double * finalError = 0,
-
209 int * iterationsDone = 0);
-
210
-
227 virtual std::map<int, Transform> optimize(
-
228 int rootId,
-
229 const std::map<int, Transform> & poses,
-
230 const std::multimap<int, Link> & constraints,
-
231 cv::Mat & outputCovariance,
-
232 std::list<std::map<int, Transform> > * intermediateGraphes = 0,
-
233 double * finalError = 0,
-
234 int * iterationsDone = 0);
-
235
-
253 virtual std::map<int, Transform> optimizeBA(
-
254 int rootId,
-
255 const std::map<int, Transform> & poses,
-
256 const std::multimap<int, Link> & links,
-
257 const std::map<int, std::vector<CameraModel> > & models,
-
258 std::map<int, cv::Point3f> & points3DMap,
-
259 const std::map<int, std::map<int, FeatureBA> > & wordReferences,
-
260 std::set<int> * outliers = 0);
-
261
-
274 std::map<int, Transform> optimizeBA(
-
275 int rootId,
-
276 const std::map<int, Transform> & poses,
-
277 const std::multimap<int, Link> & links,
-
278 const std::map<int, Signature> & signatures,
-
279 std::map<int, cv::Point3f> & points3DMap,
-
280 std::map<int, std::map<int, FeatureBA> > & wordReferences,
-
281 bool rematchFeatures = false,
-
282 const ParametersMap & registrationParameters = ParametersMap());
-
283
-
286 std::map<int, Transform> optimizeBA(
-
287 int rootId,
-
288 const std::map<int, Transform> & poses,
-
289 const std::multimap<int, Link> & links,
-
290 const std::map<int, Signature> & signatures,
-
291 bool rematchFeatures = false,
-
292 const ParametersMap & registrationParameters = ParametersMap());
-
293
- -
302 const Link & link,
-
303 const CameraModel & model,
-
304 std::map<int, cv::Point3f> & points3DMap,
-
305 const std::map<int, std::map<int, FeatureBA> > & wordReferences,
-
306 std::set<int> * outliers = 0);
-
307
- -
324 const std::map<int, Transform> & poses,
-
325 const std::multimap<int, Link> & links,
-
326 const std::map<int, Signature> & signatures,
-
327 std::map<int, cv::Point3f> & points3DMap,
-
328 std::map<int, std::map<int, FeatureBA > > & wordReferences,
-
329 bool rematchFeatures = false,
-
330 bool useLinkTransformAsGuess = false,
-
331 ParametersMap registrationParameters = ParametersMap());
-
332
-
333protected:
-
334 Optimizer(
-
335 int iterations = Parameters::defaultOptimizerIterations(),
-
336 bool slam2d = Parameters::defaultRegForce3DoF(),
-
337 bool covarianceIgnored = Parameters::defaultOptimizerVarianceIgnored(),
-
338 double epsilon = Parameters::defaultOptimizerEpsilon(),
-
339 bool robust = Parameters::defaultOptimizerRobust(),
-
340 bool priorsIgnored = Parameters::defaultOptimizerPriorsIgnored(),
-
341 bool landmarksIgnored = Parameters::defaultOptimizerLandmarksIgnored(),
-
342 float gravitySigma = Parameters::defaultOptimizerGravitySigma());
-
343 Optimizer(const ParametersMap & parameters);
-
344
-
345private:
-
346 int iterations_;
-
347 bool slam2d_;
-
348 bool covarianceIgnored_;
-
349 double epsilon_;
-
350 bool robust_;
-
351 bool priorsIgnored_;
-
352 bool landmarksIgnored_;
-
353 float gravitySigma_;
-
354};
-
355
-
356} /* namespace rtabmap */
-
357#endif /* OPTIMIZER_H_ */
+
149 bool isRobust() const {return robust_;}
+
+
150 bool priorsIgnored() const {return priorsIgnored_;}
+
+
151 bool landmarksIgnored() const {return landmarksIgnored_;}
+
+
152 float gravitySigma() const {return gravitySigma_;}
+
154
+
157 void setIterations(int iterations) {iterations_ = iterations;}
+
158 void setSlam2d(bool enabled) {slam2d_ = enabled;}
+
159 void setCovarianceIgnored(bool enabled) {covarianceIgnored_ = enabled;}
+
160 void setEpsilon(double epsilon) {epsilon_ = epsilon;}
+
161 void setRobust(bool enabled) {robust_ = enabled;}
+
162 void setPriorsIgnored(bool enabled) {priorsIgnored_ = enabled;}
+
163 void setLandmarksIgnored(bool enabled) {landmarksIgnored_ = enabled;}
+
164 void setGravitySigma(float value) {gravitySigma_ = value;}
+
166
+
173 virtual void parseParameters(const ParametersMap & parameters);
+
174
+
192 std::map<int, Transform> optimizeIncremental(
+
193 int rootId,
+
194 const std::map<int, Transform> & poses,
+
195 const std::multimap<int, Link> & constraints,
+
196 std::list<std::map<int, Transform> > * intermediateGraphes = 0,
+
197 double * finalError = 0,
+
198 int * iterationsDone = 0);
+
199
+
206 std::map<int, Transform> optimize(
+
207 int rootId,
+
208 const std::map<int, Transform> & poses,
+
209 const std::multimap<int, Link> & constraints,
+
210 std::list<std::map<int, Transform> > * intermediateGraphes = 0,
+
211 double * finalError = 0,
+
212 int * iterationsDone = 0);
+
213
+
230 virtual std::map<int, Transform> optimize(
+
231 int rootId,
+
232 const std::map<int, Transform> & poses,
+
233 const std::multimap<int, Link> & constraints,
+
234 cv::Mat & outputCovariance,
+
235 std::list<std::map<int, Transform> > * intermediateGraphes = 0,
+
236 double * finalError = 0,
+
237 int * iterationsDone = 0);
+
238
+
256 virtual std::map<int, Transform> optimizeBA(
+
257 int rootId,
+
258 const std::map<int, Transform> & poses,
+
259 const std::multimap<int, Link> & links,
+
260 const std::map<int, std::vector<CameraModel> > & models,
+
261 std::map<int, cv::Point3f> & points3DMap,
+
262 const std::map<int, std::map<int, FeatureBA> > & wordReferences,
+
263 BAOutliers * outliers = 0);
+
264
+
277 std::map<int, Transform> optimizeBA(
+
278 int rootId,
+
279 const std::map<int, Transform> & poses,
+
280 const std::multimap<int, Link> & links,
+
281 const std::map<int, Signature> & signatures,
+
282 std::map<int, cv::Point3f> & points3DMap,
+
283 std::map<int, std::map<int, FeatureBA> > & wordReferences,
+
284 bool rematchFeatures = false,
+
285 const ParametersMap & registrationParameters = ParametersMap());
+
286
+
289 std::map<int, Transform> optimizeBA(
+
290 int rootId,
+
291 const std::map<int, Transform> & poses,
+
292 const std::multimap<int, Link> & links,
+
293 const std::map<int, Signature> & signatures,
+
294 bool rematchFeatures = false,
+
295 const ParametersMap & registrationParameters = ParametersMap());
+
296
+ +
305 const Link & link,
+
306 const CameraModel & model,
+
307 std::map<int, cv::Point3f> & points3DMap,
+
308 const std::map<int, std::map<int, FeatureBA> > & wordReferences,
+
309 BAOutliers * outliers = 0);
+
310
+ +
327 const std::map<int, Transform> & poses,
+
328 const std::multimap<int, Link> & links,
+
329 const std::map<int, Signature> & signatures,
+
330 std::map<int, cv::Point3f> & points3DMap,
+
331 std::map<int, std::map<int, FeatureBA > > & wordReferences,
+
332 bool rematchFeatures = false,
+
333 bool useLinkTransformAsGuess = false,
+
334 ParametersMap registrationParameters = ParametersMap());
+
335
+
336protected:
+
337 Optimizer(
+
338 int iterations = Parameters::defaultOptimizerIterations(),
+
339 bool slam2d = Parameters::defaultRegForce3DoF(),
+
340 bool covarianceIgnored = Parameters::defaultOptimizerVarianceIgnored(),
+
341 double epsilon = Parameters::defaultOptimizerEpsilon(),
+
342 bool robust = Parameters::defaultOptimizerRobust(),
+
343 bool priorsIgnored = Parameters::defaultOptimizerPriorsIgnored(),
+
344 bool landmarksIgnored = Parameters::defaultOptimizerLandmarksIgnored(),
+
345 float gravitySigma = Parameters::defaultOptimizerGravitySigma());
+
346 Optimizer(const ParametersMap & parameters);
+
347
+
348private:
+
349 int iterations_;
+
350 bool slam2d_;
+
351 bool covarianceIgnored_;
+
352 double epsilon_;
+
353 bool robust_;
+
354 bool priorsIgnored_;
+
355 bool landmarksIgnored_;
+
356 float gravitySigma_;
+
357};
+
358
+
359} /* namespace rtabmap */
+
360#endif /* OPTIMIZER_H_ */
@@ -328,33 +331,33 @@ $(document).ready(function(){initNavTree('Optimizer_8h_source.html',''); initRes
Represents a pinhole camera model containing intrinsic and extrinsic parameters, used for projection,...
Definition CameraModel.h:53
-
A single bundle adjustment feature observation: one keypoint seen in one frame.
Definition Optimizer.h:51
-
cv::KeyPoint kpt
2D image keypoint.
Definition Optimizer.h:61
-
cv::Mat descriptor
Optional descriptor for the keypoint (used when re-matching is enabled).
Definition Optimizer.h:63
-
int cameraIndex
Index into the frame's camera model list for multi-camera rigs.
Definition Optimizer.h:64
-
float depth
Depth at kpt in meters, or 0 if unknown (monocular).
Definition Optimizer.h:62
+
A single bundle adjustment feature observation: one keypoint seen in one frame.
Definition Optimizer.h:52
+
cv::KeyPoint kpt
2D image keypoint.
Definition Optimizer.h:62
+
cv::Mat descriptor
Optional descriptor for the keypoint (used when re-matching is enabled).
Definition Optimizer.h:64
+
int cameraIndex
Index into the frame's camera model list for multi-camera rigs.
Definition Optimizer.h:65
+
float depth
Depth at kpt in meters, or 0 if unknown (monocular).
Definition Optimizer.h:63
-
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
-
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
virtual void parseParameters(const ParametersMap &parameters)
Reads shared knobs from parameters and applies them to this instance.
-
int iterations() const
Max solver iterations.
Definition Optimizer.h:142
-
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:91
+
virtual std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+
int iterations() const
Max solver iterations.
Definition Optimizer.h:145
+
Type
Graph-optimizer back-end identifier.
Definition Optimizer.h:94
std::map< int, Transform > optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization that grows the graph one node at a time.
-
bool isRobust() const
If true, use a robust kernel / switchable factors against bad loop closures.
Definition Optimizer.h:146
+
bool isRobust() const
If true, use a robust kernel / switchable factors against bad loop closures.
Definition Optimizer.h:149
std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
BA wrapper that derives camera models and correspondences from signatures.
-
bool landmarksIgnored() const
If true, landmark/marker observations are dropped.
Definition Optimizer.h:148
-
double epsilon() const
Convergence threshold on cost decrease.
Definition Optimizer.h:145
+
bool landmarksIgnored() const
If true, landmark/marker observations are dropped.
Definition Optimizer.h:151
+
double epsilon() const
Convergence threshold on cost decrease.
Definition Optimizer.h:148
void getConnectedGraph(int fromId, const std::map< int, Transform > &posesIn, const std::multimap< int, Link > &linksIn, std::map< int, Transform > &posesOut, std::multimap< int, Link > &linksOut) const
Extracts the connected component reachable from fromId.
-
bool isSlam2d() const
True if optimizing in SE(2) instead of SE(3).
Definition Optimizer.h:143
+
bool isSlam2d() const
True if optimizing in SE(2) instead of SE(3).
Definition Optimizer.h:146
static Optimizer * create(const ParametersMap &parameters)
Factory: build an optimizer from a ParametersMap.
std::map< int, Transform > optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization (single shot).
-
bool isCovarianceIgnored() const
If true, all edges share an identity information matrix.
Definition Optimizer.h:144
+
bool isCovarianceIgnored() const
If true, all edges share an identity information matrix.
Definition Optimizer.h:147
void computeBACorrespondences(const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())
Build BA correspondences (3D points + per-frame observations) from signatures.
virtual Type type() const =0
Returns the concrete back-end identifier (one of Type).
std::map< int, Transform > optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map...
-
float gravitySigma() const
Std-dev (rad) of the gravity prior on roll/pitch; 0 disables it.
Definition Optimizer.h:149
-
Transform optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
Refine a single two-frame link via BA.
-
bool priorsIgnored() const
If true, unary priors on poses are dropped.
Definition Optimizer.h:147
+
float gravitySigma() const
Std-dev (rad) of the gravity prior on roll/pitch; 0 disables it.
Definition Optimizer.h:152
+
Transform optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
Refine a single two-frame link via BA.
+
bool priorsIgnored() const
If true, unary priors on poses are dropped.
Definition Optimizer.h:150
static Optimizer * create(Optimizer::Type type, const ParametersMap &parameters=ParametersMap())
Factory: build an optimizer of a specific type. Caller owns the result.
virtual std::map< int, Transform > optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
Pose-graph optimization with marginal covariance of rootId.
static bool isAvailable(Optimizer::Type type)
Returns whether type was compiled in (its third-party dependency was found).
diff --git a/api/latest/Parameters_8h_source.html b/api/latest/Parameters_8h_source.html index 289af9fe..fe1ff872 100644 --- a/api/latest/Parameters_8h_source.html +++ b/api/latest/Parameters_8h_source.html @@ -1077,7 +1077,7 @@ $(document).ready(function(){initNavTree('Parameters_8h_source.html',''); initRe
Good-features-to-track detector (Shi–Tomasi / Harris).
Definition Features2d.h:494
KAZE detector and descriptor (OpenCV 3+).
Definition Features2d.h:621
ORB detector and descriptor (optional GPU).
Definition Features2d.h:384
-
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
+
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
static std::string getType(const std::string &paramKey)
static ParametersMap filterParameters(const ParametersMap &parameters, const std::string &group, bool remove=false)
diff --git a/api/latest/Rtabmap_8h_source.html b/api/latest/Rtabmap_8h_source.html index 01e45418..5bff7e8a 100644 --- a/api/latest/Rtabmap_8h_source.html +++ b/api/latest/Rtabmap_8h_source.html @@ -477,7 +477,7 @@ $(document).ready(function(){initNavTree('Rtabmap_8h_source.html',''); initResiz
Represents 2D or 3D laser scan data with support for multiple point data formats.
Definition LaserScan.h:46
Three-tiered memory management (STM, WM, LTM) for RTAB-Map.
Definition Memory.h:102
-
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:88
+
Abstract base for pose-graph and bundle-adjustment optimizers.
Definition Optimizer.h:91
Top-level RTAB-Map SLAM pipeline (mapping, localization and loop closure).
Definition Rtabmap.h:194
bool setUserData(int id, const cv::Mat &data)
Attaches user data to signature id, compressing it on the fly if needed.
diff --git a/api/latest/classrtabmap_1_1FeatureBA.html b/api/latest/classrtabmap_1_1FeatureBA.html index b1df7ce1..29cec357 100644 --- a/api/latest/classrtabmap_1_1FeatureBA.html +++ b/api/latest/classrtabmap_1_1FeatureBA.html @@ -133,9 +133,9 @@ Public Attributes

Detailed Description

A single bundle adjustment feature observation: one keypoint seen in one frame.

-

Used as the per-frame value in the wordReferences map (<wordId, <frameId, FeatureBA>>) passed to Optimizer::optimizeBA(). depth is in meters when available (RGB-D / stereo with disparity) or 0 if unknown (monocular). descriptor and cameraIndex are optional; cameraIndex selects which CameraModel of a multi-camera rig the keypoint belongs to.

+

Used as the per-frame value in the wordReferences map (<wordId, <frameId, FeatureBA>>) passed to Optimizer::optimizeBA(). depth is in meters when available (RGB-D / stereo with disparity) or 0 if unknown (monocular). descriptor and cameraIndex are optional; cameraIndex selects which CameraModel of a multi-camera rig the keypoint belongs to.

-

Definition at line 50 of file Optimizer.h.

+

Definition at line 51 of file Optimizer.h.

Constructor & Destructor Documentation

◆ FeatureBA()

@@ -183,7 +183,7 @@ Public Attributes
-

Definition at line 53 of file Optimizer.h.

+

Definition at line 54 of file Optimizer.h.

@@ -202,7 +202,7 @@ Public Attributes

2D image keypoint.

-

Definition at line 61 of file Optimizer.h.

+

Definition at line 62 of file Optimizer.h.

@@ -220,7 +220,7 @@ Public Attributes

Depth at kpt in meters, or 0 if unknown (monocular).

-

Definition at line 62 of file Optimizer.h.

+

Definition at line 63 of file Optimizer.h.

@@ -238,7 +238,7 @@ Public Attributes

Optional descriptor for the keypoint (used when re-matching is enabled).

-

Definition at line 63 of file Optimizer.h.

+

Definition at line 64 of file Optimizer.h.

@@ -256,7 +256,7 @@ Public Attributes

Index into the frame's camera model list for multi-camera rigs.

-

Definition at line 64 of file Optimizer.h.

+

Definition at line 65 of file Optimizer.h.

diff --git a/api/latest/classrtabmap_1_1Optimizer-members.html b/api/latest/classrtabmap_1_1Optimizer-members.html index 1c10f819..27a3faaf 100644 --- a/api/latest/classrtabmap_1_1Optimizer-members.html +++ b/api/latest/classrtabmap_1_1Optimizer-members.html @@ -124,10 +124,10 @@ $(document).ready(function(){initNavTree('classrtabmap_1_1Optimizer.html',''); i landmarksIgnored() constrtabmap::Optimizerinline optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizervirtual - optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizervirtual + optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizervirtual optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer - optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizer + optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizer optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer Optimizer(int iterations=Parameters::defaultOptimizerIterations(), bool slam2d=Parameters::defaultRegForce3DoF(), bool covarianceIgnored=Parameters::defaultOptimizerVarianceIgnored(), double epsilon=Parameters::defaultOptimizerEpsilon(), bool robust=Parameters::defaultOptimizerRobust(), bool priorsIgnored=Parameters::defaultOptimizerPriorsIgnored(), bool landmarksIgnored=Parameters::defaultOptimizerLandmarksIgnored(), float gravitySigma=Parameters::defaultOptimizerGravitySigma()) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected Optimizer(const ParametersMap &parameters) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected diff --git a/api/latest/classrtabmap_1_1Optimizer.html b/api/latest/classrtabmap_1_1Optimizer.html index 65c57b51..6c0b396f 100644 --- a/api/latest/classrtabmap_1_1Optimizer.html +++ b/api/latest/classrtabmap_1_1Optimizer.html @@ -166,9 +166,9 @@ Public Member Functions virtual std::map< int, Transform > optimize (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)  Pose-graph optimization with marginal covariance of rootId.
  -virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0) - Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
-  +virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0) + Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
+  std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())  BA wrapper that derives camera models and correspondences from signatures.
  @@ -176,9 +176,9 @@ Public Member Functions std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())  BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map.
  -Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0) - Refine a single two-frame link via BA.
-  +Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0) + Refine a single two-frame link via BA.
+  void computeBACorrespondences (const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())  Build BA correspondences (3D points + per-frame observations) from signatures.
  @@ -252,11 +252,11 @@ Protected Member Functions

Optimizer is a factory + interface in front of several third-party back-ends (TORO, g2o, GTSAM, Ceres, cvsba). Use create() to instantiate one based on the Optimizer/Strategy parameter; use isAvailable() to check whether a given back-end was compiled in.

Two families of methods are exposed:

Common knobs (iterations, robust kernels, 2D-vs-3D, etc.) are configured through parseParameters() or per-attribute setters and apply to whichever back-end is selected.

-

Definition at line 87 of file Optimizer.h.

+

Definition at line 90 of file Optimizer.h.

Member Enumeration Documentation

◆ Type

@@ -286,7 +286,7 @@ Protected Member Functions -

Definition at line 91 of file Optimizer.h.

+

Definition at line 94 of file Optimizer.h.

@@ -314,7 +314,7 @@ Protected Member Functions
-

Definition at line 135 of file Optimizer.h.

+

Definition at line 138 of file Optimizer.h.

@@ -480,7 +480,7 @@ Protected Member Functions

Max solver iterations.

-

Definition at line 142 of file Optimizer.h.

+

Definition at line 145 of file Optimizer.h.

@@ -509,7 +509,7 @@ Protected Member Functions

True if optimizing in SE(2) instead of SE(3).

-

Definition at line 143 of file Optimizer.h.

+

Definition at line 146 of file Optimizer.h.

@@ -538,7 +538,7 @@ Protected Member Functions

If true, all edges share an identity information matrix.

-

Definition at line 144 of file Optimizer.h.

+

Definition at line 147 of file Optimizer.h.

@@ -567,7 +567,7 @@ Protected Member Functions

Convergence threshold on cost decrease.

-

Definition at line 145 of file Optimizer.h.

+

Definition at line 148 of file Optimizer.h.

@@ -596,7 +596,7 @@ Protected Member Functions

If true, use a robust kernel / switchable factors against bad loop closures.

-

Definition at line 146 of file Optimizer.h.

+

Definition at line 149 of file Optimizer.h.

@@ -625,7 +625,7 @@ Protected Member Functions

If true, unary priors on poses are dropped.

-

Definition at line 147 of file Optimizer.h.

+

Definition at line 150 of file Optimizer.h.

@@ -654,7 +654,7 @@ Protected Member Functions

If true, landmark/marker observations are dropped.

-

Definition at line 148 of file Optimizer.h.

+

Definition at line 151 of file Optimizer.h.

@@ -683,7 +683,7 @@ Protected Member Functions

Std-dev (rad) of the gravity prior on roll/pitch; 0 disables it.

-

Definition at line 149 of file Optimizer.h.

+

Definition at line 152 of file Optimizer.h.

@@ -711,7 +711,7 @@ Protected Member Functions
-

Definition at line 154 of file Optimizer.h.

+

Definition at line 157 of file Optimizer.h.

@@ -739,7 +739,7 @@ Protected Member Functions
-

Definition at line 155 of file Optimizer.h.

+

Definition at line 158 of file Optimizer.h.

@@ -767,7 +767,7 @@ Protected Member Functions
-

Definition at line 156 of file Optimizer.h.

+

Definition at line 159 of file Optimizer.h.

@@ -795,7 +795,7 @@ Protected Member Functions
-

Definition at line 157 of file Optimizer.h.

+

Definition at line 160 of file Optimizer.h.

@@ -823,7 +823,7 @@ Protected Member Functions
-

Definition at line 158 of file Optimizer.h.

+

Definition at line 161 of file Optimizer.h.

@@ -851,7 +851,7 @@ Protected Member Functions
-

Definition at line 159 of file Optimizer.h.

+

Definition at line 162 of file Optimizer.h.

@@ -879,7 +879,7 @@ Protected Member Functions
-

Definition at line 160 of file Optimizer.h.

+

Definition at line 163 of file Optimizer.h.

@@ -907,7 +907,7 @@ Protected Member Functions
-

Definition at line 161 of file Optimizer.h.

+

Definition at line 164 of file Optimizer.h.

@@ -1148,8 +1148,8 @@ Protected Member Functions - -

◆ optimizeBA() [1/3]

+ +

◆ optimizeBA() [1/3]

@@ -1196,7 +1196,7 @@ Protected Member Functions - std::set< int > *  + BAOutliers *  outliers = 0  @@ -1213,7 +1213,7 @@ Protected Member Functions

Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).

-

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

+

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

Parameters
@@ -1228,7 +1228,7 @@ Protected Member Functions
Returns
Refined poses, or empty on failure.
-

Reimplemented in rtabmap::OptimizerCeres, rtabmap::OptimizerCVSBA, rtabmap::OptimizerG2O, and rtabmap::OptimizerGTSAM.

+

Reimplemented in rtabmap::OptimizerCeres, rtabmap::OptimizerCVSBA, rtabmap::OptimizerG2O, and rtabmap::OptimizerGTSAM.

@@ -1306,8 +1306,8 @@ Protected Member Functions - -

◆ optimizeBA() [3/3]

+ +

◆ optimizeBA() [3/3]

@@ -1339,7 +1339,7 @@ Protected Member Functions
- + diff --git a/api/latest/classrtabmap_1_1Optimizer.js b/api/latest/classrtabmap_1_1Optimizer.js index af084ed1..443a3e4e 100644 --- a/api/latest/classrtabmap_1_1Optimizer.js +++ b/api/latest/classrtabmap_1_1Optimizer.js @@ -22,9 +22,9 @@ var classrtabmap_1_1Optimizer = [ "optimizeIncremental", "classrtabmap_1_1Optimizer.html#a278f42e0d250085ac6fe9ed425627acf", null ], [ "optimize", "classrtabmap_1_1Optimizer.html#a7e3aff943e77603493a358ff522fa2dc", null ], [ "optimize", "classrtabmap_1_1Optimizer.html#af59c8340394268f9a1eb76fd5709f2c3", null ], - [ "optimizeBA", "classrtabmap_1_1Optimizer.html#a038e8df970ab744f6f4ba7027f62b263", null ], + [ "optimizeBA", "classrtabmap_1_1Optimizer.html#a1122f017f10105f7e6c14039d41709e5", null ], [ "optimizeBA", "classrtabmap_1_1Optimizer.html#a2f7cbdebed9787ffa6b0b30536dfa1a0", null ], [ "optimizeBA", "classrtabmap_1_1Optimizer.html#aab99f045516162944ad68fdabacb53dc", null ], - [ "optimizeBA", "classrtabmap_1_1Optimizer.html#ad6b32a9697837f03941773f6a5bbf91c", null ], + [ "optimizeBA", "classrtabmap_1_1Optimizer.html#aedaeb7cc371f3685f8595d9a151f6605", null ], [ "computeBACorrespondences", "classrtabmap_1_1Optimizer.html#a93fb09dac068e64de000f692bcb8216f", null ] ]; \ No newline at end of file diff --git a/api/latest/classrtabmap_1_1OptimizerCVSBA-members.html b/api/latest/classrtabmap_1_1OptimizerCVSBA-members.html index e196e7bb..f9ad188a 100644 --- a/api/latest/classrtabmap_1_1OptimizerCVSBA-members.html +++ b/api/latest/classrtabmap_1_1OptimizerCVSBA-members.html @@ -125,10 +125,10 @@ $(document).ready(function(){initNavTree('classrtabmap_1_1OptimizerCVSBA.html',' - + - + diff --git a/api/latest/classrtabmap_1_1OptimizerCVSBA.html b/api/latest/classrtabmap_1_1OptimizerCVSBA.html index 08f17849..5b694b78 100644 --- a/api/latest/classrtabmap_1_1OptimizerCVSBA.html +++ b/api/latest/classrtabmap_1_1OptimizerCVSBA.html @@ -135,9 +135,9 @@ Public Member Functions - - - + + + @@ -161,9 +161,9 @@ Public Member Functions std::map< int, Transform >  - - - + + + @@ -383,8 +383,8 @@ Additional Inherited Members - -

◆ optimizeBA()

+ +

◆ optimizeBA()

@@ -431,7 +431,7 @@ Additional Inherited Members
- + @@ -448,7 +448,7 @@ Additional Inherited Members

Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).

-

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

+

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

Parameters
rootIdPose to hold fixed. If negative, ALL poses other than the (positive) lowest id are held fixed.
std::set< int > * BAOutliers *  outliers = 0 
landmarksIgnored() constrtabmap::Optimizerinline
optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizervirtual
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::OptimizerCVSBAvirtual
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::OptimizerCVSBAvirtual
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizer
optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
Optimizer(int iterations=Parameters::defaultOptimizerIterations(), bool slam2d=Parameters::defaultRegForce3DoF(), bool covarianceIgnored=Parameters::defaultOptimizerVarianceIgnored(), double epsilon=Parameters::defaultOptimizerEpsilon(), bool robust=Parameters::defaultOptimizerRobust(), bool priorsIgnored=Parameters::defaultOptimizerPriorsIgnored(), bool landmarksIgnored=Parameters::defaultOptimizerLandmarksIgnored(), float gravitySigma=Parameters::defaultOptimizerGravitySigma()) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
Optimizer(const ParametersMap &parameters) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
virtual Type type () const
 Returns the concrete back-end identifier (one of Type).
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
- Public Member Functions inherited from rtabmap::Optimizer
void getConnectedGraph (int fromId, const std::map< int, Transform > &posesIn, const std::multimap< int, Link > &linksIn, std::map< int, Transform > &posesOut, std::multimap< int, Link > &linksOut) const
 Extracts the connected component reachable from fromId.
optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
 BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Refine a single two-frame link via BA.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Refine a single two-frame link via BA.
 
void computeBACorrespondences (const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())
 Build BA correspondences (3D points + per-frame observations) from signatures.
 
std::set< int > * BAOutliers *  outliers = 0 
@@ -463,7 +463,7 @@ Additional Inherited Members
Returns
Refined poses, or empty on failure.
-

Reimplemented from rtabmap::Optimizer.

+

Reimplemented from rtabmap::Optimizer.

diff --git a/api/latest/classrtabmap_1_1OptimizerCVSBA.js b/api/latest/classrtabmap_1_1OptimizerCVSBA.js index 0cc0e539..5628d003 100644 --- a/api/latest/classrtabmap_1_1OptimizerCVSBA.js +++ b/api/latest/classrtabmap_1_1OptimizerCVSBA.js @@ -1,5 +1,5 @@ var classrtabmap_1_1OptimizerCVSBA = [ [ "type", "classrtabmap_1_1OptimizerCVSBA.html#afbf58e60900671630e0974a13e49b2b0", null ], - [ "optimizeBA", "classrtabmap_1_1OptimizerCVSBA.html#ad6ff3fec8e75ab76290da5763022a903", null ] + [ "optimizeBA", "classrtabmap_1_1OptimizerCVSBA.html#a48fce33707a004a0d89db99c1c39d999", null ] ]; \ No newline at end of file diff --git a/api/latest/classrtabmap_1_1OptimizerCeres-members.html b/api/latest/classrtabmap_1_1OptimizerCeres-members.html index 1b584697..83834a90 100644 --- a/api/latest/classrtabmap_1_1OptimizerCeres-members.html +++ b/api/latest/classrtabmap_1_1OptimizerCeres-members.html @@ -125,10 +125,10 @@ $(document).ready(function(){initNavTree('classrtabmap_1_1OptimizerCeres.html',' - + - + diff --git a/api/latest/classrtabmap_1_1OptimizerCeres.html b/api/latest/classrtabmap_1_1OptimizerCeres.html index 5db9345a..947f8fab 100644 --- a/api/latest/classrtabmap_1_1OptimizerCeres.html +++ b/api/latest/classrtabmap_1_1OptimizerCeres.html @@ -142,9 +142,9 @@ Public Member Functions - - - + + + @@ -162,9 +162,9 @@ Public Member Functions std::map< int, Transform >  - - - + + + @@ -477,8 +477,8 @@ Additional Inherited Members - -

◆ optimizeBA()

+ +

◆ optimizeBA()

@@ -525,7 +525,7 @@ Additional Inherited Members
- + @@ -542,7 +542,7 @@ Additional Inherited Members

Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).

-

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

+

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

Parameters
rootIdPose to hold fixed. If negative, ALL poses other than the (positive) lowest id are held fixed.
landmarksIgnored() constrtabmap::Optimizerinline
optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::OptimizerCeresvirtual
rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::OptimizerCeresvirtual
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::OptimizerCeresvirtual
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizer
optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
Optimizer(int iterations=Parameters::defaultOptimizerIterations(), bool slam2d=Parameters::defaultRegForce3DoF(), bool covarianceIgnored=Parameters::defaultOptimizerVarianceIgnored(), double epsilon=Parameters::defaultOptimizerEpsilon(), bool robust=Parameters::defaultOptimizerRobust(), bool priorsIgnored=Parameters::defaultOptimizerPriorsIgnored(), bool landmarksIgnored=Parameters::defaultOptimizerLandmarksIgnored(), float gravitySigma=Parameters::defaultOptimizerGravitySigma()) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
Optimizer(const ParametersMap &parameters) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
virtual std::map< int, Transform > optimize (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
 Pose-graph optimization with marginal covariance of rootId.
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
- Public Member Functions inherited from rtabmap::Optimizer
void getConnectedGraph (int fromId, const std::map< int, Transform > &posesIn, const std::multimap< int, Link > &linksIn, std::map< int, Transform > &posesOut, std::multimap< int, Link > &linksOut) const
 Extracts the connected component reachable from fromId.
optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
 BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Refine a single two-frame link via BA.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Refine a single two-frame link via BA.
 
void computeBACorrespondences (const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())
 Build BA correspondences (3D points + per-frame observations) from signatures.
 
std::set< int > * BAOutliers *  outliers = 0 
@@ -557,7 +557,7 @@ Additional Inherited Members
Returns
Refined poses, or empty on failure.
-

Reimplemented from rtabmap::Optimizer.

+

Reimplemented from rtabmap::Optimizer.

diff --git a/api/latest/classrtabmap_1_1OptimizerCeres.js b/api/latest/classrtabmap_1_1OptimizerCeres.js index be06bbfe..dc12c8f4 100644 --- a/api/latest/classrtabmap_1_1OptimizerCeres.js +++ b/api/latest/classrtabmap_1_1OptimizerCeres.js @@ -3,5 +3,5 @@ var classrtabmap_1_1OptimizerCeres = [ "type", "classrtabmap_1_1OptimizerCeres.html#ad6d6c0a0cdbea0ee5082d3aaa94d8e7a", null ], [ "parseParameters", "classrtabmap_1_1OptimizerCeres.html#aaa1128eeb38451086c7abd58ae6142ac", null ], [ "optimize", "classrtabmap_1_1OptimizerCeres.html#ab988decf55da4a8821931855ddaa1c1a", null ], - [ "optimizeBA", "classrtabmap_1_1OptimizerCeres.html#a5057dd09f74610f3092bb597f6af0413", null ] + [ "optimizeBA", "classrtabmap_1_1OptimizerCeres.html#af5c6d465dc4fa7c9045cd241dae5d077", null ] ]; \ No newline at end of file diff --git a/api/latest/classrtabmap_1_1OptimizerG2O-members.html b/api/latest/classrtabmap_1_1OptimizerG2O-members.html index 4d3852e9..7999d37a 100644 --- a/api/latest/classrtabmap_1_1OptimizerG2O-members.html +++ b/api/latest/classrtabmap_1_1OptimizerG2O-members.html @@ -128,10 +128,10 @@ $(document).ready(function(){initNavTree('classrtabmap_1_1OptimizerG2O.html','') - + - + diff --git a/api/latest/classrtabmap_1_1OptimizerG2O.html b/api/latest/classrtabmap_1_1OptimizerG2O.html index 000eeb5c..2c5698e8 100644 --- a/api/latest/classrtabmap_1_1OptimizerG2O.html +++ b/api/latest/classrtabmap_1_1OptimizerG2O.html @@ -140,9 +140,9 @@ Public Member Functions - - - + + + @@ -163,9 +163,9 @@ bool  - - - + + + @@ -437,8 +437,8 @@ Additional Inherited Members - -

◆ optimizeBA()

+ +

◆ optimizeBA()

@@ -485,7 +485,7 @@ Additional Inherited Members
- + @@ -502,7 +502,7 @@ Additional Inherited Members

Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).

-

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

+

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

Parameters
rootIdPose to hold fixed. If negative, ALL poses other than the (positive) lowest id are held fixed.
loadGraph(const std::string &fileName, std::map< int, Transform > &poses, std::multimap< int, Link > &edgeConstraints) (defined in rtabmap::OptimizerG2O)rtabmap::OptimizerG2Ostatic
optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::OptimizerG2Ovirtual
rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::OptimizerG2Ovirtual
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::OptimizerG2Ovirtual
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizer
optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
Optimizer(int iterations=Parameters::defaultOptimizerIterations(), bool slam2d=Parameters::defaultRegForce3DoF(), bool covarianceIgnored=Parameters::defaultOptimizerVarianceIgnored(), double epsilon=Parameters::defaultOptimizerEpsilon(), bool robust=Parameters::defaultOptimizerRobust(), bool priorsIgnored=Parameters::defaultOptimizerPriorsIgnored(), bool landmarksIgnored=Parameters::defaultOptimizerLandmarksIgnored(), float gravitySigma=Parameters::defaultOptimizerGravitySigma()) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
Optimizer(const ParametersMap &parameters) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
virtual std::map< int, Transform > optimize (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
 Pose-graph optimization with marginal covariance of rootId.
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
bool saveGraph (const std::string &fileName, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints)
 
saveGraph (const std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
 BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Refine a single two-frame link via BA.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Refine a single two-frame link via BA.
 
void computeBACorrespondences (const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())
 Build BA correspondences (3D points + per-frame observations) from signatures.
 
std::set< int > * BAOutliers *  outliers = 0 
@@ -517,7 +517,7 @@ Additional Inherited Members
Returns
Refined poses, or empty on failure.
-

Reimplemented from rtabmap::Optimizer.

+

Reimplemented from rtabmap::Optimizer.

diff --git a/api/latest/classrtabmap_1_1OptimizerG2O.js b/api/latest/classrtabmap_1_1OptimizerG2O.js index 491ffe58..925c7f55 100644 --- a/api/latest/classrtabmap_1_1OptimizerG2O.js +++ b/api/latest/classrtabmap_1_1OptimizerG2O.js @@ -3,5 +3,5 @@ var classrtabmap_1_1OptimizerG2O = [ "type", "classrtabmap_1_1OptimizerG2O.html#af69edaad65a7f7f936fa99f8c617e10b", null ], [ "parseParameters", "classrtabmap_1_1OptimizerG2O.html#a07b598444b99584b6f2bed6baca5e8bb", null ], [ "optimize", "classrtabmap_1_1OptimizerG2O.html#a9400bdf57331af310cf6b02e661d0a03", null ], - [ "optimizeBA", "classrtabmap_1_1OptimizerG2O.html#a17edfbaeee93d32153782f61212a88f0", null ] + [ "optimizeBA", "classrtabmap_1_1OptimizerG2O.html#af808c77c716d30691670c18955f08f61", null ] ]; \ No newline at end of file diff --git a/api/latest/classrtabmap_1_1OptimizerGTSAM-members.html b/api/latest/classrtabmap_1_1OptimizerGTSAM-members.html index c21e1e5f..9ee1925c 100644 --- a/api/latest/classrtabmap_1_1OptimizerGTSAM-members.html +++ b/api/latest/classrtabmap_1_1OptimizerGTSAM-members.html @@ -125,10 +125,10 @@ $(document).ready(function(){initNavTree('classrtabmap_1_1OptimizerGTSAM.html',' - + - + diff --git a/api/latest/classrtabmap_1_1OptimizerGTSAM.html b/api/latest/classrtabmap_1_1OptimizerGTSAM.html index 5fa3e18c..60729d25 100644 --- a/api/latest/classrtabmap_1_1OptimizerGTSAM.html +++ b/api/latest/classrtabmap_1_1OptimizerGTSAM.html @@ -141,9 +141,9 @@ Public Member Functions - - - + + + @@ -161,9 +161,9 @@ Public Member Functions std::map< int, Transform >  - - - + + + @@ -398,8 +398,8 @@ Additional Inherited Members - -

◆ optimizeBA()

+ +

◆ optimizeBA()

@@ -446,7 +446,7 @@ Additional Inherited Members
- + @@ -463,7 +463,7 @@ Additional Inherited Members

Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).

-

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

+

Concrete subclasses (g2o, Ceres, cvsba) override this; the base implementation errors out. The other optimizeBA() overloads ultimately funnel here.

Parameters
rootIdPose to hold fixed. If negative, ALL poses other than the (positive) lowest id are held fixed.
landmarksIgnored() constrtabmap::Optimizerinline
optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::OptimizerGTSAMvirtual
rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::OptimizerGTSAMvirtual
optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::OptimizerGTSAMvirtual
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizer
rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizer
optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
Optimizer(int iterations=Parameters::defaultOptimizerIterations(), bool slam2d=Parameters::defaultRegForce3DoF(), bool covarianceIgnored=Parameters::defaultOptimizerVarianceIgnored(), double epsilon=Parameters::defaultOptimizerEpsilon(), bool robust=Parameters::defaultOptimizerRobust(), bool priorsIgnored=Parameters::defaultOptimizerPriorsIgnored(), bool landmarksIgnored=Parameters::defaultOptimizerLandmarksIgnored(), float gravitySigma=Parameters::defaultOptimizerGravitySigma()) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
Optimizer(const ParametersMap &parameters) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
virtual std::map< int, Transform > optimize (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
 Pose-graph optimization with marginal covariance of rootId.
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
 
- Public Member Functions inherited from rtabmap::Optimizer
void getConnectedGraph (int fromId, const std::map< int, Transform > &posesIn, const std::multimap< int, Link > &linksIn, std::map< int, Transform > &posesOut, std::multimap< int, Link > &linksOut) const
 Extracts the connected component reachable from fromId.
optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
 BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 Refine a single two-frame link via BA.
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
 Refine a single two-frame link via BA.
 
void computeBACorrespondences (const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())
 Build BA correspondences (3D points + per-frame observations) from signatures.
 
std::set< int > * BAOutliers *  outliers = 0 
@@ -478,7 +478,7 @@ Additional Inherited Members
Returns
Refined poses, or empty on failure.
-

Reimplemented from rtabmap::Optimizer.

+

Reimplemented from rtabmap::Optimizer.

diff --git a/api/latest/classrtabmap_1_1OptimizerGTSAM.js b/api/latest/classrtabmap_1_1OptimizerGTSAM.js index b4612044..91e78e45 100644 --- a/api/latest/classrtabmap_1_1OptimizerGTSAM.js +++ b/api/latest/classrtabmap_1_1OptimizerGTSAM.js @@ -3,5 +3,5 @@ var classrtabmap_1_1OptimizerGTSAM = [ "type", "classrtabmap_1_1OptimizerGTSAM.html#a422fe2960e4b71832e2108d5ab2aee46", null ], [ "parseParameters", "classrtabmap_1_1OptimizerGTSAM.html#a9ac24a2315e15b16270151c3aae9d8f0", null ], [ "optimize", "classrtabmap_1_1OptimizerGTSAM.html#a4905d84cfc59516eef21ea89064c31ba", null ], - [ "optimizeBA", "classrtabmap_1_1OptimizerGTSAM.html#a7a2033a466505f8c2191b8329b5b342c", null ] + [ "optimizeBA", "classrtabmap_1_1OptimizerGTSAM.html#a8009ace7ad9f50214bc359421546a54b", null ] ]; \ No newline at end of file diff --git a/api/latest/classrtabmap_1_1OptimizerTORO-members.html b/api/latest/classrtabmap_1_1OptimizerTORO-members.html index 19daed72..fd679aec 100644 --- a/api/latest/classrtabmap_1_1OptimizerTORO-members.html +++ b/api/latest/classrtabmap_1_1OptimizerTORO-members.html @@ -126,10 +126,10 @@ $(document).ready(function(){initNavTree('classrtabmap_1_1OptimizerTORO.html','' - + - + diff --git a/api/latest/classrtabmap_1_1OptimizerTORO.html b/api/latest/classrtabmap_1_1OptimizerTORO.html index 800bb667..13e3ea62 100644 --- a/api/latest/classrtabmap_1_1OptimizerTORO.html +++ b/api/latest/classrtabmap_1_1OptimizerTORO.html @@ -154,9 +154,9 @@ bool  - - - + + + @@ -164,9 +164,9 @@ bool  - - - + + + diff --git a/api/latest/functions_func_o.html b/api/latest/functions_func_o.html index e72ec2ab..d33fdc46 100644 --- a/api/latest/functions_func_o.html +++ b/api/latest/functions_func_o.html @@ -119,7 +119,7 @@ $(document).ready(function(){initNavTree('functions_func_o.html',''); initResiza
  • operator+=() : rtabmap::LaserScan
  • opticalRotation() : rtabmap::CameraModel
  • optimize() : rtabmap::Optimizer, rtabmap::OptimizerCeres, rtabmap::OptimizerG2O, rtabmap::OptimizerGTSAM, rtabmap::OptimizerTORO
  • -
  • optimizeBA() : rtabmap::Optimizer, rtabmap::OptimizerCeres, rtabmap::OptimizerCVSBA, rtabmap::OptimizerG2O, rtabmap::OptimizerGTSAM
  • +
  • optimizeBA() : rtabmap::Optimizer, rtabmap::OptimizerCeres, rtabmap::OptimizerCVSBA, rtabmap::OptimizerG2O, rtabmap::OptimizerGTSAM
  • optimizeIncremental() : rtabmap::Optimizer
  • orientation() : rtabmap::IMU
  • orientationCovariance() : rtabmap::IMU
  • diff --git a/api/latest/functions_o.html b/api/latest/functions_o.html index 3b9b102d..fe2eed27 100644 --- a/api/latest/functions_o.html +++ b/api/latest/functions_o.html @@ -123,7 +123,7 @@ $(document).ready(function(){initNavTree('functions_o.html',''); initResizable()
  • operator+=() : rtabmap::LaserScan
  • opticalRotation() : rtabmap::CameraModel
  • optimize() : rtabmap::Optimizer, rtabmap::OptimizerCeres, rtabmap::OptimizerG2O, rtabmap::OptimizerGTSAM, rtabmap::OptimizerTORO
  • -
  • optimizeBA() : rtabmap::Optimizer, rtabmap::OptimizerCeres, rtabmap::OptimizerCVSBA, rtabmap::OptimizerG2O, rtabmap::OptimizerGTSAM
  • +
  • optimizeBA() : rtabmap::Optimizer, rtabmap::OptimizerCeres, rtabmap::OptimizerCVSBA, rtabmap::OptimizerG2O, rtabmap::OptimizerGTSAM
  • optimizeIncremental() : rtabmap::Optimizer
  • orientation() : rtabmap::IMU
  • orientationCovariance() : rtabmap::IMU
  • diff --git a/api/latest/namespacertabmap.html b/api/latest/namespacertabmap.html index 0eb29338..a8adfb68 100644 --- a/api/latest/namespacertabmap.html +++ b/api/latest/namespacertabmap.html @@ -496,6 +496,8 @@ Typedefs + + @@ -661,6 +663,22 @@ Variables

    Definition at line 113 of file Landmark.h.

    + + + +

    ◆ BAOutliers

    + +
    +
    +
    rootIdPose to hold fixed. If negative, ALL poses other than the (positive) lowest id are held fixed.
    loadGraph(const std::string &fileName, std::map< int, Transform > &poses, std::multimap< int, Link > &edgeConstraints) (defined in rtabmap::OptimizerTORO)rtabmap::OptimizerTOROstatic
    optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &edgeConstraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::OptimizerTOROvirtual
    rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
    optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizervirtual
    optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizervirtual
    optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
    optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())rtabmap::Optimizer
    optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)rtabmap::Optimizer
    optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)rtabmap::Optimizer
    optimizeIncremental(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)rtabmap::Optimizer
    Optimizer(int iterations=Parameters::defaultOptimizerIterations(), bool slam2d=Parameters::defaultRegForce3DoF(), bool covarianceIgnored=Parameters::defaultOptimizerVarianceIgnored(), double epsilon=Parameters::defaultOptimizerEpsilon(), bool robust=Parameters::defaultOptimizerRobust(), bool priorsIgnored=Parameters::defaultOptimizerPriorsIgnored(), bool landmarksIgnored=Parameters::defaultOptimizerLandmarksIgnored(), float gravitySigma=Parameters::defaultOptimizerGravitySigma()) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
    Optimizer(const ParametersMap &parameters) (defined in rtabmap::Optimizer)rtabmap::Optimizerprotected
    saveGraph (const
    std::map< int, Transform > optimize (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)
     Pose-graph optimization (single shot).
     
    virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
     Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
     
    virtual std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
     Bundle adjustment: jointly refine poses and 3D points (back-end-level entry point).
     
    std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
     BA wrapper that derives camera models and correspondences from signatures.
     
    saveGraph (const std::map< int, Transform > optimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())
     BA convenience wrapper: like the overload above but ignores the refined 3D points and observation map.
     
    Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
     Refine a single two-frame link via BA.
     
    Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)
     Refine a single two-frame link via BA.
     
    void computeBACorrespondences (const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, bool useLinkTransformAsGuess=false, ParametersMap registrationParameters=ParametersMap())
     Build BA correspondences (3D points + per-frame observations) from signatures.
     
    typedef std::map< int, Landmark > Landmarks
     Map of landmark id → Landmark (typically positive keys).
     
    typedef std::map< int, std::set< int > > BAOutliers
     
    typedef std::map< std::string, std::string > ParametersMap
     Parameter keys mapped to their values, as used by every configurable class (see Parameters).
     
    + + + +
    typedef std::map<int, std::set<int> > rtabmap::BAOutliers
    +
    + +

    Definition at line 68 of file Optimizer.h.

    +
    diff --git a/api/latest/navtreeindex7.js b/api/latest/navtreeindex7.js index 5929bf43..e2ffafc4 100644 --- a/api/latest/navtreeindex7.js +++ b/api/latest/navtreeindex7.js @@ -130,16 +130,16 @@ var NAVTREEINDEX7 = "classrtabmap_1_1OdometryVINSFusion.html#ac7e841322ccadfcfdec61cc3b698754a":[6,0,0,93,1], "classrtabmap_1_1OdometryViso2.html":[7,0,1,92], "classrtabmap_1_1OdometryViso2.html":[6,0,0,94], -"classrtabmap_1_1OdometryViso2.html#ad442b8186b72e220feace5fb0b0fec5c":[7,0,1,92,0], "classrtabmap_1_1OdometryViso2.html#ad442b8186b72e220feace5fb0b0fec5c":[6,0,0,94,0], +"classrtabmap_1_1OdometryViso2.html#ad442b8186b72e220feace5fb0b0fec5c":[7,0,1,92,0], "classrtabmap_1_1OdometryViso2.html#ae9bf8422bbf6d2c880098b828b5d6187":[7,0,1,92,1], "classrtabmap_1_1OdometryViso2.html#ae9bf8422bbf6d2c880098b828b5d6187":[6,0,0,94,1], "classrtabmap_1_1Optimizer.html":[6,0,0,95], "classrtabmap_1_1Optimizer.html":[7,0,1,93], -"classrtabmap_1_1Optimizer.html#a038e8df970ab744f6f4ba7027f62b263":[6,0,0,95,15], -"classrtabmap_1_1Optimizer.html#a038e8df970ab744f6f4ba7027f62b263":[7,0,1,93,15], "classrtabmap_1_1Optimizer.html#a0a942bd7902c8d2f9444b8eba6a648a3":[6,0,0,95,11], "classrtabmap_1_1Optimizer.html#a0a942bd7902c8d2f9444b8eba6a648a3":[7,0,1,93,11], +"classrtabmap_1_1Optimizer.html#a1122f017f10105f7e6c14039d41709e5":[7,0,1,93,15], +"classrtabmap_1_1Optimizer.html#a1122f017f10105f7e6c14039d41709e5":[6,0,0,95,15], "classrtabmap_1_1Optimizer.html#a178bb719b0e22863e29add12c85e14a5":[7,0,1,93,3], "classrtabmap_1_1Optimizer.html#a178bb719b0e22863e29add12c85e14a5":[6,0,0,95,3], "classrtabmap_1_1Optimizer.html#a18ae8ac76346d1adc68ab176a5b02d16":[6,0,0,95,0], @@ -182,46 +182,46 @@ var NAVTREEINDEX7 = "classrtabmap_1_1Optimizer.html#aab99f045516162944ad68fdabacb53dc":[7,0,1,93,17], "classrtabmap_1_1Optimizer.html#aceb68e0f692b81c4a978e46f804515d7":[6,0,0,95,10], "classrtabmap_1_1Optimizer.html#aceb68e0f692b81c4a978e46f804515d7":[7,0,1,93,10], -"classrtabmap_1_1Optimizer.html#ad6b32a9697837f03941773f6a5bbf91c":[7,0,1,93,18], -"classrtabmap_1_1Optimizer.html#ad6b32a9697837f03941773f6a5bbf91c":[6,0,0,95,18], +"classrtabmap_1_1Optimizer.html#aedaeb7cc371f3685f8595d9a151f6605":[7,0,1,93,18], +"classrtabmap_1_1Optimizer.html#aedaeb7cc371f3685f8595d9a151f6605":[6,0,0,95,18], "classrtabmap_1_1Optimizer.html#aeebd0d5575ab7e9f492b095c05ddb237":[7,0,1,93,8], "classrtabmap_1_1Optimizer.html#aeebd0d5575ab7e9f492b095c05ddb237":[6,0,0,95,8], "classrtabmap_1_1Optimizer.html#af59c8340394268f9a1eb76fd5709f2c3":[7,0,1,93,14], "classrtabmap_1_1Optimizer.html#af59c8340394268f9a1eb76fd5709f2c3":[6,0,0,95,14], "classrtabmap_1_1OptimizerCVSBA.html":[7,0,1,95], "classrtabmap_1_1OptimizerCVSBA.html":[6,0,0,97], -"classrtabmap_1_1OptimizerCVSBA.html#ad6ff3fec8e75ab76290da5763022a903":[6,0,0,97,1], -"classrtabmap_1_1OptimizerCVSBA.html#ad6ff3fec8e75ab76290da5763022a903":[7,0,1,95,1], +"classrtabmap_1_1OptimizerCVSBA.html#a48fce33707a004a0d89db99c1c39d999":[6,0,0,97,1], +"classrtabmap_1_1OptimizerCVSBA.html#a48fce33707a004a0d89db99c1c39d999":[7,0,1,95,1], "classrtabmap_1_1OptimizerCVSBA.html#afbf58e60900671630e0974a13e49b2b0":[6,0,0,97,0], "classrtabmap_1_1OptimizerCVSBA.html#afbf58e60900671630e0974a13e49b2b0":[7,0,1,95,0], "classrtabmap_1_1OptimizerCeres.html":[7,0,1,94], "classrtabmap_1_1OptimizerCeres.html":[6,0,0,96], -"classrtabmap_1_1OptimizerCeres.html#a5057dd09f74610f3092bb597f6af0413":[6,0,0,96,3], -"classrtabmap_1_1OptimizerCeres.html#a5057dd09f74610f3092bb597f6af0413":[7,0,1,94,3], -"classrtabmap_1_1OptimizerCeres.html#aaa1128eeb38451086c7abd58ae6142ac":[7,0,1,94,1], "classrtabmap_1_1OptimizerCeres.html#aaa1128eeb38451086c7abd58ae6142ac":[6,0,0,96,1], +"classrtabmap_1_1OptimizerCeres.html#aaa1128eeb38451086c7abd58ae6142ac":[7,0,1,94,1], "classrtabmap_1_1OptimizerCeres.html#ab988decf55da4a8821931855ddaa1c1a":[6,0,0,96,2], "classrtabmap_1_1OptimizerCeres.html#ab988decf55da4a8821931855ddaa1c1a":[7,0,1,94,2], -"classrtabmap_1_1OptimizerCeres.html#ad6d6c0a0cdbea0ee5082d3aaa94d8e7a":[7,0,1,94,0], "classrtabmap_1_1OptimizerCeres.html#ad6d6c0a0cdbea0ee5082d3aaa94d8e7a":[6,0,0,96,0], -"classrtabmap_1_1OptimizerG2O.html":[6,0,0,98], +"classrtabmap_1_1OptimizerCeres.html#ad6d6c0a0cdbea0ee5082d3aaa94d8e7a":[7,0,1,94,0], +"classrtabmap_1_1OptimizerCeres.html#af5c6d465dc4fa7c9045cd241dae5d077":[6,0,0,96,3], +"classrtabmap_1_1OptimizerCeres.html#af5c6d465dc4fa7c9045cd241dae5d077":[7,0,1,94,3], "classrtabmap_1_1OptimizerG2O.html":[7,0,1,96], +"classrtabmap_1_1OptimizerG2O.html":[6,0,0,98], "classrtabmap_1_1OptimizerG2O.html#a07b598444b99584b6f2bed6baca5e8bb":[6,0,0,98,1], "classrtabmap_1_1OptimizerG2O.html#a07b598444b99584b6f2bed6baca5e8bb":[7,0,1,96,1], -"classrtabmap_1_1OptimizerG2O.html#a17edfbaeee93d32153782f61212a88f0":[6,0,0,98,3], -"classrtabmap_1_1OptimizerG2O.html#a17edfbaeee93d32153782f61212a88f0":[7,0,1,96,3], -"classrtabmap_1_1OptimizerG2O.html#a9400bdf57331af310cf6b02e661d0a03":[7,0,1,96,2], "classrtabmap_1_1OptimizerG2O.html#a9400bdf57331af310cf6b02e661d0a03":[6,0,0,98,2], -"classrtabmap_1_1OptimizerG2O.html#af69edaad65a7f7f936fa99f8c617e10b":[7,0,1,96,0], +"classrtabmap_1_1OptimizerG2O.html#a9400bdf57331af310cf6b02e661d0a03":[7,0,1,96,2], "classrtabmap_1_1OptimizerG2O.html#af69edaad65a7f7f936fa99f8c617e10b":[6,0,0,98,0], +"classrtabmap_1_1OptimizerG2O.html#af69edaad65a7f7f936fa99f8c617e10b":[7,0,1,96,0], +"classrtabmap_1_1OptimizerG2O.html#af808c77c716d30691670c18955f08f61":[7,0,1,96,3], +"classrtabmap_1_1OptimizerG2O.html#af808c77c716d30691670c18955f08f61":[6,0,0,98,3], "classrtabmap_1_1OptimizerGTSAM.html":[6,0,0,99], "classrtabmap_1_1OptimizerGTSAM.html":[7,0,1,97], "classrtabmap_1_1OptimizerGTSAM.html#a422fe2960e4b71832e2108d5ab2aee46":[7,0,1,97,0], "classrtabmap_1_1OptimizerGTSAM.html#a422fe2960e4b71832e2108d5ab2aee46":[6,0,0,99,0], "classrtabmap_1_1OptimizerGTSAM.html#a4905d84cfc59516eef21ea89064c31ba":[7,0,1,97,2], "classrtabmap_1_1OptimizerGTSAM.html#a4905d84cfc59516eef21ea89064c31ba":[6,0,0,99,2], -"classrtabmap_1_1OptimizerGTSAM.html#a7a2033a466505f8c2191b8329b5b342c":[6,0,0,99,3], -"classrtabmap_1_1OptimizerGTSAM.html#a7a2033a466505f8c2191b8329b5b342c":[7,0,1,97,3], +"classrtabmap_1_1OptimizerGTSAM.html#a8009ace7ad9f50214bc359421546a54b":[6,0,0,99,3], +"classrtabmap_1_1OptimizerGTSAM.html#a8009ace7ad9f50214bc359421546a54b":[7,0,1,97,3], "classrtabmap_1_1OptimizerGTSAM.html#a9ac24a2315e15b16270151c3aae9d8f0":[6,0,0,99,1], "classrtabmap_1_1OptimizerGTSAM.html#a9ac24a2315e15b16270151c3aae9d8f0":[7,0,1,97,1], "classrtabmap_1_1OptimizerTORO.html":[6,0,0,100], diff --git a/api/latest/search/all_11.js b/api/latest/search/all_11.js index 00a65ec6..8ef2ee40 100644 --- a/api/latest/search/all_11.js +++ b/api/latest/search/all_11.js @@ -67,7 +67,7 @@ var searchData= ['operator_3c_3c_64',['operator<<',['../namespacertabmap.html#a087b7a1b89acb679edee23883653f1a7',1,'rtabmap::operator<<(std::ostream &os, const CameraModel &model)'],['../namespacertabmap.html#a6138748ef83b742105e47c9275885e4a',1,'rtabmap::operator<<(std::ostream &os, const StereoCameraModel &model)'],['../namespacertabmap.html#aef0e1f1b121a9199e7511becbc8f1e32',1,'rtabmap::operator<<(std::ostream &os, const Transform &s)']]], ['opticalrotation_65',['opticalRotation',['../classrtabmap_1_1CameraModel.html#a0853af9d0117565311da4ffc3965f8d2',1,'rtabmap::CameraModel']]], ['optimize_66',['optimize',['../classrtabmap_1_1OptimizerG2O.html#a9400bdf57331af310cf6b02e661d0a03',1,'rtabmap::OptimizerG2O::optimize()'],['../classrtabmap_1_1Optimizer.html#a7e3aff943e77603493a358ff522fa2dc',1,'rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)'],['../classrtabmap_1_1Optimizer.html#af59c8340394268f9a1eb76fd5709f2c3',1,'rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)'],['../classrtabmap_1_1OptimizerCeres.html#ab988decf55da4a8821931855ddaa1c1a',1,'rtabmap::OptimizerCeres::optimize()'],['../classrtabmap_1_1OptimizerGTSAM.html#a4905d84cfc59516eef21ea89064c31ba',1,'rtabmap::OptimizerGTSAM::optimize()'],['../classrtabmap_1_1OptimizerTORO.html#a025b40902f0ea048bdbfee9ed4ebc0f3',1,'rtabmap::OptimizerTORO::optimize()']]], - ['optimizeba_67',['optimizeba',['../classrtabmap_1_1Optimizer.html#a038e8df970ab744f6f4ba7027f62b263',1,'rtabmap::Optimizer::optimizeBA()'],['../classrtabmap_1_1OptimizerGTSAM.html#a7a2033a466505f8c2191b8329b5b342c',1,'rtabmap::OptimizerGTSAM::optimizeBA()'],['../classrtabmap_1_1OptimizerG2O.html#a17edfbaeee93d32153782f61212a88f0',1,'rtabmap::OptimizerG2O::optimizeBA()'],['../classrtabmap_1_1OptimizerCVSBA.html#ad6ff3fec8e75ab76290da5763022a903',1,'rtabmap::OptimizerCVSBA::optimizeBA()'],['../classrtabmap_1_1OptimizerCeres.html#a5057dd09f74610f3092bb597f6af0413',1,'rtabmap::OptimizerCeres::optimizeBA()'],['../classrtabmap_1_1Optimizer.html#ad6b32a9697837f03941773f6a5bbf91c',1,'rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)'],['../classrtabmap_1_1Optimizer.html#aab99f045516162944ad68fdabacb53dc',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())'],['../classrtabmap_1_1Optimizer.html#a2f7cbdebed9787ffa6b0b30536dfa1a0',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())']]], + ['optimizeba_67',['optimizeba',['../classrtabmap_1_1Optimizer.html#a1122f017f10105f7e6c14039d41709e5',1,'rtabmap::Optimizer::optimizeBA()'],['../classrtabmap_1_1OptimizerGTSAM.html#a8009ace7ad9f50214bc359421546a54b',1,'rtabmap::OptimizerGTSAM::optimizeBA()'],['../classrtabmap_1_1OptimizerG2O.html#af808c77c716d30691670c18955f08f61',1,'rtabmap::OptimizerG2O::optimizeBA()'],['../classrtabmap_1_1OptimizerCVSBA.html#a48fce33707a004a0d89db99c1c39d999',1,'rtabmap::OptimizerCVSBA::optimizeBA()'],['../classrtabmap_1_1OptimizerCeres.html#af5c6d465dc4fa7c9045cd241dae5d077',1,'rtabmap::OptimizerCeres::optimizeBA()'],['../classrtabmap_1_1Optimizer.html#aedaeb7cc371f3685f8595d9a151f6605',1,'rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)'],['../classrtabmap_1_1Optimizer.html#aab99f045516162944ad68fdabacb53dc',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())'],['../classrtabmap_1_1Optimizer.html#a2f7cbdebed9787ffa6b0b30536dfa1a0',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())']]], ['optimizeincremental_68',['optimizeIncremental',['../classrtabmap_1_1Optimizer.html#a278f42e0d250085ac6fe9ed425627acf',1,'rtabmap::Optimizer']]], ['optimizer_69',['optimizer',['../parameters.html#autotoc_md29',1,'Optimizer'],['../classrtabmap_1_1Optimizer.html',1,'rtabmap::Optimizer']]], ['optimizerceres_70',['OptimizerCeres',['../classrtabmap_1_1OptimizerCeres.html',1,'rtabmap']]], diff --git a/api/latest/search/functions_e.js b/api/latest/search/functions_e.js index 1a016df8..65f8805f 100644 --- a/api/latest/search/functions_e.js +++ b/api/latest/search/functions_e.js @@ -22,7 +22,7 @@ var searchData= ['operator_3c_3c_19',['operator<<',['../namespacertabmap.html#a087b7a1b89acb679edee23883653f1a7',1,'rtabmap::operator<<(std::ostream &os, const CameraModel &model)'],['../namespacertabmap.html#a6138748ef83b742105e47c9275885e4a',1,'rtabmap::operator<<(std::ostream &os, const StereoCameraModel &model)'],['../namespacertabmap.html#aef0e1f1b121a9199e7511becbc8f1e32',1,'rtabmap::operator<<(std::ostream &os, const Transform &s)']]], ['opticalrotation_20',['opticalRotation',['../classrtabmap_1_1CameraModel.html#a0853af9d0117565311da4ffc3965f8d2',1,'rtabmap::CameraModel']]], ['optimize_21',['optimize',['../classrtabmap_1_1Optimizer.html#a7e3aff943e77603493a358ff522fa2dc',1,'rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)'],['../classrtabmap_1_1Optimizer.html#af59c8340394268f9a1eb76fd5709f2c3',1,'rtabmap::Optimizer::optimize(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &constraints, cv::Mat &outputCovariance, std::list< std::map< int, Transform > > *intermediateGraphes=0, double *finalError=0, int *iterationsDone=0)'],['../classrtabmap_1_1OptimizerCeres.html#ab988decf55da4a8821931855ddaa1c1a',1,'rtabmap::OptimizerCeres::optimize()'],['../classrtabmap_1_1OptimizerG2O.html#a9400bdf57331af310cf6b02e661d0a03',1,'rtabmap::OptimizerG2O::optimize()'],['../classrtabmap_1_1OptimizerGTSAM.html#a4905d84cfc59516eef21ea89064c31ba',1,'rtabmap::OptimizerGTSAM::optimize()'],['../classrtabmap_1_1OptimizerTORO.html#a025b40902f0ea048bdbfee9ed4ebc0f3',1,'rtabmap::OptimizerTORO::optimize()']]], - ['optimizeba_22',['optimizeba',['../classrtabmap_1_1Optimizer.html#a2f7cbdebed9787ffa6b0b30536dfa1a0',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())'],['../classrtabmap_1_1Optimizer.html#a038e8df970ab744f6f4ba7027f62b263',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)'],['../classrtabmap_1_1Optimizer.html#ad6b32a9697837f03941773f6a5bbf91c',1,'rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)'],['../classrtabmap_1_1Optimizer.html#aab99f045516162944ad68fdabacb53dc',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())'],['../classrtabmap_1_1OptimizerGTSAM.html#a7a2033a466505f8c2191b8329b5b342c',1,'rtabmap::OptimizerGTSAM::optimizeBA()'],['../classrtabmap_1_1OptimizerG2O.html#a17edfbaeee93d32153782f61212a88f0',1,'rtabmap::OptimizerG2O::optimizeBA()'],['../classrtabmap_1_1OptimizerCVSBA.html#ad6ff3fec8e75ab76290da5763022a903',1,'rtabmap::OptimizerCVSBA::optimizeBA()'],['../classrtabmap_1_1OptimizerCeres.html#a5057dd09f74610f3092bb597f6af0413',1,'rtabmap::OptimizerCeres::optimizeBA()']]], + ['optimizeba_22',['optimizeba',['../classrtabmap_1_1Optimizer.html#a2f7cbdebed9787ffa6b0b30536dfa1a0',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, std::map< int, cv::Point3f > &points3DMap, std::map< int, std::map< int, FeatureBA > > &wordReferences, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())'],['../classrtabmap_1_1Optimizer.html#a1122f017f10105f7e6c14039d41709e5',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, std::vector< CameraModel > > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)'],['../classrtabmap_1_1Optimizer.html#aedaeb7cc371f3685f8595d9a151f6605',1,'rtabmap::Optimizer::optimizeBA(const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, BAOutliers *outliers=0)'],['../classrtabmap_1_1Optimizer.html#aab99f045516162944ad68fdabacb53dc',1,'rtabmap::Optimizer::optimizeBA(int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false, const ParametersMap &registrationParameters=ParametersMap())'],['../classrtabmap_1_1OptimizerGTSAM.html#a8009ace7ad9f50214bc359421546a54b',1,'rtabmap::OptimizerGTSAM::optimizeBA()'],['../classrtabmap_1_1OptimizerG2O.html#af808c77c716d30691670c18955f08f61',1,'rtabmap::OptimizerG2O::optimizeBA()'],['../classrtabmap_1_1OptimizerCVSBA.html#a48fce33707a004a0d89db99c1c39d999',1,'rtabmap::OptimizerCVSBA::optimizeBA()'],['../classrtabmap_1_1OptimizerCeres.html#af5c6d465dc4fa7c9045cd241dae5d077',1,'rtabmap::OptimizerCeres::optimizeBA()']]], ['optimizeincremental_23',['optimizeIncremental',['../classrtabmap_1_1Optimizer.html#a278f42e0d250085ac6fe9ed425627acf',1,'rtabmap::Optimizer']]], ['orientation_24',['orientation',['../classrtabmap_1_1IMU.html#a2160e6d59e4f9e3ffc84a2b7d62bdabd',1,'rtabmap::IMU']]], ['orientationcovariance_25',['orientationCovariance',['../classrtabmap_1_1IMU.html#ab7668040b92bfa5532c5e1c19ddbf429',1,'rtabmap::IMU']]] diff --git a/index.html b/index.html index 6f2da922..63c8430e 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ - + RTAB-Map | Real-Time Appearance-Based Mapping