VEXcode EXP блоктарындағы AI көру сенсорымен кодтау

AI көру сенсорымен конфигурацияланған Түс қолтаңбасы және Түс кодтары бар екеніне көз жеткізіңіз, осылайша оларды блоктарыңызбен пайдалануға болады. Оларды конфигурациялау туралы көбірек білу үшін төмендегі мақалаларды оқуға болады:

AI көру сенсоры сонымен қатар AI классификациялары мен AprilTags анықтай алады. Осы анықтау режимдерін қосу жолын білу үшін мына жерге өтіңіз:

Осы жеке блоктар және оларды VEXcode ішінде пайдалану туралы қосымша мәліметтер алу үшін API сайтына өтіңіз.


Суретке түсіру

VEXcode EXP Жазатын сурет блогын алыңыз COL1 файлының AIVision1 суретін алыңыз. Екі ашылмалы тізім бар, біреуі AI көру сенсорын таңдауға және екіншісі түс кодын таңдауға арналған.

Суретке түсіру блогы AI көру сенсоры қазіргі уақытта көріп тұрған нәрсенің суретін түсіреді және сол суреттен деректерді кейін жобада пайдалануға болады. Сурет түсірілген кезде, AI көру сенсоры қандай нысанның түрі туралы деректерді жинау керектігін көрсетуіңіз керек:

  • Түс қолтаңбасы
  • Түс коды
  • AI классификациялары
  • Сәуір тегтері

Суретке түсіру сіз көрсеткен барлық анықталған нысандардың массивін жасайды. Мысалы, егер сіз «Қызыл»түсті қолтаңбаныанықтағыңыз келсе және AI көру сенсоры 3 түрлі қызыл нысанды анықтаса, үшеуінің деректері массивке қойылады.

Әртүрлі нысандарды анықтау жолы туралы қосымша ақпарат алу үшін осы мақаладағы «Нысан элементін орнату» бөліміне өтіңіз.

VEXcode EXP «Көгілдір түстің AIVision2 суретін түсіру» деп жазылған суретті түсіру блогы.

Бұл мысалда ол тек конфигурацияланған «Көк» Түс қолтаңбасы ге сәйкес келетін нысандарды ғана анықтайды және басқа ештеңе жоқ.

Суреттен алынған деректер

AI көру сенсоры соңғы түсірілген суретті кейін келетін кез келген блоктар үшін пайдаланатынын есте сақтаңыз. AI көру сенсорынан әрқашан ең соңғы ақпаратты алатыныңызға көз жеткізу үшін одан деректерді алғыңыз келген сайын суретті қайта түсіріңіз. 

Ажыратымдылық

AI Vision Sensor ажыратымдылығының диаграммасы. Жоғарғы сол жақ бұрышта 0, 0, жоғарғы оң жақ бұрышта 320, 0, ал төменгі сол жақ бұрышта 0, 240 белгіленген. Экранның ортасы 160, 120 деп белгіленген.

AI Vision Sensor ажыратымдылығын түсіну деректерді дәл түсіндіру үшін өте маңызды. Датчиктің рұқсаты 320x240 пиксель, дәл ортасы координаттарда (160, 120).

160-тан төмен X координаттары сенсордың көру өрісінің сол жақ жартысына сәйкес келеді, ал 160-тан жоғарылар оң жақ жартысын білдіреді. Сол сияқты, 120-дан аз Y-координаталары көріністің жоғарғы жартысын көрсетеді, ал 120-дан жоғарылар төменгі жартысын білдіреді.

Нысандарды AI көру сенсорымен өлшеу әдісі туралы қосымша ақпарат алу үшін VEXcode EXP ішіндегі AI Vision қызметтік бағдарламасындағы деректерді түсіну бөліміне өтіңіз.

Ені және биіктігі

Бұл анықталған нысанның пиксельдегі ені немесе биіктігі.

AI көру сенсоры көк Бакиболды бақылайтын көрінеді. Бакиболдың айналасында бақылау тіктөртбұрышы бар және жоғарыдағы белгі оның ені 80 пиксель және биіктігі 78 пиксель екенін көрсетеді. Қызыл көрсеткілер ені мен биіктігін көрсету үшін бақылау тіктөртбұрышын бөлектейді.

