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].