Satura rādītājs:
- 1. solis: Sipeed MAix: AI pie malas
- 2. solis: Sagatavojiet savu vidi
- 3. darbība: sastādiet kodu
- 4. darbība..Bin faila augšupielāde
- 5. solis: izveidojiet savienojumu ar Arduino
- 6. darbība. Savienojuma izveide ar Raspberry Pi
- 7. solis. Secinājums
Video: AI kamera Raspberry Pi/Arduino: 7 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Ja jūs nesen sekojāt jaunumiem, notika sprādziens, kad jaunuzņēmumi izstrādāja mikroshēmas, lai paātrinātu ML (mašīnmācīšanās) algoritmu secinājumus un apmācību. Tomēr lielākā daļa no šīm mikroshēmām joprojām tiek izstrādātas, un tas nav īsti tas, ko jūsu vidējais veidotājs var iegūt. Vienīgais nozīmīgais izņēmums līdz šim bija Intel Movidius Neural Compute Stick, kas ir pieejams iegādei un ir aprīkots ar labu SDK. Tam ir daži būtiski trūkumi - proti, cena (aptuveni 100 USD) un fakts, ka tas ir pieejams USB zibatmiņas formātā. Tas ir lieliski, ja vēlaties to izmantot kopā ar klēpjdatoru vai Raspberry PI, bet ko darīt, ja vēlaties veikt dažus attēlu atpazīšanas projektus ar Arduino? Vai Raspberry Pi Zero?
1. solis: Sipeed MAix: AI pie malas
Ne tik sen es nonācu pie Sipeed M1w K210 izstrādes plates, kurai ir divkodolu RISC-V 64 bitu centrālais procesors un lepojas ar iebūvētu KPU (neironu tīkla procesoru), kas īpaši paredzēts CNN paātrināšanai attēlu apstrādei. Sīkāku informāciju varat izlasīt šeit.
Šīs plates cena mani atklāti šokēja, tā ir tikai 19 USD par pilnvērtīgu AI izstrādes plati ar Wi-Fi atbalstu! Tomēr ir brīdinājums (protams, ir): plates mikropitona programmaparatūra joprojām tiek izstrādāta, un kopumā tā pašlaik nav pārāk draudzīga lietotājam. Vienīgais veids, kā pašlaik piekļūt visām tā funkcijām, ir rakstīt savu iegulto C kodu vai modificēt dažus esošos demonstrācijas variantus.
Šajā apmācībā ir paskaidrots, kā izmantot Mobilenet 20 klases noteikšanas modeli, lai noteiktu objektus un nosūtītu atklātā objekta kodu caur UART, no kurienes to var saņemt Arduino/Raspberry Pi.
Tagad šajā apmācībā tiek pieņemts, ka esat iepazinies ar Linux un C koda apkopošanas pamatiem. Ja, dzirdot šo frāzi, jūs nedaudz noreiboja galva:), tad vienkārši pārejiet uz 4. darbību, kur augšupielādējat manu iepriekš izveidoto bināro failu Sipeed M1 un izlaižat apkopošanu.
2. solis: Sagatavojiet savu vidi
C koda apkopošanai un augšupielādei es izmantoju Ubuntu 16.04. To ir iespējams izdarīt sistēmā Windows, bet es pats to nemēģināju.
Lejupielādējiet RISC-V GNU kompilatora rīku ķēdi, instalējiet visas nepieciešamās atkarības.
git klons-rekursīvs
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
Kopējiet lejupielādēto rīku ķēdi direktorijā /opt. Pēc tam izpildiet šādas komandas
./configure --prefikss =/opt/kendryte-toolchain-ar cmodel = medany
veidot
Pievienojiet/opt/kendryte-toolchain/bin savam PATH tūlīt.
Tagad esat gatavs apkopot kodu!
3. darbība: sastādiet kodu
Lejupielādējiet kodu no manas github krātuves.
Lejupielādējiet Kendryte K210 atsevišķu SDK
Kopēt /kpu mapi no manas github krātuves uz SDK mapi /src.
Palaidiet šādas komandas SDK mapē (nevis /src mapē!)
mkdir build && cd build
cmake.. -DPROJ = projekta_nosaukums -DTOOLCHAIN =/opt/kendryte -toolchain/bin && make
kur projekta_nosaukums ir jūsu projekta nosaukums (atkarīgs no jums) un -DTOOLCHAIN = jānorāda uz jūsu risc -v rīku ķēdes atrašanās vietu (jūs to lejupielādējāt pirmajā solī, atcerieties?)
Lieliski! Tagad, cerams, redzēsit, ka kompilācija ir pabeigta bez kļūdām, un jums ir.bin fails, kuru varat augšupielādēt.
4. darbība.. Bin faila augšupielāde
Tagad pievienojiet Sipeed M1 datoram un no /build mapes izpildiet šādu komandu
sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu.bin
Kur kpu.bin ir jūsu.bin faila nosaukums
Augšupielāde parasti ilgst 2-3 minūtes, pēc tam, kad tas ir paveikts, jūs redzēsit, ka tāfele atklāj 20 klases. Pēdējais solis mums ir savienot to ar Arduino mega vai Raspberry Pi.
!!! Ja jūs tikko nākāt no 2. soļa !
Izpildiet šādu komandu no mapes, kurā klonējāt manu github repozitoriju
sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu_bin.bin
Augšupielāde parasti ilgst 2-3 minūtes, pēc tam, kad tas ir paveikts, jūs redzēsit, ka tāfele atklāj 20 klases. Pēdējais solis mums ir savienot to ar Arduino mega vai Raspberry Pi.
5. solis: izveidojiet savienojumu ar Arduino
Es izmantoju Arduino Mega ar Seeed Studio Mega Shield, tāpēc es lodēju Grove savienotāju pie Sipeed M1 plates. Tomēr jūs varat vienkārši izmantot džemperu vadus un savienot Sipeed M1 tieši ar Arduino Mega, ievērojot šo elektroinstalācijas shēmu.
Pēc tam augšupielādējiet camera.ino skici un atveriet sērijas monitoru. Norādot kameru uz dažādiem objektiem (skicē ir 20 klašu saraksts), sērijas monitorā jāizdod klases nosaukums!
Apsveicam! Tagad jūsu Arduino ir pieejams attēla noteikšanas modulis!
6. darbība. Savienojuma izveide ar Raspberry Pi
Es izmantoju Grove Pi+ cepuri Raspberry Pi 2B, bet atkal, tāpat kā ar Arduino, jūs varat tieši savienot Sipeed M1 ar Raspberry Pi UART saskarni, ievērojot šo elektroinstalācijas shēmu.
Pēc tam palaidiet camera_speak.py un norādiet kameru uz dažādiem objektiem, terminālis izvadīs šādu tekstu "Es domāju, ka tā ir", kā arī, ja jums ir pievienoti skaļruņi, tas skaļi izrunās šo frāzi. Diezgan forši, vai ne?
7. solis. Secinājums
Šis ir ļoti aizraujošs laiks, kurā mēs dzīvojam, un AI un mašīnmācība iekļūst visās mūsu dzīves jomās. Ar nepacietību gaidu attīstību šajā jomā. Es sazinos ar Sipeed komandu, un es zinu, ka viņi aktīvi izstrādā mikropitona iesaiņojumu visām nepieciešamajām funkcijām, ieskaitot CNN paātrinājumu.
Kad tas būs gatavs, es ļoti iespējams publicēšu vairāk pamācību par to, kā izmantot savus CNN modeļus ar mikropitonu. Padomājiet par visām aizraujošajām lietojumprogrammām, kas var būt dēlim, kas var vadīt savus attēlu apstrādes neironu tīklus par šo cenu un ar šo nospiedumu!
Ieteicams:
Raspberry Pi kustības sensoru kamera prožektoru korpusā: 3 soļi
Raspberry Pi kustības sensoru kamera Floodlight korpusā: es jau kādu laiku esmu ķēries pie Raspberry Pi, izmantojot tos nelielām dažādām lietām, bet galvenokārt kā videonovērošanas kameru, lai uzraudzītu savas mājas, atrodoties prom no iespējas attālināti apskatīt tiešraidi, bet saņemt arī e -pastus par attēlu uzņemšanu
Raspberry Pi infrasarkano staru spēļu kamera: 6 soļi
Raspberry Pi infrasarkano staru spēļu kamera: es tikko sāku izpētīt Raspberry Pi, un mani interesēja Pi infrasarkanās kameras modulis. Es dzīvoju nedaudz nomaļā vietā un esmu redzējis pazīmes, kā dažādi savvaļas dzīvnieki naktī pēta māju. Man bija ideja izveidot nigu
FPGA Cyclone IV DueProLogic Controls Raspberry Pi kamera: 5 soļi
FPGA Cyclone IV DueProLogic Controls Raspberry Pi kamera: Neskatoties uz FPGA DueProLogic ir oficiāli izstrādāta Arduino, mēs padarīsim FPGA un Raspberry Pi 4B sazināmus. Šajā apmācībā ir īstenoti trīs uzdevumi: (A) Vienlaicīgi nospiediet divas spiedpogas FPGA, lai pagrieztu leņķi
Vienkāršākā tīmekļa kamera kā drošības kamera - kustību noteikšana un e -pastā nosūtīti attēli: 4 soļi
Vienkāršākā tīmekļa kamera kā drošības kamera - kustību noteikšana un e -pastā nosūtītie attēli: jums vairs nav jālejupielādē vai jākonfigurē programmatūra, lai no jūsu tīmekļa kameras uz e -pastu saņemtu kustības noteiktus attēlus - vienkārši izmantojiet pārlūkprogrammu. Izmantojiet jaunāko pārlūkprogrammu Firefox, Chrome, Edge vai Opera operētājsistēmā Windows, Mac vai Android, lai uzņemtu attēlu
Tīmekļa kamera Hawkeye Brownie kamerā: 3 soļi (ar attēliem)
Tīmekļa kamera Hawkeye Brownie kamerā: Pirms dažām kodēm es žurnālā Make saskāros ar diy par tīmekļa kameras ievietošanu vecā salokāmajā kamerā, un tas bija kaut kas tuvāks tam, ko esmu mēģinājis darīt ar punktu un nošāva digicam bet es neesmu atradis ideālu lietu. Man patīk