Assurez-vous d'avoir signatures de couleur et codes de couleur configurés avec votre capteur de vision AI afin qu'ils puissent être utilisés avec vos blocs. Pour en savoir plus sur comment les configurer, vous pouvez lire les articles ci-dessous :
- Configuration des signatures de couleur avec la signature AI Vision dans VEXcode V5
- Configuration des codes couleur avec la signature AI Vision dans VEXcode V5
Le capteur de vision AI peut également détecter les classifications AI et les AprilTags. Pour savoir comment activer ces modes de détection, rendez-vous ici :
- Classifications de l'IA avec le capteur de vision AI dans VEXcode V5
- AprilTags avec le capteur de vision AI dans VEXcode V5
Prendre un instantané
Le blocPrendre un instantané prend une photo de ce que le capteur de vision AI voit actuellement et extrait des données de cet instantané qui peuvent ensuite être utilisées dans un projet. Lorsqu'un instantané est pris, vous devez spécifier le type d'objet sur lequel le capteur de vision AI doit collecter des données :
- Signature de couleur
- Code couleur
- Classifications de l'IA
- avrilMots clés
Prendre un instantané créera un tableau de tous les objets détectés que vous avez spécifiés. Par exemple, si vous souhaitez détecter une signature de couleur « rouge »et que le capteur de vision AI détecte 3 objets rouges différents, les données des trois seront placées dans le tableau.
Pour plus d'informations sur la façon de spécifier entre différents objets, accédez à la section « Définir l'élément d'objet » de cet article.
Dans cet exemple, il détectera uniquement les objets qui correspondent à sa signature de couleur « Bleu » configurée et rien d'autre.
Données extraites d'un instantané
Gardez à l’esprit que le capteur de vision AI utilisera son dernier instantané pris pour tous les blocs qui suivent. Pour vous assurer d'obtenir toujours les informations les plus récentes de votre capteur de vision IA, reprenez votre instantané chaque fois que vous souhaitez en extraire des données.
Résolution
Comprendre la résolution du capteur de vision AI est essentiel pour une interprétation précise des données. Le capteur a une résolution de 320x240 pixels, avec le centre exact aux coordonnées (160, 120).
Les coordonnées X inférieures à 160 correspondent à la moitié gauche du champ de vision du capteur, tandis que celles supérieures à 160 représentent la moitié droite. De même, les coordonnées Y inférieures à 120 indiquent la moitié supérieure de la vue, et celles supérieures à 120 représentent la moitié inférieure.
Accédez à Comprendre les données dans l'utilitaire AI Vision dans VEXcode V5 pour plus d'informations sur la façon dont les objets sont mesurés avec le capteur AI Vision.
Largeur et hauteur
Il s'agit de la largeur ou de la hauteur de l'objet détecté en pixels.
Les mesures de largeur et de hauteur aident à identifier différents objets. Par exemple, un Buckyball aura une hauteur plus grande qu'un Ring.
La largeur et la hauteur indiquent également la distance d'un objet par rapport au capteur de vision AI. Des mesures plus petites signifient généralement que l'objet est plus éloigné, tandis que des mesures plus grandes suggèrent qu'il est plus proche.
Dans cet exemple, la largeur de l'objet est utilisée pour la navigation. Le robot s'approchera de l'objet jusqu'à ce que la largeur ait atteint une taille spécifique avant de s'arrêter.
CentreX et CentreY
Il s'agit des coordonnées centrales de l'objet détecté en pixels.
Les coordonnées CenterX et CenterY aident à la navigation et au positionnement. Le capteur de vision AI a une résolution de 320 x 240 pixels.
Vous pouvez voir qu’un objet plus proche du capteur de vision AI aura une coordonnée CenterY inférieure à celle d’un objet plus éloigné.
Dans cet exemple, étant donné que le centre de la vue du capteur de vision AI est (160, 120), le robot tournera à droite jusqu'à ce que la coordonnée centerX d'un objet détecté soit supérieure à 150 pixels, mais inférieure à 170 pixels.
Angle
L'angle est une propriété disponible uniquement pour les codes couleur etAprilTags. Cela indique si le code couleurdétectéou AprilTag est orienté différemment.
Vous pouvez voir si le robot est orienté différemment par rapport au code couleur ouAprilTag et prendre des décisions de navigation en fonction de cela.
Par exemple, si un code couleur n'est pas détecté sous un angle approprié, l'objet qu'il représente risque de ne pas pouvoir être correctement détecté par le robot.
OriginX et OriginY
OriginX et OriginY sont les coordonnées dans le coin supérieur gauche de l'objet détecté en pixels.
Les coordonnées OriginX et OriginY aident à la navigation et au positionnement. En combinant cette coordonnée avec la largeur et la hauteur de l'objet, vous pouvez déterminer la taille de la zone de délimitation de l'objet. Cela peut aider à suivre les objets en mouvement ou à naviguer entre les objets.
Dans cet exemple, un rectangle sera dessiné sur le cerveau en utilisant les coordonnées exactes de son origine, de sa largeur et de sa hauteur.
identifiant de balise
Le tagID n'est disponible que pourAprilTags. Il s'agit du numéro d'identification duAprilTagspécifié.
L'identification de balises AprilTags spécifiques permet une navigation sélective. Vous pouvez programmer votre robot pour qu'il se déplace vers certaines balises tout en ignorant les autres, les utilisant ainsi efficacement comme panneaux de signalisation pour une navigation automatisée.
Score
La propriété score est utilisée lors de la détectionclassifications AI avec le capteur de vision AI.
Le score de confiance indique le degré de certitude du capteur de vision IA quant à sa détection. Dans cette image, il y a 99 % de confiance dans l'identification des classifications IA de ces quatre objets. Vous pouvez utiliser ce score pour garantir que votre robot se concentre uniquement sur les détections très fiables.
Définir l'élément d'objet
Lorsqu'un objet est détecté par le capteur de vision AI, il est placé dans un tableau. Par défaut, le capteur de vision AI extraira les données du premier objet du tableau ou de l'objet avec l'index 1. Si votre capteur de vision IA n'a détecté qu'un seul objet, cet objet sera sélectionné par défaut.
Cependant, lorsque votre capteur de vision IA a détecté plusieurs objets à la fois, vous devrez utiliser le blocDéfinir l'élément d'objet pour spécifier l'objet à partir duquel vous souhaitez extraire les données.
Lorsque plusieurs objets sont détectés par le capteur de vision AI, ils sont disposés dans le tableau du plus grand au plus petit. Cela signifie que le plus grand objet détecté sera toujours défini sur l'index d'objet 1, et le plus petit objet sera toujours défini sur le numéro le plus élevé.
Dans cet exemple, deux objets ont été détectés avec la signature de couleur « Bleu ». Ils seront tous deux placés dans le tableau lorsque le blocTake Snapshot est utilisé.
Ici, l'objet à l'avant deviendrait l'objet d'index 1, puisqu'il s'agit du plus grand objet, et l'objet le plus petit deviendrait l'objet d'index 2.
L'objet existe
Avant d'extraire des données d'un instantané, il est important de que le capteur de vision AI a détecté en premier les objets de cet instantané. C'est ici qu'entre en jeu le blocObjet Existe.
Ce bloc renverra une valeurTrue ouFalse selon que le dernier instantané pris contient ou non des objets détectés.
Ce bloc doittoujours être utilisé pour garantir que vous n'essayez pas d'extraire des données d'un instantané potentiellement vide.
Par exemple, ici, le robot prendra constamment des instantanés avec le capteur de vision AI. S'il identifie n'importe quel objet avec la signature couleurs « Bleu », il avancera.
Si un instantané n'a pas la signature de couleur « Bleu » , le robot s'arrêtera de bouger.
Nombre d'objets
L'utilisation du bloc Nombre d'objets vous permettra de voir combien d'objets d'une signature à couleurs spécifique le capteur de vision AI peut voir dans son dernier instantané.
Ici, nous voyons que le capteur de vision AI a la signature de couleur configurée « Bleu » et détecte deux objets.
Dans ce code, le capteur de vision AI prendrait un instantané et imprimerait « 2 » sur la console VEXcode, car il ne détecte que deux signatures de couleur « Bleu » .
Objet
Le blocObjet vous permet de signaler la propriété de votre objet spécifié. Cela vous permet d'utiliser toutes les données disponibles extraites de l'instantané le plus récemment pris.
Les propriétés d'objet qui peuvent être extraites des instantanés pris sont :
- largeur
- hauteur
- centreX
- centreY
- angle
- origineX
- origineY
- identifiant de balise
- score
Lisez la section « Données extraites d’un instantané » de cet article pour plus d’informations sur ces propriétés.
AprilTag détecté est
Le blocDetected AprilTag est n'est disponible que lorsque le mode de détectionAprilTag est activé.
Ce bloc signalera Vrai ou Faux selon que l'objet spécifié est un certain AprilTag.
Lorsque plusieurs AprilTags sont détectés dans un seul instantané, ils sont organisés dans le tableau en fonction de leur ID identifié, et non par taille.
Dans cette image, trois AprilTags sont détectés avec les ID 0, 3 et 9. Ils seront organisés par ordre croissant de leur ID dans le tableau. L'objet à l'index 1 correspondrait à l'AprilTag avec l'ID 0, à l'index 2 à l'AprilTag avec l'ID 3 et à l'index 3 à l'AprilTag avec l'ID 9.
La classification de l'IA est
La classificationAI est un bloc n'est disponible que lorsque le mode de détection de classificationAI est activé.
Ce bloc signalera Vrai ou Faux selon que l'objet spécifié est une certaine classification AI.
Les classifications d'IA pouvant être détectées par le capteur de vision IA varient en fonction du modèle que vous utilisez. Pour plus d'informations sur les classifications d'IA disponibles et sur la manière d'activer leur détection avec le capteur de vision AI, lisez cet article.