use custom typedefs for GNC + GaussNewton and GNC + LM
parent
6e788faf34
commit
30d028ef74
|
@ -523,12 +523,15 @@ virtual class DoglegParams : gtsam::NonlinearOptimizerParams {
|
||||||
};
|
};
|
||||||
|
|
||||||
#include <gtsam/nonlinear/GncParams.h>
|
#include <gtsam/nonlinear/GncParams.h>
|
||||||
template<PARAMS = {gtsam::GaussNewtonParams, gtsam::LevenbergMarquardtParams}>
|
template<PARAMS>
|
||||||
virtual class GncParams {
|
virtual class GncParams {
|
||||||
GncParams(const PARAMS& baseOptimizerParams);
|
GncParams(const PARAMS& baseOptimizerParams);
|
||||||
GncParams();
|
GncParams();
|
||||||
void print(const string& str) const;
|
void print(const string& str) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef GncParams<gtsam::GaussNewtonParams> GncGaussNewtonParams;
|
||||||
|
typedef GncParams<gtsam::LevenbergMarquardtParams> GncLMParams;
|
||||||
|
|
||||||
#include <gtsam/nonlinear/NonlinearOptimizer.h>
|
#include <gtsam/nonlinear/NonlinearOptimizer.h>
|
||||||
virtual class NonlinearOptimizer {
|
virtual class NonlinearOptimizer {
|
||||||
|
@ -561,8 +564,7 @@ virtual class DoglegOptimizer : gtsam::NonlinearOptimizer {
|
||||||
};
|
};
|
||||||
|
|
||||||
#include <gtsam/nonlinear/GncOptimizer.h>
|
#include <gtsam/nonlinear/GncOptimizer.h>
|
||||||
template<PARAMS = {gtsam::GncParams<gtsam::GaussNewtonParams>,
|
template<PARAMS>
|
||||||
gtsam::GncParams<gtsam::LevenbergMarquardtParams>}>
|
|
||||||
virtual class GncOptimizer {
|
virtual class GncOptimizer {
|
||||||
GncOptimizer(const gtsam::NonlinearFactorGraph& graph,
|
GncOptimizer(const gtsam::NonlinearFactorGraph& graph,
|
||||||
const gtsam::Values& initialValues,
|
const gtsam::Values& initialValues,
|
||||||
|
@ -570,6 +572,9 @@ virtual class GncOptimizer {
|
||||||
gtsam::Values optimize();
|
gtsam::Values optimize();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef gtsam::GncOptimizer<gtsam::GncParams<gtsam::GaussNewtonParams> > GncGaussNewtonOptimizer;
|
||||||
|
typedef gtsam::GncOptimizer<gtsam::GncParams<gtsam::LevenbergMarquardtParams> > GncLMOptimizer;
|
||||||
|
|
||||||
#include <gtsam/nonlinear/LevenbergMarquardtOptimizer.h>
|
#include <gtsam/nonlinear/LevenbergMarquardtOptimizer.h>
|
||||||
virtual class LevenbergMarquardtOptimizer : gtsam::NonlinearOptimizer {
|
virtual class LevenbergMarquardtOptimizer : gtsam::NonlinearOptimizer {
|
||||||
LevenbergMarquardtOptimizer(const gtsam::NonlinearFactorGraph& graph,
|
LevenbergMarquardtOptimizer(const gtsam::NonlinearFactorGraph& graph,
|
||||||
|
|
Loading…
Reference in New Issue