Lua API: funktiot#
set_debug#
set_debug(boolean debug_on)
- Parametrit:
debug_on– Anna arvo, joka arvioituu joko todeksi (virheenkorjaus päällä) tai epätodeksi (virheenkorjaus pois päältä)- Paluuarvot:
ei mitään
Kytke virheenkorjaus päälle tai pois. Kun virheenkorjaus on päällä, kamera yrittää lähettää teksti- ja kuvavirheenkorjaustietoja sarjaportin kautta. Kytke virheenkorjaus pois päältä, kun ohjelma on valmis, parantaaksesi suorituskykyä.
print#
Käyttö: print("a message") / print("one plus one is ", 1+1)
- Parametrit:
Välitä niin monta arvoa kuin haluat.
- Paluuarvot:
ei mitään
Vianetsintäfunktio, jota käytetään arvojen tulostamiseen. CMUcam3 lähettää kaikki tälle funktiolle välitetyt arvot CamScripter -Eclipse-laajennukseen, jossa ne näytetään konsolialueella.
turn_on_led#
turn_on_led(integer led_number)
- Parametrit:
led_numberSytytettävän CMUcam3-LEDin numero. 0, 1, 2 ovat ainoat sallitut arvot.- Paluuarvot:
ei mitään
Sytytä yksi CMUcam3:n LEDeistä.
turn_off_led#
turn_off_led(integer led_number)
- Parametrit:
led_numberSytytettävän CMUcam3-LEDin numero. 0, 1, 2 ovat ainoat sallitut arvot.- Paluuarvot:
ei mitään
Sammuta yksi CMUcam3:n LEDeistä.
take_picture#
take_picture()
- Parametrit:
ei mitään
- Paluuarvot:
ei mitään
Ota kuva CMUcam3:lla ja lataa kuvapuskuri (pixbuf).
print_picture#
print_picture()
- Parametrit:
ei mitään
- Paluuarvot:
ei mitään
Lähetä juuri otettu kuva sarjaportin kautta näytettäväksi CamScripter -virheenkorjausikkunassa. Sinun täytyy kutsua take_picture ennen tämän funktion kutsumista - se ei itse ota kuvaa.
save_picture#
save_picture(string filename)
- Parametrit:
filenameTiedostonimi, jolla kuva yritetään tallentaa.- Paluuarvot:
ei mitään
Tallenna kuvapuskurissa parhaillaan oleva kuva välitettyyn tiedostonimeen. Tiedostonimen on oltava kelvollinen FAT16-tiedostonimi <8.3>, tai palautetaan virhe. Jos annetulla tiedostonimellä on jo tiedosto, se korvataan. Huomaa, että tämä funktio ei itse ota kuvaa - sinun on kutsuttava take_picture ennen save_picturen kutsumista.
file_exists#
file_exists(string filename)
- Parametrit:
filename- Paluuarvot:
totuusarvo, joka ilmaisee, onko tiedosto olemassa
Testaa, onko MMC/SD-kortilla tiedostoa annetulla tiedostonimellä.
camera_set_resolution#
camera_set_resolution(integer resolution)
- Parametrit:
resolutionKameran uusi resoluutio- Paluuarvot:
ei mitään
Aseta CMUcam3:n resoluutio. Resoluution täytyy olla joko korkea tai matala (katso Camera Resolution Constants kohdassa Lua API: vakiot).
camera_set_colorspace#
camera_set_colorspace(integer space)
- Parametrit:
spaceKameran uusi resoluutio, täytyy olla jokoCC3_COLORSPACE_YCRCBTAICC3_COLORSPACE_RGB- Paluuarvot:
ei mitään
Aseta CMUcam3:n väriavaruudeksi joko YCRCB tai RGB (RGB on oletus). Katso myös Lua API: vakiot.
wait#
wait(integer ms)
- Parametrit:
msOdotettavien millisekuntien lukumäärä- Paluuarvot:
ei mitään
Odota ms millisekuntia.
pixbuf_set_coi#
pixbuf_set_coi(integer coi)
- Paluuarvot:
ei mitään
Aseta kameran kiinnostavat kanavat. Määrittää, mitkä kanavat kamera tallentaa kuvia otettaessa. Pienempien COI-arvojen asettaminen voi nopeuttaa kuvankäsittelyä. Sallitut COI-arvot löytyvät kohdan Channel of Interest Constants alta kohdassa Lua API: vakiot.
pixbuf_read_rows#
pixbuf_read_rows(image img, integer num_rows)
- Parametrit:
imgKuvaobjekti, johon pixbuf-rivit luetaan,num_rowsLuettavien rivien lukumäärä- Paluuarvot:
Onnistuneesti luettujen rivien lukumäärä
Kopioi num_rows riviä kameran kuvapuskurista (pixbuf) välitettyyn image -objektiin.
pixbuf_get_width#
pixbuf_get_width()
- Parametrit:
ei mitään
- Paluuarvot:
pixbufin leveys pikseleinä
Hae kuvapuskurin (pixbuf) leveys. Kuvapuskuri on täytynyt ladata ennen tämän kutsumista kutsumalla joko take_picture tai show_picture.
pixbuf_get_height#
pixbuf_get_height()
- Parametrit:
ei mitään
- Paluuarvot:
pixbufin korkeus pikseleinä
Hae kuvapuskurin (pixbuf) korkeus. Kuvapuskuri on täytynyt ladata ennen tämän kutsumista kutsumalla joko take_picture tai show_picture.
pixel_new#
pixel_new()
- Parametrit:
ei mitään
- Paluuarvot:
Uusi pixel -tietorakenne
Luo ja palauttaa uuden pixel-tietorakenteen. Katso pixel-dokumentaatio saadaksesi tietoja rakenteesta. Katso myös pixbuf_get_pixel ja get_pixel pixel -rakenteen käytöstä.
get_pixel#
get_pixel(pixel pxl, integer x, integer y)
- Parametrit:
pxlpixel -tietorakenne, johon pikseliarvot tallennetaan.x,yHaettavan pikselin x- ja y-koordinaatit kuvapuskurin sisällä.- Paluuarvot:
ei mitään, pikseliarvot tallennetaan annettuun pixel -objektiin
Hae yksittäinen pixel CMUcam3:n kuvapuskurista (pixbuf). x:n ja y:n on oltava pienempiä kuin vastaavasti pixbuf_get_width ja pixbuf_get_height. Jos take_picture:a ei ole kutsuttu kuvan tallentamiseksi pixbufiin, tämä funktio ei epäonnistu, mutta pixel -rakenteeseen lisätyt arvot ovat roskaa.
image_new#
image_new(integer width, integer height)
- Parametrit:
widthKuvan leveys,heightKuvan korkeus- Paluuarvot:
Uusi image -tietorakenne.
Hae uusi image -tietorakenne välitetyllä leveydellä, korkeudella ja pixsizellä. Katso image -dokumentaatiosta lisätietoja image -tietorakenteiden käytöstä.
Hae pixel välitetystä image -tietorakenteesta. Pikselin RGB-arvot tallennetaan välitettyyn pixel -tietorakenteeseen. Parametrin x on oltava pienempi kuin image -rakenteen leveys, ja y:n on oltava pienempi kuin image -rakenteen korkeus.
framediff_new#
framediff_new(integer template_width, integer template_height)
- Parametrit:
template_widthVertailtavan mallin leveys,template_heightMallin korkeus- Paluuarvot:
Uusi framediff -tietorakenne
Hae uusi framediff -tietorakenne välitetyllä mallin leveydellä ja korkeudella. framediff -rakenteita käytetään yleensä CMUcam3:lla otettujen kahden kuvaruudun välisen eron arviointiin, mutta katso lisätietoja framediff -dokumentaatiosta.
framediff_scanline_start#
framediff_scanline_start(framediff fd)
- Parametrit:
fdKäytettävä framediff -objekti- Paluuarvot:
Palauttaa 1, jos onnistui.
Alustaa kaiken, mitä tarvitaan ruutuerotukseen käyttäen framediff_scanline:a. Varmistaa, että framediff -rakenteessa on asetettu current_template (tai lataa nykyisen mallin, jos framediff:get_load_frame() on tosi).
framediff_scanline#
framediff_scanline(image img, framediff fd)
Hakee kaikki pikselit img:stä ja lataa ne oikeaan paikkaan framediff -rakenteessa, jotta kahta mallia (current_template ja previous_template) voidaan verrata. Jos fd:get_load_frame on tosi, se lataa img:n pikselit previous_template-paikkaan. Jos fd:get_load_frame on epätosi, se lataa img:n pikselit current_templateen.
framediff_scanline_finish#
framediff_scanline_finish(framediff fd)
- Parametrit:
fdKäytettävä framediff -tietorakenne- Paluuarvot:
Palauttaa 1, jos operaatio onnistui.
Vertaa framediff -tietorakenteen kahta mallia (current_template ja previous_template) ja laskee erilaisten pikselien lukumäärän tallentaen kyseisen arvon kohtaan framediff:get_num_pixels.
print_color_tracker#
print_color_tracker(tracker tracker)
- Parametrit:
trackertracker tarjoaa tulostukseen käytettävän datan- Paluuarvot:
ei mitään
Käyttää tracker -objektin dataa tulostaakseen virheenkorjaustietoja CamScripterissä. Tulostaa suorakulmion, joka edustaa kameran kuvapuskurissa olevaa kuvaa, ja sen sisällä toisen suorakulmion, joka edustaa seurattavan värin rajauslaatikkoa, sekä punaisen pisteen, joka näyttää värin keskipisteen kuvassa.
print_rectangle#
print_rectangle(integer x, integer y, integer width, integer height [, integer red, integer green, integer blue])
- Parametrit:
x,yon suorakulmion vasemman yläkulman koordinaattisijainti etäisyytenä grafiikkanäytön vasemmasta yläkulmasta.widthjaheightovat suorakulmion leveys ja korkeus. Valinnaisetred-,green- jablue-argumentit antavat värin, jolla suorakulmio piirretään, RGB-arvona. Oletusväri on musta.- Paluuarvot:
ei mitään
Piirtää suorakulmion, joka on width pikseliä leveä ja height pikseliä korkea CamScripterin grafiikkavälilehdelle. Valinnaiset red-, green- ja blue-argumentit mahdollistavat suorakulmion värin muuttamisen RGB-arvoilla väliltä 0–255.
print_line#
print_line(integer start_x, integer start_y, integer end_x, integer end_y [, integer red, integer green, integer blue])
- Parametrit:
Viivan aloituspiste ja päätepiste sekä valinnaiset argumentit viivan värin asettamiseksi.
- Paluuarvot:
ei mitään
Piirrä viiva CamScripterin grafiikkanäytölle pisteestä (start_x, start_y) pisteeseen (end_x, end_y). Viivan RGB-väri voidaan määrittää valinnaisilla red-, green- ja blue-argumenteilla. Oletusväri on musta, jos väriä ei ole määritetty.
print_oval#
print_oval(integer x, integer y, integer width, integer height [, integer red, intger green, integer blue])
- Parametrit:
Soikion vasen yläkulma määritetään koordinaateilla (x, y). Leveys ja korkeus ovat pikseleinä. Punainen, vihreä ja sininen ovat valinnaisia argumentteja soikion värin asettamiseksi.
- Paluuarvot:
ei mitään
Piirrä soikio CamScripterin grafiikkanäytölle. Soikion vasen yläkulma on pisteessä (x, y). Soikion RGB-väri voidaan määrittää valinnaisilla red-, green- ja blue-argumenteilla. Oletusväri on musta, jos väriä ei ole määritetty.
clear_graphics#
clear_graphics()
- Parametrit:
ei mitään
- Paluuarvot:
ei mitään
Tyhjennä CamScripterin grafiikkanäyttö.
tracker_track_color#
tracker_track_color(tracker theTracker)
- Parametrit:
tracker -objekti, jota käytetään värinseurantaan, asetettuna halutulla asetettavalla RGB-arvolla.
- Paluuarvot:
totuusarvo, joka ilmaisee, pystyikö seuranta tapahtumaan. Palauttaa true, vaikka väriä ei löytynyt – palauttaa false vain, jos tapahtui virhe.
Seuraa väriä CMUcam3:ssa käyttäen annettua tracker -objektia. take_picture() täytyy kutsua ennen värin seuraamisen yrittämistä. Analysoi kuvapuskurin ja asettaa arvot tracker -objektiin antaakseen värin rajauslaatikon ja (x, y) -arvon, joka edustaa värin keskipistettä. Katso lisätietoja tracker-dokumentaatiosta.