Skip to content

Commit

Permalink
docs: explain how to select SE from MOLA-LO launch files
Browse files Browse the repository at this point in the history
  • Loading branch information
jlblancoc committed Jan 2, 2025
1 parent 5a76bb3 commit 7183bf0
Showing 1 changed file with 68 additions and 5 deletions.
73 changes: 68 additions & 5 deletions docs/mola_state_estimators.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ ____________________________________________
1. Theory
---------------------------------
State Estimation (SE) comprises finding the **vehicle kinematic state(s)**
that **best explain** the imperfect, noisy **sensor readings**.

Write me!

What? Why? How?
Expand All @@ -25,28 +28,88 @@ Frames of reference.

|
2. Supported inputs
2. Selecting the S.E. method in launch files
------------------------------------------------
In the context of launching LiDAR odometry (LO) mapping or localization
as explained :ref:`here <launching_mola_lo>`, note that default configurations
include ``StateEstimationSimple`` as the method of choice, but it can be
changed as follows:

.. dropdown:: MOLA-LO with a custom State Estimation configuration
:icon: code-review

Both, all MOLA-LO GUI applications, and the ROS node, rely on MOLA system :ref:`configuration files <yaml_slam_cfg_file>`
to know what MOLA modules to launch and what parameters to pass to them.

- `Read through those files <https://github.com/MOLAorg/mola_lidar_odometry/tree/develop/mola-cli-launchs>`_
to fully understand what is under the hood.
- Default parameter files for estimators are provided under `mola_lidar_odometry/state-estimator-params <https://github.com/MOLAorg/mola_lidar_odometry/tree/develop/state-estimator-params>`_.

So, what follows are just examples that should be considered starting points for user customizations by using custom S.E. parameter files:

.. tab-set::

.. tab-item:: Defaults
:selected:

.. code-block:: bash
# Launch LO-GUI on the KITTI dataset, using the default state estimator:
mola-lo-gui-kitti 04
# Launch MOLA-LO (CLI version) on KITTI, using default state estimator:
mola-lidar-odometry-cli \
-c $(ros2 pkg prefix mola_lidar_odometry)/share/mola_lidar_odometry/pipelines/lidar3d-default.yaml \
--input-kitti-seq 04
.. tab-item:: Custom state estimator configuration

.. code-block:: bash
# Launch LO-GUI on the KITTI dataset, using the smoother state estimator:
MOLA_STATE_ESTIMATOR="mola::state_estimation_smoother::StateEstimationSmoother" \
MOLA_STATE_ESTIMATOR_YAML="$(ros2 pkg prefix mola_lidar_odometry)/share/mola_lidar_odometry/state-estimator-params/state-estimation-smoother.yaml" \
mola-lo-gui-kitti 04
# Launch MOLA-LO (CLI version) on KITTI, using the smoother state estimator:
mola-lidar-odometry-cli \
-c $(ros2 pkg prefix mola_lidar_odometry)/share/mola_lidar_odometry/pipelines/lidar3d-default.yaml \
--state-estimator "mola::state_estimation_smoother::StateEstimationSmoother" \
--load-plugins libmola_state_estimation_smoother.so \
--input-kitti-seq 04
# idem, using non-default state-estimation parameters:
mola-lidar-odometry-cli \
-c $(ros2 pkg prefix mola_lidar_odometry)/share/mola_lidar_odometry/pipelines/lidar3d-default.yaml \
--state-estimator "mola::state_estimation_smoother::StateEstimationSmoother" \
--state-estimator-param-file $(ros2 pkg prefix mola_lidar_odometry)/share/mola_lidar_odometry/state-estimator-params/state-estimation-smoother.yaml \
--load-plugins libmola_state_estimation_smoother.so \
--input-kitti-seq 04
|
3. Supported inputs
---------------------------------
Write me!

|
3. C++ generic API
4. C++ generic API
---------------------------------
Write me!

|
4. Implementations
5. Implementations
---------------------------------

4.1. Simple estimator
5.1. Simple estimator
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Write me!

|
4.2. Factor graph smoother
5.2. Factor graph smoother
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Write me!

Expand Down

0 comments on commit 7183bf0

Please sign in to comment.