https://github.com/ethz-asl/mav_gtsam_estimator
A GTSAM based state estimation framework.
https://github.com/ethz-asl/mav_gtsam_estimator
Last synced: 3 months ago
JSON representation
A GTSAM based state estimation framework.
- Host: GitHub
- URL: https://github.com/ethz-asl/mav_gtsam_estimator
- Owner: ethz-asl
- License: mit
- Created: 2020-07-30T09:17:34.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-09-26T22:32:20.000Z (almost 3 years ago)
- Last Synced: 2025-03-25T08:23:42.824Z (3 months ago)
- Language: C++
- Size: 223 KB
- Stars: 44
- Watchers: 3
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# mav_state_estimation
This package implements a GTSAM based state estimation framework.At the moment it supports
- IMU
- GNSS position measurements
- GNSS moving baseline measurementsPlease cite our [accompanying publication](https://arxiv.org/pdf/2106.10108.pdf) 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](http://wiki.ros.org/melodic/Installation/Ubuntu).Add [GTSAM](https://gtsam.org/get_started/) 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](https://github.com/ethz-asl/ethz_piksi_ros/tree/master/piksi_multi_cpp) within the same workspace.
Download this package.
```
cd ~/catkin_ws/src
git clone [email protected]:ethz-asl/mav_gtsam_estimator.git
```Install all [PPA dependencies](install/prepare-jenkins-slave.sh).
```
./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](https://help.github.com/en/enterprise/2.16/user/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) use [dependencies_https.rosinstall](install/dependencies_https.rosinstall).
```
wstool init
wstool merge mav_state_estimation/install/dependencies.rosinstall
wstool update
```Finally, build the workspace.
```
catkin build
```