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]