Ені мен биіктігі өлшемдері әртүрлі нысандарды анықтауға көмектеседі. Мысалы, Бакиболдың биіктігі сақинаға қарағанда үлкенірек болады.

AI Vision Sensor екі көк текшені қадағалайтын көрінеді. Текшелердің айналасында бақылау тіктөртбұрыштары бар, ал біреуі камераға әлдеқайда жақын. Жақынының ені 144, биіктігі 113, ал алысының ені 73, биіктігі 84.

Ені мен биіктігі де нысанның AI көру сенсорынан қашықтығын көрсетеді. Кішірек өлшемдер әдетте нысанның алыс екенін білдіреді, ал үлкен өлшемдер оның жақынырақ екенін көрсетеді.

VEXcode блоктары жобасы, онда робот тоқтау алдында ені белгілі бір өлшемге жеткенше нысанға жақындайды. Жоба Қашан басталған блоктан және Forever циклінен басталады. Жобаның қалған бөлігі Forever циклінің ішінде. Алдымен, көк түстің AIVision1 суретін алыңыз, содан кейін жобаның қалған бөлігі AIVision1 нысанының бар-жоғын оқитын If блогында болады? Осы If блогының ішінде If Else блогы бар, ол AIVision1 нысанының ені 250-ден аз болса, алға қарай жүріңіз, әйтпесе қозғалысты тоқтатыңыз.

Бұл мысалда нысанның ені шарлау үшін пайдаланылады. Робот тоқтау алдында ені белгілі бір өлшемге жеткенше нысанға жақындайды.

CenterX және Center Y

Бұл анықталған нысанның пиксельдегі орталық координаталары.

AI көру сенсоры көк Бакиболды бақылайтын көрінеді. Бакиболдың айналасында бақылау тіктөртбұрышы бар және жоғарыдағы белгі оның X позициясы 176 және Y позициясы 117 екенін көрсетеді. Орынның орталықтан өлшенетінін көрсету үшін бақылау тіктөртбұрышының ортасы бөлектеледі.

CenterX және CenterY координаттары навигацияға және орналасуға көмектеседі. AI Vision Sensor 320 x 240 пиксел рұқсатына ие.

AI Vision Sensor екі көк текшені қадағалайтын көрінеді. Текшелердің айналасында бақылау тіктөртбұрыштары бар, ал біреуі камераға әлдеқайда жақын. Жақынның Y позициясы 184, ал алысырақтың Y позициясы 70.

AI көру сенсорына жақынырақ нысанның алыстағы нысанға қарағанда CenterY координатасы төмен болатынын көруге болады.

VEXcode блоктары жобасы, онда робот AI көру сенсоры көрінісінің ортасында болғанша анықталған нысанға қарай бұрылады. Жоба Қашан басталған блоктан және Forever циклінен басталады. Жобаның қалған бөлігі Forever циклінің ішінде. Алдымен, көк түстің AIVision1 суретін алыңыз, содан кейін жобаның қалған бөлігі AIVision1 нысанының бар-жоғын оқитын If блогында болады? Осы If блогында AIVision1 нысаны centerX 150-ден үлкен және AIVision1 нысаны centerX 170-ден аз болса, онда оңға бұрылыңыз, әйтпесе көлік жүргізуді тоқтататын If Else блогы бар.

Бұл мысалда AI көру сенсорының көрінісінің орталығы (160, 120) болғандықтан, робот анықталған нысанның centerX координатасы 150 пиксельден үлкен, бірақ 170 пикселден аз болғанша оңға бұрылады.

Бұрыш

Бұрыш мәнінің 360 градусын көрсету үшін бірге бұрылатын қызыл шаршы мен жасыл шаршының анимациясы.

Angle — текТүс кодтары жәнеСәуіртегтерүшін қолжетімді сипат. Бұл анықталғанТүс кодынемесе AprilTag басқаша бағдарланғанын көрсетеді.

AI көру сенсоры жасыл, содан кейін көк түс кодын қадағалайтын көрінеді. Бейне арнасы көк текшенің үстіне жинақталған жасыл текшені көрсетеді. Түс кодының бұрыш мәні бөлектеліп, 87 градусты оқиды, бұл Түс коды тігінен бағытталғанын көрсетеді.

Сіз роботтыңТүс коды немесеAprilTag қатысты басқаша бағдарланғанын көре аласыз және соған сәйкес навигация шешімдерін қабылдай аласыз.

AI көру сенсоры жасыл, содан кейін көк түс кодын қадағалайтын көрінеді. Бейне арнасында көк текшенің жанында отырған жасыл текшені көрсетеді, бірақ олар сенсормен салыстырғанда ыңғайсыз бұрышта. Түс коды бұрышының мәні бөлектеліп, 0 градусты оқиды, бұл Түс кодының бұрышын оқу мүмкін еместігін көрсетеді.

Мысалы, егерТүс коды дұрыс бұрышта анықталмаса, ол көрсететін нысанды робот дұрыс ала алмауы мүмкін.

OriginX және OriginY

OriginX және OriginY - анықталған нысанның пиксельдегі жоғарғы сол жақ бұрышындағы координат.

AI көру сенсоры көк Бакиболды бақылайтын көрінеді. Бакиболдың айналасында бақылау тіктөртбұрышы бар және жоғарыдағы белгі оның X позициясы 176 және Y позициясы 117 екенін көрсетеді. Бақылау тіктөртбұрышының жоғарғы сол жақ бұрышы бастапқы орны оның жоғарғы сол жақ бұрышынан өлшенетінін көрсету үшін бөлектеледі.

OriginX және OriginY координаттары навигацияға және орналасуға көмектеседі. Осы координатаны нысанның ені мен биіктігімен біріктіру арқылы нысанның шектейтін өрісінің өлшемін анықтауға болады. Бұл қозғалатын нысандарды қадағалауға немесе нысандар арасында шарлауға көмектеседі.

VEXcode блоктары жобасы, онда робот анықталған нысанды экранға тіктөртбұрыш түрінде салады. Жоба Қашан басталған блоктан және Forever циклінен басталады. Жобаның қалған бөлігі Forever циклінің ішінде. Алдымен, көк түстің AIVision1 суретін алыңыз, содан кейін жобаның қалған бөлігі AIVision1 нысанының бар-жоғын оқитын If блогында болады? Осы If блогының ішінде Brain жүйесінде AIVision1 нысанының OriginX, AIVision1 нысанының OriginY, AIVision1 нысанының енін, AIVision1 нысанының биіктігін оқитын Draw тіктөртбұрыш блогы бар.

Бұл мысалда тіктөртбұрыш оның басының, енінің және биіктігінің дәл координаталарын пайдаланып, Миға сызылады.

тег идентификаторы

Тег идентификаторы тексәуірде қол жетімді.Tags. Бұл көрсетілгенAprilTagүшін ID нөмірі.

Үш AprilTag AI Vision Utility арқылы бақыланады. Әрбір тег сәйкестендірілген, орналасқан және жүйе арқылы оның қадағалануын көрсететін контурланған. Осы мысалдағы AprilTag идентификаторлары 0, 3 және 9 мәндерін оқиды.

Арнайы AprilTags анықтау таңдамалы шарлау мүмкіндігін береді. Сіз роботты басқаларды елемей, белгілі бір тегтерге қарай жылжу үшін бағдарламалай аласыз, оларды автоматтандырылған навигация үшін бағдаршалар ретінде тиімді пайдалана аласыз.

Ұпай

Ұпай сипаты AI көру сенсорыменAI классификациясын анықтау кезінде пайдаланылады.

Төрт нысанды AI Vision утилитасы, екі BuckyBall және екі сақина бақылайды. Әрбір нысан сәйкестендіріліп, орналасады және жүйе арқылы оның қадағалануын көрсетеді. Утилита сондай-ақ әрбір нысанның AI жіктеу ұпайын тізімдейді, бұл мысалда әрбір балл 99% оқиды.

Сенімділік көрсеткіші AI көру сенсорының оны анықтауға қаншалықты сенімді екенін көрсетеді. Бұл суретте бұл төрт нысанның AI классификациясын анықтауға 99% сенімді. Сіз бұл ұпайды роботыңыздың тек жоғары сенімді анықтауларға назар аударуын қамтамасыз ету үшін пайдалана аласыз.


Нысан элементін орнату

