Skip to content

ethz-asl/mav_gtsam_estimator

Repository files navigation

mav_state_estimation

This package implements a GTSAM based state estimation framework.

At the moment it supports

  • IMU
  • GNSS position measurements
  • GNSS moving baseline measurements

Please cite our accompanying publication when using it.

Bähnemann, Rik, et al.
"Under the Sand: Navigation and Localization of a Small Unmanned Aerial Vehicle for Landmine Detection with Ground Penetrating Synthetic Aperture Radar"
Field Robotics, Vol. 2, (2022), 1028–1067.

Installation on Ubuntu 18.04 and ROS melodic

Install ROS melodic.

Add GTSAM PPA repository:

sudo add-apt-repository ppa:borglab/gtsam-release-4.0

Create a merged catkin workspace.

sudo apt install -y python-catkin-tools
cd ~
mkdir -p catkin_ws/src
cd catkin_ws
catkin init
catkin config --extend /opt/ros/melodic
catkin config --merge-devel

Install piksi_multi_cpp within the same workspace.

Download this package.

cd ~/catkin_ws/src
git clone git@github.com:ethz-asl/mav_gtsam_estimator.git

Install all PPA dependencies.

./mav_state_estimation/install/prepare-jenkins-slave.sh

Next download all individual ROS package dependencies. Note: If you have not setup SSH keys in GitHub use dependencies_https.rosinstall.

wstool init
wstool merge mav_state_estimation/install/dependencies.rosinstall
wstool update

Finally, build the workspace.

catkin build