class Blob – Blob-objekti#

Blob-objekti on attrtuple, jonka Image.find_blobs() palauttaa. Jokainen blob edustaa yhtenäistä pikselialuetta, joka vastasi yhtä tai useampaa find_blobs()-kutsulle välitettyä värikynnysarvoa. Objektiin on pakattu blobin rajauslaatikko, painopiste, pikselimäärä, ympärysmitta, suuntaus, pinta-alatiheyden mittarit, siihen osuneiden kynnysarvojen joukko, kierretty minimipinta-alan suorakulmio sekä valinnaiset X/Y-projektiohistogrammit.

Kenttiin pääsee käsiksi attribuuttinimellä (blob.x) tai indeksillä (blob[0]). Objektilla ei ole julkista konstruktoria.

class image.blob#

Luo tämä objekti kutsumalla Image.find_blobs().

Rajauslaatikko ja painopiste#

x#

Rajauslaatikon vasemman yläkulman x-koordinaatti pikseleinä. Kokonaisluku. Indeksi [0].

y#

Rajauslaatikon vasemman yläkulman y-koordinaatti pikseleinä. Kokonaisluku. Indeksi [1].

w#

Rajauslaatikon leveys pikseleinä. Kokonaisluku. Indeksi [2].

h#

Rajauslaatikon korkeus pikseleinä. Kokonaisluku. Indeksi [3].

cx#

Painopisteen x-koordinaatti (blobin pikselikeskiarvo) pyöristettynä kokonaisluvuksi. Kokonaisluku. Indeksi [4].

cy#

Painopisteen y-koordinaatti (blobin pikselikeskiarvo) pyöristettynä kokonaisluvuksi. Kokonaisluku. Indeksi [5].

cxf#

Painopisteen x-koordinaatti alipikselitarkkana liukulukuna. Indeksi [16].

cyf#

Painopisteen y-koordinaatti alipikselitarkkana liukulukuna. Indeksi [17].

rect#

Rajauslaatikon (x, y, w, h) 4-monikko. Soveltuu välitettäväksi suoraan piirto- ja rajausmetodeille, kuten Image.draw_rectangle() tai Image.crop(). Indeksi [22].

Muotokuvaajat#

pixels#

Tämän blobin muodostavien pikseleiden lukumäärä. Kokonaisluku. Indeksi [6].

area#

Akselien suuntaisen rajauslaatikon pinta-ala (w * h). Kokonaisluku. Indeksi [19].

density#

pixels / area – se osuus rajauslaatikosta, jonka blob täyttää. Liukuluku välillä 0.0 – 1.0. Täysi suorakulmio lähestyy arvoa 1.0; ohut vinoviiva lähestyy arvoa 0.0. Indeksi [20].

perimeter#

Blobin ulkoreunalla olevien pikseleiden lukumäärä. Kokonaisluku. Indeksi [10].

roundness#

Blobin pikkuakselin suhde isoakseliin, laskettuna sen toisen kertaluvun momenteista. Liukuluku välillä 0.0 – 1.0; 1.0 on täydellinen ympyrä, 0.0 on viiva. Indeksi [11].

elongation#

1.0 - roundness – arvo välillä 0.0 – 1.0, jossa 0.0 on täydellinen ympyrä ja 1.0 on viiva. Indeksi [18].

compactness#

(pixels * 4 * pi) / (perimeter * perimeter). Ympyrällä on pienin ympärysmitta tietyllä pinta-alalla, joten tämä mittari on 1.0 täydelliselle ympyrälle ja pienenee, kun blobista tulee epäsäännöllisempi tai pitkänomaisempi. Liukuluku. Indeksi [21].

rotation#

Blobin suuntaus radiaaneina, johdettuna sen toisen kertaluvun momenteista. Liukuluku välillä 0 – pi (akseli on symmetrinen, joten suunta on epäselvä pi:n jälkeen). Tarkin pitkänomaisille blobeille – lähes pyöreille blobeille arvo muuttuu kohinaiseksi. Indeksi [7].

Kynnysarvo- ja yhdistämismetatiedot#

code#

32-bittinen bittikartta, jossa on yksi bitti asetettuna kullekin värikynnysarvolle (kuten välitetty Image.find_blobs()-kutsulle), johon tämä blob vastasi. Yhdellä kynnysarvolla code == 1. Yhdistetyillä monivärisillä blobeilla (merge=True) useampi kuin yksi bitti voi olla asetettuna. Indeksi [8].

count#

Tähän yhdistettyjen lähdeblobien lukumäärä. 1 kun merge=False; voi olla suurempi kun merge=True. Indeksi [9].

Kulmat#

corners#

4-monikko (x, y) -kokonaislukumonikoita blobin neljälle äärikulmalle, lajiteltuna myötäpäivään vasemmasta yläkulmasta alkaen. Nämä ovat ääriviivasta johdetut kulmat (blobin reunan pisteet, jotka ovat kauimpana painopisteestä neljää lävistäjää pitkin). Indeksi [14].

min_corners#

4-monikko (x, y) -kokonaislukumonikoita blobin minimipinta-alan kierretyn rajaussuorakulmion neljälle kulmalle. Yhdistettynä rotation-arvoon nämä antavat tiukimman sovituksen blobin ympärille. Indeksi [15].

Projektiohistogrammit#

x_hist_bins#

Lista kokonaislukulaskureita blobin X-akselin (sarakkeen) projektiohistogrammia varten. Täytetään vain, kun find_blobs(...) kutsutaan arvolla x_hist_bins_max > 0; muuten tyhjä. Indeksi [12].

y_hist_bins#

Lista kokonaislukulaskureita blobin Y-akselin (rivin) projektiohistogrammia varten. Täytetään vain, kun find_blobs(...) kutsutaan arvolla y_hist_bins_max > 0; muuten tyhjä. Indeksi [13].