Understanding Micro lie theory and using manif for SE(2) and SE(3) SAM: A quick hands on tutorial by Shubodh

Resources

  1. Paper: A micro Lie theory for state estimation in robotics

    A micro Lie theory for state estimation in robotics

  2. Manif: A small c++11 header-only library for Lie theory.

  3. video lecture, longer video

Note

There is a lot of mathematical theory behind each of the following concept covered below. However, because of the way manif is beautifully written, it is actually sufficient if we understand what is going on at abstract level. For the same, I have made notes below.

Although I tried my best to make the below notes as comprehensive and clear as possible (while maintaining the brevity), it could be possible that something isn't clear. In such cases, you can comment there, I will make it clear. Keep se2_sam.cpp and paper open alongside this page and take a look at them but if it gets very time consuming (it took me 5-6 reads to understand 90% of it along with multiple discussions with Karnik Ram), take advantage of my already spent effort and comment on this page so that I can guide you further.

How to read this page

I've written this page in the context of SE(2) and SE(3) SAM. In the Theory section, I borrowed examples from Application section. So skimming through the entire page will give you some context instead of trying to understand any particular sub-section in isolation. Therefore:

Summary

This article provides a hands-on tutorial on Lie theory and its application in 2D/3D SLAM using the manif library. It begins with an introduction to Lie groups and algebras, explaining their relevance in robotics and state estimation. The tutorial then delves into the practical aspects of using manif for SE(2) and SE(3) Smoothing and Mapping (SAM), covering topics such as group actions, tangent spaces, and calculus on manifold spaces. The article concludes by highlighting the simplicity of extending 2D SLAM concepts to 3D using the same mathematical framework, emphasizing the power of Lie theory abstraction in robotics applications.