Skip to content

Mobile Robotics Lab. A Cpp-Py library for 3D state estimation

License

Notifications You must be signed in to change notification settings

MobileRoboticsSkoltech/mrob

Folders and files

NameName
Last commit message
Last commit date

Latest commit

25bf422 · Apr 20, 2021
Apr 20, 2021
Apr 20, 2021
Sep 23, 2020
Sep 22, 2020
Apr 20, 2021
Apr 20, 2021
Apr 20, 2021
Apr 20, 2021
Apr 20, 2021
Sep 22, 2020
Sep 22, 2020
Sep 28, 2020
Nov 30, 2020
Apr 20, 2021
Apr 20, 2021
Apr 20, 2021
Apr 20, 2021

Repository files navigation

MROB: Mobile Robotics library

The Skoltech Mobile Robotics library (mrob) is our common framework for implementing our robotics research and projects. It includes a core set of functionalities such as geometric transformations (SE3), factor graphs for general state estimation, optimization, 3D point cloud registration and more to come.

The general structure for the algorithms implemented:

  • common: common matrix definitions and typedefs.
  • geometry: Geometric transformations, mostly Rotations and Rigid Body Transformations in 3D.
  • Fgraph: Factor Graphs for state estimation
  • PCReg: Point Cloud Registration.
  • mrobPy Python bindings (using pybind11) for the above methods.

Python Examples

The library is mainly designed to run in python, that is, algorithms are written in cpp and bind to python for general purpose use. We provide some examples in python_examples for more details.

Dependencies

The present library is meant to be a self-contained library. However, there are few dependencies:

  • C++'14
  • CMake
  • Eigen (included as a submodule)
  • pybind11 (included as a submodule)
    • python3-distutils
    • python3-dev

This is the list of required packages to install: sudo apt install build-essential cmake python3-distutils python3-dev

Repository

Standard github cloning, adding the recursive term for submodules.

git clone --recursive [email protected]:MobileRoboticsSkoltech/mrob.git

If there was ever a submodule update (not frequently) the command to use:

git submodule update --recursive

Installation

cd mrob
mkdir build
cd build
cmake ..
make -j

License

Apache-2.0 License