エッジ検出アルゴリズムにおけるプレウィット、ソーベル、ラプラシアン演算子の違いを知っている人はいますか?
いくつかは他のものよりも優れていますか?
さまざまな状況でさまざまな演算子が使用されていますか?
エッジ検出アルゴリズムにおけるプレウィット、ソーベル、ラプラシアン演算子の違いを知っている人はいますか?
いくつかは他のものよりも優れていますか?
さまざまな状況でさまざまな演算子が使用されていますか?
ラプラス演算子は 2 階微分演算子、他の 2 つは 1 階微分演算子なので、さまざまな状況で使用されます。ソーベル/プレウィットは勾配を測定し、ラプラシアンは勾配の変化を測定します。
例:
一定の傾き (勾配) を持つ信号がある場合:
Gradient signal: 1 2 3 4 5 6 7 8 9
1 次導関数フィルター (Sobel/Prewitt) は勾配を測定するため、フィルター応答は次のようになります。
Sobel result: 2 2 2 2 2 2 2
勾配が一定であるため、この信号のラパス フィルターの結果は 0 です。
例 2: エッジ信号がある場合:
Edge: 0 0 0 0 1 1 1 1
ソーベル フィルターの結果には 1 つのピークがあります。ピークの符号は、エッジの方向によって異なります。
Sobel result: 0 0 0 1 1 0 0 0
ラプラス フィルターは 2 つのピークを生成します。エッジの位置は、ラプラス フィルターの結果のゼロ交差に対応します。
Laplace result: 0 0 0 1 -1 0 0 0
したがって、エッジの方向を知りたい場合は、1 次微分フィルターを使用します。また、ラプラス フィルターは、ソーベルやプレウィットよりもノイズに敏感です。
一方、ソーベル フィルターとプレウィット フィルターは非常に似ており、同じ目的で使用されます。1 次微分フィルター間の重要な違いは次のとおりです。
これらの特性は、人工的なテスト画像 ( Bern Jähne の「Image Processing」にある有名なJähne テスト パターンなど) で測定できます。残念ながら、私はその本でプレウィット演算子について何も見つけられなかったので、独自の実験を行う必要があります.
最終的に、これらのプロパティの間には常にトレードオフがあり、どちらがより重要かはアプリケーションによって異なります。