2

構造化要素が次のようになっている場合(原点はSEの中心にあります):

0  0  0
0  0  0 
0  0  0

バイナリイメージで侵食/膨張を実行すると、結果はすべて0または1になります。誰かがこれを説明してもらえますか?(matlabで確認)
ありがとうございます。

4

1 に答える 1

3

あなたは完全に有効なSEを持っています。これは平らな正方形で、一般的に受け入れられており、すべての画像処理ライブラリで利用できます。

ここで、フラット構造要素と非フラット構造要素(または構造化関数)の違いと類似性を理解することが重要です。類似点は、それらが特定の近隣で動作することです。要素の正方形要素の場合、近傍は3x3行列で表すことができ、すべての要素が要素の近傍にあります(たとえば、ひし形SEの場合、これも3x3行列になりますが、コーナーは近所)。ones(3, 3)Matlabでは、この特定の近傍関係は、または単にで表されます[1 1 1; 1 1 1; 1 1 1]。フラットSEと非フラットSEの違いは、strelMatlabでの機能はそのままです。非フラットSEは、ネイバーを異なる方法で処理できることを意味するため、値0のみに依存するわけではありません(この状況を処理するために、侵食と膨張の定義がわずかに変更されています)。例として、正方形のSEはMatlabで正しく定義されていますstrel('arbitrary', ones(3, 3), zeros(3, 3))(2番目のパラメーターとして指定するzeros(3, 3)と、隣接するパラメーターがないと言っているため、基本的にエラーになります)。一方、非平坦な正方形は無限の方法で定義でき、そのうちの1つはである可能性がありますstrel('arbitrary', ones(3, 3), [-1 -1 -1; -1 0 -1; -1 -1 -1])

要約すると、あなたはおそらくstrel間違って使用しています。

于 2013-01-01T21:27:40.663 に答える