Lua API: tracker#

Descrição#

A estrutura de dados tracker é usada para auxiliar o rastreamento de cor na CMUcam3. Ela contém informações sobre o rastreamento sendo realizado e parâmetros que podem ser definidos para controlar qual cor é rastreada e outros aspectos do rastreamento de cor. TODO: Add a good description of what hte bounding box is, and what the centroid is

Exemplo#

Aqui está um exemplo curto que mostra como o objeto tracker é usado para encontrar uma área vermelha no quadro de imagem da CMUcam3, e então essa caixa é impressa na área de depuração do CamScripter no 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)

Criação#

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:

nenhum

Valores de Retorno:

Coordenada x inteira do centroide

Obtém a coordenada x do centroide da cor sendo rastreada, onde (0, 0) é o canto superior esquerdo da imagem.

get_centroid_y#

trkr:get_centroid_y()

Parâmetros:

nenhum

Valores de Retorno:

Coordenada y inteira do centroide

Obtém a coordenada y do centroide da cor sendo rastreada, onde (0, 0) é o canto superior esquerdo da imagem.

get_density#

trkr:get_density()

Parâmetros:

nenhum

Valores de Retorno:

Densidade da cor sendo rastreada

Obtém a densidade da cor rastreada dentro do buffer de imagem. A densidade é uma medida de quão densa é a cor sendo rastreada dentro da caixa delimitadora do rastreador de cor – quanto mais pixels da cor sendo rastreada na caixa, maior é a densidade.

get_num_pixels#

trkr:get_num_pixels()

Parâmetros:

nenhum

Valores de Retorno:

Número de pixels no buffer de imagem que correspondem à cor do rastreador de cor

Obtém o número total de pixels da cor sendo rastreada (conforme determinado pelos valores RGB passados para tracker_new) que foram encontrados no buffer de imagem da CMUcam3.

get_x0#

trkr:get_x0()

Parâmetros:

nenhum

Valores de Retorno:

O valor inteiro da coordenada x do canto superior esquerdo da caixa delimitadora de rastreamento de cor.

Quando tracker_track_color é chamada, ela estabelece uma caixa delimitadora que descreve os limites da cor sendo rastreada dentro da imagem. (x0, y0) é a localização do canto superior esquerdo dessa caixa, e (x1, y1) é a localização do canto inferior direito dessa caixa dentro do buffer de imagem, onde (0, 0) é o canto superior esquerdo do buffer de imagem. get_x0 retorna a coordenada x do canto superior esquerdo da caixa de limites de cor.

get_y0#

trkr:get_y0()

Parâmetros:

nenhum

Valores de Retorno:

O valor inteiro da coordenada y do canto superior esquerdo da caixa delimitadora de rastreamento de cor.

Quando tracker_track_color é chamada, ela estabelece uma caixa delimitadora que descreve os limites da cor sendo rastreada dentro da imagem. (x0, y0) é a localização do canto superior esquerdo dessa caixa, e (x1, y1) é a localização do canto inferior direito dessa caixa dentro do buffer de imagem, onde (0, 0) é o canto superior esquerdo do buffer de imagem. get_y0 retorna a coordenada x do canto superior esquerdo da caixa de limites de cor.

get_x1#

trkr:get_y1()

Parâmetros:

nenhum

Valores de Retorno:

O valor inteiro da coordenada x do canto inferior direito da caixa delimitadora de rastreamento de cor.

Quando tracker_track_color é chamada, ela estabelece uma caixa delimitadora que descreve os limites da cor sendo rastreada dentro da imagem. (x0, y0) é a localização do canto superior esquerdo dessa caixa, e (x1, y1) é a localização do canto inferior direito dessa caixa dentro do buffer de imagem, onde (0, 0) é o canto superior esquerdo do buffer de imagem. get_x1 retorna a coordenada x do canto superior esquerdo da caixa de limites de cor.

get_y1#

trkr:get_y1()

Parâmetros:

nenhum

Valores de Retorno:

O valor inteiro da coordenada y do canto inferior direito da caixa delimitadora de rastreamento de cor.

Quando tracker_track_color é chamada, ela estabelece uma caixa delimitadora que descreve os limites da cor sendo rastreada dentro da imagem. (x0, y0) é a localização do canto superior esquerdo dessa caixa, e (x1, y1) é a localização do canto inferior direito dessa caixa dentro do buffer de imagem, onde (0, 0) é o canto superior esquerdo do buffer de imagem. get_y1 retorna a coordenada x do canto superior esquerdo da caixa de limites de cor.

set_lower_bound#

trkr:set_lower_bound(integer channel, integer bound)

Parâmetros:

channel O canal para o qual você está definindo um limite. Veja as constantes de canal de interesse em Lua API: Constantes. bound O valor mínimo possível para o canal dado. Deve estar entre 0 e 255.

Valores de Retorno:

nenhum

Define o limite inferior para um canal no rastreador de cor. O limite inferior é o valor mínimo que um pixel pode ter naquele canal para ser rastreado. Para fins de rastreamento de cor, para que qualquer pixel seja considerado rastreável, esse pixel deve estar entre o limite inferior e o superior em cada um dos seus canais.

set_noise_filter#

trkr:set_noise_filter(integer filter)

Parâmetros:

filter O novo valor do filtro de ruído. O padrão é 2.

Valores de Retorno:

nenhum

O valor do filtro de ruído determina quantos pixels ativos consecutivos antes de um pixel são necessários para que o pixel seja contado como detectado pelo rastreamento de cor. O valor deve estar entre 0 e 255.

set_upper_bound#

trkr:set_upper_bound(integer channel, integer bound)

Parâmetros:

channel O canal para o qual você está definindo um limite. Veja as constantes de canal de interesse em Lua API: Constantes. bound O valor máximo possível para o canal dado. Deve estar entre 0 e 255.

Valores de Retorno:

nenhum

Define o limite superior para um canal no rastreador de cor. O limite superior é o valor máximo que um pixel pode ter naquele canal para ser rastreado. Para fins de rastreamento de cor, para que qualquer pixel seja considerado rastreável, esse pixel deve estar entre o limite inferior e o superior em cada um dos seus canais.