Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mergarsal/FastCertRelPose
Fast and robust certifiable relative pose estimation
https://github.com/mergarsal/FastCertRelPose
Last synced: 2 days ago
JSON representation
Fast and robust certifiable relative pose estimation
- Host: GitHub
- URL: https://github.com/mergarsal/FastCertRelPose
- Owner: mergarsal
- License: gpl-3.0
- Created: 2021-01-19T12:37:39.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2023-04-22T11:51:59.000Z (over 1 year ago)
- Last Synced: 2024-08-04T00:12:38.771Z (3 months ago)
- Language: C++
- Size: 128 KB
- Stars: 55
- Watchers: 6
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fast and Robust Relative Pose Estimation for Calibrated Cameras
This repository contains the code
for the relative pose estimation
between two central and calibrated cameras
for the [paper](http://arxiv.org/abs/2101.08524) [1].**Authors:** [Mercedes Garcia-Salguero](http://mapir.uma.es/mapirwebsite/index.php/people/290), [Javier Gonzalez-Jimenez](http://mapir.isa.uma.es/mapirwebsite/index.php/people/95-javier-gonzalez-jimenez)
**License:** [GPLv3](https://raw.githubusercontent.com/mergarsal/FastCertRelPose/main/LICENSE)
If you use this code for your research, please cite:
```
@misc{garciasalguero2021fast,
title={Fast and Robust Certifiable Estimation of the Relative Pose Between Two Calibrated Cameras},
author={Mercedes Garcia-Salguero and Javier Gonzalez-Jimenez},
year={2021},
eprint={2101.08524},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
```Some parts of this repository are based on previous works:
1. Matlab & python bindings from [TEASER++](https://arxiv.org/pdf/2001.07715.pdf)```
@article{yang2020teaser,
title={Teaser: Fast and certifiable point cloud registration},
author={Yang, Heng and Shi, Jingnan and Carlone, Luca},
journal={arXiv preprint arXiv:2001.07715},
year={2020}
}
```
2. Scene generation from [opengv](https://github.com/laurentkneip/opengv.git)## Dependences
* Eigen
```
sudo apt install libeigen3-dev
```* Optimization (own fork)
```
git clone https://github.com/mergarsal/Optimization.git
```
* GNCSO
```
git clone --recursive https://github.com/mergarsal/GNCSO.git
```* OpenGV
```
git clone https://github.com/laurentkneip/opengv.git
```## Build
```
git clone --recursive https://github.com/mergarsal/FastCertRelPose.git
cd GNCSOmkdir build & cd build
cmake ..
make -jX
```
The compiled examples should be inside the `bin` directory. Run:
```
./bin/example_essential_matrix
```
## Install
In `build` folder:
```
sudo make install
```We also provide the uninstall script:
```
sudo make uninstall
```## How to use the library in your project
See the example in the folder `example_install`
for the basic elements.
1. In your CMakeLists.txt, add the dependences:
```
find_package(gncso REQUIRED)
find_package(opengv REQUIRED)
find_package(Essential REQUIRED)
```2. For your executable, add the library in
```
target_link_libraries(XXX Essential opengv gncso)
```