Sisukord:

Sipeed MaiX Bit OpenMV demod - arvuti nägemine: 3 sammu
Sipeed MaiX Bit OpenMV demod - arvuti nägemine: 3 sammu

Video: Sipeed MaiX Bit OpenMV demod - arvuti nägemine: 3 sammu

Video: Sipeed MaiX Bit OpenMV demod - arvuti nägemine: 3 sammu
Video: Testing Sipeed MAIX-II Dock - Deep Learning AI+IOT Linux 1080P Vision Development Board Kit 2024, November
Anonim
Image
Image

See on teine artikkel sarjas Sipeed AI kohta mikrokontrolleri platvormil Edge. Seekord kirjutan MaiX Bitist (link saidile Seeed Studio Shop), väiksemast, leivaplaadi jaoks valmis arendusplaadist. Selle spetsifikatsioonid on väga sarnased MaiX Dockiga, tahvliga, mida ma eelmisel õppetükil kasutasin, kuna nad kasutavad sama kiipi, Kendryte K210.

Kasutame OpenMV demode proovimiseks mikropythoni püsivara. Siin on kirjeldus OpenMV kodulehelt:

Projekti OpenMV eesmärk on luua odavaid, laiendatavaid, Pythoni jõul töötavaid masinavisioonimooduleid ja selle eesmärk on saada „Machine Visioni Arduinoks“.… Python muudab masinate nägemuse algoritmidega töötamise palju lihtsamaks. Näiteks leiab koodis leidmismeetod find_blobs () värvilised plekid ja tagastab loendi 8-väärtusega objektidest, mis esindavad iga leitud värviplekki. Pythonis iteratsioon find_blobs () poolt tagastatud objektide loendis ja ristküliku joonistamine iga värvipulga ümber on hõlpsasti teostatav vaid kahe koodireaga.

Seega, vaatamata sellele, et MaiX Bitil on spetsiaalne närvivõrgu kiirendi, võib mõnikord olla lihtsam kasutada töö tegemiseks OpenMV kõvakodeeritud algoritme või kasutada neid kõrvuti.

Mõned kasutusjuhud, mis mulle pähe tulevad, on järgmised:

1) Joone jälgija roboti joone tuvastamine

2) Fooride tuvastamine ringi ja värvide tuvastamisega

3) Näotuvastuse kasutamine näotuvastuse nägude leidmiseks (DNN -iga)

Selle artikli Githubi hoidla

Samm: välklambi Micropython püsivara

Ühendage MaiX Bitiga
Ühendage MaiX Bitiga

Kõigepealt peame oma plaadile välkima mikropythoni püsivara. Selle artikli githubi hoidlasse on lisatud eelkompileeritud binaarfail koos kflash.py (välk -utiliit). Kui soovite püsivara lähtekoodist kompileerida, laadige lihtsalt lähtekood alla aadressilt https://github.com/sipeed/MaixPy, installige tööriistakett ja kompileerige lähtekood faili maixpy.bin. Üksikasjalikud ehitusjuhised leiate siit.

Flash binaarfaili abil

sudo python3 kflash.py kpu.bin

Pärast edukat vilkumist jätkake järgmise sammuga.

Samm: ühendage MaiX Bit

Nüüd peaks meie MaiX -bit olema ligipääsetav USB -jadaühenduse kaudu, mille kiirus on 115200. Jadaühenduseks saate kasutada oma lemmikprogrammi või lihtsalt kassi- ja kajakäsklusi, mis teie vajadustele sobib. Kasutasin jadaühenduseks ekraani ja see oli väga mugav.

Käsk ekraaniga jadaühenduse seansi loomiseks on

sudo ekraan /dev /ttyUSB0 115200

kus /dev /ttyUSB0 on teie seadme aadress.

Tervitusteate ja pythoni tõlgi viiba nägemiseks peate võib -olla vajutama mikrokontrolleri lähtestamisnuppu.

3. samm: käivitage demod

Nüüd pääsete kopeerimisrežiimi juurde, vajutades klahvikombinatsiooni Ctrl+E ja kopeerides ja kleepides demokoodid. Nende käivitamiseks vajutage kopeerimisrežiimis Ctrl+D.

Kui te ei soovi videoid salvestada, peate videosalvestusjooni kommenteerima. Vastasel korral loob kood erandi, kui SD -kaarti pole sisestatud

Siin on iga demo lühikirjeldus:

Suhtlusringide otsimine - kasutab OpenMV funktsiooni find_circles. Vajab teie konkreetse rakenduse jaoks rohkem kohandamist, eriti läve (kontrollib, milliseid ringe hough -teisendusest tuvastatakse. Tagastatakse ainult ringid, mille suurusjärk on suurem või võrdne) ja r_min, r_max.

Otsi ristkülikuid - kasutab OpenMV -st funktsiooni find_rects. Saate künnise väärtusega mängida, kuid demo väärtus on ristkülikute leidmiseks üsna hea.

Otsige nägusid, otsige silmi - kasutab Haar Cascades'iga funktsiooni find_features, et tuvastada pildil silmad ja eesmine nägu. Õige kiiruse ja täpsuse kompromissiks saate mängida läve- ja skaalaväärtustega.

Otsige lõpmatuid jooni - kasutab funktsiooni find_lines, et leida kõik kujutise lõpmatud jooned hough -teisenduse abil.

Tuvasta värv - kasutab protsentiili objekti saamiseks funktsiooni get_statistics ja teisendab seejärel LAB -i väärtuse keskmised väärtused RGB -väärtusteks. Kirjutasin selle näite ise ja see töötab üsna hästi, kuid pidage meeles, et ümbritseva valguse tingimused mõjutavad värvide tuvastamise tulemusi.

OpenMV githubi hoidlast leiate palju rohkem huvitavaid demosid! Need ühilduvad enamasti MaiX Bit mikropüütidega, ainus asi, mida peate meeles pidama, on lisada sensor.run (1) pärast piksvormingu ja kaadrisuuruse seadistamist.

Head katsetamist OpenMV -koodiga. Kui teil on küsimusi või soovite jagada mõnda oma huvitavat tulemust, võtke minuga ühendust Youtube'is või LinkedInis. Vabandage, ma teen robotid!

Soovitan: