Sisukord:
- Samm: juurdepääs veebikaamerale
- 2. samm: näo tuvastamine
- 3. samm: andmete kogumine
- 4. samm: koolitus
- Samm: näotuvastus
- 6. samm: Arduino programmeerimine
Video: Näotuvastus ja tuvastamine - Arduino näotuvastus OpenCV Pythoni ja Arduino abil .: 6 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Näotuvastus AKA näo ID on tänapäeval üks olulisemaid funktsioone mobiiltelefonides.
Niisiis, mul oli küsimus "kas mul on oma Arduino projekti nägu" ja vastus on jah …
Minu teekond algas järgmiselt:
Samm: juurdepääs veebikaamerale
samm: näo tuvastamine.
samm: andmete kogumine
4. samm: koolitus
samm: näotuvastus
samm: Arduino programmeerimine
Allpool selgitan kõiki samme. Loodan, et see aitab teid.
Samm: juurdepääs veebikaamerale
Näotuvastuse esimene samm oli juurdepääs kaamerale või arvutinägemisele. Kuna India on lukus, oli odavaim lahendus, mille leidsin, kasutada oma arvutite veebikaamerat, millele mul oli juurdepääs python -programmiga, kasutades openCV moodulit.
Võib -olla mõtlete, mis on OpenCV, kas pole?
OpenCV (Open Source Computer Vision Library) on avatud lähtekoodiga arvutite nägemise ja masinõppe tarkvararaamatukogu. OpenCV ehitati selleks, et pakkuda arvutinägemise rakendustele ühist infrastruktuuri ja kiirendada masina tajumise kasutamist kaubanduslikes toodetes.
Kui teie arvutisse on installitud Opencv, on teil hea minna. Kui ei, siis järgige seda sammu.
avage käsuviip ja tippige "pip install opencv".
Hoiatus: võite saada vea, kuna "pip" ei tunnistata sisemise või välise käsuna. mille jaoks peate lisama oma pip -i paigaldamise tee oma PATH -süsteemi muutujale. Vaadake seda postitust, see võib teid aidata.
stackoverflow.com/questions/23708898/pip-i…
Kui OpenCV on installitud, on meil hea minna … Et kontrollida, kas see on õigesti installitud, avage Pythoni tõlk ja importige kogu. Vaadake ülaltoodud pilti, mis peaks olema teie väljund.
Laadige alla püütoni fail "AccessTo_webcam.py" ja käivitage see. Esitasin seal kõik vajalikud kommentaarid.
Selge, nüüd on teil juurdepääs veebikaamerale. Hästi tehtud. jätkame sammuga 2.
2. samm: näo tuvastamine
sama OpenCV mooduli abil peame tuvastama, kas videovoos on nägu või mitte.
OpenCV pakub koolitusmeetodit või eelnevalt koolitatud mudeleid, mida nimetatakse kaskaadi klassifikaatoriks. Eelkoolitatud mudelid asuvad OpenCV installi andmekaustas. Pakun selle faili lihtsalt alla ja asetage see oma projekti kausta. Kaust, kuhu fail "AccessTo_webcam.py" on salvestatud. Kui te pole seda loonud, tehke seda.
Laadige alla "haarcascade_frontalface_default" ja asetage see projekti põhikausta.
Laadige alla "Face_identifikatsioon.py" ja asetage see projekti põhikausta. Kõik selgitused on selles esitatud.
Nüüd saate videovoos nägusid tuvastada. Nii et jätkame 3. sammuga.
3. samm: andmete kogumine
Nägude äratundmiseks peame treenima oma püütoniprogrammi. Selleks vajame mõningaid andmeid.
Andmete kogumine on selles projektis lihtsaim samm. looge oma projekti põhikausta kaust nimega "image_data". Looge kausta "image_data" mõned täiendavad kaustad inimese nimega, kuhu me andmed salvestame. näiteks:
Olen loonud kausta "image_data" veel kaks kausta nimega "HRK" ja "Yahiya". nagu ülaltoodud pildil näidatud.
Nüüd looge oma kaustad ja pange neile nimi.
Kui kaustad on loodud, alustage selle konkreetse inimese piltide kogumist. Soovitan koguda ligi 20 pilti inimese kohta. Saate lisada ka rohkem pilte, kuid veenduge, et kõigi isikute kohta kogutud andmed sisaldavad sama arvu pilte. See aitab täpsust pakkuda.
see on kõik, liigume edasi 4. sammu juurde.
4. samm: koolitus
Lühidalt, vaatame läbi kõik kaustad ja pildid, mis on kaustas "image_data", ja loome sõnastiku, mis sisaldab sildi ID -d ja vastavat nime. Samal ajal laadime pildi, et tuvastada nägu igal pildil, mida me nimetame seda "huvipakkuvaks piirkonnaks", ja loome ".yml" faili, mis sisaldab seda teavet.
Eeldusel, et teil on isiku X ja Y kohta andmeid kogutud.
märgime isiku X 1 -ks, mis on tema sildi ID ja nimi X ise. Laadime pildi, et leida tema nägu, st huvipakkuv piirkond, ja lisame andmed loendisse.
sarnaseid samme järgitakse isiku Y puhul. Ja lõpuks loome faili ".yml".
Laadige alla fail "face_trainer.py" ja asetage see projekti põhikausta. Kõik vajalikud selgitused on selles failis endas olemas.
Selle programmi käivitamisel läbib see kõik pildid ja loob kaks faili nimega "labels.pickle" ja "trainner.yml". Nüüd olete oma mudeli välja koolitanud. nii et jätkame 5. sammuga.
Samm: näotuvastus
Kui olete kõik toimingud korralikult läbinud, olete võib -olla loonud oma koolitatud andmed. Nüüd kasutame neid andmeid näotuvastuseks.
Põhimõtteliselt laadime oma koolitatud mudelid pythoni faili, pääseme juurde meie veebikaamerale ja tuvastame videovoos näod ning teeme võrdluse või ennustuse videovoos tuvastatud praeguse näo ja koolitatud mudeli vahel. kui andmed on sobitatud, siis ütleme, et inimene tuntakse ära, see on lihtsalt nii lihtne …
Laadige alla "face_recognise.py" ja käivitage see. Selles on esitatud kogu vajalik teave. Nüüd võis teie nägu ära tunda. kui täpsus pole hea, proovige andmeid värskendada. kui teil on kõik korras, jätkake sammuga 6/
6. samm: Arduino programmeerimine
Viimane ja viimane samm on Arduino programmeerimine ning pythoni ja Arduino vahelise suhtlusviisi pakkumine. Suhtlemiseks kasutasin "Serial Communication". Sirvige ülaltoodud videot, et leida, kuidas jadakommunikatsioon töötab ja selle luua. Leiate kõik vajalikud failid video kirjeldusest.
Kui olete video läbi vaadanud, siis lubage mul teile selgitada, mida ma tegin. Kui mu nägu ära tuntakse, on märgise ID 2. Kui sildi ID on 2, saadan oma Arduinole seeriaandmetena „1”. Mis lülitab minu LED -i tagaajamisahela sisse. Kui sildi ID on muu kui 2, saadan seeriaandmetena '0', mis lülitab minu LED -jälitaja ahela välja.
Laadige alla fail "ard_chaser.ino". See on lihtne LED -jälitaja programm, mis kasutab jadaühendust.
Lihtsalt laadige alla "face_recogniser1.py", mis loob jadaühenduse Arduino ja pythoni programmi vahel.
Palun. Loodan, et olete õppinud midagi uut. Tellige minu youtube'i kanal, et saada rohkem asju, mis on seotud pythoni ja Arduinoga. Jagage seda, kui teile meeldis. Toetage jätkuvalt.
Aitäh.
Soovitan:
Lihtne värvide tuvastamine OpenCV abil: 6 sammu
Lihtne värvide tuvastamine OpenCV abil: Tere! Täna näitan lihtsat meetodit värvide tuvastamiseks reaalajas videost OpenCV ja python abil. Põhimõtteliselt katsetan lihtsalt, kas vajalik värv on taustraamis olemas või mitte, ja OpenCV moodulite abil maskeerin selle piirkonna ja
Värvide tuvastamine Pythonis OpenCV abil: 8 sammu
Värvide tuvastamine Pythonis OpenCV abil: Tere! Seda juhendit kasutatakse selleks, et juhendada, kuidas eraldada pythonis olevast pildist konkreetne värv openCV raamatukogu abil. Kui te pole selle tehnikaga uus, siis ärge muretsege, selle juhendi lõpus saate programmeerida oma värvi
Objekti tuvastamine W/ Dragonboard 410c või 820c OpenCV ja Tensorflow abil: 4 sammu
Objektituvastus W/ Dragonboard 410c või 820c OpenCV ja Tensorflow kasutamine. See juhend kirjeldab, kuidas installida OpenCV, Tensorflow ja masinõppe raamistikud Python 3.5 jaoks, et käivitada objektide tuvastamise rakendus
Looge OpenCV pildiklassifikaatorid Pythoni abil: 7 sammu
OpenCV pildiklassifikaatorite loomine Pythoni abil: Hayt klassifikaatorid pythonis ja opencv -is on üsna keeruline, kuid lihtne ülesanne. Sageli seisame silmitsi piltide tuvastamise ja klassifitseerimise probleemidega. parim lahendus on luua oma klassifikaator. Siin õpime mõne pildiga oma pildiklassifikaatoreid valmistama
Näo ja silmade tuvastamine Raspberry Pi Zero ja Opencv abil: 3 sammu
Näo ja silmade tuvastamine Raspberry Pi Zero ja Opencv abil: selles juhendis näitan, kuidas saate nägu ja silmi vaarika pi ja opencv abil tuvastada. See on minu esimene juhendatav opencv -s. Vaarikas avatud cv seadistamiseks järgisin paljusid õpetusi, kuid iga kord tabas mind mõned vead. Mina igatahes