Orodha ya maudhui:

Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta: Hatua 8 (na Picha)
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta: Hatua 8 (na Picha)

Video: Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta: Hatua 8 (na Picha)

Video: Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta: Hatua 8 (na Picha)
Video: DEMU ALIWA NYUMA HADI KINYESI CHATOKA (ANGALIA VIDEO HADI MWISHO) 2024, Novemba
Anonim
Image
Image
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta
Kufanya kazi halisi Harry Potter Wand Kutumia Maono ya Kompyuta

"Teknolojia yoyote ya hali ya juu haitoshi na Uchawi" - Arthur C. Clarke

Miezi michache nyuma kaka yangu alitembelea Japani na alikuwa na uzoefu halisi wa uchawi katika Ulimwengu wa Uchawi wa Harry Potter katika Studio za Universal zilizowezekana kupitia teknolojia ya Maono ya Kompyuta.

Katika Ulimwengu wa Uchawi wa Harry Potter katika Studio za Universal watalii wanaweza kufanya "uchawi halisi" katika maeneo fulani (ambapo mfumo wa kukamata mwendo umewekwa) kwa kutumia wands zilizotengenezwa maalum na shanga za kutafakari za nyuma kwenye ncha. Mikono inaweza kununuliwa kutoka Duka halisi la Ollivander ambalo ni sawa na ile iliyoonyeshwa kwenye Sinema za Harry Potter lakini kumbuka: "Ni wand ambaye anachagua mchawi": P

Katika maeneo fulani ikiwa mtu hufanya ishara fulani na wand, mfumo wa kukamata mwendo hutambua ishara na ishara zote zinahusiana na spell fulani ambayo husababisha shughuli kadhaa katika eneo linalozunguka kama kuwasha chemchemi nk.

Kwa hivyo, katika Agizo hili nitaonyesha jinsi unaweza kuunda mfumo wa kukamata mwendo wa bei rahisi na mzuri nyumbani ili kufanya "uchawi halisi" kwa kufungua sanduku na kuzungusha wa wand wako: D kutumia Kamera ya Maono tu ya Usiku, umeme fulani, na nambari fulani ya chatu kutumia maktaba ya OpenCV Computer Vision na Kujifunza kwa Mashine !!!

Hatua ya 1: Wazo la Msingi na Sehemu Zinazohitajika

Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika
Wazo la Msingi na Sehemu Zinazohitajika

Wands ambazo zinunuliwa kutoka Ulimwengu wa Uchawi wa Harry Potter katika Studio za Universal, zina shanga ya kurudisha nyuma kwenye ncha yao. Shanga hizo za kurudisha nyuma zinaonyesha mwangaza mwingi wa infrared ambao hutolewa na kamera katika mfumo wa kukamata mwendo. Kwa hivyo, kile sisi wanadamu tunaona kama ncha isiyo tofauti sana ya wand unaosonga angani, mfumo wa kukamata mwendo unaona kama blob angavu ambayo inaweza kutengwa kwa urahisi kwenye mkondo wa video na kufuatiliwa ili kutambua muundo uliochorwa na mtu huyo na kutekeleza kitendo kinachohitajika. Usindikaji huu wote unafanyika kwa wakati halisi na hutumia Maono ya Kompyuta na Kujifunza kwa Mashine.

Kamera rahisi ya Maono ya Usiku inaweza kutumika kama kamera yetu kwa kukamata mwendo kwani pia hupiga taa ya infrared ambayo haionekani kwa wanadamu lakini inaweza kuonekana wazi na kamera ambayo haina Kichujio cha infrared. Kwa hivyo, mkondo wa video kutoka kwa kamera umeingizwa kwenye pi ya raspberry ambayo ina programu ya chatu inayoendesha OpenCV ambayo hutumiwa kugundua, kutenganisha na kufuatilia ncha ya wand. Kisha tunatumia algorithm ya SVM (Rahisi Vector Machine) ya Kujifunza Mashine kutambua muundo uliochorwa na ipasavyo kudhibiti GPIOs za pi ya raspberry kufanya shughuli kadhaa.

Vifaa vinavyohitajika:

1) Mfano wa Raspberry Pi 3 na vifaa vinavyohitajika kama kibodi na panya

2) Raspberry Pi NoIR (Hakuna Infrared) Moduli ya Kamera

3) Harry Potter Wand na retroreflector kwa ncha: Usijali ikiwa huna moja. Chochote kilicho na retroreflector kinaweza kutumika. Kwa hivyo, unaweza kutumia fimbo yoyote kama wand na kutumia mkanda wa retroreflector, rangi au shanga kwenye ncha na inapaswa kufanya kazi kama inavyoonyeshwa kwenye video na William Osman: Tazama Video

4) 10 za infrared

5) Printa ya 3D na filament ya PLA ya chaguo lako

6) 12V - 1A Adapter ya Ukuta na DC jack

7) motor servo

8) Sanduku la Zamani na Maneno kutoka kwa gurudumu la mzunguko

9) Bunduki ya moto ya gundi

10) Kuchapishwa kwa nembo na picha zinazohusiana na Harry Potter kwenye Karatasi ya Glossy ya karatasi

11) Karatasi za velvet za kijani na manjano.

KUMBUKA: Nilijaribu pia kutumia kamera ya wavuti ya kawaida kwa maono ya usiku kwa kuondoa Kichujio chake cha infrared lakini nikaishia kuharibu / kuhamisha lensi yake ambayo iliathiri ubora wa video sana na sikuweza kuitumia. Lakini ikiwa unataka kuipiga risasi, unaweza kupitia hii kubwa inayofundisha Bonyeza Hapa

Hatua ya 2: Sakinisha Moduli ya OpenCV !

Sasa ni wakati wake kwa hatua ya kwanza na pengine ndefu zaidi ya mradi huu wote: Kufunga na kujenga moduli ya OpenCV katika Raspberry Pi yako.

Ufungaji wa utegemezi wa moduli ya OpenCV hauchukua muda mwingi lakini mchakato wa ujenzi unaweza kuchukua hadi saa 2 hadi 3 !! Kwa hivyo, Buckle Up !!: Uk

Kuna mafunzo mengi mkondoni ambayo unaweza kufuata kusanidi moduli ya OpenCV 4.1.0. Hapa kuna kiunga cha ile niliyofuata: Bonyeza Hapa

KUMBUKA: Ninapendekeza sana kusanidi moduli ya OpenCV katika mazingira halisi kama inavyoonyeshwa kwenye mafunzo kwani itazuia mizozo ya aina anuwai ambayo inaweza kutokea kwa sababu ya kusanikisha utegemezi wa moduli tofauti au wakati unafanya kazi na matoleo tofauti ya chatu.

Hatua ya 3: Kuchapa Mlima wa Kamera

Kuchapa Mlima wa Kamera
Kuchapa Mlima wa Kamera
Kuchapa Mlima wa Kamera
Kuchapa Mlima wa Kamera
Kuchapa Mlima wa Kamera
Kuchapa Mlima wa Kamera

Kamera ya NoIR haina kichungi cha infrared, kwa hivyo inaweza kutumika kama kamera ya maono ya usiku lakini bado haina chanzo cha nuru ya infrared. Kamera zote za maono ya usiku zina chanzo chao cha infrared ambacho huangaza miale ya IR kwenye giza ambayo haionekani kwa macho lakini miale inaweza kuonekana na kamera bila kichungi cha infrared baada ya kuonyeshwa kutoka kwa kitu chochote.

Kwa hivyo, tunahitaji Chanzo cha Nuru ya infrared na kitu cha kuweka kamera. Kwa hili nilibuni mtindo rahisi wa 3D wa kitu ambacho tunaweza kuweka kamera ambayo tutazungukwa na viongoz 10 vya IR kwenye duara. Mfano huo uliundwa na SketchUp na kuchapishwa na Black PLA kwa dakika 40.

Hatua ya 4: Kumaliza Mlima wa Kamera

Kumaliza Mlima wa Kamera
Kumaliza Mlima wa Kamera
Kumaliza Mlima wa Kamera
Kumaliza Mlima wa Kamera
Kumaliza Mlima wa Kamera
Kumaliza Mlima wa Kamera

Baada ya kuchapisha mfano huo niliitia mchanga wa kwanza kwa karatasi ya mchanga wa grit 80 na kisha kuanza kuweka viongozo vya IR kwenye mashimo yao kulingana na mchoro uliopewa hapo juu.

