私の Android アプリケーションは、オーバーレイ上のいくつかのマーカーを MapView にロードします。
マーカーは、ジオポイントの動的リストに基づいて配置されます。
マップの中心を移動し、アイテムが最も多いエリアにズームしたいと考えています。
単純に、すべてのポイントの重ね合わせを計算できますが、ポイントの質量から非常に遠いポイントを計算から除外したいと思います。
これを計算する既知の方法はありますか? (例: 確率、統計.. ?)
1 に答える
1
少し前に書いた不動産アプリで、あなたが説明したのとまったく同じ問題を解決したことがあります。私にとってうまくいったのは:
- 何らかの方法で中心点を計算します (重心、緯度と経度の平均など)
- この架空の点と実際の各ピンの間の距離を計算します
- 標準偏差アルゴリズムを使用して、距離が StdDev > 2 (または任意のしきい値) のピンを削除します。
- ステップ 3 で削除する外れ値がなくなるまで、ステップ 1 ~ 3 を繰り返します (ループするたびに新しい中心点を使用します)。
このアプローチは、私のニーズに最適です。しかし、周りを見渡せば、同じ問題を解決するもっと面白い方法があるはずです。たとえば、この興味深い CompSci 論文を見つけました...
http://people.scs.carleton.ca/~michiel/outliers.pdf
幸運を!
于 2011-01-28T09:15:21.640 に答える