Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
SlidingWindowLevenbergOptimizer Class Reference

Sliding Window Levenberg-Marquardt optimizer for graph SLAM. More...

#include <sliding_window_levenberg_optimizer.hpp>

Inheritance diagram for SlidingWindowLevenbergOptimizer:
Inheritance graph
Collaboration diagram for SlidingWindowLevenbergOptimizer:
Collaboration graph

Public Member Functions

 SlidingWindowLevenbergOptimizer (const SLAMParameters &params)
 
 ~SlidingWindowLevenbergOptimizer () override=default
 
std::shared_ptr< BaseOptimizerclone () const override
 Clone the optimizer.
 
gtsam::Values optimize (gtsam::NonlinearFactorGraph &factor_graph, gtsam::Values &graph_values, unsigned int pose_num, unsigned int landmark_num) override
 Optimize the graph.
 
- Public Member Functions inherited from BaseOptimizer
 BaseOptimizer (const SLAMParameters &params)
 
 BaseOptimizer (const BaseOptimizer &other)
 
BaseOptimizeroperator= (const BaseOptimizer &other)
 
virtual ~BaseOptimizer ()=default
 

Additional Inherited Members

- Protected Attributes inherited from BaseOptimizer
const SLAMParameters_params_
 

Detailed Description

Sliding Window Levenberg-Marquardt optimizer for graph SLAM.

This class implements the sliding window Levenberg-Marquardt optimizer for graph SLAM It uses the GTSAM Levenberg-Marquardt implementation to optimize the factor graph within a sliding window of poses

Definition at line 13 of file sliding_window_levenberg_optimizer.hpp.

Constructor & Destructor Documentation

◆ SlidingWindowLevenbergOptimizer()

SlidingWindowLevenbergOptimizer::SlidingWindowLevenbergOptimizer ( const SLAMParameters params)

Definition at line 15 of file sliding_window_levenberg_optimizer.cpp.

◆ ~SlidingWindowLevenbergOptimizer()

SlidingWindowLevenbergOptimizer::~SlidingWindowLevenbergOptimizer ( )
overridedefault

Member Function Documentation

◆ clone()

std::shared_ptr< BaseOptimizer > SlidingWindowLevenbergOptimizer::clone ( ) const
overridevirtual

Clone the optimizer.

This method is used to create a copy of the optimizer It is useful for polymorphic classes that use pointers to base class

Returns
A shared pointer to the cloned optimizer

Implements BaseOptimizer.

Definition at line 11 of file sliding_window_levenberg_optimizer.cpp.

◆ optimize()

gtsam::Values SlidingWindowLevenbergOptimizer::optimize ( gtsam::NonlinearFactorGraph &  factor_graph,
gtsam::Values &  graph_values,
unsigned int  pose_num,
unsigned int  landmark_num 
)
overridevirtual

Optimize the graph.

This method is used to run the optimization on the graph It also updates the pose and the graph values accordingly afterwards It may change the factor graph

Parameters
factor_graphThe factor graph to optimize
graph_valuesThe values to optimize
pose_numThe number of poses in the graph
landmark_numThe number of landmarks in the graph
Returns
The optimized values

Implements BaseOptimizer.

Definition at line 18 of file sliding_window_levenberg_optimizer.cpp.


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