Obsah:
Video: Bitové ukážky Sipeed MaiX OpenMV - počítačové videnie: 3 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
Toto je druhý článok zo série o Sipeed AI na platforme mikrokontrolérov Edge. Dnes budem písať o MaiX Bit (odkaz na Seeed Studio Shop), menšej vývojovej doske pripravenej na breadboard. Jeho špecifikácie sú veľmi podobné doske MaiX Dock, doske, ktorú som použil pri minulom návode, pretože používajú rovnaký čip Kendryte K210.
Na vyskúšanie niektorých ukážok OpenMV použijeme firmvér mikropythonu. Tu je popis z domovskej stránky OpenMV:
Projekt OpenMV je o vytváraní nízkonákladových, rozšíriteľných a strojovo viditeľných modulov strojového videnia poháňaných Pythonom a jeho cieľom je stať sa „Arduinom strojového videnia“. … Python uľahčuje prácu s algoritmami strojových vízií. Metóda find_blobs () v kóde napríklad nájde farebné objekty blob a vráti zoznam 8 hodnotných objektov predstavujúcich každý nájdený farebný blob. V Pythone je možné iteráciu zoznamu objektov vrátených find_blobs () a nakreslenie obdĺžnika okolo každého farebného bloku ľahko vykonať iba v dvoch riadkoch kódu.
Napriek funkciám MaiX Bit, ktoré sú vyhradeným akcelerátorom neurónových sietí, niekedy môže byť jednoduchšie použiť na prácu prácu pevne kódované algoritmy OpenMV alebo ich použiť vedľa seba.
Napadajú ma tieto prípady použitia:
1) Detekcia linky pre robota sledujúceho čiaru
2) Detekcia semaforov s detekciou kruhu a farieb
3) Použitie rozpoznania tváre na nájdenie tvárí na rozpoznávanie tvárí (s DNN)
Úložisko Github pre tento článok
Krok 1: Firmvér Flash Micropython
Najprv budeme musieť na našu dosku nahrať firmvér mikropythonu. Predkompilovaný binárny súbor je súčasťou úložiska github pre tento článok spolu s kflash.py (nástroj Flash). Ak chcete zostaviť firmvér zo zdrojového kódu, jednoducho si stiahnite zdrojový kód z https://github.com/sipeed/MaixPy, nainštalujte si reťazec nástrojov a skomprimujte zdrojový kód do súboru maixpy.bin. Podrobný návod na zostavenie nájdete tu.
Flashujte binárny súbor pomocou
sudo python3 kflash.py kpu.bin
Po úspešnom blikaní pokračujte ďalším krokom.
Krok 2: Pripojte sa k MaiX Bit
Teraz by mal byť náš bit MaiX prístupný prostredníctvom sériového pripojenia USB s prenosovou rýchlosťou 115200. Váš obľúbený softvér môžete použiť na sériovú komunikáciu alebo iba pomocou príkazov mačka a ozvena, čo vyhovuje vašim potrebám. Používal som obrazovku na sériovú komunikáciu a bolo to veľmi praktické.
Príkaz na vytvorenie relácie sériovej komunikácie s obrazovkou je
obrazovka sudo /dev /ttyUSB0 115200
kde /dev /ttyUSB0 je adresa vášho zariadenia.
Možno budete musieť stlačiť tlačidlo reset na svojom mikrokontroléri, aby ste uviedli uvítaciu správu a výzvu tlmočníka pythonu.
Krok 3: Spustite ukážky
Teraz môžete vstúpiť do režimu kopírovania stlačením klávesov Ctrl+E a skopírovať a prilepiť demo kódy. Ak ich chcete spustiť, stlačte klávesy Ctrl+D v režime kopírovania.
Ak nechcete nahrávať videá, musíte komentovať riadky na nahrávanie videa. V opačnom prípade kód spôsobí výnimku, ak nie je vložená žiadna karta SD
Tu je krátky popis každého demo:
Nájsť kruhy - používa funkciu find_circles z OpenMV. Vyžaduje ďalšie doladenie pre vašu konkrétnu aplikáciu, najmä prahovú hodnotu (riadi, ktoré kruhy sú zistené z transformácie typu Hough. Vrátia sa iba kruhy s magnitúdou väčšou alebo rovnou prahovej hodnote) a hodnoty r_min, r_max.
Nájsť obdĺžniky - používa funkciu find_rects z OpenMV. Môžete sa pohrať s prahovou hodnotou, ale hodnota, ktorú mám v ukážke, funguje celkom dobre na hľadanie obdĺžnikov.
Nájsť tváre, nájsť oči - používa funkciu find_features s Haarovými kaskádami na detekciu očí a prednej tváre na obrázku. Môžete si pohrať s prahovými hodnotami a hodnotami stupnice, aby ste dosiahli správny kompromis medzi presnosťou a rýchlosťou.
Nájsť nekonečné čiary - pomocou funkcie find_lines nájde všetky nekonečné čiary v obraze pomocou transformácie Hough.
Detect color - používa funkciu get_statistics na získanie percentilového objektu a potom prevádza priemerné hodnoty n -tice LAB na n -ticu hodnôt RGB. Tento príklad som napísal sám a funguje celkom dobre, ale majte na pamäti, že výsledky detekcie farieb budú ovplyvnené okolitými svetelnými podmienkami.
V úložisku github OpenMV nájdete mnoho ďalších zaujímavých ukážok! Väčšinou sú kompatibilné s mikropythonom MaiX Bit, jediné, čo si musíte pamätať, je pridať sensor.run (1) po nastavení pixformátu a veľkosti rámca.
Veselé experimentovanie s kódom OpenMV. Ak máte akékoľvek otázky alebo sa chcete podeliť o niektoré svoje zaujímavé výsledky, neváhajte ma kontaktovať na Youtube alebo LinkedIn. Teraz ma ospravedlňte, idem robiť roboty!
Odporúča:
Prototypové okuliare na nočné videnie pre airsoft/paintball: 4 kroky
Prototypové okuliare pre nočné videnie pre Airsoft/Paintball: Krátka poznámka k okuliarom pre nočné videnie Skutočné okuliare pre nočné videnie (gen 1, gen2 a gen 3) zvyčajne fungujú tak, že zosilňujú okolité svetlo, avšak okuliare na nočné videnie, ktoré tu zostrojíme, fungujú na inom princípe. Budeme používať kameru Pi NoIR, ktorá
Detekcia objektov pomocou dosiek Sipeed MaiX (Kendryte K210): 6 krokov
Detekcia objektov pomocou dosiek Sipeed MaiX (Kendryte K210): Ako pokračovanie môjho predchádzajúceho článku o rozpoznávaní obrázkov pomocou dosiek Sipeed MaiX Boards som sa rozhodol napísať ďalší návod zameraný na detekciu objektov. V poslednej dobe sa s čipom Kendryte K210 objavil nejaký zaujímavý hardvér, vrátane S
Mikro: bitové ovládanie robota s akcelerometrom: 4 kroky
Micro: bit Robot Control with Accelerometer: V tomto článku použijeme TinkerGen's BitCar kit na zostrojenie Micro: bit robota a jeho ovládanie pomocou akcelerometra na inom Micro: bit doske. BitCar je micro: bit založený do-it- svojpomocný robot určený pre vzdelávanie v oblasti STEM. Je ľahké ho zostaviť,
8-bitové hry Arduino: 4 kroky
8-bitové hry Arduino: Ahoj chlapci! Toto bude jednoduchý návod, ako vytvoriť 8-bitové herné nastavenie pomocou arduina
DIY musiLED, synchronizované LED diódy s hudbou s jediným kliknutím pre aplikácie Windows a Linux (32-bitové a 64-bitové). Ľahko sa obnovuje, ľahko sa používa a ľahko sa prenáša: 3 kroky
DIY musiLED, synchronizované LED diódy s hudbou s jediným kliknutím pre aplikácie Windows a Linux (32-bitové a 64-bitové). Ľahko sa obnovuje, ľahko sa používa a ľahko sa prenáša: Tento projekt vám pomôže pripojiť 18 LED diód (6 červených + 6 modrých + 6 žltých) k doske Arduino a analyzovať signály zvukovej karty počítača v reálnom čase a prenášať ich do LED diódy, ktoré ich rozsvietia podľa rytmických efektov (Snare, High Hat, Kick)