快速近似最近邻搜索库 FLANN
来源:互联网 发布:sql中两个select语句 编辑:程序博客网 时间:2024/06/08 06:03
被opencv 的flann伤了心太慢了,用原始的flann库快多了
What is FLANN?
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 andPython.
News
- (14 December 2012) Version 1.8.0 is out bringing incremental addition/reamoval of points to/from indexes
- (20 December 2011) Version 1.7.0 is out bringing two new index types and several other improvements.
- You can find binary installers for FLANN on the Point Cloud Library project page. Thanks to the PCL developers!
- Mac OS X users can install flann though MacPorts (thanks to Mark Moll for maintaining the Portfile)
- New release introducing an easier way to use custom distances, kd-tree implementation optimized for low dimensionality search and experimental MPI support
- New release introducing new C++ templated API, thread-safe search, save/load of indexes and more.
- The FLANN license was changed from LGPL to BSD.
How fast is it?
In our experiments we have found FLANN to be about one order of magnitude faster on many datasets (in query time), than previously available approximate nearest neighbor search software.
Publications
More information and experimental results can be found in the following papers:
- Marius Muja and David G. Lowe: "Scalable Nearest Neighbor Algorithms for High Dimensional Data". Pattern Analysis and Machine Intelligence (PAMI), Vol. 36, 2014. [PDF] [BibTeX]
- Marius Muja and David G. Lowe: "Fast Matching of Binary Features". Conference on Computer and Robot Vision (CRV) 2012. [PDF] [BibTeX]
- 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
The latest version of FLANN can be downloaded from here:
- Version 1.8.4 (15 January 2013)
Changes from 1.8.3:- Fixed memory leak and OpenMP compilation under MSVC
User manual
Changelog
- Version 1.8.0 (14 December 2012)
Changes:- incremental addition and removal of points to/from indexes
- more flexible index serialization
- replaced TBB multi-threading support with OpenMP
- bug fixes
- NOTE: Due to changes in the library, the on-disk format of the saved indexes has changed and it is not possible to load indexes saved with an older version of the library.
If you don't want to compile FLANN from source you can try the binary installers prepared by the Point Cloud Library (PCL) project here (Ubuntu/Debian PPA, Windows Installers and Mac OS X Universal Binary).
If you want to try out the latest changes or contribute to FLANN, then it's recommended that you checkout theGit source repository: git clone git://github.com/mariusmuja/flann.git
If you just want to browse the repository, you can do so by going here.
System requirements
The FLANN library was developed and tested under Linux. A C++ compiler is required to build FLANN. The python bindings require the presence of the Numerical Python (numpy) package.
Conditions of use
FLANN is distributed under the terms of the BSD License.
Questions/Comments
If you have any questions or comments please email them to: mariusm@cs.ubc.ca.
Please report bugs or feature requests using github's issue tracker.
from: http://www.cs.ubc.ca/research/flann/
- 快速近似最近邻搜索库 FLANN
- 快速近似最近邻搜索库 FLANN - Fast Library for Approximate Nearest Neighbors
- 近似最近邻搜索方法FLANN简介
- flann库的最近邻搜索
- 《PCL点云库学习&VS2010(X64)》Part 37 FLANN——快速最近邻搜索库
- 学习OpenCV——Surf(特征点篇)&flann快速最近邻搜索算法
- 高维数据的快速最近邻算法FLANN
- 高维数据的快速最近邻算法FLANN
- 近似最近邻搜索ANN(Approximate Nearest Neighbor)
- 乘积量化( Product Quantization )近似最近邻搜索 分享
- annoy 源码阅读 (近似最近邻搜索 ANN)
- 近似最近邻算法总结
- OpenCV的最近邻开源库FLANN
- OpenCV的最近邻开源库FLANN
- 近似最近邻搜索程序代码 ANN: A Library for Approximate Nearest Neighbor Searching
- 近似最近邻问题相关算法总结
- 基础知识(六)KD-Tree快速最近邻搜索
- 【计算机视觉】OpenCV的最近邻开源库FLANN
- 分布式系统中 Unique ID 的生成方法
- 初识RxJava
- 自定义泛型
- 51nod 1491-黄金系统(数论->递推)
- Hive 之 ORC
- 快速近似最近邻搜索库 FLANN
- nodejs发展前景
- C++11 相关教程
- VS Code快捷键大全,没有更全
- 数据结构第二章——算法
- 图片转PDF C#
- 导航定位芯片知识分享
- OpenJudge百炼-1183-反正切函数的应用-C语言-简单计算
- 工作日记2017.08.16