最近邻搜索的高效实现

2024-01-19

我正在尝试实现一种有效的算法最近邻搜索问题。

我读过有关一些数据结构的教程,它们支持此类问题的操作(例如,R-tree, 覆盖树等),但都很难实施。

我也找不到这些数据结构的示例源代码。我了解 C++,并且我正在尝试用这种语言解决这个问题。

理想情况下,我需要描述如何使用源代码实现这些数据结构的链接。


快速最近邻搜索库有几个不错的选择。

  • ANN http://www.cs.umd.edu/~mount/ANN/,这是基于 Mount 和 Arya 的作品。这项工作记录在 S. Arya 和 D. M. Mount 的论文中。“固定维度中的近似最近邻查询”。在过程中。第四届 ACM-SIAM 研讨会。离散算法,第 271-280 页,1993 年。

  • FLANN http://people.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN,基于 Marius Muja & Co. 的工作。Marius Muja 和 David G. Lowe 发表了一篇论文,“具有自动算法配置的快速近似最近邻”,在计算机视觉理论与应用国际会议 (VISAPP'09),2009 年。FLANN 的代码可在github https://github.com/mariusmuja/flann

FLANN 在某些情况下似乎更快,并且是更现代的代码版本,与许多其他语言具有牢固的绑定,可以快速合并更改。如果您想要一个经过良好测试的可靠标准库,ANN 可能是一个不错的选择。

编辑回复评论

这两个库都有大量的文档和示例。

ANN 的示例代码可在Manual http://www.cs.umd.edu/~mount/ANN/Files/1.1.2/ANNmanual_1.1.pdf,在第 2.1.4 节中

FLANN 存储库中提供了 FLANN 的示例代码示例目录 https://github.com/mariusmuja/flann/tree/master/examples,例如 /examples/flann_examples.c

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最近邻搜索的高效实现 的相关文章

随机推荐