Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | List of all members
rtabmap::Optimizer Class Referenceabstract

#include <Optimizer.h>

Inheritance diagram for rtabmap::Optimizer:
Inheritance graph
[legend]

Public Types

enum  Type {
  kTypeUndef = -1, kTypeTORO = 0, kTypeG2O = 1, kTypeGTSAM = 2,
  kTypeCeres = 3, kTypeCVSBA = 4
}
 

Public Member Functions

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)
 
double epsilon () const
 
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
 
float gravitySigma () const
 
bool isCovarianceIgnored () const
 
bool isRobust () const
 
bool isSlam2d () const
 
int iterations () const
 
bool landmarksIgnored () const
 
std::map< int, Transformoptimize (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)
 
virtual std::map< int, Transformoptimize (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)
 
virtual std::map< int, TransformoptimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, CameraModel > &models, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, FeatureBA > > &wordReferences, std::set< int > *outliers=0)
 
std::map< int, TransformoptimizeBA (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)
 
std::map< int, TransformoptimizeBA (int rootId, const std::map< int, Transform > &poses, const std::multimap< int, Link > &links, const std::map< int, Signature > &signatures, bool rematchFeatures=false)
 
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)
 
std::map< int, TransformoptimizeIncremental (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)
 
virtual void parseParameters (const ParametersMap &parameters)
 
bool priorsIgnored () const
 
void setCovarianceIgnored (bool enabled)
 
void setEpsilon (double epsilon)
 
void setGravitySigma (float value)
 
void setIterations (int iterations)
 
void setLandmarksIgnored (bool enabled)
 
void setPriorsIgnored (bool enabled)
 
void setRobust (bool enabled)
 
void setSlam2d (bool enabled)
 
virtual Type type () const =0
 
virtual ~Optimizer ()
 

Static Public Member Functions

static Optimizercreate (const ParametersMap &parameters)
 
static Optimizercreate (Optimizer::Type type, const ParametersMap &parameters=ParametersMap())
 
static bool isAvailable (Optimizer::Type type)
 

Protected Member Functions

 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())
 
 Optimizer (const ParametersMap &parameters)
 

Private Attributes

bool covarianceIgnored_
 
double epsilon_
 
float gravitySigma_
 
int iterations_
 
bool landmarksIgnored_
 
bool priorsIgnored_
 
bool robust_
 
bool slam2d_
 

Detailed Description

Definition at line 57 of file Optimizer.h.

Member Enumeration Documentation

Enumerator
kTypeUndef 
kTypeTORO 
kTypeG2O 
kTypeGTSAM 
kTypeCeres 
kTypeCVSBA 

Definition at line 60 of file Optimizer.h.

Constructor & Destructor Documentation

virtual rtabmap::Optimizer::~Optimizer ( )
inlinevirtual

Definition at line 81 of file Optimizer.h.

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() 
)
protected

Definition at line 296 of file Optimizer.cpp.

rtabmap::Optimizer::Optimizer ( const ParametersMap parameters)
protected

Definition at line 308 of file Optimizer.cpp.

Member Function Documentation

void rtabmap::Optimizer::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 
)

Definition at line 554 of file Optimizer.cpp.

Optimizer * rtabmap::Optimizer::create ( const ParametersMap parameters)
static

Definition at line 72 of file Optimizer.cpp.

Optimizer * rtabmap::Optimizer::create ( Optimizer::Type  type,
const ParametersMap parameters = ParametersMap() 
)
static

Definition at line 79 of file Optimizer.cpp.

double rtabmap::Optimizer::epsilon ( ) const
inline

Definition at line 89 of file Optimizer.h.

void rtabmap::Optimizer::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

Definition at line 188 of file Optimizer.cpp.

float rtabmap::Optimizer::gravitySigma ( ) const
inline

Definition at line 93 of file Optimizer.h.

bool rtabmap::Optimizer::isAvailable ( Optimizer::Type  type)
static

