class Blob – objekt Blob#
Objekt blob je attrtuple vracený funkcí Image.find_blobs(). Každý blob představuje souvislou oblast pixelů, která odpovídá jednomu nebo více barevným prahům předaným funkci find_blobs(). Objekt sdružuje ohraničující rámeček blobu, těžiště, počet pixelů, obvod, orientaci, metriky hustoty plochy, sadu prahů, které jej zasáhly, otočený obdélník s minimální plochou a volitelné projekční histogramy X/Y.
Pole jsou přístupná podle názvu atributu (blob.x) nebo podle indexu (blob[0]). Objekt nemá veřejný konstruktor.
- class image.blob#
Pro vytvoření tohoto objektu zavolejte
Image.find_blobs().Ohraničující rámeček a těžiště#
- x#
Souřadnice x levého horního rohu ohraničujícího rámečku, v pixelech. Celé číslo. Index
[0].
- y#
Souřadnice y levého horního rohu ohraničujícího rámečku, v pixelech. Celé číslo. Index
[1].
- w#
Šířka ohraničujícího rámečku, v pixelech. Celé číslo. Index
[2].
- h#
Výška ohraničujícího rámečku, v pixelech. Celé číslo. Index
[3].
- cx#
Souřadnice x těžiště (pixelový průměr blobu), zaokrouhlená na celé číslo. Celé číslo. Index
[4].
- cy#
Souřadnice y těžiště (pixelový průměr blobu), zaokrouhlená na celé číslo. Celé číslo. Index
[5].
- cxf#
Souřadnice x těžiště jako subpixelové číslo s plovoucí desetinnou čárkou. Index
[16].
- cyf#
Souřadnice y těžiště jako subpixelové číslo s plovoucí desetinnou čárkou. Index
[17].
- rect#
4-tice
(x, y, w, h)ohraničujícího rámečku. Vhodná pro přímé předání kreslicím/ořezovým metodám, jako jsouImage.draw_rectangle()neboImage.crop(). Index[22].
Deskriptory tvaru#
- pixels#
Počet pixelů, které tvoří tento blob. Celé číslo. Index
[6].
- area#
Plocha osově zarovnaného ohraničujícího rámečku (
w * h). Celé číslo. Index[19].
- density#
pixels / area– podíl ohraničujícího rámečku vyplněný blobem. Číslo s plovoucí desetinnou čárkou v rozsahu 0.0 – 1.0. Plný obdélník se blíží1.0; tenká diagonální čára se blíží0.0. Index[20].
- perimeter#
Počet pixelů na vnějším obvodu blobu. Celé číslo. Index
[10].
- roundness#
Poměr vedlejší osy k hlavní ose blobu, vypočtený z jeho momentů druhého řádu. Číslo s plovoucí desetinnou čárkou v rozsahu 0.0 – 1.0;
1.0je dokonalý kruh,0.0je čára. Index[11].
- elongation#
1.0 - roundness– hodnota v rozsahu 0.0 – 1.0, kde0.0je dokonalý kruh a1.0je čára. Index[18].
- compactness#
(pixels * 4 * pi) / (perimeter * perimeter). Kruh má pro danou plochu nejmenší obvod, takže tato metrika je1.0pro dokonalý kruh a klesá, jak se blob stává nepravidelnějším nebo protáhlejším. Číslo s plovoucí desetinnou čárkou. Index[21].
- rotation#
Orientace blobu v radiánech, odvozená z jeho momentů druhého řádu. Číslo s plovoucí desetinnou čárkou v rozsahu 0 až pi (osa je symetrická, takže směr je za hodnotou pi nejednoznačný). Nejpřesnější pro protáhlé bloby – u téměř kruhových blobů se hodnota stává zašuměnou. Index
[7].
Metadata prahu / sloučení#
- code#
32bitová bitmapa s jedním nastaveným bitem pro každý barevný práh (předaný funkci
Image.find_blobs()), kterému tento blob odpovídal. S jedním prahem platícode == 1. U sloučených vícebarevných blobů (merge=True) může být nastaveno více než jeden bit. Index[8].
- count#
Počet zdrojových blobů sloučených do tohoto.
1přimerge=False; může být větší přimerge=True. Index[9].
Rohy#
- corners#
4-tice celočíselných n-tic
(x, y)pro čtyři krajní rohy blobu, seřazené po směru hodinových ručiček počínaje levým horním rohem. Jde o rohy odvozené z kontury (body na hranici blobu nejvzdálenější od těžiště podél čtyř diagonál). Index[14].
- min_corners#
4-tice celočíselných n-tic
(x, y)pro čtyři rohy otočeného ohraničujícího obdélníku blobu s minimální plochou. V kombinaci srotationposkytují nejtěsnější obrys kolem blobu. Index[15].
Projekční histogramy#
- x_hist_bins#
Seznam celočíselných počtů pro projekční histogram blobu na ose X (sloupce). Vyplněn pouze tehdy, když je
find_blobs(...)voláno sx_hist_bins_max> 0; jinak prázdný. Index[12].
- y_hist_bins#
Seznam celočíselných počtů pro projekční histogram blobu na ose Y (řádky). Vyplněn pouze tehdy, když je
find_blobs(...)voláno sy_hist_bins_max> 0; jinak prázdný. Index[13].