Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

bweuler

バイナリ イメージのオイラー数

説明

eul = bweuler(BW,conn) は、バイナリ イメージ BW のオイラー数を返します。オイラー数 (オイラー標数とも呼ばれる) は、イメージ内のオブジェクトの合計数からそれらのオブジェクト内の穴の合計数を差し引いた数です。conn は連結性を指定します。オブジェクトは、on ピクセル (1 の値をもつピクセル) の連結集合です。

すべて折りたたむ

バイナリ イメージをワークスペースに読み取って表示します。

BW = imread('circles.png');
imshow(BW)

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

オイラー数を計算します。この例では、すべての円が接触しているため、1 つのオブジェクトが作成されます。オブジェクトには 4 つの "穴" (接触している円によって作成される黒い領域) があります。したがって、オイラー数は 1 - 4、つまり -3 です。

bweuler(BW)
ans = -3

入力引数

すべて折りたたむ

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

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

連結性。4 連結オブジェクトには値 4、8 連結オブジェクトには値 8 として指定します。

データ型: double

出力引数

すべて折りたたむ

オイラー数。数値スカラーとして返されます。

データ型: double

アルゴリズム

bweuler は、2 行 2 列の局所的な近傍の凹凸パターンを検討することにより、オイラー数を計算します。使用するアルゴリズムの説明は、[2] を参照してください。

参照

[1] Horn, Berthold P. K., Robot Vision, New York, McGraw-Hill, 1986, pp. 73-77.

[2] Pratt, William K., Digital Image Processing, New York, John Wiley & Sons, Inc., 1991, p. 633.

拡張機能

GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。

バージョン履歴

R2006a より前に導入