Dip-robinson-compass-mask

提供:Dev Guides
移動先:案内検索

ロビンソンコンパスマスク

ロビンソンコンパスマスクは、エッジ検出に使用される別のタイプの派生マスクです。 この演算子は、方向マスクとも呼ばれます。 この演算子では、1つのマスクを使用して、次の8つのコンパスの主要な方向すべてにマスクを回転させます。

  • 北西
  • West
  • 南西
  • 南東
  • East
  • 北東

固定マスクはありません。 任意のマスクを取ることができ、上記のすべての方向でエッジを見つけるためにマスクを回転する必要があります。 すべてのマスクは、ゼロ列の方向に基づいて回転します。

たとえば、北方向にある次のマスクを見て、それを回転させてすべての方向マスクを作成します。

北方向マスク

-1 0 1
-2 0 2
-1 0 1

北西方向マスク

0 1 2
-1 0 1
-2 -1 0

西方向マスク

1 2 1
0 0 0
-1 -2 -1

南西方向マスク

2 1 0
1 0 -1
0 -1 -2

南方向マスク

1 0 -1
2 0 -2
1 0 -1

南東方向マスク

0 -1 -2
1 0 -1
2 1 0

東方向マスク

-1 -2 -1
0 0 0
1 2 1

北東方向マスク

-2 -1 0
-1 0 1
0 1 2

ご覧のとおり、すべての方向はゼロ方向に基づいてカバーされています。 各マスクは、その方向のエッジを提供します。 次に、上記のマスク全体の結果を見てみましょう。 サンプル画像があり、そこからすべてのエッジを見つける必要があるとします。 サンプル画像を次に示します。

サンプル画像

ロビンソンコンパスマスク

この画像に上記のすべてのフィルターを適用すると、次の結果が得られます。

北方向エッジ

ロビンソンコンパスマスク

北西方向エッジ

ロビンソンコンパスマスク

西方向エッジ

ロビンソンコンパスマスク

南西方向エッジ

ロビンソンコンパスマスク

南方向エッジ

ロビンソンコンパスマスク

南東方向エッジ

ロビンソンコンパスマスク

東方向エッジ

ロビンソンコンパスマスク

北東方向エッジ

ロビンソンコンパスマスク

上記のすべてのマスクを適用すると、すべての方向にエッジが得られることがわかります。 結果も画像によって異なります。 北東方向のエッジを持たない画像があると仮定すると、そのマスクは無効になります。