Orodha ya maudhui:
- Hatua ya 1: Ufikiaji wa Kamera ya Wavuti
- Hatua ya 2: Kitambulisho cha uso
- Hatua ya 3: Ukusanyaji wa Takwimu
- Hatua ya 4: Mafunzo
- Hatua ya 5: Utambuzi wa Uso
- Hatua ya 6: Kupanga Arduino
Video: Utambuzi wa Uso na Kitambulisho - Kitambulisho cha Uso cha Arduino Kutumia OpenCV Python na Arduino .: Hatua 6
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:50
Utambuzi wa uso wa kitambulisho cha uso cha AKA ni moja ya huduma muhimu sana kwenye simu za rununu siku hizi.
Kwa hivyo, nilikuwa na swali "je! Ninaweza kuwa na kitambulisho cha uso kwa mradi wangu wa Arduino" na jibu ni ndio…
Safari yangu ilianza kama ifuatavyo:
Hatua ya 1: Ufikiaji wa kamera ya wavuti
hatua ya 2: Kitambulisho cha uso.
hatua ya 3: Ukusanyaji wa data
Hatua ya 4: Mafunzo
hatua ya 5: Utambuzi wa uso
hatua ya 6: Kupanga Arduino
Nitaelezea hatua zote hapa chini. Natumahi kuwa hii itakusaidia.
Hatua ya 1: Ufikiaji wa Kamera ya Wavuti
Hatua ya 1 ya utambuzi wa uso ilikuwa kupata kamera au maono ya kompyuta. Kwa kuwa India imefungwa suluhisho la bei rahisi ambalo nimepata ni kutumia kamera yangu ya wavuti ya kompyuta ambayo nilikuwa na ufikiaji na mpango wa chatu kwa kutumia moduli ya openCV.
Labda unafikiria OpenCV ni nini, sivyo?
OpenCV (Open Source Computer Vision Library) ni maono ya kompyuta ya chanzo-wazi na maktaba ya programu ya kujifunza mashine. OpenCV ilijengwa kutoa miundombinu ya kawaida kwa matumizi ya maono ya kompyuta na kuharakisha utumiaji wa mtazamo wa mashine katika bidhaa za kibiashara.
Ikiwa Opencv imewekwa kwenye kompyuta yako basi ni vizuri kwenda. Ikiwa sivyo basi fuata hatua hii.
fungua amri haraka na andika "pip install opencv".
Onyo: Unaweza kupata hitilafu kwani "'bomba' haitambuliwi kama amri ya ndani au nje". ambayo unahitaji kuongeza njia ya usanidi wa bomba yako kwa anuwai ya mfumo wa PATH. Pitia chapisho hili linaweza kukusaidia.
stackoverflow.com/questions/23708898/pip-i…
Mara OpenCV ikiwa imewekwa sisi ni vizuri kwenda… Kuangalia ikiwa imewekwa vizuri fungua mkalimani wako wa Python na uingize maktaba. Tazama picha hapo juu ambayo inapaswa kuwa pato lako.
Pakua faili ya chatu "AccessTo_webcam.py" na uiendeshe. Nimetoa maoni yote muhimu hapo.
Huko unaenda, Sasa unaweza kufikia kamera ya wavuti. Umefanya vizuri. wacha tuendelee hatua ya 2.
Hatua ya 2: Kitambulisho cha uso
kwa msaada wa moduli sawa ya OpenCV, lazima tugundue ikiwa kuna uso kwenye mkondo wa video au la.
OpenCV hutoa njia ya mafunzo au mifano ya mafunzo ya awali inayoitwa Cascade Classifier. Mifano zilizopatiwa mafunzo ziko kwenye folda ya data kwenye usanidi wa OpenCV. Ninatoa faili hiyo kuipakua tu na kuiweka kwenye folda yako ya mradi. Folda ambayo faili ya "AccessTo_webcam.py" imehifadhiwa. Ikiwa haujaunda moja basi fanya.
Pakua "haarcascade_frontalface_default" na uweke kwenye folda kuu ya mradi.
Pakua "Face_identification.py" na uweke kwenye folda kuu ya mradi. Maelezo yote yametolewa ndani yake.
Sasa unaweza kutambua nyuso katika mkondo wa video. Basi wacha tuendelee na hatua ya 3.
Hatua ya 3: Ukusanyaji wa Takwimu
Ili kutambua nyuso tunahitaji kufundisha mpango wetu wa chatu. Kwa ambayo tunahitaji data.
Ukusanyaji wa data ni hatua rahisi zaidi katika mradi huu. unda folda inayoitwa "image_data" katika folda yako kuu ya mradi. Ndani ya folda ya "image_data" tengeneza folda zingine za ziada na jina la mtu, ambapo tutahifadhi data. kwa mfano:
Katika folda ya "image_data" nimeunda folda mbili zaidi zilizoitwa "HRK" na "Yahiya". kama inavyoonyeshwa kwenye picha hapo juu.
Sasa endelea kuunda folda zako mwenyewe na uwape jina.
Mara tu folda zinapoundwa kisha anza kukusanya picha za mtu huyo maalum. Ninapendekeza kukusanya karibu picha 20 kwa kila mtu. Unaweza pia kuongeza picha zaidi lakini angalia kuwa data iliyokusanywa kwa watu wote ina idadi sawa ya picha. Inasaidia kutoa usahihi.
hiyo ndio sasa hebu tuendelee na hatua ya 4.
Hatua ya 4: Mafunzo
Kwa kifupi, tutapitia folda zote na picha ambazo ziko kwenye folda ya "image_data" na tengeneza kamusi ambayo itakuwa na kitambulisho cha lebo na jina linalolingana. Wakati huo huo tutapakia picha ili kugundua sura katika kila picha ambayo tunaiita "Mkoa wa Riba" na tengeneza faili ya ".yml" ambayo ina habari hiyo.
Kwa kudhani kuwa una data iliyokusanywa kwa mtu X na Y.
tutamtaja mtu X kama 1 ambayo itakuwa kitambulisho chake na jina litakuwa X yenyewe. Tunapakia picha ili kupata uso wake yaani Mkoa wa kupendeza na kuongeza data kwenye orodha.
hatua kama hizo zitafuatwa kwa mtu Y. Na mwishowe, tutaunda faili ya ".yml".
Pakua faili ya "face_trainer.py" na uweke kwenye folda kuu ya mradi. Maelezo yote muhimu hutolewa katika faili yenyewe.
Unapoendesha programu hii itapitia picha zote na kuunda faili mbili zilizoitwa "labels.pickle" na "trainner.yml". Sasa umefundisha mtindo wako mwenyewe. basi wacha tuendelee hatua ya 5.
Hatua ya 5: Utambuzi wa Uso
Ikiwa umepitia hatua zote vizuri basi unaweza kuwa umeunda data yako mwenyewe ya mafunzo. Sasa tutatumia data hiyo kwa utambuzi wa uso.
Kimsingi tutapakia modeli zetu zilizofunzwa kwenye faili ya chatu, Fikia kamera yetu ya wavuti, na utambue sura katika mkondo wa video na ufanye ulinganisho au utabiri kati ya uso wa sasa ambao umetambuliwa kwenye mkondo wa video, na mfano ambao ulifundishwa. ikiwa data inalingana basi tunasema kwamba mtu huyo anatambuliwa ni rahisi tu…
Pakua "face_recognise.py" na uiendeshe. Maelezo yote muhimu hutolewa ndani yake. Sasa uso wako unaweza kuwa umetambuliwa. ikiwa usahihi sio mzuri basi jaribu kusasisha data. ikiwa wewe ni mzuri kwenda basi basi endelea hatua ya 6 /
Hatua ya 6: Kupanga Arduino
Hatua ya mwisho na ya mwisho ni programu ya Arduino, Na kutoa njia ya mawasiliano kati ya chatu na Arduino. Kwa mawasiliano, nilitumia "Mawasiliano ya Siri". Pitia video ambayo nimeunganisha hapo juu ili kupata jinsi Mawasiliano ya Siri hufanya kazi na kuanzisha moja. Utapata faili zote zinazohitajika katika maelezo ya video.
Ikiwa umepitia video hiyo basi nikueleze nilichofanya. Wakati uso wangu unapotambuliwa basi kitambulisho cha lebo kilichotolewa ni 2. Mara tu kitambulisho cha lebo ni 2 nitatuma '1' kama data ya serial kwa Arduino yangu. Ambayo itawasha mzunguko wangu wa chaser ya LED. Ikiwa kitambulisho cha lebo ni zaidi ya 2 basi nitatuma '0' kama data ya serial, ambayo itazima Mzunguko wangu wa chaser ya LED.
Pakua faili "ard_chaser.ino". Ni mpango rahisi wa chaser wa LED ambao hutumia mawasiliano ya serial.
Pakua simillerly "face_recogniser1.py" ambayo itaanzisha mawasiliano ya serial kati ya Arduino na mpango wa chatu.
Huko unaenda. Natumai umejifunza kitu kipya. Jisajili kwenye kituo changu cha youtube kwa vitu zaidi vinavyohusiana na chatu na Arduino. Shiriki hii ikiwa umeipenda. Endelea kuunga mkono.
Asante.
Ilipendekeza:
Utambuzi wa Kifaa cha Wakati Halisi Kutumia Nyayo za EM: Hatua 6
Utambuzi wa Kifaa cha Wakati Halisi Kutumia Nyayo za EM: Kifaa hiki kimekusudiwa kuainisha vifaa tofauti vya elektroniki kulingana na ishara zao za EM. Kwa vifaa tofauti, vina ishara tofauti za EM zinazotolewa na hiyo. Tumeunda suluhisho la IoT kutambua vifaa vya elektroniki kwa kutumia Chembe
Kugundua Uso wa Opencv, Mafunzo na Utambuzi: Hatua 3
Kugundua Uso wa Opencv, Mafunzo na Utambuzi: OpenCV ni maktaba ya maono ya kompyuta ya chanzo wazi ambayo ni maarufu sana kwa kufanya kazi za msingi za kuchakata picha kama vile kung'ara, kuchanganya picha, kuongeza picha na ubora wa video, kuzuia nk. Mbali na usindikaji wa picha, ni
Utambuzi wa Nyota Kutumia Maono ya Kompyuta (OpenCV): Hatua 11 (na Picha)
Utambuzi wa Nyota Kutumia Maono ya Kompyuta (OpenCV): Hii inayoweza kufundishwa itakuelezea jinsi ya kuunda programu ya maono ya kompyuta ili kutambua kiatomati mifumo ya nyota kwenye picha. Njia hiyo hutumia maktaba ya OpenCV (Open-Source Source Vision Library) kuunda seti ya kasino za HAAR zilizofunzwa ambazo zinaweza kuwa
Kutumia Kijijini Kina waya bila kutumia 2.4Ghz NRF24L01 Module Na Arduino - Nrf24l01 4 Channel / 6 Kituo cha Mpokeaji wa Kituo cha Quadcopter - Helikopta ya Rc - Ndege ya Rc Kutumia Arduino: Hatua 5 (na Picha)
Kutumia Kijijini Kina waya bila kutumia 2.4Ghz NRF24L01 Module Na Arduino | Nrf24l01 4 Channel / 6 Channel Transmitter kipokeaji cha Quadcopter | Helikopta ya Rc | Ndege ya Rc Kutumia Arduino: Kuendesha gari la Rc | Quadcopter | Drone | Ndege ya RC | Boti ya RC, siku zote tunahitaji kipokezi na mtumaji, tuseme kwa RC QUADCOPTER tunahitaji kipitishaji na mpokeaji wa kituo 6 na aina hiyo ya TX na RX ni ya gharama kubwa sana, kwa hivyo tutafanya moja kwenye yetu
Utambuzi wa Uso wa Opencv: Hatua 4
Utambuzi wa Uso wa Opencv: Utambuzi wa uso ni jambo la kawaida sasa kwa siku, katika matumizi mengi kama simu mahiri, vifaa vingi vya elektroniki. Aina hii ya teknolojia inajumuisha maagizo na zana nyingi. Ambayo hutumia majukwaa ya SOC yaliyopachikwa kama Raspberry