Sisukord:
- 1. samm: Sipeed MAix: AI servas
- Samm: valmistage oma keskkond ette
- 3. samm: koostage kood
- Samm 4:.bin -faili üleslaadimine
- Samm: ühendage Arduinoga
- Samm: ühenduse loomine Raspberry Pi -ga
- Samm 7: Järeldus
Video: AI -kaamera Raspberry Pi/Arduino jaoks: 7 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Kui olete hiljuti uudiseid jälginud, toimus plahvatuslikult idufirmade poolt, kes arendasid kiipe ML (masinõppe) algoritmide järeldamise ja koolituse kiirendamiseks. Kuid enamik neist kiibidest on alles väljatöötamisel ja pole tegelikult midagi, mida teie keskmine tegija saaks kätte saada. Ainus märkimisväärne erand oli seni Intel Movidius Neural Compute Stick, mida saab osta ja millel on hea SDK. Sellel on mõned olulised puudused - nimelt hind (umbes 100 USD) ja asjaolu, et see on saadaval USB -mälupulga kujul. See on suurepärane, kui soovite seda kasutada sülearvuti või Raspberry PI -ga, aga mis siis, kui soovite Arduinoga teha mõned pildituvastuse projektid? Või Raspberry Pi Zero?
1. samm: Sipeed MAix: AI servas
Mitte nii kaua aega tagasi sattusin Sipeed M1w K210 arendusplaadile, millel on kahetuumaline 64-bitine RISC-V protsessor ja millel on sisseehitatud KPU (Neural Network Processor), mis on spetsiaalselt loodud CNN-i kiirendamiseks pilditöötluseks. Lisateavet saate lugeda siit.
Selle plaadi hind šokeeris mind ausalt, see on vaid 19 USD täieõigusliku AI-on-the-edge arendusplaadi ja WiFi toega! Siiski on hoiatus (muidugi on): tahvli mikropythoni püsivara on alles väljatöötamisel ja üldiselt pole see praegu liiga kasutajasõbralik. Ainus viis kõigile selle funktsioonidele praegu juurde pääseda on kirjutada oma manustatud C -kood või muuta mõnda olemasolevat demot.
See õpetus selgitab, kuidas kasutada Mobilenet 20 klassi tuvastusmudelit objektide tuvastamiseks ja tuvastatud objektikoodi saatmiseks UART -i kaudu, kust Arduino/Raspberry Pi saab selle vastu võtta.
Nüüd eeldab see õpetus, et olete tuttav Linuxiga ja C -koodi koostamise põhitõdedega. Kui selle fraasi kuulmine tekitas veidi uimastust:) siis jätkake lihtsalt 4. sammuga, kus laadite üles minu eelehitatud binaarfaili Sipeed M1-sse ja jätate koostamise vahele.
Samm: valmistage oma keskkond ette
C -koodi kompileerimiseks ja üleslaadimiseks kasutasin Ubuntu 16.04. Windowsis on seda võimalik teha, aga ma ise ei proovinud.
Laadige alla RISC-V GNU kompilaatori tööriistakett, installige kõik vajalikud sõltuvused.
git kloon-rekursiivne
sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev
Kopeerige allalaaditud tööriistakett kataloogi /opt. Pärast seda käivitage järgmised käsud
./configure --prefix =/opt/kendryte-toolchain-koos-cmodel = medany
tegema
Lisage/opt/kendryte-toolchain/bin oma PATH-ile kohe.
Nüüd olete koodi koostamiseks valmis!
3. samm: koostage kood
Laadige kood alla minu githubi hoidlast.
Laadige alla Kendryte K210 eraldiseisev SDK
Kopeeri /kpu kaust minu githubi hoidlast SDK kausta /src.
Käivitage SDK kaustas järgmised käsud (mitte kaust /src!)
mkdir build && cd build
cmake.. -DPROJ = projekti_nimi -DTOOLCHAIN =/opt/kendryte -toolchain/bin && make
kus projekti_nimi on teie projekti nimi (teie otsustada) ja -DTOOLCHAIN = peaks viitama teie risc -v tööriistaketi asukohale (laadisite selle alla esimeses etapis, mäletate?)
Suurepärane! Loodetavasti näete, et kompileerimine on vigadeta lõpetatud ja teil on.bin -fail, mille saate üles laadida.
Samm 4:.bin -faili üleslaadimine
Nüüd ühendage oma Sipeed M1 arvutiga ja käivitage kaustast /build järgmine käsk
sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu.bin
Kus kpu.bin on teie.bin -faili nimi
Üleslaadimine võtab tavaliselt 2–3 minutit, pärast selle valmimist näete tahvlil 20 klassi tuvastamist. Viimane samm meie jaoks on ühendada see Arduino mega või Raspberry Pi -ga.
!!! Kui tulite just 2. sammult !
Käivitage järgmine käsk kaustast, kus te minu githubi hoidla kloonisite
sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu_bin.bin
Üleslaadimine võtab tavaliselt 2–3 minutit, pärast selle valmimist näete tahvlil 20 klassi tuvastamist. Viimane samm meie jaoks on ühendada see Arduino mega või Raspberry Pi -ga.
Samm: ühendage Arduinoga
Ma kasutasin Arduino Megat koos Seeed Studio Mega Shieldiga, seetõttu jootsin Grove'i pistiku Sipeed M1 plaadile. Siiski saate lihtsalt kasutada hüppajajuhtmeid ja ühendada Sipeed M1 otse Arduino Mega, järgides seda ühendusskeemi.
Pärast seda laadige üles kaamera.ino visand ja avage seeriamonitor. Kui suunate kaamera erinevatele objektidele (visandis on 20 klassi loend), peaks see jadamonitoris väljastama klassi nime!
Palju õnne! Nüüd on teie Arduino jaoks töökorras kujutise tuvastamise moodul!
Samm: ühenduse loomine Raspberry Pi -ga
Kasutasin Raspberry Pi 2B jaoks Grove Pi+ mütsi, kuid jällegi, nagu Arduino puhul, saate Sipeed M1 otse ühendada Raspberry Pi UART -liidesega, järgides seda ühendusskeemi.
Pärast seda käivitage camera_speak.py ja suunake kaamera erinevatele objektidele, väljastab terminal järgmise teksti "Ma arvan, et see on" ja ka siis, kui teil on kõlarid ühendatud, ütleb ta selle fraasi valjusti. Päris lahe, kas pole?
Samm 7: Järeldus
Praegu on väga põnevad ajad, mil me elame, kusjuures AI ja masinõpe tungivad kõikidesse meie eluvaldkondadesse. Ootan huviga selle valdkonna arengut. Hoian sidet Sipeedi meeskonnaga ja tean, et nad arendavad aktiivselt välja mikropythoni ümbrist kõigi vajalike funktsioonide, sealhulgas CNN -i kiirenduse jaoks.
Kui see on valmis, avaldan suure tõenäosusega rohkem juhiseid selle kohta, kuidas kasutada oma CNN -i mudeleid koos mikropüütiga. Mõelge kõigile põnevatele rakendustele, mis võivad teil olla selle hinna ja selle jalajälje eest oma pilditöötluse närvivõrke juhtida!
Soovitan:
Käed -vabad Google'i assistent Raspberry Pi jaoks: 14 sammu (koos piltidega)
Käed -vabad Google'i assistent Raspberry Pi jaoks: Tere ja tere tulemast minu esimesele Instructable'ile! Selles juhendis näitan teile, mida ma pean kõige lihtsamaks viisiks, kuidas installida oma Raspberry Pi -sse kõik laulvad, kõik tantsivad Google'i assistendid. Ta on OK Googliga täiesti käed vabad
64 -bitine RT kerneli koostamine Raspberry Pi 4B jaoks.: 5 sammu
64 -bitine RT kerneli koostamine Raspberry Pi 4B jaoks: see õpetus hõlmab 64 -bitise reaalajas kerneli loomise ja installimise protsessi Raspberry Pi -le. RT Kernel on ROS2 ja muude reaalajas IOT -lahenduste täieliku funktsionaalsuse jaoks ülioluline. Kernel installiti x64 -põhisele Raspbianile, mis võib olla
Ambilighti süsteem iga teie teleriga ühendatud sisendi jaoks. WS2812B Arduino UNO Raspberry Pi HDMI (uuendatud 12.2019): 12 sammu (koos piltidega)
Ambilighti süsteem iga teie teleriga ühendatud sisendi jaoks. WS2812B Arduino UNO Raspberry Pi HDMI (uuendatud 12.2019): Olen alati tahtnud oma telerisse ambilight lisada. See näeb nii lahe välja! Lõpuks tegin seda ja ma ei pidanud pettuma! Olen näinud palju videoid ja palju õpetusi teie teleri jaoks Ambilighti süsteemi loomiseks, kuid ma pole kunagi leidnud täielikku õpetust oma täpse nee jaoks
Kasutage 1 analoogsisendit 6 nupu jaoks Arduino jaoks: 6 sammu
Kasutage Arduino jaoks kuue nupu jaoks ühte analoogsisendit: olen sageli mõelnud, kuidas saaksin oma Arduino jaoks rohkem digitaalseid sisendeid. Hiljuti tuli mulle pähe, et peaksin saama kasutada ühte analoogsisendit mitme digitaalse sisendi toomiseks. Otsisin kiiresti ja leidsin, kus inimesed asuvad
Oranž PI kuidas: Koostage Sunxi tööriist Windowsi jaoks Windowsi jaoks: 14 sammu (piltidega)
Orange PI HowTo: Koostage Sunxi tööriist Windowsi jaoks Windowsi jaoks: EELTINGIMUSED: Teil on vaja Windowsi (lauaarvuti). Interneti -ühendus. Oranž PI -plaat. Viimane on valikuline, kuid olen kindel, et teil on see juba olemas. Vastasel juhul ei loe te seda juhendit. Kui ostate oranži PI patu