Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

FLANN - Fast Library for Approximate Nearest Neighbors

FLANN is a library for performing fast approximate nearest neighbor searches in high dimensional spaces. It contains a collection of algorithms we found to work best for nearest neighbor search and a system for automatically choosing the best algorithm and optimum parameters depending on the dataset. FLANN is written in C++ and contains bindings for the following languages: C, MATLAB, Python, and Ruby.


Check FLANN web page here.

Documentation on how to use the library can be found in the doc/manual.pdf file included in the release archives.

More information and experimental results can be found in the following paper:

  • Marius Muja and David G. Lowe, "Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration", in International Conference on Computer Vision Theory and Applications (VISAPP'09), 2009 (PDF) (BibTex)

Getting FLANN

If you want to try out the latest changes or contribute to FLANN, then it's recommended that you checkout the git source repository: git clone git://

If you just want to browse the repository, you can do so by going here.

Conditions of use

FLANN is distributed under the terms of the BSD License.

Bug reporting

Please report bugs or feature requests using github's issue tracker.