gtsam  4.0.0
gtsam
InitializePose3.h
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2 
3  * GTSAM Copyright 2010, Georgia Tech Research Corporation,
4  * Atlanta, Georgia 30332-0415
5  * All Rights Reserved
6  * Authors: Frank Dellaert, et al. (see THANKS for the full author list)
7 
8  * See LICENSE for the license information
9 
10  * -------------------------------------------------------------------------- */
11 
21 #pragma once
22 
26 #include <gtsam/inference/graph.h>
27 #include <gtsam/geometry/Rot3.h>
28 
29 namespace gtsam {
30 
31 typedef std::map<Key, std::vector<size_t> > KeyVectorMap;
32 typedef std::map<Key, Rot3 > KeyRotMap;
33 
34 namespace InitializePose3 {
35 
36 GTSAM_EXPORT GaussianFactorGraph buildLinearOrientationGraph(const NonlinearFactorGraph& g);
37 
38 GTSAM_EXPORT Values normalizeRelaxedRotations(const VectorValues& relaxedRot3);
39 
40 GTSAM_EXPORT Values computeOrientationsChordal(const NonlinearFactorGraph& pose3Graph);
41 
42 GTSAM_EXPORT Values computeOrientationsGradient(const NonlinearFactorGraph& pose3Graph,
43  const Values& givenGuess, size_t maxIter = 10000, const bool setRefFrame = true);
44 
45 GTSAM_EXPORT void createSymbolicGraph(KeyVectorMap& adjEdgesMap, KeyRotMap& factorId2RotMap,
46  const NonlinearFactorGraph& pose3Graph);
47 
48 GTSAM_EXPORT Vector3 gradientTron(const Rot3& R1, const Rot3& R2, const double a, const double b);
49 
50 GTSAM_EXPORT NonlinearFactorGraph buildPose3graph(const NonlinearFactorGraph& graph);
51 
52 GTSAM_EXPORT Values computePoses(NonlinearFactorGraph& pose3graph, Values& initialRot);
53 
54 GTSAM_EXPORT Values initialize(const NonlinearFactorGraph& graph);
55 
56 GTSAM_EXPORT Values initialize(const NonlinearFactorGraph& graph, const Values& givenGuess, bool useGradient = false);
57 
58 } // end of namespace lago
59 } // end of namespace gtsam
3D rotation represented as a rotation matrix or quaternion
Factor Graph Values.
Graph algorithm using boost library.
Factor Graph Constsiting of non-linear factors.
Linear Factor Graph where all factors are Gaussians.
Global functions in a separate testing namespace.
Definition: chartTesting.h:28