Satura rādītājs:

Sipeed MaiX bitu OpenMV demonstrācijas - datora redze: 3 soļi
Sipeed MaiX bitu OpenMV demonstrācijas - datora redze: 3 soļi

Video: Sipeed MaiX bitu OpenMV demonstrācijas - datora redze: 3 soļi

Video: Sipeed MaiX bitu OpenMV demonstrācijas - datora redze: 3 soļi
Video: Testing Sipeed MAIX-II Dock - Deep Learning AI+IOT Linux 1080P Vision Development Board Kit 2024, Novembris
Anonim
Image
Image

Šis ir otrais raksts sērijā par Sipeed AI Edge mikrokontrolleru platformā. Šoreiz es rakstīšu par MaiX Bit (saite uz Seeed Studio Shop), mazāku, gatavu maizei. Tās specifikācijas ir ļoti līdzīgas MaiX Dock, tāfelei, kuru izmantoju pēdējā apmācībā, jo tajās tiek izmantota viena un tā pati mikroshēma - Kendryte K210.

Mēs izmantosim mikropitona programmaparatūru, lai izmēģinātu dažas OpenMV demonstrācijas. Šeit ir apraksts no OpenMV mājas lapas:

Projekta OpenMV mērķis ir izveidot lētus, paplašināmus, ar Python darbināmus, mašīnas redzes moduļus, un tā mērķis ir kļūt par “Machine Vision Arduino”.… Python ievērojami atvieglo darbu ar mašīnu redzes algoritmiem. Piemēram, koda metode find_blobs () atrod krāsu lāses un atgriež 8 vērtību objektu sarakstu, kas attēlo katru atrasto krāsu lāsi. Programmā Python iterēšana, izmantojot objektu sarakstu, ko atdeva find_blobs (), un taisnstūra uzzīmēšana ap katru krāsu lāsi ir viegli izdarāma tikai divās koda rindās.

Tātad, neraugoties uz to, ka MaiX Bit ir īpašs neironu tīkla paātrinātājs, dažreiz var būt vieglāk vienkārši izmantot OpenMV kodētos algoritmus, lai veiktu darbu vai izmantotu tos līdzās.

Daži lietošanas gadījumi, kas man ienāk prātā, ir šādi:

1) Līnijas noteikšanas rindas sekotāja robots

2) Luksoforu noteikšana ar apļa un krāsu noteikšanu

3) Sejas noteikšanas izmantošana, lai atrastu sejas sejas atpazīšanai (ar DNN)

Github krātuve šim rakstam

1. darbība. Flash Micropython programmaparatūra

Izveidojiet savienojumu ar MaiX Bit
Izveidojiet savienojumu ar MaiX Bit

Pirmkārt, mums būs jāatspoguļo mikropitona programmaparatūra. Šim rakstam paredzētā github krātuvē ir iekļauta iepriekš kompilēta binārā, kā arī kflash.py (zibatmiņas utilīta). Ja vēlaties apkopot programmaparatūru no avota koda, vienkārši lejupielādējiet avota kodu no vietnes https://github.com/sipeed/MaixPy, instalējiet rīku ķēdi un apkopojiet avota kodu failā maixpy.bin. Detalizētas būvniecības instrukcijas var atrast šeit.

Flash bināro failu ar

sudo python3 kflash.py kpu.bin

Pēc veiksmīgas mirgošanas pārejiet pie nākamās darbības.

2. darbība: izveidojiet savienojumu ar MaiX Bit

Tagad mūsu MaiX bitam vajadzētu būt pieejamam, izmantojot USB seriālo savienojumu ar bitu pārraides ātrumu 115200. Jūs varat izmantot savu iecienītāko programmatūru sērijveida komunikācijai vai vienkārši izmantot kaķu un atbalss komandas neatkarīgi no jūsu vajadzībām. Es seriālajai saziņai izmantoju ekrānu, un man tas šķita ļoti ērti.

Komanda sērijas sakaru sesijas izveidei ar ekrānu ir

sudo ekrāns /dev /ttyUSB0 115200

kur /dev /ttyUSB0 ir jūsu ierīces adrese.

Jums, iespējams, vajadzēs nospiest mikrokontrollera atiestatīšanas pogu, lai redzētu sveiciena ziņojumu un python tulka uzvedni.

3. darbība: palaidiet demonstrācijas

Tagad varat piekļūt kopēšanas režīmam, nospiežot Ctrl+E un kopējiet un ielīmējiet demonstrācijas kodus. Lai tos palaistu, kopēšanas režīmā nospiediet Ctrl+D.

Ja nevēlaties ierakstīt videoklipus, jums ir nepieciešams komentēt video ierakstīšanas rindas. Pretējā gadījumā kods radīs izņēmumu, ja nav ievietota SD karte

Šeit ir īss katras demonstrācijas apraksts:

Atrast lokus - izmanto funkciju find_circles no OpenMV. Nepieciešams vairāk pielāgot jūsu konkrētajai lietojumprogrammai, jo īpaši slieksnim (kontrolē, kādi apļi tiek atklāti no hough transformācijas. Tiek atgriezti tikai apļi, kuru lielums ir lielāks vai vienāds ar slieksni) un r_min, r_max vērtības.

Atrast taisnstūrus - izmanto funkciju find_rects no OpenMV. Jūs varat spēlēties ar sliekšņa vērtību, taču demo versijā pieejamā vērtība ir diezgan laba taisnstūru atrašanai.

Atrodiet sejas, atrodiet acis - izmanto funkciju find_features ar Haar Cascades, lai attēlā noteiktu acis un frontālo seju. Jūs varat spēlēties ar sliekšņa un skalas vērtībām, lai iegūtu pareizu ātruma un precizitātes kompromisu.

Atrast bezgalīgas līnijas - izmanto funkciju find_lines, lai atrastu visas bezgalīgās līnijas attēlā, izmantojot hough transformāciju.

Noteikt krāsu - izmanto funkciju get_statistics, lai iegūtu procentiles objektu, un pēc tam pārvērš LAB sērijas vidējās vērtības RGB vērtību kartē. Es pats uzrakstīju šo piemēru, un tas darbojas diezgan labi, taču paturiet prātā, ka krāsu noteikšanas rezultātus ietekmēs apkārtējās gaismas apstākļi.

OpenMV github krātuvē varat atrast daudz vairāk interesantu demonstrāciju! Tie galvenokārt ir saderīgi ar MaiX Bit mikropitonu, vienīgais, kas jums jāatceras, ir pievienot sensor.run (1) pēc piksformāta un kadru izmēra iestatīšanas.

Laimīgu eksperimentu ar OpenMV kodu. Ja jums ir kādi jautājumi vai vēlaties dalīties ar saviem interesantajiem rezultātiem, nevilcinieties sazināties ar mani vietnē Youtube vai LinkedIn. Atvainojiet, es uztaisīšu dažus robotus!

Ieteicams: