Method for merging graphs from multiple robots where the scales between them are unknown.
- Modified version of GTSAM with python bindings (hosted at https://github.mit.edu/vnav-project/gtsam)
- numpy
- numpy-quaternion
- sophuspy
- scipy
- numba
- tqdm
- fmc in
find_max_clique/fmc
Update your PYTHONPATH environment variable to include the root of the project
export PYTHONPATH=${PYTHONPATH}:$ROOT
where $ROOT
is the full path to the root of this repo.
cd process_g2o
python3 convert_to_multi.py ../datasets/manhattanOlson3500.g2o output.g2o
This will create a multi-robot g2o called output.g2o
from the manhattanOlson3500.g2o
dataset.
python3 multi_robot_optimization.py process_g2o/output.g2o output.g2o
This will perform the pose graph optimization on the multi-robot graph in process_g2o/output.g2o
, and output as output.g2o
in current directory.
python3 build_adjacency.py datasets/city10000.g2o
where input.g2o
is a multi-robot g2o file, and output.g2o
will be the optimized one.