Add negLogConstants
parent
e7a68fa6f2
commit
2af9d2d35a
|
@ -45,6 +45,8 @@ using symbol_shorthand::X;
|
||||||
|
|
||||||
const size_t kMaxLoopCount = 2000; // Example default value
|
const size_t kMaxLoopCount = 2000; // Example default value
|
||||||
|
|
||||||
|
auto kOpenLoopModel = noiseModel::Diagonal::Sigmas(Vector3::Ones() * 10);
|
||||||
|
|
||||||
auto kPriorNoiseModel = noiseModel::Diagonal::Sigmas(
|
auto kPriorNoiseModel = noiseModel::Diagonal::Sigmas(
|
||||||
(Vector(3) << 0.0001, 0.0001, 0.0001).finished());
|
(Vector(3) << 0.0001, 0.0001, 0.0001).finished());
|
||||||
|
|
||||||
|
@ -91,12 +93,13 @@ class Experiment {
|
||||||
DiscreteKey l(L(loopCounter), 2);
|
DiscreteKey l(L(loopCounter), 2);
|
||||||
|
|
||||||
auto f0 = std::make_shared<BetweenFactor<Pose2>>(
|
auto f0 = std::make_shared<BetweenFactor<Pose2>>(
|
||||||
X(keyS), X(keyT), measurement,
|
X(keyS), X(keyT), measurement, kOpenLoopModel);
|
||||||
noiseModel::Diagonal::Sigmas(Vector3::Ones() * 10));
|
|
||||||
auto f1 = std::make_shared<BetweenFactor<Pose2>>(
|
auto f1 = std::make_shared<BetweenFactor<Pose2>>(
|
||||||
X(keyS), X(keyT), measurement, kPoseNoiseModel);
|
X(keyS), X(keyT), measurement, kPoseNoiseModel);
|
||||||
|
|
||||||
std::vector<NonlinearFactorValuePair> factors{{f0, 0.0}, {f1, 0.0}};
|
std::vector<NonlinearFactorValuePair> factors{
|
||||||
|
{f0, kOpenLoopModel->negLogConstant()},
|
||||||
|
{f1, kPoseNoiseModel->negLogConstant()}};
|
||||||
HybridNonlinearFactor mixtureFactor(l, factors);
|
HybridNonlinearFactor mixtureFactor(l, factors);
|
||||||
return mixtureFactor;
|
return mixtureFactor;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue