Lua API: tracker#

Kuvaus#

Seurantatietorakennetta käytetään avustamaan väriseurantaa CMUcam3:ssa. Se sisältää tietoa tehtävästä seurannasta ja parametreja, jotka voidaan asettaa ohjaamaan, mitä väriä seurataan, ja muita väriseurannan näkökohtia. TODO: Add a good description of what hte bounding box is, and what the centroid is

Esimerkki#

Tässä on lyhyt esimerkki, joka näyttää, miten tracker-objektia käytetään punaisen alueen löytämiseen CMUcam3:n kuvaruudusta, ja tuo laatikko tulostetaan sitten CamScripterin vianetsintäalueelle Eclipsessä.

trkr = tracker_new(195, 0, 0, 255, 45, 45); -- track red
trkr:set_noise_filter(3);  -- 2 is the default

take_picture();
tracker_track_color(trkr);
print_color_tracker(trkr);  -- print color tracker info to the screen
print("num pixels tracked: " .. trkr:get_num_pixels()); -- print number of red pixels found in the picture
-- print_picture(); -- uncomment this line to print the picture itself to the screen as well (slower)

Luonti#

Katso tracker_new

Metodit#

  • get_centroid_x

  • get_centroid_y

  • get_density

  • get_num_pixels

  • get_x0

  • get_x1

  • get_y0

  • get_y1

  • set_lower_bound

  • set_noise_filter

  • set_upper_bound

get_centroid_x#

trkr:get_centroid_x()

Parametrit:

ei mitään

Paluuarvot:

Keskipisteen x-koordinaatti kokonaislukuna

Hae seurattavan värin keskipisteen x-koordinaatti, jossa (0, 0) on kuvan vasen yläkulma.

get_centroid_y#

trkr:get_centroid_y()

Parametrit:

ei mitään

Paluuarvot:

Keskipisteen y-koordinaatti kokonaislukuna

Hae seurattavan värin keskipisteen y-koordinaatti, jossa (0, 0) on kuvan vasen yläkulma.

get_density#

trkr:get_density()

Parametrit:

ei mitään

Paluuarvot:

Seurattavan värin tiheys

Hae kuvapuskurissa seuratun värin tiheys. Tiheys on mitta siitä, kuinka tiheä seurattava väri on värinseuraajan rajaavan laatikon sisällä – mitä enemmän seurattavan värin pikseleitä laatikossa on, sitä suurempi tiheys on.

get_num_pixels#

trkr:get_num_pixels()

Parametrit:

ei mitään

Paluuarvot:

Kuvapuskurin niiden pikselien määrä, jotka vastaavat värinseuraajan väriä

Hae seurattavan värin (kuten tracker_new:lle välitetyt RGB-arvot määrittävät) pikselien kokonaismäärä, jotka löytyivät CMUcam3:n kuvapuskurista.

get_x0#

trkr:get_x0()

Parametrit:

ei mitään

Paluuarvot:

Väriseurannan rajauslaatikon vasemman yläkulman x-koordinaatin kokonaislukuarvo.

Kun tracker_track_color kutsutaan, se muodostaa rajauslaatikon, joka kuvaa seurattavan värin rajat kuvassa. (x0, y0) on kyseisen laatikon vasemman yläkulman sijainti, ja (x1, y1) on kyseisen laatikon oikean alakulman sijainti kuvapuskurissa, jossa (0, 0) on kuvapuskurin vasen yläkulma. get_x0 palauttaa värin rajauslaatikon vasemman yläkulman x-koordinaatin.

get_y0#

trkr:get_y0()

Parametrit:

ei mitään

Paluuarvot:

Väriseurannan rajauslaatikon vasemman yläkulman y-koordinaatin kokonaislukuarvo.

Kun tracker_track_color kutsutaan, se muodostaa rajauslaatikon, joka kuvaa seurattavan värin rajat kuvassa. (x0, y0) on kyseisen laatikon vasemman yläkulman sijainti, ja (x1, y1) on kyseisen laatikon oikean alakulman sijainti kuvapuskurissa, jossa (0, 0) on kuvapuskurin vasen yläkulma. get_y0 palauttaa värin rajauslaatikon vasemman yläkulman x-koordinaatin.

get_x1#

trkr:get_y1()

Parametrit:

ei mitään

Paluuarvot:

Väriseurannan rajauslaatikon oikean alakulman x-koordinaatin kokonaislukuarvo.

Kun tracker_track_color kutsutaan, se muodostaa rajauslaatikon, joka kuvaa seurattavan värin rajat kuvassa. (x0, y0) on kyseisen laatikon vasemman yläkulman sijainti, ja (x1, y1) on kyseisen laatikon oikean alakulman sijainti kuvapuskurissa, jossa (0, 0) on kuvapuskurin vasen yläkulma. get_x1 palauttaa värin rajauslaatikon vasemman yläkulman x-koordinaatin.

get_y1#

trkr:get_y1()

Parametrit:

ei mitään

Paluuarvot:

Väriseurannan rajauslaatikon oikean alakulman y-koordinaatin kokonaislukuarvo.

Kun tracker_track_color kutsutaan, se muodostaa rajauslaatikon, joka kuvaa seurattavan värin rajat kuvassa. (x0, y0) on kyseisen laatikon vasemman yläkulman sijainti, ja (x1, y1) on kyseisen laatikon oikean alakulman sijainti kuvapuskurissa, jossa (0, 0) on kuvapuskurin vasen yläkulma. get_y1 palauttaa värin rajauslaatikon vasemman yläkulman x-koordinaatin.

set_lower_bound#

trkr:set_lower_bound(integer channel, integer bound)

Parametrit:

channel Kanava, jolle asetat rajan. Katso kiinnostavan kanavan vakiot kohdassa Lua API: vakiot. bound Pienin mahdollinen arvo annetulle kanavalle. Täytyy olla välillä 0 ja 255.

Paluuarvot:

ei mitään

Aseta yhden kanavan alaraja värinseurannassa. Alaraja on pienin arvo, joka pikselillä voi olla kyseisessä kanavassa, jotta sitä seurataan. Värinseurannassa, jotta pikseliä voidaan pitää seurattavana, sen täytyy olla ala- ja ylärajan välissä jokaisessa kanavassaan.

set_noise_filter#

trkr:set_noise_filter(integer filter)

Parametrit:

filter Uusi kohinasuodattimen arvo. Oletus on 2.

Paluuarvot:

ei mitään

Kohinasuodattimen arvo määrittää, kuinka monta peräkkäistä aktiivista pikseliä ennen pikseliä vaaditaan, ennen kuin pikseli lasketaan väriseurannan havaitsemaksi. Arvon täytyy olla välillä 0 ja 255.

set_upper_bound#

trkr:set_upper_bound(integer channel, integer bound)

Parametrit:

channel Kanava, jolle asetat rajan. Katso kiinnostavan kanavan vakiot kohdassa Lua API: vakiot. bound Suurin mahdollinen arvo annetulle kanavalle. Täytyy olla välillä 0 ja 255.

Paluuarvot:

ei mitään

Aseta yhden kanavan yläraja värinseurannassa. Yläraja on suurin arvo, joka pikselillä voi olla kyseisessä kanavassa, jotta sitä seurataan. Värinseurannassa, jotta pikseliä voidaan pitää seurattavana, sen täytyy olla ala- ja ylärajan välissä jokaisessa kanavassaan.