Lua API: tracker#

Descripción#

La estructura de datos tracker se usa para asistir al seguimiento de color en la CMUcam3. Contiene información sobre el seguimiento que se está realizando, y parámetros que pueden establecerse para controlar qué color se rastrea y otros aspectos del seguimiento de color. TODO: Añadir una buena descripción de qué es el cuadro delimitador y qué es el centroide

Ejemplo#

Aquí hay un breve ejemplo que muestra cómo se usa el objeto tracker para encontrar un área roja en el fotograma de imagen de la CMUcam3, y luego ese cuadro se imprime en el área de depuración de CamScripter en Eclipse.

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)

Creación#

Consulte tracker_new

Métodos#

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

Parámetros:

ninguno

Valores de retorno:

Coordenada x entera del centroide

Obtiene la coordenada x del centroide del color que se está rastreando, donde (0, 0) es la esquina superior izquierda de la imagen.

get_centroid_y#

trkr:get_centroid_y()

Parámetros:

ninguno

Valores de retorno:

Coordenada y entera del centroide

Obtiene la coordenada y del centroide del color que se está rastreando, donde (0, 0) es la esquina superior izquierda de la imagen.

get_density#

trkr:get_density()

Parámetros:

ninguno

Valores de retorno:

Densidad del color que se está rastreando

Obtiene la densidad del color rastreado dentro del búfer de imagen. La densidad es una medida de cuán denso es el color que se está rastreando dentro del cuadro delimitador del rastreador de color – cuantos más píxeles del color que se rastrea haya en el cuadro, mayor es la densidad.

get_num_pixels#

trkr:get_num_pixels()

Parámetros:

ninguno

Valores de retorno:

Número de píxeles en el búfer de imagen que coinciden con el color del rastreador de color

Obtiene el número total de píxeles del color que se está rastreando (según lo determinado por los valores RGB pasados a tracker_new) que se encontraron en el búfer de imagen de la CMUcam3.

get_x0#

trkr:get_x0()

Parámetros:

ninguno

Valores de retorno:

El valor entero de la coordenada x de la esquina superior izquierda del cuadro delimitador de seguimiento de color.

Cuando se llama a tracker_track_color, establece un cuadro delimitador que describe los límites del color que se está rastreando dentro de la imagen. (x0, y0) es la ubicación de la esquina superior izquierda de ese cuadro, y (x1, y1) es la ubicación de la esquina inferior derecha de ese cuadro dentro del búfer de imagen, donde (0, 0) es la esquina superior izquierda del búfer de imagen. get_x0 devuelve la coordenada x de la esquina superior izquierda del cuadro límite del color.

get_y0#

trkr:get_y0()

Parámetros:

ninguno

Valores de retorno:

El valor entero de la coordenada y de la esquina superior izquierda del cuadro delimitador de seguimiento de color.

Cuando se llama a tracker_track_color, establece un cuadro delimitador que describe los límites del color que se está rastreando dentro de la imagen. (x0, y0) es la ubicación de la esquina superior izquierda de ese cuadro, y (x1, y1) es la ubicación de la esquina inferior derecha de ese cuadro dentro del búfer de imagen, donde (0, 0) es la esquina superior izquierda del búfer de imagen. get_y0 devuelve la coordenada x de la esquina superior izquierda del cuadro límite del color.

get_x1#

trkr:get_y1()

Parámetros:

ninguno

Valores de retorno:

El valor entero de la coordenada x de la esquina inferior derecha del cuadro delimitador de seguimiento de color.

Cuando se llama a tracker_track_color, establece un cuadro delimitador que describe los límites del color que se está rastreando dentro de la imagen. (x0, y0) es la ubicación de la esquina superior izquierda de ese cuadro, y (x1, y1) es la ubicación de la esquina inferior derecha de ese cuadro dentro del búfer de imagen, donde (0, 0) es la esquina superior izquierda del búfer de imagen. get_x1 devuelve la coordenada x de la esquina superior izquierda del cuadro límite del color.

get_y1#

trkr:get_y1()

Parámetros:

ninguno

Valores de retorno:

El valor entero de la coordenada y de la esquina inferior derecha del cuadro delimitador de seguimiento de color.

Cuando se llama a tracker_track_color, establece un cuadro delimitador que describe los límites del color que se está rastreando dentro de la imagen. (x0, y0) es la ubicación de la esquina superior izquierda de ese cuadro, y (x1, y1) es la ubicación de la esquina inferior derecha de ese cuadro dentro del búfer de imagen, donde (0, 0) es la esquina superior izquierda del búfer de imagen. get_y1 devuelve la coordenada x de la esquina superior izquierda del cuadro límite del color.

set_lower_bound#

trkr:set_lower_bound(integer channel, integer bound)

Parámetros:

channel El canal para el que está estableciendo un límite. Consulte las constantes de canal de interés en Lua API: Constantes. bound El valor mínimo posible para el canal dado. Debe estar entre 0 y 255.

Valores de retorno:

ninguno

Establece el límite inferior para un canal en el rastreador de color. El límite inferior es el valor mínimo que un píxel puede tener en ese canal para ser rastreado. Para fines de seguimiento de color, para que cualquier píxel se considere rastreable, ese píxel debe estar entre el límite inferior y superior en cada uno de sus canales.

set_noise_filter#

trkr:set_noise_filter(integer filter)

Parámetros:

filter El nuevo valor del filtro de ruido. El valor predeterminado es 2.

Valores de retorno:

ninguno

El valor del filtro de ruido determina cuántos píxeles activos consecutivos antes de un píxel se requieren antes de que el píxel deba contarse como detectado por el seguimiento de color. El valor debe estar entre 0 y 255.

set_upper_bound#

trkr:set_upper_bound(integer channel, integer bound)

Parámetros:

channel El canal para el que está estableciendo un límite. Consulte las constantes de canal de interés en Lua API: Constantes. bound El valor máximo posible para el canal dado. Debe estar entre 0 y 255.

Valores de retorno:

ninguno

Establece el límite superior para un canal en el rastreador de color. El límite superior es el valor máximo que un píxel puede tener en ese canal para ser rastreado. Para fines de seguimiento de color, para que cualquier píxel se considere rastreable, ese píxel debe estar entre el límite inferior y superior en cada uno de sus canales.