API Lua : tracker#
Description#
La structure de données tracker est utilisée pour faciliter le suivi de couleur dans la CMUcam3. Elle contient des informations sur le suivi en cours, ainsi que des paramètres qui peuvent être définis pour contrôler quelle couleur est suivie et d’autres aspects du suivi de couleur. TODO: Add a good description of what hte bounding box is, and what the centroid is
Exemple#
Voici un court exemple qui montre comment l’objet tracker est utilisé pour trouver une zone rouge dans l’image de la CMUcam3, puis ce cadre est affiché dans la zone de débogage de CamScripter dans 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)
Création#
Consultez tracker_new
Méthodes#
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()
- Paramètres:
aucun
- Valeurs de retour:
Coordonnée x entière du centroïde
Obtient la coordonnée x du centroïde de la couleur suivie, où (0, 0) est le coin supérieur gauche de l’image.
get_centroid_y#
trkr:get_centroid_y()
- Paramètres:
aucun
- Valeurs de retour:
Coordonnée y entière du centroïde
Obtient la coordonnée y du centroïde de la couleur suivie, où (0, 0) est le coin supérieur gauche de l’image.
get_density#
trkr:get_density()
- Paramètres:
aucun
- Valeurs de retour:
Densité de la couleur suivie
Obtient la densité de la couleur suivie dans la mémoire tampon d’image. La densité est une mesure de la concentration de la couleur suivie à l’intérieur du cadre englobant du suiveur de couleur – plus il y a de pixels de la couleur suivie dans le cadre, plus la densité est élevée.
get_num_pixels#
trkr:get_num_pixels()
- Paramètres:
aucun
- Valeurs de retour:
Nombre de pixels de la mémoire tampon d’image correspondant à la couleur du suiveur de couleur
Obtient le nombre total de pixels de la couleur suivie (telle que déterminée par les valeurs RGB passées à tracker_new) qui ont été trouvés dans la mémoire tampon d’image de la CMUcam3.
get_x0#
trkr:get_x0()
- Paramètres:
aucun
- Valeurs de retour:
La valeur entière de la coordonnée x du coin supérieur gauche du cadre englobant de suivi de couleur.
Lorsque tracker_track_color est appelé, il établit une boîte englobante qui décrit les limites de la couleur suivie dans l’image. (x0, y0) est l’emplacement du coin supérieur gauche de cette boîte, et (x1, y1) est l’emplacement du coin inférieur droit de cette boîte dans le tampon d’image, où (0, 0) est le coin supérieur gauche du tampon d’image. get_x0 renvoie la coordonnée x du coin supérieur gauche de la boîte de délimitation de la couleur.
get_y0#
trkr:get_y0()
- Paramètres:
aucun
- Valeurs de retour:
La valeur entière de la coordonnée y du coin supérieur gauche du cadre englobant de suivi de couleur.
Lorsque tracker_track_color est appelé, il établit une boîte englobante qui décrit les limites de la couleur suivie dans l’image. (x0, y0) est l’emplacement du coin supérieur gauche de cette boîte, et (x1, y1) est l’emplacement du coin inférieur droit de cette boîte dans le tampon d’image, où (0, 0) est le coin supérieur gauche du tampon d’image. get_y0 renvoie la coordonnée x du coin supérieur gauche de la boîte de délimitation de la couleur.
get_x1#
trkr:get_y1()
- Paramètres:
aucun
- Valeurs de retour:
La valeur entière de la coordonnée x du coin inférieur droit du cadre englobant de suivi de couleur.
Lorsque tracker_track_color est appelé, il établit une boîte englobante qui décrit les limites de la couleur suivie dans l’image. (x0, y0) est l’emplacement du coin supérieur gauche de cette boîte, et (x1, y1) est l’emplacement du coin inférieur droit de cette boîte dans le tampon d’image, où (0, 0) est le coin supérieur gauche du tampon d’image. get_x1 renvoie la coordonnée x du coin supérieur gauche de la boîte de délimitation de la couleur.
get_y1#
trkr:get_y1()
- Paramètres:
aucun
- Valeurs de retour:
La valeur entière de la coordonnée y du coin inférieur droit du cadre englobant de suivi de couleur.
Lorsque tracker_track_color est appelé, il établit une boîte englobante qui décrit les limites de la couleur suivie dans l’image. (x0, y0) est l’emplacement du coin supérieur gauche de cette boîte, et (x1, y1) est l’emplacement du coin inférieur droit de cette boîte dans le tampon d’image, où (0, 0) est le coin supérieur gauche du tampon d’image. get_y1 renvoie la coordonnée x du coin supérieur gauche de la boîte de délimitation de la couleur.
set_lower_bound#
trkr:set_lower_bound(integer channel, integer bound)
- Paramètres:
channelLe canal pour lequel vous définissez une borne. Voir les constantes de canal d’intérêt dans API Lua : constantes.boundLa valeur minimale possible pour le canal donné. Doit être comprise entre 0 et 255.- Valeurs de retour:
aucun
Définit la borne inférieure pour un canal du suiveur de couleur. La borne inférieure est la valeur minimale qu’un pixel peut avoir dans ce canal pour être suivi. Aux fins du suivi de couleur, pour qu’un pixel soit considéré comme suivable, ce pixel doit se situer entre la borne inférieure et la borne supérieure dans chacun de ses canaux.
set_noise_filter#
trkr:set_noise_filter(integer filter)
- Paramètres:
filterLa nouvelle valeur du filtre de bruit. La valeur par défaut est 2.- Valeurs de retour:
aucun
La valeur du filtre de bruit détermine combien de pixels actifs consécutifs avant un pixel sont requis pour que ce pixel soit compté comme étant détecté par le suivi de couleur. La valeur doit être comprise entre 0 et 255.
set_upper_bound#
trkr:set_upper_bound(integer channel, integer bound)
- Paramètres:
channelLe canal pour lequel vous définissez une borne. Voir les constantes de canal d’intérêt dans API Lua : constantes.boundLa valeur maximale possible pour le canal donné. Doit être comprise entre 0 et 255.- Valeurs de retour:
aucun
Définit la borne supérieure pour un canal du suiveur de couleur. La borne supérieure est la valeur maximale qu’un pixel peut avoir dans ce canal pour être suivi. Aux fins du suivi de couleur, pour qu’un pixel soit considéré comme suivable, ce pixel doit se situer entre la borne inférieure et la borne supérieure dans chacun de ses canaux.