【问题标题】:knn search for a trajectory (a line of points) in an r-treeknn 在 r-tree 中搜索轨迹(点线)
【发布时间】:2016-01-04 21:14:46
【问题描述】:

我有一些轨迹数据(一组 gps 点,它们来自同一次旅行,因此在空间上彼此靠近)。我想找到每个点的 k 最近线段。我知道我可以在 RTree 中进行 knn 搜索,以获取一个点的 knn,然后每隔一个点重复一次。我认为可能有一些更好的解决方案,因为这些点彼此接近,因此搜索不需要每次都从根开始。有这么快的方法吗?谢谢你

【问题讨论】:

    标签: knn spatial-query spatial-index r-tree


    【解决方案1】:

    尝试使用“感兴趣的区域”来制定您的查询。

    使用轨迹,您通常对可能的匹配有一个上限,并且可以使用区域查询来有效地检索多个候选对象。

    【讨论】:

    • 我回来是因为我对您提到的“感兴趣的区域”有疑问。对于轨迹,我们可以为其创建最小边界矩形,然后我们使用范围搜索来获取与 mbr 相交的所有节点。但是,我认为对于 knn 搜索,不能保证 knn 会在我们从范围搜索中获得的候选者之内。换句话说,真正的 knn 可能在某些点的候选者之外。我可能误解了“感兴趣区域”和“上限”。
    • 你能给我更多关于如何找到一个安全/足够的“感兴趣区域”进行轨迹搜索的信息吗?我的意思是一个可以保证knn位于其中的区域?谢谢!
    • 这是您需要为您的应用程序定义的内容。通常可以定义最大感兴趣距离。如果您在夏威夷查询,例如,如果它在洛杉矶,您对最近的轨迹不感兴趣。
    猜你喜欢
    • 2018-03-05
    • 1970-01-01
    • 1970-01-01
    • 2016-08-16
    • 2018-05-22
    • 1970-01-01
    • 2016-04-02
    • 1970-01-01
    • 2015-02-22
    相关资源
    最近更新 更多