ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
cloudViewer::pipelines::registration::GlobalOptimizationLevenbergMarquardt Class Reference

Global optimization with Levenberg-Marquardt algorithm. More...

#include <GlobalOptimizationMethod.h>

Inheritance diagram for cloudViewer::pipelines::registration::GlobalOptimizationLevenbergMarquardt:
Collaboration diagram for cloudViewer::pipelines::registration::GlobalOptimizationLevenbergMarquardt:

Public Member Functions

 GlobalOptimizationLevenbergMarquardt ()
 Default Constructor. More...
 
 ~GlobalOptimizationLevenbergMarquardt () override
 
void OptimizePoseGraph (PoseGraph &pose_graph, const GlobalOptimizationConvergenceCriteria &criteria, const GlobalOptimizationOption &option) const override
 Run pose graph optimization method. More...
 
- Public Member Functions inherited from cloudViewer::pipelines::registration::GlobalOptimizationMethod
 GlobalOptimizationMethod ()
 Default Constructor. More...
 
virtual ~GlobalOptimizationMethod ()
 

Detailed Description

Global optimization with Levenberg-Marquardt algorithm.

Recommended over the Gauss-Newton method since the LM has better convergence characteristics.

Definition at line 66 of file GlobalOptimizationMethod.h.

Constructor & Destructor Documentation

◆ GlobalOptimizationLevenbergMarquardt()

cloudViewer::pipelines::registration::GlobalOptimizationLevenbergMarquardt::GlobalOptimizationLevenbergMarquardt ( )
inline

Default Constructor.

Definition at line 69 of file GlobalOptimizationMethod.h.

◆ ~GlobalOptimizationLevenbergMarquardt()

cloudViewer::pipelines::registration::GlobalOptimizationLevenbergMarquardt::~GlobalOptimizationLevenbergMarquardt ( )
inlineoverride

Definition at line 70 of file GlobalOptimizationMethod.h.

Member Function Documentation

◆ OptimizePoseGraph()

void cloudViewer::pipelines::registration::GlobalOptimizationLevenbergMarquardt::OptimizePoseGraph ( PoseGraph pose_graph,
const GlobalOptimizationConvergenceCriteria criteria,
const GlobalOptimizationOption option 
) const
overridevirtual

Run pose graph optimization method.

Parameters
pose_graphThe pose graph to be optimized (in-place).
criteriaConvergence criteria.
optionGlobal optimization options.

Implements cloudViewer::pipelines::registration::GlobalOptimizationMethod.

Definition at line 560 of file GlobalOptimization.cpp.

References cloudViewer::pipelines::registration::CheckMaxIteration(), cloudViewer::pipelines::registration::CheckMaxIterationLM(), cloudViewer::pipelines::registration::CheckRelativeIncrement(), cloudViewer::pipelines::registration::CheckRelativeResidualIncrement(), cloudViewer::pipelines::registration::CheckResidual(), cloudViewer::pipelines::registration::CheckRightTerm(), cloudViewer::pipelines::registration::ComputeLinearSystem(), cloudViewer::pipelines::registration::ComputeLineProcessWeight(), cloudViewer::pipelines::registration::ComputeResidual(), cloudViewer::pipelines::registration::ComputeZeta(), cloudViewer::pipelines::registration::PoseGraph::edges_, cloudViewer::utility::Timer::GetDurationInMillisecond(), LogDebug, cloudViewer::pipelines::registration::GlobalOptimizationConvergenceCriteria::lower_scale_factor_, max(), min(), cloudViewer::pipelines::registration::PoseGraph::nodes_, cloudViewer::utility::SolveLinearSystemPSD(), cloudViewer::utility::Timer::Start(), cloudViewer::utility::Timer::Stop(), cloudViewer::pipelines::registration::UpdateConfidence(), cloudViewer::pipelines::registration::UpdatePoseGraph(), cloudViewer::pipelines::registration::UpdatePoseVector(), and cloudViewer::pipelines::registration::GlobalOptimizationConvergenceCriteria::upper_scale_factor_.


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