Lua API: tracker#

Opis#

Struktura podataka tracker koristi se za pomoć u praćenju boje u CMUcam3. Sadrži informacije o praćenju koje se obavlja te parametre koji se mogu postaviti za upravljanje time koja se boja prati i drugim aspektima praćenja boje. TODO: Add a good description of what hte bounding box is, and what the centroid is

Primjer#

Evo kratkog primjera koji pokazuje kako se tracker objekt koristi za pronalaženje crvenog područja u sličici CMUcam3, a zatim se taj okvir ispisuje u CamScripter područje za otklanjanje pogrešaka u Eclipseu.

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)

Stvaranje#

Pogledajte tracker_new

Metode#

  • 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()

Parametri:

nema

Povratne vrijednosti:

Cjelobrojna x-koordinata centroida

Dohvatite x-koordinatu centroida praćene boje, gdje je (0, 0) gornji lijevi kut slike.

get_centroid_y#

trkr:get_centroid_y()

Parametri:

nema

Povratne vrijednosti:

Cjelobrojna y-koordinata centroida

Dohvatite y-koordinatu centroida praćene boje, gdje je (0, 0) gornji lijevi kut slike.

get_density#

trkr:get_density()

Parametri:

nema

Povratne vrijednosti:

Gustoća boje koja se prati

Dohvatite gustoću boje koja se prati unutar međuspremnika slike. Gustoća je mjera koliko je gusta boja koja se prati unutar graničnog okvira alata za praćenje boje – što je više piksela praćene boje u okviru, to je gustoća veća.

get_num_pixels#

trkr:get_num_pixels()

Parametri:

nema

Povratne vrijednosti:

Broj piksela u međuspremniku slike koji odgovaraju boji pratitelja boje

Dohvatite ukupni broj piksela praćene boje (kako je određeno RGB vrijednostima proslijeđenima u tracker_new) koji su pronađeni u međuspremniku slike CMUcam3.

get_x0#

trkr:get_x0()

Parametri:

nema

Povratne vrijednosti:

Cjelobrojna vrijednost x-koordinate gornjeg lijevog kuta graničnog okvira praćenja boje.

Kada se pozove tracker_track_color, on uspostavlja granični okvir koji opisuje granice boje koja se prati unutar slike. (x0, y0) je lokacija gornjeg lijevog kuta tog okvira, a (x1, y1) je lokacija donjeg desnog kuta tog okvira unutar međuspremnika slike, gdje je (0, 0) gornji lijevi kut međuspremnika slike. get_x0 vraća x-koordinatu gornjeg lijevog kuta okvira granice boje.

get_y0#

trkr:get_y0()

Parametri:

nema

Povratne vrijednosti:

Cjelobrojna vrijednost y-koordinate gornjeg lijevog kuta graničnog okvira praćenja boje.

Kada se pozove tracker_track_color, on uspostavlja granični okvir koji opisuje granice boje koja se prati unutar slike. (x0, y0) je lokacija gornjeg lijevog kuta tog okvira, a (x1, y1) je lokacija donjeg desnog kuta tog okvira unutar međuspremnika slike, gdje je (0, 0) gornji lijevi kut međuspremnika slike. get_y0 vraća x-koordinatu gornjeg lijevog kuta okvira granice boje.

get_x1#

trkr:get_y1()

Parametri:

nema

Povratne vrijednosti:

Cjelobrojna vrijednost x-koordinate donjeg desnog kuta graničnog okvira praćenja boje.

Kada se pozove tracker_track_color, on uspostavlja granični okvir koji opisuje granice boje koja se prati unutar slike. (x0, y0) je lokacija gornjeg lijevog kuta tog okvira, a (x1, y1) je lokacija donjeg desnog kuta tog okvira unutar međuspremnika slike, gdje je (0, 0) gornji lijevi kut međuspremnika slike. get_x1 vraća x-koordinatu gornjeg lijevog kuta okvira granice boje.

get_y1#

trkr:get_y1()

Parametri:

nema

Povratne vrijednosti:

Cjelobrojna vrijednost y-koordinate donjeg desnog kuta graničnog okvira praćenja boje.

Kada se pozove tracker_track_color, on uspostavlja granični okvir koji opisuje granice boje koja se prati unutar slike. (x0, y0) je lokacija gornjeg lijevog kuta tog okvira, a (x1, y1) je lokacija donjeg desnog kuta tog okvira unutar međuspremnika slike, gdje je (0, 0) gornji lijevi kut međuspremnika slike. get_y1 vraća x-koordinatu gornjeg lijevog kuta okvira granice boje.

set_lower_bound#

trkr:set_lower_bound(integer channel, integer bound)

Parametri:

channel Kanal za koji postavljate granicu. Pogledajte konstante kanala od interesa u Lua API: konstante. bound Minimalna moguća vrijednost za dani kanal. Mora biti između 0 i 255.

Povratne vrijednosti:

nema

Postavite donju granicu za jedan kanal u pratitelju boje. Donja granica je minimalna vrijednost koju piksel može imati u tom kanalu da bi bio praćen. U svrhu praćenja boje, da bi se bilo koji piksel smatrao pratljivim, taj piksel mora biti između donje i gornje granice u svakom od svojih kanala.

set_noise_filter#

trkr:set_noise_filter(integer filter)

Parametri:

filter Nova vrijednost filtra šuma. Zadano je 2.

Povratne vrijednosti:

nema

Vrijednost filtra šuma određuje koliko je uzastopnih aktivnih piksela prije piksela potrebno prije nego što se piksel treba računati kao otkriven praćenjem boje. Vrijednost mora biti između 0 i 255.

set_upper_bound#

trkr:set_upper_bound(integer channel, integer bound)

Parametri:

channel Kanal za koji postavljate granicu. Pogledajte konstante kanala od interesa u Lua API: konstante. bound Maksimalna moguća vrijednost za dani kanal. Mora biti između 0 i 255.

Povratne vrijednosti:

nema

Postavite gornju granicu za jedan kanal u pratitelju boje. Gornja granica je maksimalna vrijednost koju piksel može imati u tom kanalu da bi bio praćen. U svrhu praćenja boje, da bi se bilo koji piksel smatrao pratljivim, taj piksel mora biti između donje i gornje granice u svakom od svojih kanala.