Metadata-Version: 2.1
Name: kapture-localization
Version: 0.1.3
Summary: kapture-localization: localization pipelines based on kapture.
Home-page: https://github.com/naver/kapture-localization/
Author: naverlabs
Author-email: kapture@naverlabs.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: kapture (<1.2.0,>=1.1.2)
Requires-Dist: numpy (>=1.16)
Requires-Dist: numpy-quaternion
Requires-Dist: numba
Requires-Dist: cvxpy (>=1.1.6)
Requires-Dist: torch (>=1.4.0)
Requires-Dist: tabulate (>=0.8.7)
Requires-Dist: opencv-python
Provides-Extra: dev
Requires-Dist: pytest ; extra == 'dev'

Overview
========

kapture-localization is a **toolbox** in which you will find
implementations for various localization related algorithms. It strongly
relies on the [kapture](https://github.com/naver/kapture) format for
data representation and manipulation.

The localization algorithms include:

1.  **mapping**,

2.  **localization**, and

3.  **benchmarking** (image retrieval for visual localization).

It works on Ubuntu, Windows, and MacOS.

Structure
=========

The directories are organised as follow:

    ├── kapture_localization/  # package (library)
    ├── pipeline/              # main programs executing all steps of the localization pipelines
    ├── samples/               # some sample data
    ├── tests/                 # unit tests
    └── tools/                 # sub programs involved in the pipeline

The *kapture-localization* toolbox is available as:

-   Python **package** (`kapture_localization/`),

-   Python **executable scripts** (`pipeline/` & `tools/`).

There are 3 pipelines available:

1.  mapping,

2.  localization, and

3.  image retrieval benchmark (global sfm, local sfm, pose
    approximation).

Installation
============

It can be installed using docker, pip or from manually from source code.
After installing python (&gt;=3.6) and COLMAP (&gt;=3.6), this toolbox
can be installed with:

    pip install kapture-localization

See [doc/installation.adoc](doc/installation.adoc) for more details.

Tutorial
========

See [doc/tutorial](doc/tutorial.adoc) for a short introduction and
examples of the provided processing pipelines.

Contributing
============

There are many ways to contribute to the *kapture-localization* project:

-   provide feedback and suggestion,

-   submit bug reports in the project bug tracker,

-   implement a feature or bug-fix for an outstanding issue,

-   provide scripts to create data in kapture format (e.g. local/global
    feature extraction),

-   propose a new feature and implement it.

If you wish to contribute, please refer to the
[CONTRIBUTING](https://github.com/naver/kapture/blob/main/CONTRIBUTING.adoc)
page.

License
=======

Software license is detailed in the [LICENSE](LICENSE) file.

References
==========

If you use this work for your research, please cite the respective
paper(s):

**Structure-based localization or kapture format.**

    @misc{kapture2020,
          title={Robust Image Retrieval-based Visual Localization using Kapture},
          author={Martin Humenberger and Yohann Cabon and Nicolas Guerin and Julien Morat and Jérôme Revaud and Philippe Rerole and Noé Pion and Cesar de Souza and Vincent Leroy and Gabriela Csurka},
          year={2020},
          eprint={2007.13867},
          archivePrefix={arXiv},
          primaryClass={cs.CV}
    }

**Image retrieval benchmark.**

    @inproceedings{benchmarking_ir3DV2020,
          title={Benchmarking Image Retrieval for Visual Localization},
          author={Noé Pion, Martin Humenberger, Gabriela Csurka, Yohann Cabon, Torsten Sattler},
          year={2020},
          booktitle={International Conference on 3D Vision}
    }


