2016-06-11 08:48:42 +08:00
|
|
|
NonlinearFactorGraph graph;
|
2019-02-11 22:39:48 +08:00
|
|
|
noiseModel::Diagonal::shared_ptr priorNoise =
|
2016-06-16 01:18:23 +08:00
|
|
|
noiseModel::Diagonal::Sigmas(Vector3(0.3, 0.3, 0.1));
|
2020-04-13 01:10:09 +08:00
|
|
|
graph.addPrior(1, Pose2(0, 0, 0), priorNoise);
|
2016-06-11 08:48:42 +08:00
|
|
|
|
|
|
|
// Add odometry factors
|
2019-02-11 22:39:48 +08:00
|
|
|
noiseModel::Diagonal::shared_ptr model =
|
2016-06-16 01:18:23 +08:00
|
|
|
noiseModel::Diagonal::Sigmas(Vector3(0.2, 0.2, 0.1));
|
2016-06-11 08:48:42 +08:00
|
|
|
graph.add(BetweenFactor<Pose2>(1, 2, Pose2(2, 0, 0 ), model));
|
|
|
|
graph.add(BetweenFactor<Pose2>(2, 3, Pose2(2, 0, M_PI_2), model));
|
|
|
|
graph.add(BetweenFactor<Pose2>(3, 4, Pose2(2, 0, M_PI_2), model));
|
|
|
|
graph.add(BetweenFactor<Pose2>(4, 5, Pose2(2, 0, M_PI_2), model));
|
|
|
|
|
2016-06-16 01:18:23 +08:00
|
|
|
// Add the loop closure constraint
|
2016-06-11 08:48:42 +08:00
|
|
|
graph.add(BetweenFactor<Pose2>(5, 2, Pose2(2, 0, M_PI_2), model));
|
|
|
|
|