ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

bweuler

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

構文

eul = bweuler(BW,n)

説明

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

すべて折りたたむ

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

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

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

bweuler(BW)
ans = -3

入力引数

すべて折りたたむ

入力バイナリ イメージ。論理行列または数値行列として指定します。2 次元、実数、かつ非スパースでなければなりません。

例: BW = imread('circles.png');eul = bweuler(BW,4);

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

連結性。4 または 8 のいずれかの値として指定します。

説明
44 連結オブジェクト
88 連結オブジェクト

例: BW2 = bweuler(BW,4);

データ型: 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.

拡張機能

R2006a より前に導入

この情報は役に立ちましたか?