Files
vio/CPU_version
2021-05-25 11:37:45 +02:00
..
2021-05-08 17:26:27 +02:00
2021-05-05 11:19:06 +02:00
2021-05-05 12:29:29 +02:00
2021-05-11 10:38:13 +02:00
2021-05-05 11:19:06 +02:00
2021-05-05 11:19:06 +02:00
2021-05-05 11:19:06 +02:00
2021-05-25 11:37:45 +02:00

SVO

This code implements a semi-direct monocular visual odometry pipeline which has been integrated with GTSAM to infused IMU as well.

Paper svo: http://rpg.ifi.uzh.ch/docs/ICRA14_Forster.pdf Paper Svo+GTSAM: https://arxiv.org/abs/1512.02363

Disclaimer

SVO has been tested under ROS Groovy, Hydro and Indigo with Ubuntu 12.04, 13.04 and 14.04. This is research code, any fitness for a particular purpose is disclaimed.

Licence

The source code is released under a GPLv3 licence. A closed-source professional edition is available for commercial purposes. In this case, please contact the authors for further info.

Citing

If you use SVO in an academic context, please cite the following publication:

@inproceedings{Forster2014ICRA,
  author = {Forster, Christian and Pizzoli, Matia and Scaramuzza, Davide},
  title = {{SVO}: Fast Semi-Direct Monocular Visual Odometry},
  booktitle = {IEEE International Conference on Robotics and Automation (ICRA)},
  year = {2014}
}

Documentation

The API is documented here: http://uzh-rpg.github.io/rpg_svo/doc/ The GTSAM documentation https://gtsam.org/tutorials/

Instructions

First install gtsam library => https://github.com/borglab/gtsam

Then follow the SVO instalation

See the Wiki for more instructions. https://github.com/uzh-rpg/rpg_svo/wiki and https://gtsam.org/get_started/

Contributing

You are very welcome to contribute to SVO by opening a pull request via Github. I try to follow the ROS C++ style guide http://wiki.ros.org/CppStyleGuide

Setting

You can edit the camera position in the launch file as (The IMU frame will rotate to align with camera frame based on the follwoing Eular angles): CPU_version/vio_svo/launch/Px30.launch

<!-- IMU 2 Camera Frame -->
<param name="init_rx" value="1.88496" /><!--  90 + 18 -->
<param name="init_ry" value="0.0" /> <!--  90 -->
<param name="init_rz" value="0.0" /> <!-- 0  -->

You can also edit the algorithm parameters in the follwoing file, please look at the config file to underestand the meaning of the parameters (CPU_version/svo/include/svo/config.h)

CPU_version/vio_svo/param/vo_fast.yaml