Certifique-se de que configurou Assinaturas de Cor e "Códigos de Cor com o seu Sensor de Visão IA para que possam ser utilizadas com os seus blocos. Para saber mais sobre como configurá-los, pode ler os artigos abaixo:
- Configurar assinaturas de cor com a assinatura de visão de IA no VEXcode EXP
- Configurar códigos de cores com a assinatura de visão de IA no VEXcode EXP
O sensor de visão com IA também pode detetar classificações de IA e AprilTags. Para saber como ativar estes modos de deteção, aceda a este link:
- Classificações de IA com o sensor de visão de IA no VEXcode EXP
- AprilTags com o sensor de visão de IA no VEXcode EXP
Tirar foto
O blocoTake Snapshot tira uma fotografia do que o sensor de visão de IA está a ver no momento e extrai dados dessa imagem que podem ser utilizados num projeto. Ao capturar uma imagem, é necessário especificar o tipo de objeto a partir do qual o Sensor de Visão com IA deve recolher dados:
- Assinatura de cor
- Código de cores
- Classificações de IA
- Etiquetas de abril
Ao tirar uma fotografia, será criada uma matriz com todos os objetos detetados que especificou. Por exemplo, se quisesse detetar uma assinatura de cor "Vermelho"e o sensor de visão de IA detetasse 3 objetos vermelhos diferentes, os dados dos três seriam colocados na matriz.
obter mais informações sobre como especificar entre diferentes objetos, consulte a secção "Definir item de objeto" neste artigo.
Neste exemplo, apenas detetará objetos que correspondam à assinatura de cor "Azul" configurada e nada mais.
Dados extraídos de um instantâneo
Lembre-se de que o sensor de visão com IA utilizará a última imagem captada para todos os blocos subsequentes. Para garantir que está sempre a obter as informações mais atualizadas do seu sensor de visão com IA, tire uma nova captura de ecrã sempre que quiser extrair dados do mesmo.
Resolução
Compreender a resolução do sensor de visão com IA é crucial para a interpretação precisa dos dados. O sensor tem uma resolução de 320x240 pixéis, com o centro exato nas coordenadas (160, 120).
As coordenadas X inferiores a 160 correspondem à metade esquerda do campo de visão do sensor, enquanto as superiores a 160 representam a metade direita. Da mesma forma, as coordenadas Y inferiores a 120 indicam a metade superior da vista, e as superiores a 120 representam a metade inferior.
Vá para Compreender os dados no utilitário de visão de IA no VEXcode EXP para obter mais informações sobre a forma como os objetos são medidos com o sensor de visão de IA.
Largura e altura
Esta é a largura ou altura do objeto detetado em pixéis.
As medidas de largura e altura ajudam a identificar diferentes objetos. Por exemplo, uma buckyball terá uma altura superior a um anel.
A largura e a altura indicam também a distância de um objeto em relação ao sensor de visão com IA. Medidas mais pequenas significam geralmente que o objeto está mais afastado, enquanto medidas maiores sugerem que está mais próximo.
Neste exemplo, a largura do objeto é utilizada para a navegação. O robô aproximar-se-á do objeto até que a largura atinja um tamanho específico antes de parar.
Centro X e Centro Y
Estas são as coordenadas do centro do objeto detetado em pixéis.
As coordenadas CenterX e CenterY auxiliam na navegação e no posicionamento. O sensor de visão com IA tem uma resolução de 320 x 240 pixéis.
É possível observar que um objeto mais próximo do sensor de visão com IA terá uma coordenada CenterY mais pequena do que um objeto mais afastado.
Neste exemplo, como o centro da visão do sensor de visão de IA é (160, 120), o robô irá virar à direita até que a coordenada centerX de um objeto detetado seja superior a 150 pixéis, mas inferior a 170 pixéis.
Ângulo
O ângulo é uma propriedade apenas disponível para os códigos de cor e, AprilTags. Isto representa se o código de cordetectado (Códigoou ou o AprilTag estiverem orientados de forma diferente.
Pode verificar se o robô está orientado de forma diferente em relação ao código de cor ouou à etiqueta de abril e tomar decisões de navegação de acordo com isso.
Por exemplo, se um código de cor(Código de Cor não for detetado no ângulo correto, o objeto que representa pode não ser apanhado corretamente pelo robô.
OriginX e OriginY
OriginX e OriginY são as coordenadas no canto superior esquerdo do objeto detetado, em pixéis.
As coordenadas OriginX e OriginY auxiliam na navegação e no posicionamento. Ao combinar esta coordenada com a largura e a altura do objeto, pode determinar o tamanho da caixa delimitadora do objeto. Isto pode ajudar no seguimento de objetos em movimento ou na navegação entre objetos.
Neste exemplo, será desenhado um retângulo no cérebro utilizando as coordenadas exatas da sua origem, largura e altura.
ID da etiqueta
O tagID apenas está disponível paraAprilTags. Este é o número de identificação para oAprilTagespecificado.
A identificação de tags específicas AprilTags permite uma navegação seletiva. Pode programar o seu robô para se mover em direção a determinadas etiquetas enquanto ignora outras, utilizando-as efetivamente como pontos de referência para a navegação automatizada.
Pontuação
A propriedade de pontuação é utilizada ao detetarclassificações de IA com o sensor de visão de IA.
O índice de confiança indica o grau de certeza do sensor de visão por computador sobre a sua deteção. Nesta imagem, o sistema tem 99% de confiança na identificação das classificações de IA destes quatro objetos. Pode utilizar esta pontuação para garantir que o seu robô se concentra apenas em deteções de alta confiança.
Definir item de objeto
Quando um objeto é detetado pelo sensor de visão com IA, é inserido numa matriz. Por defeito, o sensor de visão com IA irá extrair dados do primeiro objeto da matriz, ou seja, do objeto com índice 1. Se o seu sensor de visão com IA detetar apenas um objeto, esse objeto será selecionado por predefinição
Quando o seu sensor de visão de IA detetar vários objetos ao mesmo tempo, terá de utilizar o blocoDefinir Item do Objeto para especificar de que objeto pretende extrair dados.
Quando vários objetos são detetados pelo sensor de visão com IA, são organizados na matriz do maior para o mais pequeno. Isto significa que o maior objeto detetado será sempre definido com o índice 1, e o menor objeto será sempre definido com o número mais elevado.
Neste exemplo, foram detetados dois objetos com a assinatura de cor"". Ambos serão colocados na matriz quando o blocoTake Snapshot for utilizado.
Neste caso, o objeto da frente passaria a ser o objeto de índice 1, por ser o objeto maior, e o objeto mais pequeno passaria a ser o objeto de índice 2.
Objeto Existe
Antes de extrair quaisquer dados de um instantâneo, é importante se o sensor de visão com IA detetou algum objeto nesse instantâneo. É aqui que entra em acção o bloco "Objecto Existe.
Este bloco irá devolver um valorVerdadeiro
, 1 (Verdadeiro),Falso) ou (Falso) indicando se o último instantâneo capturado contém algum objeto.
Este bloco devesempre ser utilizado para garantir que não está a tentar extrair dados de um instantâneo potencialmente vazio.
Por exemplo, aqui o robô estará constantemente a tirar fotografias com o sensor de visão de IA. Se identificar ou qualquer objeto com a assinatura de cor “Azul” , avançará.
Se alguma imagem captada não tiver a assinatura de cor “Azul” , o robô irá parar de se mover.
Contagem de objetos
A utilização do bloco "Contagem de objetos permitirá ver quantos objetos de uma assinatura de cor específica o sensor de visão de IA consegue ver na sua última captura.
Aqui, vemos que o sensor de visão com IA tem a assinatura de cor configurada "Azul" e está a detetar dois objetos.
Neste código, o sensor de visão de IA tiraria uma fotografia e imprimiria “2” na consola VEXcode, uma vez que apenas deteta duas assinaturas de cor “Azul” .
Objeto
O blocoObjecto permite reportar a propriedade do objecto especificado. Isto permite-lhe utilizar quaisquer dados disponíveis extraídos da captura de ecrã mais recente.
As propriedades do objeto que podem ser extraídas dos instantâneos capturados são:
- largura
- altura
- centroX
- centroY
- ângulo
- origemX
- origemY
- ID da etiqueta
- pontuação
Leia a secção "Dados extraídos do instantâneo" deste artigo para obter mais informações sobre estas propriedades.
A etiqueta AprilTag detetada é
O blocoDetetado AprilTag é e só está disponível quando o Modo de deteção do AprilTagestá ativado.
Este bloco irá retornar Verdadeiro ou Falso dependendo se o objeto especificado for uma determinada AprilTag.
Quando várias AprilTags são detetadas num único snapshot, são organizadas na matriz com base no seu ID identificado, e não por tamanho.
Nesta imagem foram detetadas três AprilTags com os IDs
, 3 e 9. Serão organizados em ordem crescente do seu ID na matriz. O objeto no índice 1 corresponderia à AprilTag com ID 0, no índice 2 à AprilTag com ID 3 e no índice 3 à AprilTag com ID 9.
A classificação por IA é
A classificação de IAem bloco só está disponível quando o Modo de deteção de classificação de IA(Modo está ativado.
Este bloco irá retornar Verdadeiro ou Falso dependendo se o objeto especificado corresponde a uma determinada Classificação de IA.
As classificações de IA que podem ser detetadas pelo sensor de visão com IA variam consoante o modelo que está a utilizar. maissobre as classificações de IA disponíveis e sobre como ativar a sua deteção com o sensor de visão de IA, leia este artigo.