Nilihakikisha kuongoza mahali pao na gundi moto na kisha nikajiunga na chanya chanya na hasi ya viongozi viwili mfululizo pamoja na kisha kuziuza ili kuunda unganisho la viongo.

Uongozi mzuri wa moja iliyoongozwa na risasi hasi ya iliyoongozwa karibu nayo chini iliachwa bila kuuzwa ili kuunganisha ncha nzuri na hasi kutoka kwa adapta ya ukuta wa volt 12.

Hatua ya 5: Mfano wa Kujifunza Mashine Iliyofunzwa

Kwa kusudi la kutambua barua iliyochorwa na mtu, nilifundisha modeli ya kujifunza mashine kulingana na algorithm ya Msaada wa Vector Machine (SVM) kwa kutumia Dataset ya alfabeti za Kiingereza zilizoandikwa kwa mkono nilizozipata hapa. SVM ni algorithms bora sana ya kujifunza mashine ambayo inaweza kutoa usahihi wa juu, karibu 99.2% katika kesi hii !! Soma zaidi kuhusu SVM

Hifadhidata iko katika mfumo wa faili ya.csv ambayo ina safuwima 785 na safu zaidi ya 300, 000 ambapo kila safu inawakilisha picha ya 28 x 28 na kila safu katika safu hiyo ina thamani ya pikseli hiyo kwa picha hiyo na safu ya ziada katika mwanzo ambao una lebo, nambari kutoka 0 hadi 25, kila moja inalingana na herufi ya kiingereza. Kupitia nambari rahisi ya chatu, nilikata data kupata picha zote kwa herufi 2 tu (A na C) nilizotaka na kuwafundisha mfano.

Nimeambatanisha mtindo uliofunzwa (alphabet_classifier.pkl) na pia nambari ya mafunzo jisikie huru kuipitia au kufanya mabadiliko yoyote ya kufundisha mtindo huo na herufi tofauti au jaribu algorithms tofauti. Baada ya kuendesha programu hiyo, inaokoa kiotomatiki mfano uliofunzwa katika saraka ile ile ambapo nambari yako imehifadhiwa.

Hatua ya 6: Kanuni ambayo inafanya yote kutokea

Kanuni Ambayo Hufanya Yote Yafanyike !!
Kanuni Ambayo Hufanya Yote Yafanyike !!

Baada ya kuunda mtindo uliofunzwa, hatua ya mwisho ni kuandika programu ya chatu kwa Raspberry Pi yetu ambayo inatuwezesha kufanya yafuatayo:

  • Fikia video fanya kamera kwa wakati halisi
  • Gundua na fuatilia matone nyeupe (katika kesi hii ncha ya wand inayoangaza katika maono ya usiku) kwenye video
  • Anza kufuatilia njia ya blob inayohamia kwenye video baada ya tukio la kuchochea (ilivyoelezwa hapo chini)
  • Acha kufuatilia baada ya tukio lingine la kichocheo (kimeelezewa hapo chini)
  • Rudisha fremu ya mwisho na muundo uliochorwa na mtumiaji
  • Fanya usindikaji wa mapema kwenye sura kama kizingiti, kuondoa kelele, kurekebisha ukubwa n.k.
  • Tumia fremu ya mwisho iliyosindikwa kutabiri.
  • Fanya uchawi wa aina fulani kwa kudhibiti GPIO za Raspberry Pi kulingana na utabiri

Kwa mradi huu niliunda sanduku lenye mada ya Harry Potter ambalo ninaweza kufungua na kufunga kwa kutumia injini ya servo ambayo inadhibitiwa na GPIO ya Raspberry Pi. Kwa kuwa herufi 'A' inasimama kwa 'Alohamora' (mojawapo ya herufi maarufu kutoka kwa sinema za Harry Potter ambayo inamruhusu mchawi kufungua kitufe chochote !!), ikiwa mtu anachora herufi A na fimbo, pi inaamuru servo fungua Sanduku. Ikiwa mtu anachora herufi 'C' ambayo inasimama karibu (kwani sikuweza kufikiria spell yoyote inayofaa kutumika kwa kufunga au kufunga: P), pi anaamuru servo kufunga sanduku.

Kazi zote zinazohusiana na usindikaji wa picha / video, kama kugundua blob, kutafuta njia ya blob, kusindika mapema ya fremu ya mwisho nk, hufanywa kupitia moduli ya OpenCV.