Definition at line 47 of file Optimizer.cpp.

bool rtabmap::Optimizer::isCovarianceIgnored ( ) const
inline

Definition at line 88 of file Optimizer.h.

bool rtabmap::Optimizer::isRobust ( ) const
inline

Definition at line 90 of file Optimizer.h.

bool rtabmap::Optimizer::isSlam2d ( ) const
inline

Definition at line 87 of file Optimizer.h.

int rtabmap::Optimizer::iterations ( ) const
inline

Definition at line 86 of file Optimizer.h.

bool rtabmap::Optimizer::landmarksIgnored ( ) const
inline

Definition at line 92 of file Optimizer.h.

std::map< int, Transform > 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 
)

Definition at line 398 of file Optimizer.cpp.

std::map< int, Transform > 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 
)
virtual
std::map< int, Transform > rtabmap::Optimizer::optimizeBA ( int  rootId,
const std::map< int, Transform > &  poses,
const std::multimap< int, Link > &  links,
const std::map< int, CameraModel > &  models,
std::map< int, cv::Point3f > &  points3DMap,
const std::map< int, std::map< int, FeatureBA > > &  wordReferences,
std::set< int > *  outliers = 0 
)
virtual

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

Definition at line 429 of file Optimizer.cpp.

std::map< int, Transform > 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 
)

Definition at line 442 of file Optimizer.cpp.

std::map< int, Transform > 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 
)

Definition at line 508 of file Optimizer.cpp.

Transform 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 
)

Definition at line 520 of file Optimizer.cpp.

std::map< int, Transform > 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 
)

Definition at line 333 of file Optimizer.cpp.

void rtabmap::Optimizer::parseParameters ( const ParametersMap parameters)
virtual

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

Definition at line 321 of file Optimizer.cpp.

bool rtabmap::Optimizer::priorsIgnored ( ) const
inline

Definition at line 91 of file Optimizer.h.

void rtabmap::Optimizer::setCovarianceIgnored ( bool  enabled)
inline

Definition at line 98 of file Optimizer.h.

void rtabmap::Optimizer::setEpsilon ( double  epsilon)
inline

Definition at line 99 of file Optimizer.h.

void rtabmap::Optimizer::setGravitySigma ( float  value)
inline

Definition at line 103 of file Optimizer.h.

void rtabmap::Optimizer::setIterations ( int  iterations)
inline

Definition at line 96 of file Optimizer.h.

void rtabmap::Optimizer::setLandmarksIgnored ( bool  enabled)
inline

Definition at line 102 of file Optimizer.h.

void rtabmap::Optimizer::setPriorsIgnored ( bool  enabled)
inline

Definition at line 101 of file Optimizer.h.

void rtabmap::Optimizer::setRobust ( bool  enabled)
inline

Definition at line 100 of file Optimizer.h.

void rtabmap::Optimizer::setSlam2d ( bool  enabled)
inline

Definition at line 97 of file Optimizer.h.

virtual Type rtabmap::Optimizer::type ( ) const
pure virtual

Member Data Documentation

bool rtabmap::Optimizer::covarianceIgnored_
private

Definition at line 187 of file Optimizer.h.

double rtabmap::Optimizer::epsilon_
private

Definition at line 188 of file Optimizer.h.

float rtabmap::Optimizer::gravitySigma_
private

Definition at line 192 of file Optimizer.h.

int rtabmap::Optimizer::iterations_
private

Definition at line 185 of file Optimizer.h.

bool rtabmap::Optimizer::landmarksIgnored_
private

Definition at line 191 of file Optimizer.h.

bool rtabmap::Optimizer::priorsIgnored_
private

Definition at line 190 of file Optimizer.h.

bool rtabmap::Optimizer::robust_
private

Definition at line 189 of file Optimizer.h.

bool rtabmap::Optimizer::slam2d_
private

Definition at line 186 of file Optimizer.h.


The documentation for this class was generated from the following files:


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Dec 14 2020 03:37:09