Нысан AI көру сенсоры арқылы анықталғанда, ол массивке қойылады. Әдепкі бойынша, AI көру сенсоры деректерді массивтегі бірінші нысаннан немесе 1 индексі бар нысаннан алады. Егер AI көру сенсоры тек бір нысанды анықтаса, ол нысан әдепкі бойынша таңдалады.

AI көру сенсоры бірден бірнеше нысанды анықтаған кезде, деректерді қай нысаннан алғыңыз келетінін көрсету үшінSet Object Element блогын пайдалануыңыз қажет.

VEXcode EXP AIVision1 нысан элементін 1-ге орнатуды оқитын нысан элементінің блогын орнатыңыз. AI көру сенсорын таңдау үшін ашылмалы тізім және нысан индексін енгізу үшін мәтін өрісі бар.

AI көру сенсоры арқылы бірнеше нысандар анықталғанда, олар массивте үлкеннен кішіге қарай орналасады. Бұл ең үлкен анықталған нысан әрқашан 1-нысан индексіне орнатылады, ал ең кіші нысан әрқашан ең жоғары санға орнатылады дегенді білдіреді.

AI Vision Sensor екі көк текшені қадағалайтын көрінеді. Текшелердің айналасында бақылау тіктөртбұрыштары бар, ал біреуі камераға әлдеқайда жақын. Жақынның ені 136, ал алысының ені 78.

Бұл мысалдаТүс белгісі "Көк" белгісімен екі нысан анықталды. Take Snapshot блогы пайдаланылған кезде олардың екеуі де массивке қойылады.

AI Vision Sensor екі көк текшені қадағалайтын көрінеді. Текшелердің айналасында бақылау тіктөртбұрыштары бар, ал біреуі камераға әлдеқайда жақын. Жақынырақ текше 1, ал алысырақ текше 2 деп белгіленеді.

Мұнда алдыңғы жағындағы нысан 1-объект индексіне айналады, өйткені ол ең үлкен нысан, ал ең кіші нысан 2-объект индексі болады.


Нысан бар

Суреттен кез келген деректерді шығармас бұрын, AI көру сенсоры алдымен сол суреттен кез келген нысанды анықтағанына көз жеткізу үшін әрқашан тексеру маңызды. Бұл жерденысан бар блогы іске қосылады.

VEXcode EXP нысанында AIVision1 нысаны бар деп оқитын блок бар ма? AI көру сенсорын таңдау үшін ашылмалы тізім бар.

Бұл блок соңғы түсірілген суретте анықталған нысандардың бар-жоғына қатыстыTrue немесеFalse мәнін қайтарады.

Бұл блокты ықтимал бос суреттен кез келген деректерді алуға тырыспау үшінәрқашан пайдалану керек.

Robot анықталған Көк нысанға қарай жүретін VEXcode Blocks жобасы. Жоба Қашан басталған блоктан және Forever циклінен басталады. Жобаның қалған бөлігі Forever циклінің ішінде. Алдымен, көк түстің AIVision2 суретін алыңыз, содан кейін AIVision2 нысанының бар-жоғын оқитын If Else блогын алыңыз, содан кейін алға қарай жүріңіз, әйтпесе жүргізуді тоқтатыңыз.

Мысалы, мұнда робот AI Vision Sensor көмегімен үнемі суретке түсіретін болады. Егер ол «Көк» Түс қолтаңбасыбар кез келген нысанды анықтаса, ол алға қарай қозғалады.


Кез келген суретте «Көк» түсті қолтаңбаболмаса, робот қозғалысын тоқтатады.


Объектілер саны

VEXcode EXP AIVision1 нысан санын оқитын нысандарды санау блогы. AI көру сенсорын таңдау үшін ашылмалы тізім бар.

Object count блогын пайдалану AI Vision Sensor соңғы суретте нақты Color Signature -тің қанша нысанын көре алатынын көруге мүмкіндік береді. 

AI Vision Sensor екі көк текшені қадағалайтын көрінеді. Текшелердің айналасында бақылау тіктөртбұрыштары бар, ал біреуі камераға әлдеқайда жақын.

Мұнда біз AI көру сенсорында конфигурацияланған түсті қолтаңба «Көк» бар және екі нысанды анықтап жатқанын көреміз.

