Skip to content

Latest commit

 

History

History
84 lines (65 loc) · 4.37 KB

README.md

File metadata and controls

84 lines (65 loc) · 4.37 KB

Basalt

Fork of https://gitlab.com/VladyslavUsenko/basalt.git

For more information see https://vision.in.tum.de/research/vslam/basalt

teaser

This project contains tools for:

  • Camera, IMU and motion capture calibration.
  • Visual-inertial odometry and mapping.
  • Simulated environment to test different components of the system.

Some reusable components of the system are available as a separate header-only library (Fork of https://gitlab.com/VladyslavUsenko/basalt-headers).

Related Publications

Visual-Inertial Odometry and Mapping:

Calibration (explains implemented camera models):

Calibration (demonstrates how these tools can be used for dataset calibration):

  • The TUM VI Benchmark for Evaluating Visual-Inertial Odometry, D. Schubert, T. Goll, N. Demmel, V. Usenko, J. Stückler, D. Cremers, In 2018 International Conference on Intelligent Robots and Systems (IROS), [DOI:10.1109/IROS.2018.8593419], [arXiv:1804.06120].

Calibration (describes B-spline trajectory representation used in camera-IMU calibration):

Optimization (describes square-root optimization and marginalization used in VIO/VO):

  • Square Root Marginalization for Sliding-Window Bundle Adjustment, N. Demmel, D. Schubert, C. Sommer, D. Cremers, V. Usenko, In 2021 International Conference on Computer Vision (ICCV), [arXiv:2109.02182]

Installation

Clone the project's source code:

git clone --recursive https://github.com/RoblabWh/basalt
cd basalt

Docker Container

Build the Docker image and run a container:

docker build -t basalt .
xhost +local:
docker run -it --rm --env=DISPLAY --env=QT_X11_NO_MITSHM=1 --volume=/tmp/.X11-unix:/tmp/.X11-unix:rw --volume="$HOME":/home/ubuntu basalt

Building a Debian package

The default build target is the runnable runtime image. To generate a .deb package instead, build the deb target and export it to a local out/ directory:

docker build --target deb --output type=local,dest=. .

This produces out/basalt_*.deb (dependencies are resolved automatically via dpkg-shlibdeps). Alternatively, docker build --target package -t basalt-pkg . builds a full image containing the .deb at /basalt/build/.

Source installation for Ubuntu >= 18.04 and macOS >= 10.14 (Mojave)

Build and install the project. For macOS, you should have Homebrew installed.

./scripts/install_deps.sh
cmake -B build -G Ninja -D CMAKE_BUILD_TYPE=Release
cmake --build build --parallel $(nproc)
sudo cmake --install build

Usage

Device support

Development

Licence

The code is provided under a BSD 3-clause license. See the LICENSE file for details. Note also the different licenses of thirdparty submodules.

Some improvements are ported back from the fork granite (MIT license).