„Arduino“ gali pasirodyti labai elementari, tačiau to pakanka sukurti net gana pažangius projektus. Naudodamiesi kai kuriais rinkoje esančiais moduliais, tokiais kaip fotoaparatų moduliai, ir kai kurių bibliotekų ar API pagalba, galite pateikti savo projektui intelektą ar dirbtinis regėjimas. Tai suteiks naujų programų ir naujų horizontų už elementarių projektų.
Mašinos matymas yra kompiuterio matymo tipas. Tai ne tik vaizdo fiksavimas per skaitmeninę kamerą, bet ir toliau. Galima naudoti gauti aplinkosaugos duomenis, apdoroti vaizdą, analizuoti jį, suprasti realaus pasaulio vaizdus ir kt. Pavyzdžiui, jis gali būti naudojamas skaitmeninei informacijai gauti per kamerą, atpažinti žmones ir kt. Įsivaizduokite viską, ką galėtumėte padaryti ...
Kam naudojama kompiuterinė vizija?
Pagal ejemplo, daugelis dabartinių regėjimo sistemų yra pagrįstos tokio tipo regėjimu, pavyzdžiui, kai kurios transporto priemonės leidžia automatiškai pastatyti automobilį, nustatyti žemėlapį, nustatyti eismo valdymo sistemas keliuose arba atpažinti pėsčiuosius sustabdyti transporto priemonę ir jų nepraleisti, atpažinti veidus ir gauti duomenų iš žmonių, registruotų duomenų bazėje, pvz., kai kuriose apsaugos sistemose, duomenys, analizuojami vaizdo įrašai ir kt.
Šios mašinos regėjimo galimybės yra tokios kraštutinės, kad vyriausybės ir didelės korporacijos Jie naudojasi įvairiais tikslais, nesvarbu, ar jie teisėti, ar ne. Keletas praktinių taikymo sričių, kurias tikrai žinote:
- Facebook: naudokite šio tipo dirbtinį matymą nuotraukoms, įkeltoms į savo socialinį tinklą, tokiu būdu galite atpažinti veidus naudodami sudėtingus algoritmus. Tokiu būdu galite maitinti savo dirbtinį intelektą, kad jis taptų galingesnis, ir patobulinti jį kitoms būsimoms programoms.
- "Flickr"- Galite naudoti šią mašininę viziją 3D scenoms rekonstruoti naudodamiesi šios platformos vaizdų saugyklomis.
- Pramonė: Naudodami dirbtinio matymo sistemas galite aptikti defektus surinkimo linijoje, greitai išmesti objektus su defektais ir kt. Pavyzdžiui, kai žemės ūkio sektoriuje surinkti vaisiai per dirbtinį regėjimo jutiklį keliauja per konvejerį, galima aptikti sulūžusius, pažeistus, supuvusius vaisius ar kitus daiktus, išskyrus vaisius, kad juos pašalintų srovė. oras ar kiti mechanizmai.
- Vaizdo stebėjimas: ji gali būti naudojama daugelyje saugomų centrų, norint užfiksuoti tam tikras transporto priemones ar žmones, sužinoti, kas jie yra, ir nusiųsti minėtą informaciją į sistemą arba įrašyti vėlesnei analizei. Daugelis kompanijų netgi naudojasi norėdamos sužinoti, kaip žmonės rengiasi (mados sektorius), tam tikri subjektai, norėdami sužinoti, kas galėtų dalyvauti demonstracijose, aptikti įtartino personalo buvimą viešuosiuose ar užimtuose centruose ir kt.
Turėkite omenyje, kad šiuo metu gatvėje yra išsibarsčiusios įvairios stebėjimo kameros, nesvarbu, ar jos skirtos stebėti įmones, bankus, DGT ir pan. iš mūsų visų surenkama daug informacijos...
Būtina medžiaga
Be „Arduino“ plokštės su mikrovaldikliu, kurį galite programuoti ir kuris naudojasi bibliotekomis, jums reikės taip pat kiti pagrindiniai jūsų projekto elementai. Tarp jų, žinoma, modulis su fotoaparatu, galintis apdoroti vaizdus. To pavyzdys yra „Pixy CMUCam 5“ arba Panašus. Šis modulis turi galingą procesorių, kurį galima užprogramuoti siųsti jutiklio užfiksuotą informaciją per nuoseklųjį UART, SPI, I2C prievadą, skaitmeninį išėjimą arba analoginius signalus.
Su „Pixy CMUCam 5“ galite apdoroti iki 50 kadrų per sekundę (50 FPS). Pasinaudojus šiomis galimybėmis, galima užprogramuoti siųsti tik norimus ar ieškomus vaizdus, užuot nuolat įrašius visą užfiksuotą vaizdo įrašą. Kad būtų lengviau tvarkyti, jis turi nemokama ir atviro kodo programa paskambinti „PixyMon“ jūsų kontrolei.
Jei nuspręsite įsigyti šią „Pixy CMUcam5“ kamerą, ji bus su 6–10 kontaktų IDC kabeliu ir tvirtinimo įranga. Papildomai, techninės charakteristikos modulio yra:
- NXP LPC4330 204 Mhz DualCore procesorius.
- 254 Kb RAM atmintis,
- 140mA suvartojimas.
- „Omnivision OV9715“ 1/4 ″ vaizdo jutiklis su 1280 × 800 raiška.
- Žiūrėjimo kampas 75º horizontaliai ir 47º vertikaliai.
- Paprastas atpažinimas atpažinti objektus.
- Jį galite naudoti su „Arduino“ plokštėmis (su konkrečiomis bibliotekomis), „Raspberry Pi“, „BeagleBone Black“ ir kitomis panašiomis plokštėmis.
- Ryšio prievadai: SPI, I2C, UART, USB arba analoginė / skaitmeninė išvestis.
- „PixyMon“ programinė įranga suderinama su „Windows“, „MacOS“ ir GNU / „Linux“.
- Mažas dydis.
- Dokumentaciją galima rasti projekto „Wiki“.
- „Github“ saugyklos su „Arduino“ biblioteka.
- mikroprograma
- Pamokos
Be to, turite nepamiršti, kad jūsų žinioje yra kito tipo API, bibliotekos ir daugiau medžiagos tai gali padėti sukurti visų rūšių projektus šių fotoaparatų ir dirbtinio matymo pagalba. Pavyzdžiui, reikėtų pažymėti:
- OpenCVyra nemokama kompiuterio matymo biblioteka, kurią iš pradžių sukūrė „Intel“. Dabar jis buvo išleistas pagal BSD licenciją ir jį gali naudoti visi, norėdami aptikti judesį, atpažinti daiktus, robotizuotą regėjimą, veido atpažinimą ir kt. Tai yra įvairių platformų platforma, todėl ją galima naudoti GNU / Linux, „macOS“, „Windows“ ir „Android“.
- Kiti projektai, tokie kaip transporto priemonės aptikimas.
Nuo „Hwlibre“ raginu pradėti eksperimentuokite ir sužinokite apie šią discipliną...
Paprastas „Pixy 2 CMUcam5“ integravimo su „Arduino“ pavyzdys
Norint tai panaudoti „Pixy 2 CMUcam5“ modulis su „Arduino“ plokšte, kurį turite naudoti keletą papildomų elementų. Pavyzdžiui, galite naudokite servovariklį S06NF arba panašus, veikti, kai fotoaparatas aptinka objektą, kuriam jį užprogramavote. Žinoma, turėsite atsisiųsti „PixyMon“ programinę įrangą, kurią pasakiau aukščiau, ir „Aritino“ biblioteką „GitHub“.
Galite gauti daugiau informacijos apie „Arduino“ programavimą atsisiųskite mūsų PDF su nemokamu kursu.
Kai tik turėsite įdiegė „PixyMon“ Operacinėje sistemoje atlikite šiuos veiksmus:
- Prijunkite „Pixy“ naudodami USB laidą ir patikrinkite, ar dega modulio RGB šviesos diodas, kuris parodys, kad jis veikia tinkamai.
- Atidarykite „PixyMon“ programą ir jei viskas teisinga, pamatysite, ką kamera fiksuoja šiuo metu.
- Eikite į antrinį meniu Veiksmas arba veiksmas, tada spustelėkite Nustatyti parašą arba Nustatyti parašą. Dabar vaizdo įrašas turėtų sustingti ir galite pasirinkti, kokią spalvą ar objektą norite aptikti, kol kamera yra prieš jutiklį. Pavyzdžiui, galite naudoti kamuolį. Tokiu būdu, kai kamuolys praeis priešais jutiklį, jis bus aptiktas.
- Kaip matote, yra iki 7 Nustatykite parašą, todėl galėtumėte sukonfigūruoti iki 7 skirtingų objektų, kuriuos kamera gali aptikti.
- Jei pasirinksite tik vieną, galėsite pereiti prie kito žingsnio. Arba, jei norite pašalinti objektą iš sąrašo, galite pereiti į meniu Veiksmas arba Veiksmas ir ištrinti viską Parašai arba pasirinkite Ištrinti konkretų parašą. Jūs netgi galite pereiti į konfigūraciją arba konfigūraciją ir tada pereiti prie konkretaus parašo, kurį norite modifikuoti, kad jį pakeistumėte ....
Dabar galite tęsti savo lentos konfigūravimą Arduino, Jeigu nori. Norėdami tai padaryti, jūs jau žinote, kad „Arduino“ turite naudoti „Pixy“ biblioteką. Šioje bibliotekoje taip pat bus paprastų pavyzdžių, su kuriais galite pradėti eksperimentuoti nerašydami kodo nuo nulio. Tiesiog atidarydami juos ir vykdydami šiuos eskizus arba atlikdami modifikacijas, kad pamatytumėte, kaip jie elgiasi. Norėdami turėti šią biblioteką, galite atlikti šiuos veiksmus.
- Eiti „Arduino“ biblioteka.
- Atidaryti „Arduino IDE“.
- Eiti į eskizą, Įtraukti biblioteką tada pridėkite .zip biblioteką ir pasirinkite atsisiųstą.
- Dabar jis bus integruotas, jūs galite pradėk testuoti kokį nors pavyzdį tinkamai prijungus fotoaparatą prie „Arduino“ plokštės. Norėdami tai padaryti, eikite į meniu „Pavyzdžiai“ arba „Pavyzdžiai“, tada į „Pixy“ ir pasirinkite vieną iš jų. Aš rekomenduoju jums pradėti nuo Labas pasauli.
- Su „Arduino“ lenta sujungta USB į kompiuterį, įkelkite eskizą į lentą, tada pasirinkite Įrankiai, tada „Serial Monitor“.
- Dabar lange bus rodoma informacija.
Žinoma nepamirškite prijungti visų elektroninių komponentų jums reikia „Arduino“ plokštės, įskaitant pačią kamerą. Jūs jau žinote, kad jis prisijungia prie „Arduino“ ISCP kaiščių, skirtų šiems moduliams, kaip matyti iš paveikslėlio ...