Kwa hafla za kuchochea zilizotajwa hapo juu, duru mbili zinaundwa kwenye video ya wakati halisi, duara ya kijani na nyekundu. Wakati blob inapoingia kwenye mkoa ndani ya mduara wa kijani kibichi, programu huanza kutafuta njia iliyochukuliwa na blob baada ya wakati huo kumruhusu mtu kuanza kuunda herufi. Wakati blob inafikia mduara mwekundu, video huacha na fremu ya mwisho kupitishwa kwa kazi ambayo hufanya usindikaji wa awali kwenye fremu kuifanya iwe tayari kwa utabiri.

Nimeambatanisha faili za nambari katika hatua hii. Jisikie huru kuipitia na ufanye mabadiliko yoyote unavyotaka.

KUMBUKA: Nililazimika kuunda faili mbili tofauti za chatu zinazofanya kazi na matoleo tofauti ya chatu, moja ambayo inaingiza moduli ya OpenCV (Python 2.7) na nyingine ambayo inaingiza moduli ya sklearn (Python 3.5) kwa utabiri baada ya kupakia mfano uliofunzwa, kwani OpenCV yangu ilikuwa imewekwa kwa toleo la Python 2.7 wakati sklearn ilikuwa imewekwa kwa chatu 3.5. Kwa hivyo, nilitumia moduli ndogo ya kutekeleza faili HarryPotterWandsklearn.py (kwa utabiri) kutoka HarryPotterWandcv.py (kwa kazi yote ya opencv na kurekodi video ya wakati halisi) na kupata matokeo yake. Kwa njia hii lazima nitie tu faili ya HarryPotterWandcv.py.

Hatua ya 7: Njia ya Kufungua Sanduku

Njia ya Kufungua Sanduku
Njia ya Kufungua Sanduku
Njia ya Kufungua Sanduku
Njia ya Kufungua Sanduku
Njia ya Kufungua Sanduku
Njia ya Kufungua Sanduku

Nilikuwa na sanduku la zamani lenye rangi nyekundu lililolala ambalo nilitumia kwa mradi huu.

Kwa utaratibu wa kufungua sanduku:

  1. Niliwaka moto servo karibu na mwisho wa nyuma wa sanduku kwenye kipande cha kadibodi karibu na ukingo wa sanduku.
  2. Kisha nikachukua mazungumzo kutoka kwa gurudumu la mzunguko na moto nikaunganisha kwenye mkono wa servo.
  3. Mwisho mwingine wa kuongea uliambatanishwa kwenye kifuniko cha sanduku kwa kutumia kipande cha waya.
  4. Chanya cha servo kiliunganishwa na + 5V Pin 2 kwenye Raspberry Pi.
  5. Hasi ya servo iliunganishwa na GND Pin 39.
  6. Ishara ya servo iliunganishwa na Pin 12

Hatua ya 8: Kufanya Sanduku Harry Potter Mandhari

Kufanya Sanduku Harry Potter Mandhari
Kufanya Sanduku Harry Potter Mandhari
Kufanya Sanduku Harry Potter Mandhari
Kufanya Sanduku Harry Potter Mandhari
Kufanya Sanduku Harry Potter Mandhari
Kufanya Sanduku Harry Potter Mandhari

Kwa kutengeneza Sanduku la Harry Potter, nilichapisha picha za rangi za vitu anuwai kama Harry Potter Logo, The Hogwarts Crest, The Crest ya kila nyumba nne n.k kwenye karatasi ya saizi ya A4 na kuzibandika kwenye sanduku kwenye anuwai. maeneo.

Nilitumia pia karatasi ya velvet ya rangi ya Njano kukata vipande na kuibandika kwenye kifuniko ili kutoa sanduku rangi sawa na ile ya Nyumba ya Gryffindor. Nilifunikwa ndani ya kifuniko na kadibodi kwa servo na karatasi ya kijani ya velvet. Ndani ya kifuniko niliweka alama zaidi na nembo inayoonyesha wanyama ambao wanawakilisha kila nyumba ya Shule ya Hogwarts.

Halafu mwishowe nilijaza vitu vyangu vyote vinavyohusiana na Harry Potter kwenye sanduku ambalo lilikuwa na muffler wa Gryffindor, shajara na sare ya Hogwarts na Mzee Wand aliyetumiwa katika mradi huu: D

Ilipendekeza: