This repository implements a ROS wrapper for the DPGO library. Example results on the Sphere2500 dataset:
Inside a catkin workspace, please clone the following repositories. Use the default branch unless mentioned otherwise below.
- catkin_simple
- pose_graph_tools: please use the
feature/multirobot
branch. - dpgo: core C++ library for distributed PGO.
- dpgo_ros: this repository.
Build with catkin:
catkin build
To run a demo:
# source workspace
source ~/catkin_ws/devel/setup.bash
# run demo on example g2o dataset
roslaunch dpgo_ros DPGO.launch
If you find this library useful, please consider citing our papers:
@ARTICLE{Tian2021Distributed,
author={Tian, Yulun and Khosoussi, Kasra and Rosen, David M. and How, Jonathan P.},
journal={IEEE Transactions on Robotics},
title={Distributed Certifiably Correct Pose-Graph Optimization},
year={2021},
volume={},
number={},
pages={1-20},
doi={10.1109/TRO.2021.3072346}}
@ARTICLE{Tian2020Asynchronous,
author={Tian, Yulun and Koppel, Alec and Bedi, Amrit Singh and How, Jonathan P.},
journal={IEEE Robotics and Automation Letters},
title={Asynchronous and Parallel Distributed Pose Graph Optimization},
year={2020},
volume={5},
number={4},
pages={5819-5826},
doi={10.1109/LRA.2020.3010216}}