Lua API: Funciones#

set_debug#

set_debug(boolean debug_on)

Parámetros:

debug_on – Pase un valor que se evalúe como verdadero (depuración activada) o falso (depuración desactivada)

Valores de retorno:

ninguno

Active o desactive la depuración. Cuando la depuración está activada, la cámara intentará enviar información de depuración de texto e imagen a través del puerto serie. Desactive la depuración una vez que un programa esté terminado para mejorar el rendimiento.

print#

Uso: print("a message") / print("one plus one is ", 1+1)

Parámetros:

Pase tantos valores como desee.

Valores de retorno:

ninguno

Función de depuración, usada para imprimir valores. La CMUcam3 enviará todos los valores pasados a esta función al complemento de Eclipse CamScripter, donde se mostrarán en el área de consola.

turn_on_led#

turn_on_led(integer led_number)

Parámetros:

led_number El número del LED de la CMUcam3 a encender. 0, 1, 2 son los únicos valores válidos.

Valores de retorno:

ninguno

Encienda uno de los LED de la CMUcam3.

turn_off_led#

turn_off_led(integer led_number)

Parámetros:

led_number El número del LED de la CMUcam3 a encender. 0, 1, 2 son los únicos valores válidos.

Valores de retorno:

ninguno

Apague uno de los LED de la CMUcam3.

take_picture#

take_picture()

Parámetros:

ninguno

Valores de retorno:

ninguno

Toma una foto con la CMUcam3 y carga el búfer de imagen (pixbuf).

save_picture#

save_picture(string filename)

Parámetros:

filename Nombre de archivo con el que intentar guardar la imagen.

Valores de retorno:

ninguno

Guarda la imagen que está actualmente en el búfer de imagen con el nombre de archivo pasado. El nombre de archivo debe ser un nombre de archivo FAT16 válido <8.3>, o se devolverá un error. Si ya existe un archivo con el nombre de archivo dado, se sobrescribirá. Tenga en cuenta que esta función no toma una foto por sí misma; debe llamar a take_picture antes de llamar a save_picture.

file_exists#

file_exists(string filename)

Parámetros:

filename

Valores de retorno:

booleano que indica si el archivo existe

Comprueba si hay un archivo en la tarjeta MMC/SD con el nombre de archivo pasado.

camera_set_resolution#

camera_set_resolution(integer resolution)

Parámetros:

resolution La nueva resolución para la cámara

Valores de retorno:

ninguno

Establece la resolución de la CMUcam3. La resolución debe ser alta o baja (consulte las Constantes de resolución de la cámara en Lua API: Constantes).

camera_set_colorspace#

camera_set_colorspace(integer space)

Parámetros:

space La nueva resolución para la cámara, debe ser CC3_COLORSPACE_YCRCB O CC3_COLORSPACE_RGB

Valores de retorno:

ninguno

Establece el espacio de color de la CMUcam3 en YCRCB o RGB (RGB es el predeterminado). Consulte también Lua API: Constantes.

wait#

wait(integer ms)

Parámetros:

ms El número de milisegundos a esperar

Valores de retorno:

ninguno

Espere ms milisegundos.

pixbuf_set_coi#

pixbuf_set_coi(integer coi)

Valores de retorno:

ninguno

Establece los canales de interés para la cámara. Determina qué canales registra la cámara al tomar fotos. Establecer valores más pequeños para COI puede acelerar el procesamiento de imagen. Los valores válidos para COI pueden encontrarse en las Constantes de canal de interés en Lua API: Constantes.

pixbuf_read_rows#

pixbuf_read_rows(image img, integer num_rows)

Parámetros:

img Un objeto de imagen en el que se leen las filas del pixbuf, num_rows El número de filas a leer

Valores de retorno:

El número de filas que se leyeron correctamente

Copia num_rows filas del búfer de imagen de la cámara (pixbuf) en el objeto image pasado.

pixbuf_get_width#

pixbuf_get_width()

Parámetros:

ninguno

Valores de retorno:

El ancho del pixbuf en píxeles

Obtiene el ancho del búfer de imagen (pixbuf). El búfer de imagen debe haberse cargado antes de llamar a esto, llamando a take_picture o a show_picture.

pixbuf_get_height#

pixbuf_get_height()

Parámetros:

ninguno

Valores de retorno:

La altura del pixbuf en píxeles

Obtiene la altura del búfer de imagen (pixbuf). El búfer de imagen debe haberse cargado antes de llamar a esto, llamando a take_picture o a show_picture.

pixel_new#

pixel_new()

Parámetros:

ninguno

Valores de retorno:

Una nueva estructura de datos pixel

Crea y devuelve una nueva estructura de datos de píxel. Consulte la documentación de pixel para obtener detalles sobre la estructura. Consulte también pixbuf_get_pixel y get_pixel para el uso de la estructura pixel.

get_pixel#

get_pixel(pixel pxl, integer x, integer y)

Parámetros:

pxl La estructura de datos pixel en la que almacenar los valores del píxel. x, y Las coordenadas x e y del píxel a recuperar dentro del búfer de imagen.

Valores de retorno:

ninguno, los valores del píxel se almacenan en el pixel pasado

Obtiene un único pixel del búfer de imagen de la CMUcam3 (pixbuf). x e y deben ser menores que pixbuf_get_width y pixbuf_get_height, respectivamente. Si no se ha llamado a take_picture para almacenar una imagen en el pixbuf, esta función no fallará, pero los valores insertados en el pixel serán basura.

image_new#

image_new(integer width, integer height)

Parámetros:

width El ancho de la imagen, height La altura de la imagen

Valores de retorno:

Una nueva estructura de datos image.

Obtiene una nueva estructura de datos image, con el ancho, la altura y el pixsize pasados. Consulte la documentación de image para obtener más información sobre el uso de las estructuras de datos image.

Obtiene un pixel de la estructura de datos image pasada. Los valores RGB del píxel se almacenarán en la estructura de datos pixel pasada. El parámetro x debe ser menor que el ancho de la image, e y debe ser menor que la altura de la image.

framediff_new#

framediff_new(integer template_width, integer template_height)

Parámetros:

template_width El ancho de la plantilla que estamos diferenciando, template_height La altura de la plantilla

Valores de retorno:

Una nueva estructura de datos framediff

Obtiene una nueva estructura de datos framediff, con el ancho y la altura de plantilla pasados. Las estructuras framediff se usan generalmente para evaluar la diferencia entre dos fotogramas de imagen tomados con la CMUcam3, pero consulte la documentación de framediff para obtener más información.

framediff_scanline_start#

framediff_scanline_start(framediff fd)

Parámetros:

fd El objeto framediff a usar

Valores de retorno:

Devuelve 1 si tiene éxito.

Inicializa todo lo necesario para hacer diferenciación de fotogramas usando framediff_scanline. Se asegura de que haya un current_template establecido en la estructura framediff (o carga la plantilla actual si framediff:get_load_frame() es verdadero).

framediff_scanline#

framediff_scanline(image img, framediff fd)

Parámetros:

img Una estructura de datos image, fd Una estructura de datos framediff

Valores de retorno:

Devuelve 1 si tiene éxito

Obtiene todos los píxeles de img y los carga en la ranura correspondiente de la estructura framediff, de modo que las dos plantillas (current_template y previous_template) puedan compararse. Si fd:get_load_frame es verdadero, cargará los píxeles de img en la ranura de la plantilla anterior. Si fd:get_load_frame es falso, carga los píxeles de img en current_template.

framediff_scanline_finish#

framediff_scanline_finish(framediff fd)

Parámetros:

fd La estructura de datos framediff a usar

Valores de retorno:

Devuelve 1 si la operación tuvo éxito.

Compara las dos plantillas (current_template y previous_template) en la estructura de datos framediff y calcula el número de píxeles que son diferentes, almacenando ese valor en framediff:get_num_pixels.

clear_graphics#

clear_graphics()

Parámetros:

ninguno

Valores de retorno:

ninguno

Borra la pantalla gráfica de CamScripter.

tracker_track_color#

tracker_track_color(tracker theTracker)

Parámetros:

el objeto tracker usado para hacer el seguimiento de color, configurado con el valor RGB deseado a establecer.

Valores de retorno:

booleano que indica si el seguimiento pudo realizarse. Devuelve verdadero incluso si el color no se encontró – solo devuelve falso si se produjo un error.

Rastrea un color en la CMUcam3 usando el objeto tracker pasado. Debe llamarse a take_picture() antes de intentar rastrear un color. Analiza el búfer de imagen y establece valores en el objeto tracker para dar un cuadro delimitador para el color y un valor (x, y) que representa el centroide del color. Consulte la documentación de tracker para más detalles.