Sensor de visión de IA#
Introducción#
El sensor de visión AI puede detectar y rastrear objetos, colores e ID de AprilTag. Esto permite al robot analizar su entorno, seguir objetos y reaccionar en función de los datos visuales detectados.
A continuación se muestra una lista de bloques disponibles:
Acciones: captura datos del sensor de visión de IA para una firma seleccionada.
take snapshot: captura datos para una firma específica, como un color configurado, un objeto preentrenado o un ID de AprilTag.
Configuración: elige con qué objeto interactuar.
set AI Vision object item – Selecciona un objeto específico de la lista de objetos detectados.
Valores: accede y usa los datos capturados.
Existe el objeto AI Vision – Informa si se detecta un objeto.
AI Vision object is – Comprueba si un objeto detectado coincide con una clasificación específica.
AI Vision object is AprilTag – Comprueba si el objeto detectado es un AprilTag que coincide con un ID específico.
AI Vision object is AprilTag ID – Comprueba si un AprilTag ID detectado coincide con un ID específico.
AI Vision object count – Informa el número de objetos detectados.
AI Vision object property – Informa detalles como:
centerX y centerY – Coordenadas de posición del centro en la vista del sensor.
angle – Orientación del objeto.
originX y originY – Coordenadas de la posición de la esquina superior izquierda en la vista del sensor.
tagID – Número de identificación de un ID de AprilTag.
score – Confianza del modelo en su identificación como porcentaje.
Acciones#
tomar una instantánea#
El bloque de apilamiento * * tomar instantáneas * * filtra los datos del marco del sensor de visión AI en una sola firma: una descripción guardada de algo que el sensor puede reconocer, como un objeto preentrenado, un ID de AprilTag o un color o código de color configurado.
Los colores y los códigos de color deben configurarse primero en AI Vision Utility antes de que puedan usarse con este bloque.
El conjunto de datos almacena objetos ordenados de mayor a menor por ancho, comenzando en el índice 0. Se puede acceder a las propiedades de cada objeto utilizando el bloque AI Vision object property. Se informa de un conjunto de datos vacío si no se detectan objetos coincidentes.
tomar una captura de [AIVision1 v] de [SELECT_A_SIG v]
Parámetro |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
firma |
Filtra el conjunto de datos para incluir solo los datos de la firma dada. Las firmas disponibles son:
|
Nota: Para que aparezcan las opciones AprilTag ID o AI Classification, su detección debe estar habilitada en AI Vision Utility.
Ejemplo
cuando inicie
[Drive forward if an AprilTag ID is detected.]
por siempre
tomar una captura de [AIVision1 v] de [AprilTag IDs v]
si <¿existe objeto de [AIVIsion1 v]?> entonces
conducir [adelante v] por [10] [mm v] ▶
Clasificaciones de IA#
El sensor de visión de IA puede detectar diferentes objetos bajo ciertas clasificaciones de IA. Dependiendo del modelo de clasificación de IA seleccionado al configurar el sensor de visión de IA en la ventana Dispositivos, se detectarán diferentes objetos. Los modelos disponibles actualmente son:
Objetos de clase
BlueBall
GreenBall
RedBall
BlueRing
Anillo verde
RedRing
BlueCube
GreenCube
RedCube
VEX V5 Robotics Competition Push Back
BlueBlock
RedBlock
VEX V5 Robotics Competition High Stakes
MobileGoal
RedRing
BlueRing
VEX V5 Robotics Competition Override
RedBluePin
BlueYellowPin
RedYellowPin
YellowPin
Copa
Firmas de color#
Una firma de color es un color único que el sensor de visión AI puede reconocer. Estas firmas permiten que el sensor detecte y rastree objetos en función de su color. Una vez que se configura una firma de color, el sensor puede identificar objetos con ese color específico en su campo de visión.
Las firmas de color se utilizan en el bloque take snapshot para procesar y detectar objetos de color en tiempo real. Se pueden configurar hasta 7 firmas de color a la vez.

Ejemplo
cuando inicie
[Display if any objects matching the RED_BOX signature is detected.]
por siempre
mover cursor a fila [1] columna [1] en pantalla
limpiar fila [1] en pantalla
[Change the signature to any configured Color Signature.]
tomar una captura de [AIVision1 v] de [RED_BOX v]
si <¿existe objeto de [AIVision1 v]?> entonces
imprimir [Color detected!] en pantalla ▶
Códigos de color#
Un código de color es un patrón estructurado compuesto por 2 a 4 firmas de color dispuestas en un orden específico. Estos códigos permiten que el sensor de visión AI reconozca patrones predefinidos de colores.
Los códigos de color son particularmente útiles para identificar objetos complejos, alinearse con elementos del juego o crear marcadores únicos para la navegación autónoma. Se pueden configurar hasta 8 códigos de color a la vez.

