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,
  kTypeCVSBA = 3
}
 

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, cv::Point3f > > &wordReferences)
 
double epsilon () const
 
bool isCovarianceIgnored () const
 
bool isRobust () const
 
bool isSlam2d () const
 
int iterations () 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, cv::Point3f > > &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)
 
Transform optimizeBA (const Link &link, const CameraModel &model, std::map< int, cv::Point3f > &points3DMap, const std::map< int, std::map< int, cv::Point3f > > &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 setIterations (int iterations)
 
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 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, int depth=0)
 
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())
 
 Optimizer (const ParametersMap &parameters)
 

Private Attributes

bool covarianceIgnored_
 
double epsilon_
 
int iterations_
 
bool priorsIgnored_
 
bool robust_
 
bool slam2d_
 

Detailed Description

Definition at line 44 of file Optimizer.h.

Member Enumeration Documentation

Enumerator
kTypeUndef 
kTypeTORO 
kTypeG2O 
kTypeGTSAM 
kTypeCVSBA 

Definition at line 47 of file Optimizer.h.

Constructor & Destructor Documentation

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

Definition at line 68 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() 
)
protected

Definition at line 235 of file Optimizer.cpp.

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

Definition at line 245 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, cv::Point3f > > &  wordReferences 
)

Definition at line 457 of file Optimizer.cpp.

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

Definition at line 67 of file Optimizer.cpp.

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

Definition at line 74 of file Optimizer.cpp.

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

Definition at line 76 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,
int  depth = 0 
)
static

Definition at line 157 of file Optimizer.cpp.

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

Definition at line 46 of file Optimizer.cpp.

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

Definition at line 75 of file Optimizer.h.

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

Definition at line 77 of file Optimizer.h.

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

Definition at line 74 of file Optimizer.h.

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

Definition at line 73 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 331 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

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

Definition at line 349 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, CameraModel > &  models,
std::map< int, cv::Point3f > &  points3DMap,
const std::map< int, std::map< int, cv::Point3f > > &  wordReferences,
std::set< int > *  outliers = 0 
)
virtual

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

Definition at line 362 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 
)

Definition at line 375 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, cv::Point3f > > &  wordReferences,
std::set< int > *  outliers = 0 
)

Definition at line 431 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 266 of file Optimizer.cpp.

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

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

Definition at line 256 of file Optimizer.cpp.

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

Definition at line 78 of file Optimizer.h.

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

Definition at line 83 of file Optimizer.h.

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

Definition at line 84 of file Optimizer.h.

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

Definition at line 81 of file Optimizer.h.

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

Definition at line 86 of file Optimizer.h.

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

Definition at line 85 of file Optimizer.h.

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

Definition at line 82 of file Optimizer.h.

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

Member Data Documentation

bool rtabmap::Optimizer::covarianceIgnored_
private

Definition at line 157 of file Optimizer.h.

double rtabmap::Optimizer::epsilon_
private

Definition at line 158 of file Optimizer.h.

int rtabmap::Optimizer::iterations_
private

Definition at line 155 of file Optimizer.h.

bool rtabmap::Optimizer::priorsIgnored_
private

Definition at line 160 of file Optimizer.h.

bool rtabmap::Optimizer::robust_
private

Definition at line 159 of file Optimizer.h.

bool rtabmap::Optimizer::slam2d_
private

Definition at line 156 of file Optimizer.h.


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


rtabmap
Author(s): Mathieu Labbe
autogenerated on Wed Jun 5 2019 22:43:43