可以使用什么算法来快速聚焦线形聚类点?

时间:2014-03-06 09:23:28

标签: algorithm cluster-analysis

假设我们有一条由2dpoints组成的行 enter image description here

在给定活动点输入的情况下,哪种算法可以最有效地计算该行中的聚类?

这里的红色是所有要点。 黄色 - 给定时间内的活跃点。

在此示例中,算法应找到两个群集(蓝色)。

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作:

  1. 按点索引对点进行聚类。这可以在线性时间内完成。在此过程中保存群集的边界框
  2. 对于每对集群
    • 检查边界框是否相交或具有最大距离t
    • 如果是,请检查两个群集中是否有两个点,其最大距离为t
    • 如果是,请合并群集
  3. t是距离阈值。它可以是静态的,也可以是基于簇的(例如,到任何簇的最近邻居的最大距离)。

    该算法仍具有二次时间复杂度,但由于预聚类和边界框测试,它应该足够快。