Ejemplo
cuando inicie
[Display if any objects matching the RED_BLUE code is detected.]
por siempre
mover cursor a fila [1] columna [1] en pantalla
limpiar fila [1] en pantalla
[Change the signature to any configured Color Code.]
tomar una captura de [AIVision1 v] de [RED_BLUE v]
si <¿existe objeto de [AIVision1 v]?> entonces
imprimir [Code detected!] en pantalla ▶
Ajustes#
establecer elemento de objeto AI Vision#
El bloque de pila set AI Vision object item establece qué elemento del conjunto de datos usar.
establecer elemento de objeto de [AIVision1 v] a (1)
Parámetros |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
artículo |
El número del elemento en el conjunto de datos a utilizar. |
Ejemplo
cuando inicie
[Display the largest detected AprilTag ID.]
por siempre
tomar una captura de [AIVision1 v] de [AprilTag IDs v]
limpiar fila [1] en pantalla
mover cursor a fila [1] columna [1] en pantalla
si <¿existe objeto de [AIVision1 v]?> entonces
establecer elemento de objeto de [AIVision1 v] a (cantidad de objetos de [AIVision1 v])
imprimir (objeto [tagID v] de [AIVision1 v]) en pantalla ▶
Valores#
¿Existe el objeto AI Vision?#
El bloque booleano AI Vision existe informa si se detecta algún objeto en el conjunto de datos.
Verdadero: el conjunto de datos incluye un objeto detectado.
Falso: el conjunto de datos no incluye ningún objeto detectado.
<¿existe objeto de [AIVision1 v]?>
Parámetros |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
Ejemplo
cuando inicie
[Drive forward if an object is detected.]
por siempre
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
conducir [adelante v] por [10] [mm v] ▶
El objeto AI Vision es#
El objeto AI Vision es un bloque booleano que informa si un objeto detectado coincide con una clasificación específica.
Verdadero: el elemento del conjunto de datos es el objeto específico.
Falso: el elemento del conjunto de datos no es el objeto específico.
<¿objeto de [AIVision1 v] es [BlueBall v]?>
Parámetro |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
objeto |
Con qué Clasificación de IA comparar el artículo. |
Ejemplo
cuando inicie
[Display if a Blue Cube is detected.]
por siempre
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
limpiar fila [1] en pantalla
mover cursor a fila [1] columna [1] en pantalla
si <¿existe objeto de [AIVision1 v]?> entonces
si <¿objeto de [AIVision1 v] es [BlueCube v]?> entonces
imprimir [Cube detected!] en pantalla ▶
esperar [0.5] segundos
El objeto AI Vision es AprilTag#
El bloque booleano AI Vision es AprilTag informa si el objeto detectado es un AprilTag que coincide con un ID específico.
Verdadero – El objeto detectado es un AprilTag con el ID dado.
Falso – El objeto detectado no es un AprilTag con el ID dado.
<¿objeto de [AIVision1 v] es AprilTag [0]?>
Parámetro |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
ID de AprilTag |
El número de identificación para comparar con la etiqueta de abril detectada. |
Ejemplo
cuando inicie
[Report if AprilTag 3 is detected.]
por siempre
limpiar pantalla
mover cursor a fila [1] columna [1] en pantalla
tomar una captura de [AIVision1 v] de [AprilTag IDs v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <¿objeto de [AIVision1 v] es AprilTag [3]?> entonces
imprimir [That is 3!] en pantalla ▶
si no
imprimir [That isn't 3!] en pantalla ▶
fin
fin
esperar [0.1] segundos
El objeto AI Vision es AprilTag ID#
El objeto AI Vision es AprilTag ID El bloque booleano informa si un AprilTag ID detectado coincide con un ID específico.
Verdadero: el ID de AprilTag es el número.
Falso: el ID de AprilTag no es el número.
<[AIVision1 v] object is AprilTag ID [1] ?>
Parámetros |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
Número de identificación de AprilTag |
El número a comparar con el número de ID de AprilTag detectado. |
Ejemplo:
cuando inicie
[Report if AprilTag ID 3 is detected.]
por siempre
limpiar pantalla
mover cursor a fila [1] columna [1] en pantalla
tomar una captura de [AIVision1 v] de [AprilTag IDs v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <[AIVision1 v] object is AprilTag ID [3] ?> entonces
imprimir [That is 3!] en pantalla ▶
si no
imprimir [That isn't 3!] en pantalla ▶
fin
fin
esperar [0.1] segundos
Recuento de objetos de AI Vision#
El bloque indicador AI Vision object count informa del número de objetos detectados en el conjunto de datos como un número entero.
(cantidad de objetos de [AIVision1 v])
Parámetros |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
Ejemplo
cuando inicie
[Display the total amount of cubes, rings, and balls.]
por siempre
limpiar fila [1] en pantalla
mover cursor a fila [1] columna [1] en pantalla
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
imprimir (cantidad de objetos de [AIVision1 v]) en pantalla ▶
fin
esperar [0.5] segundos
Propiedad del objeto AI Vision#
Hay nueve propiedades que se incluyen con cada objeto (que se muestra a continuación) almacenadas después de que se utiliza el bloque tomar instantánea.
(objeto [ancho v] de [AIVision1 v])
Todos los valores de las propiedades, excepto tagID y score, describen la posición y el tamaño del objeto detectado en la vista del sensor de visión de IA en el momento en que se utilizó el bloque tomar instantánea. Estos valores se miden en píxeles, según la resolución de 320 x 240 píxeles del sensor.
Parámetro |
Descripción |
|---|---|
dispositivo |
Qué sensor de visión AI usar, configurado en la ventana Dispositivos. |
propiedad |
Which property of the detected object to use: |
ancho#
La propiedad * * width * * informa del ancho del objeto detectado en píxeles como un número entero del 1 al 320.
(objeto [ancho v] de [AIVision1 v])
Ejemplo
cuando inicie
[Drive towards an object until its width is larger than 100 pixels.]
por siempre
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <(objeto [ancho v] de [AIVision1 v]) [math_less_than v] [100]> entonces
conducir [adelante v]
si no
detener conducción
fin
altura#
La propiedad altura informa la altura del objeto detectado en píxeles como un número entero del 1 al 240.
(objeto [alto v] de [AIVision1 v])
Ejemplo
cuando inicie
[Drive towards an object until its height is larger than 100 pixels.]
por siempre
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <(objeto [alto v] de [AIVision1 v]) [math_less_than v] [100]> entonces
conducir [adelante v]
si no
detener conducción
fin
centerX#
La propiedad * * centerX* * informa la coordenada x del centro del objeto detectado en píxeles como un número entero de 0 a 320.
(objeto [centroX v] de [AIVision1 v])
Ejemplo
cuando inicie
[Turn slowly until an object is centered in front of the robot.]
establecer velocidad de giro a [30] [% v]
girar [derecha v]
por siempre
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <[140] [math_less_than v] (objeto [centroX v] de [AIVision1 v]) [math_less_than v] [180]> entonces
detener conducción
centerY#
La propiedad *centerY * informa la coordenada y del centro del objeto detectado en píxeles como un número entero de 0 a 240.
(objeto [centroY v] de [AIVision1 v])
Ejemplo
cuando inicie
[Drive towards an object until its center y-coordinate is more than 140 pixels.]
por siempre
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <(objeto [centroY v] de [AIVision1 v]) [math_less_than v] [140]> entonces
conducir [adelante v]
si no
detener conducción
fin
ángulo#
La propiedad Angle informa de la orientación del código de color detectado o del ID de AprilTag como un número entero en grados de 0 a 359.
(objeto [ángulo v] de [AIVision1 v])
Ejemplo
cuando inicie
[Slide left or right depending on how the Color Code is rotated.]
por siempre
tomar una captura de [AIVision1 v] de [RED_BLUE v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <[50] [math_less_than v] (objeto [ángulo v] de [AIVision1 v]) [math_less_than v] [100]> entonces
conducir [derecha v]
si no, si <[270] [math_less_than v] (objeto [ángulo v] de [AIVision1 v]) [math_less_than v] [330]> entonces
conducir [izquierda v]
si no
detener conducción
fin
si no
detener conducción
originX#
La propiedad originX informa la coordenada x de la esquina superior izquierda del cuadro delimitador del objeto detectado en píxeles como un número entero de 0 a 320.
(objeto [origenX v] de [AIVision1 v])
Ejemplo
cuando inicie
[Display if an object is to the left or the right.]
por siempre
limpiar fila [1] en pantalla
mover cursor a fila [1] columna [1] en pantalla
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <(objeto [origenX v] de [AIVision1 v]) [math_less_than v] [160]> entonces
imprimir [To the left!] en pantalla ▶
si no
imprimir [To the right!] en pantalla ▶
fin
esperar [0.5] segundos
originY#
La propiedad *originY * informa la coordenada y de la esquina superior izquierda del cuadro delimitador del objeto detectado en píxeles como un número entero de 0 a 240.
(objeto [origenY v] de [AIVision1 v])
Ejemplo
cuando inicie
[Display if an object is close or far from the robot.]
por siempre
limpiar fila [1] en pantalla
mover cursor a fila [1] columna [1] en pantalla
tomar una captura de [AIVision1 v] de [Clasificaciones de IA v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <(objeto [origenY v] de [AIVision1 v]) [math_less_than v] [80]> entonces
imprimir [Far!] en pantalla ▶
si no
imprimir [Close!] en pantalla ▶
fin
esperar [0.5] segundos
tagID#
La propiedad *tagID * informa el número de identificación del ID de AprilTag detectado como un número entero.
(objeto [tagID v] de [AIVision1 v])
Ejemplo
cuando inicie
[Drive forward when AprilTag ID 0 is detected.]
por siempre
tomar una captura de [AIVision1 v] de [AprilTag IDs v]
si <¿existe objeto de [AIVision1 v]?> entonces
si <(objeto [tagID v] de [AIVision1 v]) [math_equal v] [0]> entonces
conducir [adelante v]
si no
detener conducción
fin
esperar [0.5] segundos
puntaje#
La propiedad score informa qué tan seguro está el modelo en la Clasificación de IA detectada como un porcentaje del 70% al 100%.
Una puntuación más baja significa que el sensor tiene menos confianza en el objeto detectado, mientras que una puntuación más alta significa que el sensor tiene más confianza.
(objeto [puntuación v] de [AIVision1 v])