3

我的 android 应用程序将覆盖上的一些标记加载到 MapView 上。
标记是根据 GeoPoints 的动态列表放置的。
我想移动地图中心并放大到大多数项目的区域。
天真地,我可以计算所有点的叠加,但我想从计算中删除离点质量很远的点。
有没有已知的计算方法?(例如概率,统计......?)

4

1 回答 1

1

我曾经为我不久前编写的房地产应用程序解决了与您描述的完全相同的问题。对我有用的是:

  • 以某种方式计算中心点(质心,平均纬度和经度,或其他)
  • 计算这个假想点和每个真实引脚之间的距离
  • 使用标准偏差算法并移除距离 StdDev > 2(或任何适合您的阈值)的引脚
  • 重复步骤 1 - 3(每次循环时都将使用一个新的中心点),直到在步骤 3 中没有更多的异常值要删除

这种方法非常适合我的需求。但我敢肯定,如果你环顾四周,还有更有趣的方法可以解决同样的问题。例如,我发现了这篇有趣的 CompSci 论文……

http://people.scs.carleton.ca/~michiel/outliers.pdf

祝你好运!

于 2011-01-28T09:15:21.640 回答