Usando o AI Vision Sensor em blocos EXP VEXcode

Descubra os fundamentos do uso do AI Vision Sensor com blocos VEXcode EXP neste guia para iniciantes, enquanto orientamos você pelas ferramentas disponíveis com os novos blocos AI Vision Sensor e demonstramos como usá-los em seus projetos VEXcode EXP.

Certifique-se de ter assinaturas de cores e códigos de cores configurados com seu AI Vision Sensor para que possam ser usados ​​com seus blocos. Para saber mais sobre como configurá-los, você pode ler os artigos abaixo:

Tire fotos

 

Usar o bloco Take snapshot é crucial ao codificar com seu AI Vision Sensor. Você precisa usar esse bloco sempre que interagir com o sensor, seja detectando uma cor, medindo o tamanho de uma assinatura de cores ou identificando um código de cores.

Isto é importante porque o sensor depende do instantâneo mais recente para obter seus dados. Se você não atualizar o instantâneo, o sensor usará informações antigas, o que poderá levar a resultados imprecisos.

Captura de tela 19/03/2024 às 10h30.07.png

O AI Vision Sensor também precisa saber em qual Assinatura de Cor ou Código de Cor você deseja focar. Neste exemplo, ele detectará apenas objetos que correspondam à sua assinatura de cor “Azul” e nada mais.

Captura de tela 19/03/2024 às 29/10/07.png

Com esses blocos, você tira uma foto e procura qualquer coisa que corresponda às assinaturas de cores “Azul” . Em seguida, você diz ao AI Vision Sensor para focar no objeto maior e, em seguida, imprime a largura desse objeto no console VEXcode.

Não importa o que aconteça, seu código deve sempre começar com um bloco Take snapshot logo no início. Isso garante que o AI Vision Sensor esteja sempre usando as informações mais atuais para quaisquer blocos que venham depois dele.

Definir item de objeto

Sempre que desejar informações sobre um objeto específico, você deve usar o bloco Set object item para informar ao AI Vision Sensor o que ele deve procurar.

 

Neste exemplo, queremos objetos que correspondam à Assinatura de Cor “Azul”. Queremos obter a largura do maior objeto “Azul”, mas como há dois objetos identificados, precisamos informar ao AI Vision Sensor de qual objeto queremos a largura.

O AI Vision Sensor classifica todos os objetos que correspondem ao último bloco Take snapshot Color Signature do maior para o menor, onde o maior objeto será o primeiro objeto e o menor objeto se tornará o último objeto.

Você também pode utilizar esse recurso para medições precisas ao se aproximar de objetos. Por exemplo, o robô pode ser programado para continuar avançando até que o objeto detectado atinja uma determinada largura.

Captura de tela 19/03/2024 às 24/10/09.png

À medida que o objeto se aproxima do Sensor de Visão AI, seu tamanho aparente aumenta. Isso permite que você aproveite o AI Vision Utility para obter medições precisas necessárias para seu código.

O objeto existe

O bloco Object existe é um bloco booleano que retornará True ou False se vir a Color Signature no último instantâneo tirado.

 

Captura de tela 19/03/2024 às 21/10/03.png

Neste exemplo, o robô tirará fotos constantemente com o AI Vision Sensor. Se identificar qualquer objeto com a assinatura de cores “Azul”, ele avançará.


Se algum instantâneo não tiver a assinatura de cor “Azul” , o robô irá parar de se mover.

Contagem de objetos

Usar o bloco Object count permitirá que você veja quantos objetos de uma Color Signature específica o AI Vision Sensor pode ver em seu último instantâneo. 

 

Aqui, vemos que o AI Vision Sensor tem a assinatura de cor “azul” configurada e está detectando dois deles.

Captura de tela 19/03/2024 às 10h16h45.png

Neste código, o AI Vision Sensor tiraria um instantâneo e imprimiria “2” no console VEXcode, pois detecta apenas duas assinaturas de cores “Azuis” .

Objeto

O bloco Object permite obter medições de qualquer objeto especificado do último instantâneo do AI Vision Sensor. Você pode obter as medidas (pixel) da largura e altura do objeto, bem como suas coordenadas de Centro e Origem. Você também pode obter o ângulo de rotação de um objeto, o que é mais útil com Códigos de cores!

 

Altura largura

Qual a largura ou altura do objeto detectado em pixels.

Altura retornará um valor entre 0 e 240.

Largura retornará um valor entre 0 e 320.

CentroX / CentroY

Informa a coordenada X ou Y do centro da assinatura de cor detectada ou código de cor .

CenterX retornará um número entre 0 e 320.

CenterY retornará um número entre 0 e 240.

OrigemX / OrigemY

Informa a coordenada X ou Y do canto superior esquerdo da assinatura de cor ou código detectado.

OriginX retornará um número entre 0 e 320.

OriginY retornará um número entre 0 e 240.

Ângulo

Informa apenas o ângulo do código de cor detectado, variando de 0 a 360 graus.

Nota: Embora relatar Ângulos de Assinaturas de Cores seja uma opção, esteja ciente de que a precisão dos números pode variar.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: