Tekoälynäköanturi#
Johdanto#
Tekoälynäköanturi pystyy havaitsemaan ja seuraamaan esineitä, värejä ja AprilTag-tunnuksia. Näin robotti voi analysoida ympäristöään, seurata esineitä ja reagoida havaittujen visuaalisten tietojen perusteella.
Alla on luettelo saatavilla olevista lohkoista:
Toiminnot – Kerää tietoja tekoälynäköanturilta valitulle allekirjoitukselle.
ota tilannekuva – Tallentaa tietoja tietylle allekirjoitukselle, kuten määritetylle värille, esikoulutetulle objektille tai AprilTag-tunnukselle.
Asetukset – Valitse, minkä objektin kanssa haluat olla vuorovaikutuksessa.
aseta tekoälynäön objekti – Valitsee tietyn objektin havaittujen objektien luettelosta.
Arvot – Käytä tallennettuja tietoja.
AI Vision -objekti on olemassa – Ilmoittaa, onko objekti havaittu.
AI Vision -objekti on – Tarkistaa, vastaako havaittu objekti tiettyä luokitusta.
AI Vision -objekti on AprilTag – Tarkistaa, onko havaittu objekti tiettyä tunnusta vastaava AprilTag.
AI Vision -objekti on AprilTag-tunnus – Tarkistaa, vastaako havaittu AprilTag-tunnus tiettyä tunnusta.
AI Vision -kohteiden määrä – Ilmoittaa havaittujen kohteiden määrän.
AI Vision -objektin ominaisuus – Raportoi tietoja, kuten:
Toiminnot#
ota kuva#
Ota tilannekuva -pino-lohko suodattaa tekoälynäköanturin kehyksen tiedot yhdeksi allekirjoitukseksi – tallennetuksi kuvaukseksi jostakin, jonka anturi pystyy tunnistamaan, kuten esikoulutetusta objektista, AprilTag-tunnuksesta tai määritetystä väristä tai värikoodista.
Värit ja värikoodit on ensin määritettävä AI Vision -apuohjelmassa, ennen kuin niitä voidaan käyttää tämän lohkon kanssa.
Aineisto tallentaa objektit leveyden mukaan suurimmasta pienimpään järjestettyinä alkaen indeksistä 0. Kunkin objektin ominaisuuksiin pääsee käsiksi AI Vision object property -lohkon avulla. Jos vastaavia objekteja ei havaita, aineisto raportoidaan tyhjänä.
ota [AIVision1 v] kuvankaappaus kohteesta [SELECT_A_SIG v]
Parametri |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
allekirjoitus |
Suodattaa tietojoukon sisältämään vain annetun allekirjoituksen tiedot. Käytettävissä olevat allekirjoitukset ovat:
|
Huomautus: Jotta AprilTag ID- tai AI-luokitteluvaihtoehdot näkyisivät, niiden tunnistus on otettava käyttöön AI Vision -apuohjelmassa.
Esimerkki
kun käynnistetään
[Drive forward if an AprilTag ID is detected.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AprilTag IDs v]
jos <[AIVIsion1 v] objekti on olemassa?> niin
aja [eteenpäin v] [10] [mm v] ▶
Tekoälyluokitukset#
Tekoälynäköanturi voi havaita erilaisia kohteita tiettyjen tekoälyluokitusten mukaisesti. Laitteet-ikkunassa tekoälynäköanturia määritettäessä valitun tekoälyluokitusmallin mukaan havaitaan erilaisia kohteita. Tällä hetkellä saatavilla olevat mallit ovat:
Luokkahuoneen esineet
Sininen pallo
Vihreä pallo
Punainen pallo
Sininen rengas
GreenRing
Punainen rengas
Sininen Kuutio
GreenCube
Punainen kuutio
VEX V5 -robotiikkakilpailun vastarinta
Sininen lohko
Punainen lohko
VEX V5 -robotiikkakilpailu, korkeat panokset
MobileGoal
Punainen rengas
Sininen rengas
VEX V5 -robotiikkakilpailun ohitus
PunainenSininenPin
SininenKeltainenPin
PunainenKeltainenTappi
Keltainen pinni
Kuppi
Väriallekirjoitukset#
Väritunniste on ainutlaatuinen väri, jonka tekoälynäköanturi tunnistaa. Näiden tunnisteiden avulla anturi voi havaita ja seurata kohteita niiden värin perusteella. Kun väritunniste on määritetty, anturi voi tunnistaa kyseisen väriset kohteet näkökentässään.
Väritunnisteita käytetään ota tilannekuva-lohkossa värillisten objektien reaaliaikaiseen käsittelyyn ja havaitsemiseen. Kerrallaan voidaan konfiguroida jopa seitsemän väritunnistetta.

Esimerkki
kun käynnistetään
[Display if any objects matching the RED_BOX signature is detected.]
ikuisesti
aseta kursori riville [1] sarakkeeseen [1] näytöllä
tyhjennä rivi [1] näytöltä
[Change the signature to any configured Color Signature.]
ota [AIVision1 v] kuvankaappaus kohteesta [RED_BOX v]
jos <[AIVision1 v] objekti on olemassa?> niin
tulosta [Color detected!] näytöllä ▶
Värikoodit#
Värikoodi on jäsennelty kuvio, joka koostuu 2–4 tietyssä järjestyksessä olevasta väritunnisteesta. Näiden koodien avulla tekoälynäköanturi tunnistaa ennalta määritetyt värikuviot.
Värikoodit ovat erityisen hyödyllisiä monimutkaisten objektien tunnistamisessa, pelielementteihin kohdistamisessa tai ainutlaatuisten merkkien luomisessa autonomista navigointia varten. Kerrallaan voidaan määrittää jopa 8 värikoodia.

Esimerkki
kun käynnistetään
[Display if any objects matching the RED_BLUE code is detected.]
ikuisesti
aseta kursori riville [1] sarakkeeseen [1] näytöllä
tyhjennä rivi [1] näytöltä
[Change the signature to any configured Color Code.]
ota [AIVision1 v] kuvankaappaus kohteesta [RED_BLUE v]
jos <[AIVision1 v] objekti on olemassa?> niin
tulosta [Code detected!] näytöllä ▶
Asetukset#
aseta tekoälynäön objektikohta#
Aseta tekoälynäköobjektin kohde -pino-lohko määrittää, mitä kohdetta tietojoukosta käytetään.
aseta [AIVision1 v] objektin kohde (1)
Parametrit |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
esine |
Käytettävän kohteen numero tietojoukossa. |
Esimerkki
kun käynnistetään
[Display the largest detected AprilTag ID.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AprilTag IDs v]
tyhjennä rivi [1] näytöltä
aseta kursori riville [1] sarakkeeseen [1] näytöllä
jos <[AIVision1 v] objekti on olemassa?> niin
aseta [AIVision1 v] objektin kohde ([AIVision1 v] objektien määrä)
tulosta ([AIVision1 v] objekti [tagID v]) näytöllä ▶
Arvot#
Onko tekoälynäköobjektia olemassa?#
Boolen lohko AI Vision -objekti on olemassa raportoi, havaitaanko datajoukossa objektia.
Tosi – Tietojoukko sisältää havaitun objektin.
Epätosi – Aineisto ei sisällä havaittuja objekteja.
<[AIVision1 v] objekti on olemassa?>
Parametrit |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
Esimerkki
kun käynnistetään
[Drive forward if an object is detected.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
aja [eteenpäin v] [10] [mm v] ▶
AI Vision -objekti on#
AI Vision -objekti on Boolen lohko, joka raportoi, vastaako havaittu objekti tiettyä luokitusta.
Tosi – Tietojoukon kohde on kyseinen objekti.
Epätosi – Tietojoukon kohde ei ole kyseinen objekti.
<[AIVision1 v] objekti on [BlueBall v]?>
Parametri |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
esine |
Mihin tekoälyn luokitukseen kohdetta verrataan. |
Esimerkki
kun käynnistetään
[Display if a Blue Cube is detected.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
tyhjennä rivi [1] näytöltä
aseta kursori riville [1] sarakkeeseen [1] näytöllä
jos <[AIVision1 v] objekti on olemassa?> niin
jos <[AIVision1 v] objekti on [BlueCube v]?> niin
tulosta [Cube detected!] näytöllä ▶
odota [0.5] sekuntia
AI Vision -objekti on AprilTag#
AI Vision -objekti on AprilTag -totuusarvolohko, joka raportoi, onko havaittu objekti AprilTag, joka vastaa tiettyä tunnusta.
Tosi – Havaittu objekti on annettua tunnusta käyttävä AprilTag.
Epätosi – Havaittu objekti ei ole annetun tunnuksen mukainen AprilTag.
<[AIVision1 v] objekti on AprilTag [0]?>
Parametri |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
AprilTag-tunnus |
Tunnusnumero, jota verrataan havaittuun AprilTagiin. |
Esimerkki
kun käynnistetään
[Report if AprilTag 3 is detected.]
ikuisesti
tyhjennä näyttö
aseta kursori riville [1] sarakkeeseen [1] näytöllä
ota [AIVision1 v] kuvankaappaus kohteesta [AprilTag IDs v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <[AIVision1 v] objekti on AprilTag [3]?> niin
tulosta [That is 3!] näytöllä ▶
muuten
tulosta [That isn't 3!] näytöllä ▶
Loppu
Loppu
odota [0.1] sekuntia
AI Vision -objekti on AprilTag-tunnus#
AI Vision -objekti on AprilTag ID -totuusarvolohko, joka raportoi, vastaako havaittu AprilTag ID tiettyä ID:tä.
Tosi – AprilTag-tunnus on numero.
Väärin – AprilTag-tunnus ei ole oikea numero.
<[AIVision1 v] object is AprilTag ID [1] ?>
Parametrit |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
AprilTag-tunnusnumero |
Numero, jota verrataan havaittuun AprilTag-tunnusnumeroon. |
Esimerkki:
kun käynnistetään
[Report if AprilTag ID 3 is detected.]
ikuisesti
tyhjennä näyttö
aseta kursori riville [1] sarakkeeseen [1] näytöllä
ota [AIVision1 v] kuvankaappaus kohteesta [AprilTag IDs v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <[AIVision1 v] object is AprilTag ID [3] ?> niin
tulosta [That is 3!] näytöllä ▶
muuten
tulosta [That isn't 3!] näytöllä ▶
Loppu
Loppu
odota [0.1] sekuntia
AI Vision -objektien määrä#
AI Vision -objektien lukumäärä -raporttilohko raportoi havaittujen objektien lukumäärän tietojoukossa kokonaislukuna.
([AIVision1 v] objektien määrä)
Parametrit |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
Esimerkki
kun käynnistetään
[Display the total amount of cubes, rings, and balls.]
ikuisesti
tyhjennä rivi [1] näytöltä
aseta kursori riville [1] sarakkeeseen [1] näytöllä
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
tulosta ([AIVision1 v] objektien määrä) näytöllä ▶
Loppu
odota [0.5] sekuntia
AI Vision -objektin ominaisuus#
Jokaiseen take snapshot -lohkon käytön jälkeen tallennettuun objektiin (alla) liitetään yhdeksän ominaisuutta.
([AIVision1 v] objekti [leveys v])
Kaikki ominaisuusarvot paitsi tagID ja score kuvaavat havaitun kohteen sijainnin ja koon tekoälynäköanturin näkymässä sillä hetkellä, kun take snapshot -lohkoa käytettiin. Nämä arvot mitataan pikseleinä anturin 320 x 240 pikselin resoluution perusteella.
Parametri |
Kuvaus |
|---|---|
laite |
Käytettävä tekoälynäköanturi määritetään Laitteet-ikkunassa. |
omaisuus |
Mitä havaitun objektin ominaisuutta käytetään: |
leveys#
leveys-ominaisuus raportoi havaitun objektin leveyden pikseleinä kokonaislukuna 1–320.
([AIVision1 v] objekti [leveys v])
Esimerkki
kun käynnistetään
[Drive towards an object until its width is larger than 100 pixels.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <([AIVision1 v] objekti [leveys v]) [math_less_than v] [100]> niin
aja [eteenpäin v]
muuten
pysäytä ajaminen
Loppu
korkeus#
height-ominaisuus raportoi havaitun objektin korkeuden pikseleinä kokonaislukuna 1–240.
([AIVision1 v] objekti [korkeus v])
Esimerkki
kun käynnistetään
[Drive towards an object until its height is larger than 100 pixels.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <([AIVision1 v] objekti [korkeus v]) [math_less_than v] [100]> niin
aja [eteenpäin v]
muuten
pysäytä ajaminen
Loppu
keskiosaX#
centerX-ominaisuus raportoi havaitun objektin keskipisteen x-koordinaatin pikseleinä kokonaislukuna väliltä 0–320.
([AIVision1 v] objekti [centerX v])
Esimerkki
kun käynnistetään
[Turn slowly until an object is centered in front of the robot.]
aseta kääntymisnopeus [30] [% v]
käänny [oikealle v]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <[140] [math_less_than v] ([AIVision1 v] objekti [centerX v]) [math_less_than v] [180]> niin
pysäytä ajaminen
keski-Y#
centerY-ominaisuus raportoi havaitun objektin keskipisteen y-koordinaatin pikseleinä kokonaislukuna väliltä 0–240.
([AIVision1 v] objekti [centerY v])
Esimerkki
kun käynnistetään
[Drive towards an object until its center y-coordinate is more than 140 pixels.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <([AIVision1 v] objekti [centerY v]) [math_less_than v] [140]> niin
aja [eteenpäin v]
muuten
pysäytä ajaminen
Loppu
kulma#
Kulma-ominaisuus raportoi havaitun värikoodin tai AprilTag-tunnuksen suunnan kokonaislukuna asteina välillä 0–359.
([AIVision1 v] objekti [kulma v])
Esimerkki
kun käynnistetään
[Slide left or right depending on how the Color Code is rotated.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [RED_BLUE v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <[50] [math_less_than v] ([AIVision1 v] objekti [kulma v]) [math_less_than v] [100]> niin
aja [oikealle v]
muuten jos <[270] [math_less_than v] ([AIVision1 v] objekti [kulma v]) [math_less_than v] [330]> niin
aja [vasemmalle v]
muuten
pysäytä ajaminen
Loppu
muuten
pysäytä ajaminen
alkuperäX#
originX-ominaisuus raportoi havaitun objektin rajaavan laatikon vasemman yläkulman x-koordinaatin pikseleinä kokonaislukuna väliltä 0–320.
([AIVision1 v] objekti [originX v])
Esimerkki
kun käynnistetään
[Display if an object is to the left or the right.]
ikuisesti
tyhjennä rivi [1] näytöltä
aseta kursori riville [1] sarakkeeseen [1] näytöllä
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <([AIVision1 v] objekti [originX v]) [math_less_than v] [160]> niin
tulosta [To the left!] näytöllä ▶
muuten
tulosta [To the right!] näytöllä ▶
Loppu
odota [0.5] sekuntia
alkuperäY#
originY-ominaisuus raportoi havaitun objektin rajaavan laatikon vasemman yläkulman y-koordinaatin pikseleinä kokonaislukuna väliltä 0–240.
([AIVision1 v] objekti [originY v])
Esimerkki
kun käynnistetään
[Display if an object is close or far from the robot.]
ikuisesti
tyhjennä rivi [1] näytöltä
aseta kursori riville [1] sarakkeeseen [1] näytöllä
ota [AIVision1 v] kuvankaappaus kohteesta [AI-luokitukset v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <([AIVision1 v] objekti [originY v]) [math_less_than v] [80]> niin
tulosta [Far!] näytöllä ▶
muuten
tulosta [Close!] näytöllä ▶
Loppu
odota [0.5] sekuntia
tunnisteen tunnus#
tagID-ominaisuus raportoi havaitun AprilTag-tunnuksen tunnistenumeron kokonaislukuna.
([AIVision1 v] objekti [tagID v])
Esimerkki
kun käynnistetään
[Drive forward when AprilTag ID 0 is detected.]
ikuisesti
ota [AIVision1 v] kuvankaappaus kohteesta [AprilTag IDs v]
jos <[AIVision1 v] objekti on olemassa?> niin
jos <([AIVision1 v] objekti [tagID v]) [math_equal v] [0]> niin
aja [eteenpäin v]
muuten
pysäytä ajaminen
Loppu
odota [0.5] sekuntia
pisteet#
pistemäärä-ominaisuus raportoi mallin luotettavuuden havaitussa tekoälyluokituksessa prosentteina 70 prosentista 100 prosenttiin.
Alhaisempi pistemäärä tarkoittaa, että anturi on vähemmän varma havaitusta kohteesta, kun taas korkeampi pistemäärä tarkoittaa, että anturi on varmempi.
([AIVision1 v] objekti [pisteet v])