Përmbajtje:

Kamera AI për Raspberry Pi/Arduino: 7 hapa
Kamera AI për Raspberry Pi/Arduino: 7 hapa

Video: Kamera AI për Raspberry Pi/Arduino: 7 hapa

Video: Kamera AI për Raspberry Pi/Arduino: 7 hapa
Video: Простой робот с камерой | Orange pi | Raspberry pi | OpenCV 2024, Qershor
Anonim
Image
Image

Nëse keni qenë duke ndjekur lajmet kohët e fundit, pati një shpërthim të bizneseve të reja që zhvilluan patate të skuqura për përshpejtimin e përfundimit dhe trajnimit të algoritmeve ML (mësimi i makinerisë). Sidoqoftë, shumica e atyre patate të skuqura janë ende në zhvillim dhe jo me të vërtetë diçka që krijuesi juaj mesatar mund të marrë në dorë. I vetmi përjashtim domethënës deri më tani ishte Intel Movidius Neural Compute Stick, i cili është i disponueshëm për blerje dhe vjen me një SDK të mirë. Ai ka disa disavantazhe të rëndësishme - domethënë çmimin (rreth 100 dollarë) dhe faktin që vjen në formatin USB stick. Greatshtë mirë nëse doni ta përdorni me laptop ose Raspberry PI, por çfarë nëse dëshironi të bëni disa projekte të njohjes së imazhit me Arduino? Apo Raspberry Pi Zero?

Hapi 1: Sipeed MAix: AI në Edge

Sipeed MAix: AI në Edge
Sipeed MAix: AI në Edge

Jo shumë kohë më parë mora dorën në bordin e zhvillimit Sipeed M1w K210, i cili ka CPU dual-core RISC-V 64bit dhe krenohet me një KPU në bord (Procesori i Rrjetit Neural), i krijuar posaçërisht për përshpejtimin e CNN për përpunimin e imazhit. Mund të lexoni më shumë detaje këtu.

Çmimi i këtij bordi sinqerisht më tronditi, është vetëm 19 dollarë për bordin e plotë të zhvillimit të AI-së-në-buzë me mbështetje Wi-fi! Edhe pse ka një paralajmërim (natyrisht që ka): firmware -i i mikropitonit për bordin është ende në zhvillim dhe në përgjithësi nuk është shumë miqësor për përdoruesit deri tani. Mënyra e vetme për të hyrë në të gjitha funksionet e saj tani është të shkruani kodin tuaj C të integruar ose të modifikoni disa demonstrime ekzistuese.

Ky tutorial shpjegon se si të përdorni modelin e zbulimit të klasës Mobilenet 20 për të zbuluar objektet dhe për të dërguar kodin e objektit të zbuluar përmes UART, nga ku mund të merret nga Arduino/Raspberry Pi.

Tani, ky tutorial supozon se jeni njohur me Linux dhe bazat e përpilimit të kodit C. Nëse dëgjimi i kësaj fraze ju bëri pak të trullosur:) atëherë thjesht kaloni në Hapin 4, ku ngarkoni binarin tim të para-ndërtuar në Sipeed M1 dhe kaloni përpilimin.

Hapi 2: Përgatitni mjedisin tuaj

Përgatitni mjedisin tuaj
Përgatitni mjedisin tuaj

Kam përdorur Ubuntu 16.04 për përpilimin dhe ngarkimin e kodit C. Windowsshtë e mundur ta bëni këtë në Windows, por unë vetë nuk e provova.

Shkarkoni Zinxhirin e RISC-V GNU Compiler Tool, instaloni të gjitha varësitë e nevojshme.

git clone --recursive

sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-thelbësor bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev

Kopjoni zinxhirin e veglave të shkarkuar në /opt directory. Pas kësaj ekzekutoni komandat e mëposhtme

./configure --prefix =/opt/kendryte-toolchain-with-cmodel = medan

bëj

Shtoni/zgjedh/kendryte-toolchain/bin në PATH-in tuaj tani.

Tani jeni gati përpiloni kodin!

Hapi 3: Përpiloni Kodin

Përpiloni Kodin
Përpiloni Kodin

Shkarkoni kodin nga depoja ime e github.

Shkarkoni SDK të pavarur Kendryte K210

Kopjoni /dosjen kpu nga depoja ime e github në dosjen /src në SDK.