VEXcode Blocks жобасы, онда робот анықталған Көк нысандардың санын басып шығару консоліне басып шығарады. Жоба Қашан басталған блоктан және Forever циклінен басталады. Жобаның қалған бөлігі Forever циклінің ішінде. Алдымен, көк түстің AIVision2 суретін алыңыз, Консольдегі барлық жолдарды тазалаңыз, содан кейін курсорды Консольдегі келесі жолға орнатыңыз. Келесі - AIVision2 нысанының бар-жоғын оқитын If блогы, содан кейін Консольде AIVision2 нысанының санын басып шығарыңыз және курсорды келесі жолға орнатыңыз. If блогының сыртында 2 секунд күту үшін күту блогы орнатылған.Алдыңғы VEXcode Blocks жобасының Басып шығару консолінің шығысы 2 оқуы бар басып шығарылған хабарлама.

Бұл кодта AI көру сенсоры суретке түсіріп, VEXcode консолінде «2» басып шығарады, өйткені ол тек екі «Көк» түсті қолтаңбаныанықтайды.


Нысан

AIVision1 нысан енін оқитын VEXcode EXP AI Vision нысан блогы. AI көру сенсорын таңдауға арналған ашылмалы тізім және сезу үшін нысанның төлсипатын таңдау үшін ашылатын ашылмалы мәзір бар. Параметрлер тізімі ен, биіктік, centerX, centerY, бұрыш, OriginX, OriginY, tagID және ұпайларды оқиды.

Object блогы көрсетілген нысанның сипаты туралы есеп беруге мүмкіндік береді. Бұл ең соңғы түсірілген суреттен алынған қолжетімді деректердің кез келгенін пайдалануға мүмкіндік береді.

Түсірілген суреттерден алуға болатын нысан сипаттары:

  • ені
  • биіктігі
  • centerX
  • орталықY
  • бұрыш
  • OriginX
  • шыққан Y
  • тег идентификаторы
  • ұпай

Осы сипаттар туралы қосымша ақпарат алу үшін осы мақаланың «Суреттен алынған деректер» бөлімін оқыңыз.


AprilTag анықталды

VEXcode EXP Detected AprilTag – AIVision1 деп оқитын блок, анықталған AprilTag – 1? AI көру сенсорын таңдау үшін ашылмалы тізім бар.

Анықталған AprilTag is блогыAprilTag Detection Mode қосулы болғанда ғана қолжетімді болады.

Бұл блок көрсетілген нысанның белгілі AprilTag болып табылатындығына байланысты True немесе False деп хабарлайды.

Үш AprilTag AI Vision Utility арқылы бақыланады. Әрбір тег сәйкестендірілген, орналасқан және жүйе арқылы оның қадағалануын көрсететін контурланған. Осы мысалдағы AprilTag идентификаторлары 0, 3 және 9 мәндерін оқиды.

Бірнеше AprilTag бір суретте анықталғанда, олар өлшемі бойынша емес, анықталған идентификаторы негізінде массивте реттеледі.

Бұл суретте 0, 3 және 9 идентификаторлары бар үш AprilTag анықталды. Олар массивтегі идентификаторының өсу ретімен ұйымдастырылады. 1-декстегі нысан идентификаторы 0 бар AprilTag-ке, 2-дексте ID 3-пен AprilTag-қа және 3-индексте идентификаторы 9 бар AprilTag-қа сәйкес келеді.

AprilTags деген не және оларды AI көру сенсорымен анықтауды қалай қосуға болатыны туралы қосымша ақпарат алу үшін осы мақаланы оқыңыз.


AI классификациясы

VEXcode EXP AI классификациясы AIVision1 оқитын блок AI классификациясы BlueBall ме? AI көру сенсорын таңдау үшін ашылмалы тізім және мақсатты AI классификациясы нысанын таңдау үшін басқа ашылмалы мәзір бар.

AI классификациясы блок текAI классификациясын анықтау режимі қосулы болғанда ғана қолжетімді болады.

 

Бұл блок көрсетілген нысанның белгілі бір AI классификациясы болуына байланысты True немесе False туралы хабарлайды.

AI көру сенсоры қандай AI классификацияларын анықтай алады, қандай үлгіні пайдаланып жатқаныңызға байланысты өзгереді. Қандай AI классификациялары бар және оларды AI көру сенсорымен анықтауды қосу жолы туралы қосымша ақпарат алу үшін осы мақаланы оқыңыз.

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

Last Updated: