You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/concepts/using_manifolds.md
+4-3Lines changed: 4 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -93,14 +93,15 @@ The most popular Manifolds used in Caesar.jl related packages are:
93
93
94
94
### Creating a new Manifold
95
95
96
-
JuliaManifolds.jl is designed to make [it as easy as possible to define your own manifold and then get all the benefits of the Manifolds.jl ecosystem](https://juliamanifolds.github.io/Manifolds.jl/stable/examples/manifold.html). Follow the documentation there to make your own manifold, which can then readily be used with all the features of both JuliaManifolds as well as the Caesar.jl related packages.
96
+
JuliaManifolds.jl is designed to make [it as easy as possible to define your own manifold and then get all the benefits of the Manifolds.jl ecosystem](https://juliamanifolds.github.io/ManifoldsBase.jl/stable/example.html). Follow the documentation there to make your own manifold, which can then readily be used with all the features of both JuliaManifolds as well as the Caesar.jl related packages.
97
97
98
98
## [Answers to 7 Questions](@id seven_mani_answers)
99
99
100
100
### Q1) What are Point, Tangents, Coordinates
101
101
102
102
A manifold ``\mathcal{M}`` is a collection of points that together create the given space. **Points** are like round sprinkles on the donut. The representation of points will vary from manifold to manifold. Sometimes it is even possible to have different representations for the same point on a manifold. These are usually denoted as ``p``.
103
-
Tangent **vectors** (we prefer _tangents_ for clarity) is a vector ``X`` that emanates from a point on a manifold. A vector lives in the tangent space of the manifold, a locally flat region around a point ``X\in T_p \mathcal{M}``. On the donut, imagine a rod-shaped sprinkle stuck along the tangent of the surface at a particular point ``p``. The **tangent space** is the collection of all possible tangents at ``p``.
103
+
104
+
Tangent **vectors** (we prefer _tangents_ for clarity) is a vector ``X`` that emanates from a point on a manifold tangential to the manifold curvature. A vector lives in the tangent space of the manifold, a locally flat region around a point ``X\in T_p \mathcal{M}``. On the donut, imagine a rod-shaped sprinkle stuck along the tangent of the surface at a particular point ``p``. The **tangent space** is the collection of all possible tangents at ``p``.
104
105
105
106
**Coordinates** are a user defined property that uses the Euclidean nature of the tangent space at point ``p`` to operate as a regular linear space. Coordinates are just a list of the indepedent coordinate dimensions of the tangent space values collected together. Read this part carefully, as it can easily be confused with a conventional tangent vector in a regular Euclidean space.
106
107
@@ -116,7 +117,7 @@ Multiple logmap interpretations exist, for example in the case of ``SpecialEucli
116
117
117
118
### Q3) What is the Exponential map
118
119
119
-
The exponential map does the opposite of the logarithm. Image a tangent vector ``X`` emanating from point ``p``. The length and direction of ``X`` can be wrapped onto the curvature of the manifold to form a line on the manifold surface.
120
+
The exponential map does the opposite of the logarithm. Imagine a tangent vector ``X`` emanating from point ``p``. The length and direction of ``X`` can be wrapped onto the curvature of the manifold to form a line on the manifold surface.
120
121
### Q4) What does `vee`/`hat` do
121
122
122
123
`vee` is an operation that converts a tangent vector representation into a coordinate representation. For example Lie algebra elements are tangent vector elements, so `vee([0 -w; w 0]) = w`. And visa versa for `hat(w) = [0 -w; w 0]`, which goes from coordinates to tangent vectors.
Copy file name to clipboardExpand all lines: docs/src/examples/using_images.md
+16-2Lines changed: 16 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,6 @@
1
-
# Images and AprilTags
1
+
# Images and Fiducials
2
+
3
+
## AprilTags
2
4
3
5
One common use in SLAM is [AprilTags.jl](https://github.com/JuliaRobotics/AprilTags.jl). Please see that repo for documentation on detecting tags in images. Note that Caesar.jl has a few built in tools for working with [Images.jl](https://github.com/JuliaImages/Images.jl) too.
4
6
@@ -12,5 +14,17 @@ Which immediately enables a new factor specifically developed for using AprilTag
12
14
Caesar.Pose2AprilTag4Corners
13
15
```
14
16
17
+
## Using Images.jl
18
+
19
+
The Caesar.jl ecosystem support use of the [JuliaImages/Images.jl](https://github.com/JuliaImages/Images.jl) suite of packages. Please see documentation there for the wealth of features implemented.
Copy file name to clipboardExpand all lines: docs/src/refs/literature.md
+11-1Lines changed: 11 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -58,7 +58,17 @@ Newly created page to list related references and additional literature pertaini
58
58
59
59
[2.14] Arnborg, S., Corneil, D.G. and Proskurowski, A., 1987. ["Complexity of finding embeddings in a k-tree"](https://epubs.siam.org/doi/pdf/10.1137/0608024). SIAM Journal on Algebraic Discrete Methods, 8(2), pp.277-284.
60
60
61
-
[2.15] Sola, J., Deray, J. and Atchuthan, D., 2018. ["A micro Lie theory for state estimation in robotics". arXiv preprint arXiv:1812.01537](https://arxiv.org/pdf/1812.01537), and [tech report](https://upcommons.upc.edu/bitstream/handle/2117/179757/2089-A-micro-Lie-theory-for-state-estimation-in-robotics%20(3).pdf).
61
+
[2.15a] Sola, J., Deray, J. and Atchuthan, D., 2018. ["A micro Lie theory for state estimation in robotics". arXiv preprint arXiv:1812.01537](https://arxiv.org/pdf/1812.01537), and [tech report](https://upcommons.upc.edu/bitstream/handle/2117/179757/2089-A-micro-Lie-theory-for-state-estimation-in-robotics%20(3).pdf).
62
+
63
+
[2.15b] Delleart F., 2012. [Lie Groups for Beginners](https://raw.githubusercontent.com/devbharat/gtsam/master/doc/LieGroups.pdf).
64
+
65
+
[2.15c] Eade E., 2017 [Lie Groups for 2D and 3D Transformations](https://ethaneade.com/lie.pdf).
66
+
67
+
[2.15d] Chirikjian, G.S., 2015. [Partial bi-invariance of SE(3) metrics](https://rpk.lcsr.jhu.edu/wp-content/uploads/2017/08/Partial-Bi-Invariance-of-SE3-Metrics1.pdf). Journal of Computing and Information Science in Engineering, 15(1).
68
+
69
+
[2.15e] Pennec, X. and Lorenzi, M., 2020. [Beyond Riemannian geometry: The affine connection setting for transformation groups](https://hal.inria.fr/hal-02342137/document). In Riemannian Geometric Statistics in Medical Image Analysis (pp. 169-229). Academic Press.
70
+
71
+
[2.15f] Žefran, M., Kumar, V. and Croke, C., 1996, August. [Choice of Riemannian metrics for rigid body kinematics](https://www.cis.upenn.edu/~cis610/SE3-Croke-Kumar.pdf). In International Design Engineering Technical Conferences and Computers and Information in Engineering Conference (Vol. 97584, p. V02BT02A030). American Society of Mechanical Engineers.
62
72
63
73
[2.16] Kaess, M. and Dellaert, F., 2009. [Covariance recovery from a square root information matrix for data association](https://apps.dtic.mil/dtic/tr/fulltext/u2/a537233.pdf). Robotics and autonomous systems, 57(12), pp.1198-1210.
0 commit comments