113

平均シフトセグメンテーションが実際にどのように機能するかを理解してくれる人はいますか?

これは、私が作成したばかりの8x8マトリックスです

  103  103  103  103  103  103  106  104   
  103  147  147  153  147  156  153  104   
  107  153  153  153  153  153  153  107   
  103  153  147  96   98   153  153  104   
  107  156  153  97   96   147  153  107   
  103  153  153  147  156  153  153  101   
  103  156  153  147  147  153  153  104   
  103  103  107  104  103  106  103  107

上記のマトリックスを使用して、平均シフト セグメンテーションが 3 つの異なるレベルの数値をどのように分離するかを説明できますか?

4

2 に答える 2

212

まず基本:

Mean Shift セグメンテーションは、ローカライズされたオブジェクトのシェーディングや色調の違いを減衰させるのに非常に役立つローカル均質化手法です。例は多くの言葉よりも優れています:

ここに画像の説明を入力

アクション:各ピクセルを、範囲 r の近傍にあり、値が距離 d 内にあるピクセルの平均に置き換えます。

平均シフトは通常 3 つの入力を受け取ります。

  1. ピクセル間の距離を測定する距離関数。通常はユークリッド距離ですが、他の適切に定義された距離関数を使用することもできます。マンハッタン ディスタンスは、場合によっては別の便利な選択肢です。
  2. 半径。この半径内のすべてのピクセル (上記の距離に従って測定) が計算に使用されます。
  3. 価値観の違い。半径 r 内のすべてのピクセルから、値がこの差の範囲内にあるピクセルのみを取得して、平均を計算します。

境界ではアルゴリズムが適切に定義されていないことに注意してください。そのため、実装が異なれば、そこでは異なる結果が得られます。

適切な数学的表記法なしに表示することは不可能であり、StackOverflow では利用できないため、また他の場所の適切なソースから見つけることができるため、ここでは残忍な数学的詳細については説明しません。

マトリックスの中心を見てみましょう。

153  153  153  153 
147  96   98   153 
153  97   96   147   
153  153  147  156  

半径と距離を適切に選択すると、中央の 4 つのピクセルの値は 97 (それらの平均) になり、隣接するピクセルとは異なります。

Mathematicaで計算してみましょう。実際の数値を表示する代わりに、何が起こっているのかを理解しやすいように色分けして表示します。

マトリックスの色分けは次のとおりです。

ここに画像の説明を入力

次に、妥当な平均シフトを取得します。

MeanShiftFilter[a, 3, 3]

そして、次のようになります。

ここに画像の説明を入力

すべての中心要素が等しい場合(ところで、97まで)。

より均一なカラーリングを得るために、Mean Shift を数回繰り返すことができます。数回の反復の後、安定した非等方性構成に到達します。

ここに画像の説明を入力

現時点では、平均シフトを適用した後に得られる「色」の数を選択できないことは明らかです。それでは、質問の 2 番目の部分であるため、その方法を示しましょう。

出力クラスターの数を事前に設定できるようにするために必要なのは、Kmeans クラスタリングのようなものです。

マトリックスに対して次のように実行されます。

b = ClusteringComponents[a, 3]

{{1, 1, 1, 1, 1, 1, 1, 1}, 
 {1, 2, 2, 3, 2, 3, 3, 1}, 
 {1, 3, 3, 3, 3, 3, 3, 1}, 
 {1, 3, 2, 1, 1, 3, 3, 1}, 
 {1, 3, 3, 1, 1, 2, 3, 1}, 
 {1, 3, 3, 2, 3, 3, 3, 1}, 
 {1, 3, 3, 2, 2, 3, 3, 1}, 
 {1, 1, 1, 1, 1, 1, 1, 1}}  

または:

ここに画像の説明を入力

これは前の結果と非常によく似ていますが、ご覧のとおり、出力レベルは 3 つしかありません。

チッ!

于 2011-01-29T05:29:13.430 に答える