【问题标题】:Spatial index for geo coordinates?地理坐标的空间索引?
【发布时间】:2010-03-08 19:42:38
【问题描述】:

什么样的数据结构可用于在大量地理坐标中进行有效的最近邻搜索?使用“常规”空间索引结构(如假设平面坐标的 R-Trees),我发现了两个问题(还有其他我忽略的问题吗?):

  • 两极和国际日期变更线环绕
  • 两极附近的距离失真

如何允许这些因素?我想第二个可以通过转换坐标来补偿。可以修改 R-Tree 以考虑环绕吗?还是有专门的地理空间索引结构?

【问题讨论】:

    标签: data-structures indexing geospatial


    【解决方案1】:

    您能否在 3 维中使用局部敏感散列 (LSH) 算法?这将很快为您提供一个近似的相邻组,然后您可以通过计算大圆距离来进行完整性检查。

    Here's a paper 描述了一种在单位 d 维超球体表面上的高效 LSH 算法。大概它适用于 d=3。

    【讨论】:

      【解决方案2】:

      看看Geohash。

      另外,为了补偿环绕,只需使用三个正交 R 树,而不是一棵树,这样地球表面上就不存在一个点,使得所有三棵树在该点都有一个环绕。然后,如果根据这些树中的至少一个,两点是接近的。

      【讨论】:

      • Geohash 似乎是一种“在大多数情况下都运行良好”的东西,但不能依赖它来始终为附近的位置提供通用前缀。但是,使用多个 R-Tree 的想法似乎是解决环绕问题的好方法。
      猜你喜欢
      • 1970-01-01
      • 2012-03-01
      • 2016-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-23
      • 2019-11-30
      • 1970-01-01
      相关资源
      最近更新 更多