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_xget_centroid_yget_densityget_num_pixelsget_x0get_x1get_y0get_y1set_lower_boundset_noise_filterset_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:
channelEl canal para el que está estableciendo un límite. Consulte las constantes de canal de interés en Lua API: Constantes.boundEl 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:
filterEl 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:
channelEl canal para el que está estableciendo un límite. Consulte las constantes de canal de interés en Lua API: Constantes.boundEl 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.