Orodha ya maudhui:
- Hatua ya 1: Video
- Hatua ya 2: Vifaa
- Hatua ya 3: Kipande cha Nambari
- Hatua ya 4: Kupata Picha
- Hatua ya 5: Zana na Lugha Iliyotumiwa
- Hatua ya 6: Kuandaa Hifadhidata ya Mafunzo
- Hatua ya 7: Mtandao wa Neural
- Hatua ya 8: Mafunzo ya Mtandao wa Neural
- Hatua ya 9: Kupima Mtandao wa Neural
- Hatua ya 10: Matokeo na Sehemu inayofuata…
- Hatua ya 11: Kugundua kitu
- Hatua ya 12: Video
- Hatua ya 13: Kuandika
- Hatua ya 14: Kuandika GUI
- Hatua ya 15: Maktaba zinahitajika
- Hatua ya 16: Viini vilivyobaki
Video: Je! Huo ni Mkono? (Kamera ya Raspberry Pi + Mtandao wa Neural) Sehemu ya 1/2: Hatua 16 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Siku chache zilizopita, niliumia mkono wangu wa kulia kwenye mazoezi. Baadaye kila wakati nilitumia panya yangu ya kompyuta, ilisababisha maumivu mengi kwa sababu ya pembeni ya mkono.
Hapo ndipo iliponigonga "haingekuwa nzuri ikiwa tunaweza kubadilisha uso wowote kuwa trackpad" na sijui ni kwanini lakini kwa sababu fulani nilimfikiria, sinema HER, nitawaacha nyie muigundue nje. Ilikuwa mawazo ya kufurahisha lakini sikujua ikiwa ningeweza kuifanya, niliamua kujaribu.
Nakala hii inachukua kile kilichotoka.
Kabla ya kuanza nina Kanusho-
Mwisho wa nakala hii, sikuweza kubadilisha uso wowote kuwa trackpad lakini najifunza mengi na nikaongeza zana kubwa kwenye arsenal yangu. Natumahi hiyo itakutokea wewe pia '
Tuanze.
Hatua ya 1: Video
Hapa kuna video ndogo ya dakika 5 inayofunika hatua zote. Angalia.
Hatua ya 2: Vifaa
Ninaweka pi ya raspberry pamoja na kamera ya rasipberry pi kwa urefu wa karibu 45 cm. Hii inatupa eneo la ufuatiliaji wa karibu 25x25 cm chini ya kamera.
Kamera ya Raspberry pi na raspberry pi inapatikana kwa urahisi, ni google tu na unapaswa kupata duka la karibu.
Angalia Kiungo hiki au moja ya orodha yangu ya kucheza ya Raspberry pi ili upate kichwa chako kisicho na kichwa.
Kufuatia usanidi huu, tunahitaji kipande cha nambari ambacho kinaamua ikiwa kuna mkono katika eneo ambalo kamera inafuatilia na ikiwa iko wapi.
Hatua ya 3: Kipande cha Nambari
Kipande cha nambari ambacho kinatuwezesha kuamua ikiwa kuna mkono katika eneo la riba hutumia kitu kinachoitwa Mtandao wa Neural. Wanaanguka chini ya kitengo cha programu ambapo hatuelezei sheria za kufanya uamuzi lakini tunaonyesha mtandao wa neva data za kutosha ambazo zinaamua sheria peke yake.
Kwa upande wetu, badala ya kuweka alama jinsi mkono unavyoonekana tunaonyesha picha za mtandao wa neva zilizonaswa kutoka kwa rasiberi pi ambayo ina mkono na ambayo haina mkono. Awamu hii inaitwa mafunzo ya mtandao wa neva na picha zilizotumiwa huitwa setaseti ya mafunzo.
Hatua ya 4: Kupata Picha
Niliingia kwa mbali kwenye pi yangu ya rasipiberi na nikachukua picha nyingi kwa kutumia amri ifuatayo.
sudo raspistill -w 640 -h 480 -rot 90 -t 250000 -t1 5000 -o fremu% 04d.jpg
Nilinasa picha 80 kwa mkono na picha 80 ambazo hazina mkono. Picha 160 hazitoshi kufundisha vizuri mtandao wa neva lakini inapaswa kuwa ya kutosha kwa uthibitisho wa dhana.
Mbali na picha 160, nilinasa picha 20 zaidi ili kujaribu mtandao wetu mara tu utakapofunzwa.
Mara dataset ilipokuwa tayari nilianza kuandika nambari ya mtandao wa neva.
Hatua ya 5: Zana na Lugha Iliyotumiwa
Niliandika mtandao wangu wa neva katika maktaba ya kina ya ujifunzaji inayoitwa Keras na nambari imeandikwa kwenye daftari la jupyter kutoka kwa baharia wa anaconda.
Hatua ya 6: Kuandaa Hifadhidata ya Mafunzo
Kwanza (Picha # 1) nilijumuisha maktaba zote zinazohitajika kwa mradi huu, ambayo ni pamoja na PIL, matplotlib, numpy, os na Keras. Katika seli ya pili ya daftari ya chatu (Picha # 2) Ninafafanua njia za hifadhidata na kuchapisha hesabu ya sampuli. Sasa tunahitaji kupakia picha zote kwenye safu isiyofaa, kwa hivyo kwenye seli ya tatu (Picha # 2) Niliunda safu isiyo na nambari ya 82 (idadi ya sampuli ya mkono) +75 (idadi ya sampuli isiyo ya mkono) i.e. 157x100x100x3. 157 ni jumla ya picha ambazo ninazo, 100x100 ni ukubwa wa picha yetu na ukubwa wa 3 ni wa safu nyekundu, kijani na bluu katika picha.
Katika seli ya nne na ya tano, tunapakia picha zilizo na mikono ikifuatiwa na picha ambazo hazina mkono katika safu ya numpy. Katika seli ya sita, tunagawanya kila thamani kwa 255 kwa hivyo kupunguza kiwango cha thamani kutoka 0 hadi 1. (Picha # 3)
Samahani ikiwa picha zilizoambatishwa hazitoshi. Hapa kuna kiunga cha hazina ya GITHUB kwa wewe kuangalia nambari. Usisahau kuchukua nafasi ya majina ya njia ya saraka na njia yako:).
Kusonga mbele.
Ifuatayo tunahitaji kuweka lebo kwa kila picha, kwa hivyo, tunaunda safu moja yenye urefu wa 157 kwa urefu. Viingilio 82 vya kwanza vimewekwa 1 na viingilio 75 vilivyobaki vimewekwa kwa 0 inayowasilisha mtandao wa neva kwamba picha 82 za kwanza zinatoka kwa darasa moja na zilizobaki ni kutoka kwa nyingine. (Picha # 4)
Sasa wacha tuunde mtandao wa neva.
Hatua ya 7: Mtandao wa Neural
Katika seli ya tisa, tunafafanua mtandao wetu wa neva. Inayo marudio matatu ya safu ya kusuluhisha ikifuatiwa na tabaka za maxpool na vichungi vya 8, 12 na 16 mtawaliwa. Kufuatia hiyo tuna nyavu mbili zenye mnene za neva. Kuunganisha picha mbili kwa hatua hii. Kwanza ni nambari ya nambari ambayo huunda mtandao wa neva na ya pili ni uwakilishi wa picha ya mtandao wa neva na mwelekeo wa pato na shughuli zilizofafanuliwa.
Hatua ya 8: Mafunzo ya Mtandao wa Neural
Katika seli ya kumi, tunasanidi optimizer ya mtandao wa neva kwa 'adam' na kazi ya kupoteza kwa 'binary_crossentropy'. Wanacheza jukumu kubwa katika jinsi uzito wa mtandao unasasishwa. Mwishowe tunapoendesha kiini cha kumi na moja, mtandao wa neva huanza kutoa mafunzo. Wakati mtandao ni mafunzo angalia kazi ya kupoteza na uhakikishe kuwa inapungua.
Hatua ya 9: Kupima Mtandao wa Neural
Mara baada ya mtandao wa neva kufundishwa, tunahitaji kuandaa data ya mtihani. Tunarudia utaratibu uliofanywa kuandaa mafunzo yaliyowekwa katika kiini cha 3, 4, 5 na 6 kwenye data ya jaribio ili kuunda seti ya jaribio. Tunatayarisha lebo pia kwa seti ya jaribio lakini wakati huu tunaendesha mfano kwenye seti hizi za data kupata utabiri na sio kutoa mafunzo.
Hatua ya 10: Matokeo na Sehemu inayofuata…
Nilipata usahihi wa mtihani wa 88% lakini chukua hii na chumvi kidogo kwani setaseti inayotumika kufundisha na kujaribu mtindo huu ni ndogo sana na haitoshi kufundisha mfano huu vizuri.
Kwa hivyo natumahi umefurahiya nakala hii. Kusudi langu nyuma ya zoezi hili bado halijakamilika na angalia sehemu ya 2. Nitaipakia haraka iwezekanavyo.
Katika sehemu inayofuata, tutafundisha mtandao mwingine wa neva ambao utatuambia eneo la mkono kwenye picha iliyogunduliwa kwa mkono.
Maswali yote yanakaribishwa.
Ikiwa mtu yeyote anavutiwa kutumia hifadhidata yangu ndogo nipashe katika maoni. Nitaifanya ipatikane.
Asante kwa kusoma. Nitakuona hivi karibuni na sehemu ya pili hadi wakati huo kwanini usitengeneze na kufundisha mtandao wa neva.
Hariri: - Hatua zinazofuata ni za sehemu ya pili.
Hatua ya 11: Kugundua kitu
Katika hatua za awali tuliunda NN ambayo inatuambia ikiwa picha ya jaribio ina mkono au la. Vipi baadaye? Ikiwa NN inaainisha picha kama iliyo na mkono tungependa kujua eneo la mkono. Hii inaitwa kugundua kitu katika fasihi ya maono ya kompyuta. Basi wacha tufundishe NN ambayo inafanya sawa kabisa.
Hatua ya 12: Video
Video ya dakika 3 inayoelezea hatua zote zilizobaki. Angalia.
Hatua ya 13: Kuandika
Ikiwa unataka mtandao wa neva kutoa eneo la mkono, tunahitaji kuifundisha kwa mtindo kama huo.tofauti na mtandao wa zamani wa neva ambapo kila picha iliandikwa kama kwa mkono na bila mkono. Wakati huu picha zote zilizo na mkono zitakuwa na lebo nne zinazoambatana na kuratibu za diagonal za sanduku linalofungwa karibu na mkono kwenye picha hiyo.
Picha iliyoambatishwa ya faili ya csv ina lebo kwa kila picha. Tafadhali kumbuka kuwa kuratibu zimerekebishwa na mwelekeo wa picha, ikiwa ikiwa kuratibu ya juu ya X iko kwenye pikseli ya 320 kwa picha na upana wa saizi 640, tutaiita kama 0.5.
Hatua ya 14: Kuandika GUI
Labda unashangaa jinsi nilivyofanikiwa kuweka lebo picha zote 82, vizuri niliandika GUI katika chatu ambayo ilinisaidia na kazi hii. Mara picha imepakiwa kwenye GUI. Niliacha bonyeza kwenye kuratibu ya juu na bonyeza kulia kwenye uratibu wa chini wa sanduku linalowezekana linaloweza kuzunguka mkono. Uratibu hizi zinaandikwa kwa faili kufuatia kwamba mimi bonyeza kitufe kinachofuata kupakia picha inayofuata. Nilirudia utaratibu huu kwa picha zote 82 za mafunzo na 4 za majaribio. Mara tu maandiko yalikuwa tayari, ilikuwa wakati wa mafunzo.
Hatua ya 15: Maktaba zinahitajika
Kwanza tunahitaji kupakia maktaba zote muhimu. Ambayo ni pamoja na
- PIL kwa ujanja wa picha,
- matplotlib kwa kupanga njama,
- numpy kwa operesheni ya tumbo,
- os kwa utendaji tegemezi wa mfumo wa uendeshaji na
- kera za mtandao wa neva.
Hatua ya 16: Viini vilivyobaki
Katika kiini cha 2, 3, 4 na 5 tunapakia picha kwenye safu isiyo na nambari na kuunda safu nne kutoka kwa faili ya csv kutenda kama lebo. Katika nambari ya seli 6 tunaunda mtandao wetu wa neva. Usanifu wake unafanana na mtandao wa neva uliotumiwa kwa uainishaji isipokuwa upeo wa safu ya pato ambayo ni 4 na sio 1. Tofauti nyingine hutoka kwa kazi ya kupoteza iliyotumiwa ambayo ni makosa ya mraba. Katika nambari ya seli 8 tunaanza mafunzo ya mtandao wetu wa neva mara tu nilipofundishwa nilikimbia mfano huu kwenye seti ya jaribio ili kupata utabiri wa sanduku linalofungwa kwenye kuratibu zinazofunika za sanduku linalofungwa walionekana sawa sawa.
Asante kwa kusoma.
Ilipendekeza:
Sayansi ya Mtandao ya Neural Inayotumia Sayansi ya Chatu, Elektroni, na Kera: Hatua 8
Sayansi ya Mtandao ya Neural Inayotumia Sayansi ya Chatu, Elektroni, na Kera: Katika hii inayoweza kufundishwa, nitakuonyesha jinsi nilivyoandika jenereta ya sayari ya 3D moja kwa moja, nikitumia Python na Electron. Video hapo juu inaonyesha moja wapo ya sayari zisizo na mpango zilizotengenezwa. ** Kumbuka: Mpango huu sio kamili, na mahali pengine
Ufuatiliaji wa Joto la ESP8266 Nodemcu Kutumia DHT11 kwenye Mtandao wa Mtandao - Pata Joto la Chumba na Unyevu kwenye Kivinjari chako: Hatua 6
Ufuatiliaji wa Joto la ESP8266 Nodemcu Kutumia DHT11 kwenye Mtandao wa Mtandao | Pata Joto la Chumba na Unyevu kwenye Kivinjari chako: Halo jamani leo tutafanya unyevu & mfumo wa ufuatiliaji wa joto kwa kutumia ESP 8266 NODEMCU & Sensor ya joto ya DHT11. Joto na unyevu utapatikana kutoka kwa Sensorer ya DHT11 & inaweza kuonekana kwenye kivinjari ambayo ukurasa wa wavuti utasimamia
Saa ya Mtandao ya ESP8266 bila RTC yoyote - Saa ya Nodemcu NTP Hakuna RTC - MRADI WA BAHATI YA MTANDAO: Hatua 4
Saa ya Mtandao ya ESP8266 bila RTC yoyote | Saa ya Nodemcu NTP Hakuna RTC | MRADI WA SAA YA MTANDAO
Tikisa Mkono Wako Kudhibiti Mkono wa Roboti wa OWI Hakuna Kamba Zilizoshirikishwa: Hatua 10 (na Picha)
Tikisa Mkono Wako Kudhibiti Mkono wa Roboti wa OWI … Hakuna Kamba Iliyoambatanishwa: WAZO: Kuna angalau miradi mingine 4 kwenye Instructables.com (kuanzia Mei 13, 2015) karibu na kurekebisha au kudhibiti Arm Robotic Arm. Haishangazi, kwa kuwa ni kitanda kizuri sana na cha bei rahisi cha kucheza nacho. Mradi huu ni sawa katika s
Jinsi ya Kurekebisha Kamba ya Nguvu kwa Laptop Yangu ya Dell Wakati Huo: Hatua 8
Jinsi ya Kurekebisha Kamba ya Umeme kwa Laptop Yangu ya Dell Wakati Huo: Maagizo haya yanaonyesha jinsi ya kurekebisha kebo ya umeme kwa Laptop ya Dell Vostro, wakati itaingiza kwenye kompyuta yako lakini haitachaji betri yako au kujiandikisha kama imechomekwa kabisa. Sababu na suluhisho hili bado halijafunikwa mkondoni bado. Zote