各セルに整数の重みが割り当てられた長方形の平面グリッドがあります。平均よりも重みが高い 3 ~ 6 個の隣接セルのクラスターを識別するアルゴリズムを探しています。これらのブロブは、ほぼ円形である必要があります。
私の場合、クラスターを含まないセルの平均重みは約 6 であり、クラスターを含むセルの平均重みは約 6+4 です。つまり、「背景の重み」は約 6 です。重みはポアソン統計で変動します。
小さなバックグラウンドでは貪欲またはシードされたアルゴリズムはかなりうまく機能しますが、クラスター セルの重みがバックグラウンドで変動に近い場合、つまり何もない場合でもクラスターを見つける傾向がある場合、これは機能しません。また、グリッドが大きく (1000x1000 のようなもの)、非常に頻繁に (10^9 回) 実行する予定であるため、考えられるすべてのセットアップをループするブルート フォース検索を実行することはできません。グラフ理論でこれに取り組む方法があるかもしれないという印象があります。頂点カバーとクリークについて聞いたことがありますが、私の問題を彼らの言語に最もよく翻訳する方法がわかりません。グラフ理論には入力の統計的性質に問題がある可能性があることは知っていますが、すべてのクラスターを識別できない場合でも、そこからどのようなアルゴリズムが見つかるかを知りたいと思います。
クリッピングの例を次に示します。フレーム領域にはセルあたり平均 10 個のエントリがあり、他のすべてのセルには平均 6 個のエントリがあります。もちろん、グリッドはさらに拡張されます。
| 8| 8| 2| 8| 2| 3|
| 6| 4| 3| 6| 4| 4|
===========
| 8| 3||13| 7| 11|| 7|
|10| 4||10| 12| 3|| 2|
| 5| 6||11| 6| 8||12|
===========
| 9| 4| 0| 2| 8| 7|