class Blob – Blob-objekt¶
Blob-objektet är en attrtuple som returneras av Image.find_blobs(). Varje blob representerar en sammanhängande region av pixlar som matchade ett eller flera av de färgtröskelvärden som skickades till find_blobs(). Objektet samlar blobbens begränsningsruta, tyngdpunkt, pixelantal, omkrets, orientering, area-densitetsmått, uppsättningen tröskelvärden som träffade den, den roterade rektangeln med minsta area samt valfria X/Y-projektionshistogram.
Fälten är åtkomliga via attributnamn (blob.x) eller via index (blob[0]). Objektet har ingen publik konstruktor.
- class image.blob¶
Anropa
Image.find_blobs()för att skapa detta objekt.Begränsningsruta och tyngdpunkt¶
- x¶
Begränsningsrutans övre vänstra x-koordinat, i pixlar. Heltal. Index
[0].
- y¶
Begränsningsrutans övre vänstra y-koordinat, i pixlar. Heltal. Index
[1].
- w¶
Begränsningsrutans bredd, i pixlar. Heltal. Index
[2].
- h¶
Begränsningsrutans höjd, i pixlar. Heltal. Index
[3].
- cx¶
Tyngdpunktens x-koordinat (blobbens pixelmedelvärde), avrundad till heltal. Heltal. Index
[4].
- cy¶
Tyngdpunktens y-koordinat (blobbens pixelmedelvärde), avrundad till heltal. Heltal. Index
[5].
- cxf¶
Tyngdpunktens x-koordinat som ett subpixel-flyttal. Index
[16].
- cyf¶
Tyngdpunktens y-koordinat som ett subpixel-flyttal. Index
[17].
- rect¶
(x, y, w, h)4-tupel för begränsningsrutan. Lämplig att skicka direkt till metoder för ritning/beskärning såsomImage.draw_rectangle()ellerImage.crop(). Index[22].
Formdeskriptorer¶
- pixels¶
Antalet pixlar som utgör denna blob. Heltal. Index
[6].
- area¶
Arean av den axelinriktade begränsningsrutan (
w * h). Heltal. Index[19].
- density¶
pixels / area– andelen av begränsningsrutan som fylls av blobben. Flyttal i intervallet 0.0 – 1.0. En solid rektangel närmar sig1.0; en tunn diagonal linje närmar sig0.0. Index[20].
- perimeter¶
Antalet pixlar på blobbens yttre omkrets. Heltal. Index
[10].
- roundness¶
Förhållandet mellan blobbens lillaxel och storaxel, beräknat från dess andra ordningens moment. Flyttal i intervallet 0.0 – 1.0;
1.0är en perfekt cirkel,0.0är en linje. Index[11].
- elongation¶
1.0 - roundness– ett värde i intervallet 0.0 – 1.0 där0.0är en perfekt cirkel och1.0är en linje. Index[18].
- compactness¶
(pixels * 4 * pi) / (perimeter * perimeter). En cirkel har den minsta omkretsen för en given area, så detta mått är1.0för en perfekt cirkel och minskar när blobben blir mer oregelbunden eller avlång. Flyttal. Index[21].
- rotation¶
Blobbens orientering i radianer, härledd från dess andra ordningens moment. Flyttal i intervallet 0 till pi (axeln är symmetrisk så riktningen är tvetydig bortom pi). Mest exakt för avlånga blobbar – för nästan runda blobbar blir värdet brusigt. Index
[7].
Tröskelvärdes-/sammanslagningsmetadata¶
- code¶
32-bitars bitmapp med en bit satt för varje färgtröskelvärde (som skickas till
Image.find_blobs()) som denna blob matchade. Med ett tröskelvärde ärcode == 1. Med sammanslagna flerfärgsblobbar (merge=True) kan mer än en bit vara satt. Index[8].
- count¶
Antalet källblobbar som slogs samman till denna.
1närmerge=False; kan vara större närmerge=True. Index[9].
Hörn¶
- corners¶
4-tupel av
(x, y)-heltalstupler för blobbens fyra extrema hörn, sorterade medurs med start från det övre vänstra hörnet. Dessa är de konturhärledda hörnen (punkterna på blobbgränsen som ligger längst från tyngdpunkten längs fyra diagonaler). Index[14].
- min_corners¶
4-tupel av
(x, y)-heltalstupler för de fyra hörnen i blobbens roterade begränsningsrektangel med minsta area. Tillsammans medrotationger dessa dig den tightaste passformen runt blobben. Index[15].
Projektionshistogram¶
- x_hist_bins¶
Lista med heltalsantal för blobbens X-axelprojektionshistogram (kolumn). Fylls endast i när
find_blobs(...)anropas medx_hist_bins_max> 0; annars tom. Index[12].
- y_hist_bins¶
Lista med heltalsantal för blobbens Y-axelprojektionshistogram (rad). Fylls endast i när
find_blobs(...)anropas medy_hist_bins_max> 0; annars tom. Index[13].