File: index.rst

package info (click to toggle)
manif 0.0.5-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,576 kB
  • sloc: cpp: 11,789; ansic: 8,774; python: 2,158; sh: 24; makefile: 23; xml: 21
file content (83 lines) | stat: -rw-r--r-- 2,790 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
.. Automatically generated from Quick-start.md with m2r
.. Manually patched


Quick start
===========

.. contents:: Table of Contents
    :depth: 3

Installation
------------

Dependencies
^^^^^^^^^^^^


*
  Eigen 3 :


  *
    Linux ( Ubuntu and similar )

    .. code-block:: bash

         apt-get install libeigen3-dev

  *
    OS X

    .. code-block:: bash

         brew install eigen

*
  `lt::optional <https://github.com/TartanLlama/optional>`_ : included in the ``external`` folder


From source
^^^^^^^^^^^

To generate ``manif`` Python bindings run,

.. code-block:: bash

   git clone https://github.com/artivis/manif.git
   cd manif
   python3 -m pip install .

Use manifpy in your project
---------------------------

.. code-block:: python

   from manifpy import SE3

   ...

   state = SE3.Identity()

   ...

Tutorials and application demos
-------------------------------

We provide some self-contained and self-explained executables implementing some real problems.
Their source code is located in ``manif/examples/``.
These demos are:

* `se2_localization.py <https://github.com/artivis/manif/tree/devel/examples/se2_localization.py>`_ : 2D robot localization based on fixed landmarks using SE2 as robot poses. This implements the example V.A in the paper.
* `se3_localization.py <https://github.com/artivis/manif/tree/devel/examples/se3_localization.py>`_ : 3D robot localization based on fixed landmarks using SE3 as robot poses. This re-implements the example above but in 3D.
* `se2_sam.py <https://github.com/artivis/manif/tree/devel/examples/se2_sam.py>`_ : 2D smoothing and mapping (SAM) with simultaneous estimation of robot poses and landmark locations, based on SE2 robot poses. This implements a the example V.B in the paper.
* `se3_sam.py <https://github.com/artivis/manif/tree/devel/examples/se3_sam.py>`_ : 3D smoothing and mapping (SAM) with simultaneous estimation of robot poses and landmark locations, based on SE3 robot poses. This implements a 3D version of the example V.B in the paper.
* `se3_sam_selfcalib.py <https://github.com/artivis/manif/tree/devel/examples/se3_sam_selfcalib.py>`_ : 3D smoothing and mapping (SAM) with self-calibration, with simultaneous estimation of robot poses, landmark locations and sensor parameters, based on SE3 robot poses. This implements a 3D version of the example V.C in the paper.
* `se_2_3_localization.py <https://github.com/artivis/manif/tree/devel/examples/se_2_3_localization.py>`_ : A strap down IMU model based 3D robot localization, with measurements of fixed landmarks, using SE_2_3 as extended robot poses (translation, rotation and linear velocity).

To run a demo, simply go to the ``manif/examples/`` folder and run,

.. code-block:: bash

   cd manif/examples
   python3 se2_localization.py