Drejtoni komandat e mëposhtme në dosjen SDK (dosja jo /src!)

mkdir build && cd build

cmake.. -DPROJ = emri i projektit -DTOOLCHAIN =/opt/kendryte -toolchain/bin && make

ku emri i projektit është emri i projektit tuaj (varet nga ju) dhe -DTOOLCHAIN = duhet të tregojë vendndodhjen e zinxhirit tuaj të veglave risc -v (e keni shkarkuar atë në hapin e parë, mbani mend?)

Shkëlqyeshëm! Tani me shpresë se do të shihni përpilimin e përfunduar pa gabime dhe keni një skedar.bin që mund të ngarkoni.

Hapi 4: Ngarkimi i skedarit.bin

Ngarkimi i skedarit.bin
Ngarkimi i skedarit.bin

Tani lidhni Sipeed M1 tuaj me kompjuterin dhe nga dosja /build ekzekutoni komandën e mëposhtme

sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu.bin

Ku kpu.bin është emri i skedarit tuaj.bin

Ngarkimi zakonisht zgjat 2-3 minuta, pasi të jetë kryer do të shihni që bordi të funksionojë me zbulimin e 20 klasave. Hapi i fundit për ne është ta lidhim atë me Arduino mega ose Raspberry Pi.

!!! Nëse sapo keni ardhur nga Hapi 2 !!

Drejtoni komandën e mëposhtme nga dosja ku keni klonuar depon time të github

sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu_bin.bin

Ngarkimi zakonisht zgjat 2-3 minuta, pasi të jetë kryer do të shihni që bordi të funksionojë me zbulimin e 20 klasave. Hapi i fundit për ne është ta lidhim atë me Arduino mega ose Raspberry Pi.

Hapi 5: Lidhja me Arduino

Lidhja me Arduino
Lidhja me Arduino
Lidhja me Arduino
Lidhja me Arduino
Lidhja me Arduino
Lidhja me Arduino

Kam përdorur Arduino Mega me Seeed Studio Mega Shield, kjo është arsyeja pse bashkova një lidhës Grove në bordin Sipeed M1. Sidoqoftë, thjesht mund të përdorni tela kërcyes dhe të lidhni Sipeed M1 direkt me Arduino Mega, duke ndjekur këtë diagram të instalimeve elektrike.

Pas kësaj ngarkoni kamerën.ino skiconi dhe hapni monitorin Serial. Kur drejtoni kamerën drejt objekteve të ndryshme (lista e 20 klasave është në skicë) ajo duhet të nxjerrë emrin e klasës në monitorin serik!

Urime! Tani keni modulin e zbulimit të imazhit të punës për Arduino -n tuaj!

Hapi 6: Lidhja me Raspberry Pi

Lidhja me Raspberry Pi
Lidhja me Raspberry Pi
Lidhja me Raspberry Pi
Lidhja me Raspberry Pi

Kam përdorur kapelën Grove Pi+ për Raspberry Pi 2B, por përsëri, si me Arduino ju thjesht mund të lidhni drejtpërdrejt Sipeed M1 me ndërfaqen UART të Raspberry Pi pas këtij diagrami të telave.

Pas nisjes së camera_speak.py dhe drejtojeni kamerën drejt objekteve të ndryshme, terminali do të nxjerrë tekstin e mëposhtëm "Unë mendoj se është" dhe gjithashtu nëse keni folës të lidhur, ai do ta flasë këtë frazë me zë të lartë. Mjaft bukur, apo jo?

Hapi 7: Përfundimi

Kjo është një kohë shumë tërheqëse në të cilën po jetojmë, me AI dhe mësimin e makinerisë që depërtojnë në të gjitha fushat e jetës sonë. Mezi pres zhvillimin në këtë fushë. Unë jam duke mbajtur kontakte me ekipin e Sipeed dhe e di që ata po zhvillojnë në mënyrë aktive mbështjellës mikropitoni për të gjitha funksionet e nevojshme, përfshirë përshpejtimin e CNN.

Kur të jetë gati, me shumë mundësi do të publikoj më shumë udhëzime se si të përdorni modelet tuaja të CNN me mikropiton. Mendoni për të gjitha aplikimet emocionuese që mund të keni për një tabelë që mund të ekzekutojë rrjetet tuaja nervore të përpunimit të imazhit për këtë çmim dhe me këtë gjurmë!

Recommended: