Main Content

bwperim

バイナリ イメージのオブジェクトの周囲の検出

説明

BW2 = bwperim(BW) は、入力イメージ BW 内のオブジェクトの周囲のピクセルのみを含むバイナリ イメージを返します。ピクセルは、非ゼロの場合、周囲の一部です。また、ゼロの値をとる少なくとも 1 つのピクセルに連結しています。

BW2 = bwperim(BW,conn) は、ピクセルの連結性 conn も指定します。

出力引数を指定せずに bwperim(___) を呼び出すと、新しい Figure ウィンドウに周囲のバイナリ イメージが表示されます。この構文を使用する場合、BW は 2 次元バイナリ イメージでなければなりません。

すべて折りたたむ

バイナリ イメージをワークスペースに読み取ります。

BW = imread('circles.png');

イメージ内のオブジェクトの周囲を計算します。

BW2 = bwperim(BW,8);

元のイメージと周囲を並べて表示します。

imshowpair(BW,BW2,'montage')

Figure contains an axes object. The axes object contains an object of type image.

この例では、関数 bwperim を使用してバイナリ イメージの周囲のピクセルを検出する方法を説明します。

バイナリ イメージをワークスペースに読み取ります。

BW1 = imread('circbw.tif');

イメージ内のオブジェクトの境界線を検出します。

BW2 = bwperim(BW1);

元のイメージと境界線を明示したイメージを左右に並べて表示します。

montage({BW1,BW2},'BackgroundColor','blue','BorderSize',5)

Figure contains an axes object. The axes object contains an object of type image.

入力引数

すべて折りたたむ

入力バイナリ イメージ。任意の次元の数値配列または logical 配列として指定します。数値入力の場合、非ゼロのピクセルは 1 (true) であると見なされます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

ピクセルの連結性。次の表のいずれかの値を指定します。既定の連結性は 2 次元イメージでは 4、3 次元イメージでは 6 です。

平均

2 次元連結性

4

ピクセルのエッジの部分が接触している場合、ピクセルは連結されます。2 つの隣り合ったピクセルは両方とも "on" の場合に同じオブジェクトの一部であり、水平方向または垂直方向に連結します。

Center pixel connected to four pixels

現在のピクセルを灰色で示します。

8

ピクセルのエッジまたはコーナーが接触している場合、ピクセルは連結されます。2 つの隣り合ったピクセルは両方とも "on" の場合に同じオブジェクトの一部であり、水平方向、垂直方向または対角方向に連結します。

Center pixel connected to eight pixels

現在のピクセルを灰色で示します。

3 次元連結性

6

面が接触している場合、ピクセルは連結されます。2 つの隣り合ったピクセルは両方とも "on" の場合に同じオブジェクトの一部であり、次のように連結します。

  • 次のいずれかの方向: 奥、手前、左、右、上および下

Center pixel connected to the faces of 6 pixels

現在のピクセルは立方体の中心です。

18

面またはエッジが接触している場合、ピクセルは連結されます。2 つの隣り合ったピクセルは両方とも "on" の場合に同じオブジェクトの一部であり、次のように連結します。

  • 次のいずれかの方向: 奥、手前、左、右、上および下

  • 右下または上の奥など、2 つの方向の組み合わせ

Center pixel connected to the faces of 6 pixels and the edges of 12 pixels

現在のピクセルは立方体の中心です。

26

面、エッジまたはコーナーが接触している場合、ピクセルは連結されます。2 つの隣り合ったピクセルは両方とも "on" の場合に同じオブジェクトの一部であり、次のように連結します。

  • 次のいずれかの方向: 奥、手前、左、右、上および下

  • 右下または上の奥など、2 つの方向の組み合わせ

  • 右上の奥または左下の奥など、3 つの方向の組み合わせ

Center pixel connected to the faces of 6 pixels, the edges of 12 pixels, and the corners of 8 pixels

現在のピクセルは立方体の中心です。

高次元の場合、bwperim は既定値 conndef(ndims(BW),"minimal") を使用します。

連結性は、01 から成る 3 × 3 × ... × 3 行列を指定し、任意の次元に対してより一般的に定義することもできます。1 の値を持つ要素は、conn の中心要素に対する近傍の位置を定義します。conn は、その中心要素に関して対称でなければなりません。詳細については、カスタム連結性の定義を参照してください。

データ型: double | logical

出力引数

すべて折りたたむ

オブジェクトの周囲のピクセルのみを含む出力イメージ。logical 配列として返されます。

データ型: logical

拡張機能

バージョン履歴

R2006a より前に導入