Assurez-vous d'avoir configuré les codes de couleur Color Signatures et Color Codes avec votre capteur de vision AI afin qu'ils puissent être utilisés avec vos blocs. Pour en savoir plus sur leur configuration, vous pouvez consulter les articles ci-dessous :
- Configuration des signatures de couleur avec la signature AI Vision dans VEXcode EXP
- Configuration des codes couleur avec la signature AI Vision dans VEXcode EXP
Le capteur de vision IA peut également détecter les classifications IA et les AprilTags. Pour savoir comment activer ces modes de détection, cliquez ici :
- Classifications IA avec le capteur de vision IA dans VEXcode EXP
- AprilTags avec le capteur de vision IA dans VEXcode EXP
Prendre un instantané
Le blocTake Snapshot prend une photo de ce que le capteur de vision IA voit actuellement et extrait des données de cet instantané qui peuvent ensuite être utilisées dans un projet. Lors de la prise d'une capture d'écran, vous devez spécifier le type d'objet dont le capteur de vision IA doit collecter les données :
- Signature couleur
- Code couleur
- Classifications IA
- Étiquettes d'avril
La prise d'un instantané créera un tableau de tous les objets détectés que vous avez spécifiés. Par exemple, si vous vouliez détecter une signature de couleur « Rouge »etle capteur de vision IA détectait 3 objets rouges différents, les données des trois seraient placées dans le
.
Pour plus d'informations sur la manière de spécifier entre différents objets, consultez la section « Définir l'élément d'objet » de cet article.
Dans cet exemple, il ne détectera que les objets qui correspondent à sa signature de couleur « Bleu » configurée et rien d'.
Données extraites d'un instantané
N'oubliez pas que le capteur de vision IA utilisera sa dernière capture d'écran pour tous les blocs suivants. Pour vous assurer d'obtenir toujours les informations les plus récentes de votre capteur de vision IA, reprenez votre cliché chaque fois que vous souhaitez en extraire des données.
Résolution
Il est crucial de comprendre la résolution du capteur de vision IA 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.
Allez à Comprendre les données dans l'utilitaire AI Vision dans VEXcode EXP 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 permettent d'identifier différents objets. Par exemple, une fullerène C18 aura une hauteur supérieure à celle d'un anneau C18.
La largeur et la hauteur indiquent également la distance d'un objet par rapport au capteur de vision IA. 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 sa largeur atteigne une taille spécifique avant de s'arrêter.
CentreX et Centre Y
Il s'agit des coordonnées du centre de l'objet détecté, exprimées en pixels.
Les coordonnées CenterX et CenterY facilitent la navigation et le positionnement. Le capteur de vision IA possède une résolution de 320 x 240 pixels.
Vous pouvez constater qu'un objet plus proche du capteur de vision IA 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 centreX d'un objet détecté soit supérieure à 150 pixels, mais inférieure à 170 pixels.
Angle
Angle est une propriété disponible uniquement pour les codes de couleur etAprilTags. Cela représente 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 saisi par le robot.
OriginX et OriginY
OriginX et OriginY correspondent aux coordonnées en pixels du coin supérieur gauche de l'objet détecté.
Les coordonnées OriginX et OriginY facilitent la navigation et le positionnement. En combinant cette coordonnée avec la largeur et la hauteur de l'objet, vous pouvez déterminer la taille de la boîte englobante de l'objet. Cela peut faciliter le suivi d'objets en mouvement ou la navigation entre des 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.
tagID
L'identifiant de balise n'est disponible que pourAprilTags. Il s'agit du numéro d'identification pour l'étiquetteavrilspécifiée.
L'identification de balises spécifiques AprilTags permet une navigation sélective. Vous pouvez programmer votre robot pour qu'il se dirige vers certaines étiquettes tout en ignorant les autres, les utilisant ainsi comme points de repère pour la navigation automatisée.
Score
La propriété de score est utilisée lors de la détection declassifications IA avec le capteur de vision IA.
Le score de confiance indique le degré de certitude du capteur de vision IA quant à sa détection. Sur cette image, le système est sûr à 99 % d'identifier la classification IA de ces quatre objets. Vous pouvez utiliser ce score pour vous assurer que votre robot se concentre uniquement sur les détections très fiables.
Élément d'objet défini
Lorsqu'un objet est détecté par le capteur de vision IA, il est placé dans un tableau. Par défaut, le capteur de vision IA extraira les données du premier objet du tableau, c'est-à-dire l'objet ayant l'index 1. Si votre capteur de vision IA n'a détecté qu'un seul objet, celui-ci 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 des données.
Lorsque plusieurs objets sont détectés par le capteur de vision IA, ils sont disposés dans le tableau du plus grand au plus petit. Cela signifie que le plus grand objet détecté aura toujours l'indice d'objet 1, et le plus petit objet aura toujours l'indice 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 blocPrendre un instantané sera utilisé.
Ici, l'objet au premier plan deviendrait l'objet d'indice 1, puisqu'il s'agit du plus grand objet, et le plus petit objet deviendrait l'objet d'indice 2.
L'objet existe
Avant d'extraire des données d'un instantané, il est important vérifier que le capteur de vision IA a bien détecté des objets dans cet instantané. C’est là qu’intervient le blocobjet existe.
Ce bloc renverra la valeurVrai
, 1 (Faux), True) ou(Faux selon que la dernière capture d'écran contienne ou non des objets.
Ce bloc doittoujours être utilisé pour s'assurer que vous n'essayez pas de récupérer des données à partir d'un instantané potentiellement vide.
Par exemple, ici, le robot prendra constamment des clichés grâce au capteur de vision IA. S’il identifie objet avec la signature de couleur « Bleu » , il avancera.
Si une capture d'écran ne présente pas la signature de couleur « Bleu » , le robot arrêtera de bouger.
Nombre d'objets
L'utilisation du bloc Nombre d'objets vous permettra de voir combien d'objets d'une signature de couleur spécifique le capteur de vision AI peut voir dans son dernier instantané.
Ici, nous constatons que le capteur de vision IA a la configuration Signature de couleur « Bleu » et détecte deux objets.
Dans ce code, le capteur de vision AI prendrait un instantané et imprimerait « 2 » sur la console VEXcode, puisqu’il ne détecte que deux signatures de couleur « Bleu » .
Objet
Le blocObjet vous permet de signaler la propriété de l'objet spécifié. Cela vous permet d'utiliser n'importe quelle donnée disponible extraite de la capture d'écran la plus récente.
Les propriétés d'objet pouvant être extraites des instantanés pris sont les suivantes :
- largeur
- hauteur
- centreX
- centreY
- angle
- originX
- origine
- tagID
- score
Pour plus d'informations sur ces propriétés, consultez la section « Données issues de l'instantané » de cet article.
AprilTag détecté est
Le messageAprilTag détecté » ( bloc) n'est disponible que lorsque le mode de détection est activé
Ce bloc renverra Vrai ou Faux selon que l'objet spécifié corresponde ou non à un certain AprilTag.
Lorsque plusieurs AprilTags sont détectés dans un même instantané, ils sont disposés dans le tableau en fonction de leur ID identifié, et non de leur 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 identifiant 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 par IA est
La classification IA(bloc ) n'est disponible que lorsque le mode de détection de classification IA est activé.
Ce bloc renverra Vrai ou Faux selon que l'objet spécifié corresponde à une certaine classification d'IA.
Les classifications d'IA détectables par le capteur de vision IA varient selon le modèle utilisé. Pour plus d'informations sur les classifications IA disponibles et sur la manière d'activer leur détection avec le capteur de vision IA, consultez cet article.