class Blob -- Blob オブジェクト#
blob オブジェクトは Image.find_blobs() が返す attrtuple です。各ブロブは、find_blobs() に渡された1つ以上のカラーしきい値に一致した連結ピクセル領域を表します。このオブジェクトには、ブロブのバウンディングボックス、重心、ピクセル数、周囲長、向き、面積密度の指標、一致したしきい値の集合、回転した最小面積矩形、およびオプションの X/Y 投影ヒストグラムがまとめて格納されています。
フィールドは属性名(blob.x)またはインデックス(blob[0])でアクセスできます。このオブジェクトには公開コンストラクタがありません。
- class image.blob#
このオブジェクトを作成するには
Image.find_blobs()を呼び出してください。バウンディングボックスと重心#
- x#
バウンディングボックス左上の x 座標(ピクセル単位)。整数。インデックス
[0]。
- y#
バウンディングボックス左上の y 座標(ピクセル単位)。整数。インデックス
[1]。
- w#
バウンディングボックスの幅(ピクセル単位)。整数。インデックス
[2]。
- h#
バウンディングボックスの高さ(ピクセル単位)。整数。インデックス
[3]。
- cx#
重心の x 座標(ブロブのピクセル平均)を整数に丸めた値。整数。インデックス
[4]。
- cy#
重心の y 座標(ブロブのピクセル平均)を整数に丸めた値。整数。インデックス
[5]。
- cxf#
サブピクセル精度の浮動小数点数としての重心 x 座標。インデックス
[16]。
- cyf#
サブピクセル精度の浮動小数点数としての重心 y 座標。インデックス
[17]。
- rect#
バウンディングボックスの
(x, y, w, h)4要素タプル。Image.draw_rectangle()やImage.crop()などの描画/クロップメソッドに直接渡すのに適しています。インデックス[22]。
形状ディスクリプタ#
- pixels#
このブロブを構成するピクセル数。整数。インデックス
[6]。
- area#
軸に沿ったバウンディングボックスの面積(
w * h)。整数。インデックス[19]。
- density#
pixels / area-- バウンディングボックスがブロブで埋められている割合。0.0 -- 1.0 の範囲の浮動小数点数。塗りつぶされた矩形は1.0に近づき、細い対角線は0.0に近づきます。インデックス[20]。
- perimeter#
ブロブの外周上のピクセル数。整数。インデックス
[10]。
- roundness#
ブロブの2次モーメントから計算された、長軸に対する短軸の比。0.0 -- 1.0 の範囲の浮動小数点数で、
1.0は完全な円、0.0は線です。インデックス[11]。
- elongation#
1.0 - roundness-- 0.0 -- 1.0 の範囲の値で、0.0は完全な円、1.0は線です。インデックス[18]。
- compactness#
(pixels * 4 * pi) / (perimeter * perimeter)。円は所与の面積に対して周囲長が最小になるため、この指標は完全な円では1.0となり、ブロブが不規則または細長くなるにつれて低下します。浮動小数点数。インデックス[21]。
- rotation#
ブロブの2次モーメントから導出された、ブロブの向き(ラジアン単位)。0 から pi の範囲の浮動小数点数です(軸は対称なので pi を超えると方向が曖昧になります)。細長いブロブで最も正確です。ほぼ円形のブロブでは値がノイズの多いものになります。インデックス
[7]。
しきい値 / マージのメタデータ#
- code#
このブロブが一致した各カラーしきい値(
Image.find_blobs()に渡されたもの)に対して1ビットがセットされた32ビットのビットマップ。しきい値が1つの場合、code == 1です。マルチカラーのブロブがマージされた場合(merge=True)、複数のビットがセットされることがあります。インデックス[8]。
- count#
このブロブにマージされた元のブロブの数。
merge=Falseのときは1で、merge=Trueのときはより大きくなることがあります。インデックス[9]。
コーナー#
- corners#
ブロブの極端な4つのコーナーを表す
(x, y)整数タプルの4要素タプルで、左上のコーナーから時計回りにソートされています。これらは 輪郭から導出された コーナー(4つの対角線方向で重心から最も遠いブロブ境界上の点)です。インデックス[14]。
- min_corners#
ブロブの最小面積回転バウンディング矩形の4つのコーナーを表す
(x, y)整数タプルの4要素タプル。rotationと組み合わせると、ブロブを最も密接に囲む形状が得られます。インデックス[15]。
投影ヒストグラム#
- x_hist_bins#
ブロブの X 軸(列)投影ヒストグラムの整数カウントのリスト。
find_blobs(...)がx_hist_bins_max> 0 で呼び出された場合にのみ値が設定されます。それ以外の場合は空です。インデックス[12]。
- y_hist_bins#
ブロブの Y 軸(行)投影ヒストグラムの整数カウントのリスト。
find_blobs(...)がy_hist_bins_max> 0 で呼び出された場合にのみ値が設定されます。それ以外の場合は空です。インデックス[13]。