विषयसूची:

कंप्यूटर विजन का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड: 8 कदम (चित्रों के साथ)
कंप्यूटर विजन का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड: 8 कदम (चित्रों के साथ)

वीडियो: कंप्यूटर विजन का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड: 8 कदम (चित्रों के साथ)

वीडियो: कंप्यूटर विजन का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड: 8 कदम (चित्रों के साथ)
वीडियो: Rain Detector Device #shorts #devkeexperiment 2024, जुलाई
Anonim
Image
Image
कंप्यूटर विज़न का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड
कंप्यूटर विज़न का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड
कंप्यूटर विज़न का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड
कंप्यूटर विज़न का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड
कंप्यूटर विज़न का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड
कंप्यूटर विज़न का उपयोग करते हुए रियल वर्किंग हैरी पॉटर वैंड

"कोई भी पर्याप्त रूप से उन्नत तकनीक जादू से अप्रभेद्य है" - आर्थर सी क्लार्क

कुछ महीने पहले मेरे भाई ने जापान का दौरा किया था और यूनिवर्सल स्टूडियोज में हैरी पॉटर की विजार्डिंग वर्ल्ड में वास्तविक विजार्डिंग अनुभव था, जिसे कंप्यूटर विज़न की तकनीक के माध्यम से संभव बनाया गया था।

यूनिवर्सल स्टूडियो में हैरी पॉटर के विजार्डिंग वर्ल्ड में पर्यटक टिप पर रेट्रो-रिफ्लेक्टिव बीड्स के साथ विशेष रूप से बनाए गए वैंड का उपयोग करके कुछ स्थानों (जहां मोशन कैप्चर सिस्टम स्थापित है) पर "असली जादू" कर सकते हैं। वैंड्स को एक असली ओलिवेंडर की दुकान से खरीदा जा सकता है जो बिल्कुल हैरी पॉटर मूवीज में दिखाए गए की तरह है लेकिन याद रखें: "यह वह छड़ी है जो जादूगर चुनती है": पी

उन कुछ स्थानों पर यदि व्यक्ति छड़ी के साथ एक विशेष इशारा करता है, तो मोशन कैप्चर सिस्टम इशारे को पहचानता है और सभी इशारे एक निश्चित जादू के अनुरूप होते हैं जो आसपास के क्षेत्र में कुछ गतिविधियों का कारण बनता है जैसे फव्वारा चालू करना आदि।

इसलिए, इस निर्देशयोग्य में मैं दिखाऊंगा कि कैसे आप अपनी छड़ी की झिलमिलाहट के साथ एक बॉक्स खोलकर "असली जादू" करने के लिए घर पर एक सस्ता और प्रभावी मोशन कैप्चर सिस्टम बना सकते हैं: डी सिर्फ एक सामान्य नाइट विजन कैमरा, कुछ इलेक्ट्रॉनिक्स का उपयोग करके, और कुछ अजगर कोड OpenCV कंप्यूटर विज़न लाइब्रेरी और मशीन लर्निंग का उपयोग कर रहे हैं !!!

चरण 1: मूल विचार और आवश्यक भाग

मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग
मूल विचार और आवश्यक भाग

यूनिवर्सल स्टूडियो में हैरी पॉटर के विजार्डिंग वर्ल्ड से खरीदी गई वैंड्स के सिरे पर एक रेट्रोरफ्लेक्टिव बीड होता है। वे रेट्रोरफ्लेक्टिव मोती एक बड़ी मात्रा में इन्फ्रारेड लाइट को प्रतिबिंबित करते हैं जो कैमरे द्वारा मोशन कैप्चर सिस्टम में दिया जाता है। इसलिए, हम इंसानों को हवा में चलने वाली छड़ी की एक विशिष्ट-विशिष्ट टिप के रूप में देखते हैं, गति कैप्चर सिस्टम मानता है एक उज्ज्वल ब्लॉब के रूप में जिसे वीडियो स्ट्रीम में आसानी से अलग किया जा सकता है और व्यक्ति द्वारा तैयार किए गए पैटर्न को पहचानने और आवश्यक कार्रवाई निष्पादित करने के लिए ट्रैक किया जा सकता है। यह सारी प्रक्रिया वास्तविक समय में होती है और कंप्यूटर विज़न और मशीन लर्निंग का उपयोग करती है।

मोशन कैप्चर के लिए हमारे कैमरे के रूप में एक साधारण नाइट विजन कैमरा का उपयोग किया जा सकता है क्योंकि वे इन्फ्रारेड लाइट को भी नष्ट कर देते हैं जो मनुष्यों को दिखाई नहीं देता है लेकिन एक ऐसे कैमरे के साथ स्पष्ट रूप से देखा जा सकता है जिसमें कोई इन्फ्रारेड फ़िल्टर नहीं है। तो, कैमरे से वीडियो स्ट्रीम को रास्पबेरी पीआई में खिलाया जाता है जिसमें ओपनसीवी चलाने वाला एक पायथन प्रोग्राम होता है जिसका उपयोग वैंड टिप का पता लगाने, अलग करने और ट्रैक करने के लिए किया जाता है। फिर हम तैयार किए गए पैटर्न को पहचानने के लिए मशीन लर्निंग के SVM (सिंपल वेक्टर मशीन) एल्गोरिथम का उपयोग करते हैं और तदनुसार कुछ गतिविधियों को करने के लिए रास्पबेरी पाई के GPIO को नियंत्रित करते हैं।

आवश्यक सामग्री:

1) एक रास्पबेरी पाई 3 मॉडल बी और आवश्यक सामान जैसे कीबोर्ड और माउस

2) रास्पबेरी पाई नोआईआर (कोई इन्फ्रारेड नहीं) कैमरा मॉड्यूल

3) हैरी पॉटर वैंड के सिरे पर रिट्रोरफ्लेक्टर के साथ: अगर आपके पास एक नहीं है तो चिंता न करें। एक रेट्रोरिफ्लेक्टर के साथ कुछ भी इस्तेमाल किया जा सकता है। तो, आप किसी भी छड़ी की तरह की छड़ी का उपयोग कर सकते हैं और टिप पर रेट्रोरेफ्लेक्टर टेप, पेंट या मोतियों को लगा सकते हैं और यह काम करना चाहिए जैसा कि विलियम उस्मान द्वारा वीडियो में दिखाया गया है: वीडियो देखें

4) 10 इन्फ्रारेड एल ई डी

5) आपकी पसंद का एक 3डी प्रिंटर और पीएलए फिलामेंट

६) १२वी - १ए वॉल एडॉप्टर और डीसी जैक

7) एक सर्वो मोटर

8) एक पुराना डिब्बा और एक साइकिल के पहिये से निकला स्पोक

9) एक गर्म गोंद बंदूक

10) कागज की चमकदार शीट पर हैरी पॉटर से संबंधित कुछ लोगो और छवियों के प्रिंटआउट

11) हरी और पीली मखमली चादरें।

नोट: मैंने इसके इन्फ्रारेड फ़िल्टर को हटाकर नाइट विजन के लिए एक पुराने नियमित वेबकैम का उपयोग करने की भी कोशिश की, लेकिन इसके लेंस को नुकसान पहुंचा/विस्थापित कर दिया जिससे वीडियो की गुणवत्ता बहुत प्रभावित हुई और मैं इसका उपयोग नहीं कर सका। लेकिन अगर आप इसे एक शॉट देना चाहते हैं, तो आप इस महान निर्देश के माध्यम से जा सकते हैं यहां क्लिक करें

चरण 2: ओपनसीवी मॉड्यूल स्थापित करें

अब इस पूरी परियोजना के पहले और शायद सबसे लंबे चरण का समय है: आपके रास्पबेरी पाई में ओपनसीवी मॉड्यूल की स्थापना और निर्माण।

OpenCV मॉड्यूल के लिए निर्भरता की स्थापना में अधिक समय नहीं लगता है लेकिन निर्माण प्रक्रिया में 2 से 3 घंटे तक का समय लग सकता है !! तो, बकल अप !!:पी

ऑनलाइन कई ट्यूटोरियल हैं जिनका अनुसरण आप OpenCV 4.1.0 मॉड्यूल को स्थापित करने के लिए कर सकते हैं। मैंने जिसका अनुसरण किया है उसका लिंक यहां दिया गया है: यहां क्लिक करें

नोट: मैं ट्यूटोरियल में दिखाए गए वर्चुअल वातावरण में ओपनसीवी मॉड्यूल को स्थापित करने की दृढ़ता से अनुशंसा करता हूं क्योंकि यह विभिन्न प्रकार के संघर्षों को रोक देगा जो विभिन्न मॉड्यूल की निर्भरता स्थापित करने या पायथन के विभिन्न संस्करणों के साथ काम करते समय हो सकते हैं।

चरण 3: कैमरा माउंट प्रिंट करना

कैमरा माउंट प्रिंट करना
कैमरा माउंट प्रिंट करना
कैमरा माउंट प्रिंट करना
कैमरा माउंट प्रिंट करना
कैमरा माउंट प्रिंट करना
कैमरा माउंट प्रिंट करना

NoIR पिकामेरा में कोई इन्फ्रारेड फिल्टर नहीं है, इसलिए इसे नाइट विजन कैमरे के रूप में इस्तेमाल किया जा सकता है लेकिन इसमें अभी भी एक इन्फ्रारेड प्रकाश स्रोत का अभाव है। सभी नाइट विजन कैमरों का अपना इन्फ्रारेड प्रकाश स्रोत होता है जो आईआर किरणों को अंधेरे में विस्फोट कर देता है जो नग्न आंखों के लिए अदृश्य हैं लेकिन कैमरे द्वारा किरणों को किसी भी वस्तु से परावर्तित होने के बाद बिना इन्फ्रारेड फिल्टर के देखा जा सकता है।

इसलिए, हमें मूल रूप से एक इन्फ्रारेड लाइट सोर्स और कैमरे को माउंट करने के लिए कुछ चाहिए। इसके लिए मैंने एक वस्तु का एक साधारण 3D मॉडल तैयार किया जिस पर हम कैमरा माउंट कर सकते हैं जिसे हम एक सर्कल में 10 IR एलईडी से घेरेंगे। मॉडल को स्केचअप के साथ बनाया गया था और लगभग 40 मिनट में ब्लैक पीएलए के साथ मुद्रित किया गया था।

चरण 4: कैमरा माउंट खत्म करना

कैमरा माउंट खत्म करना
कैमरा माउंट खत्म करना
कैमरा माउंट खत्म करना
कैमरा माउंट खत्म करना
कैमरा माउंट खत्म करना
कैमरा माउंट खत्म करना

मॉडल को प्रिंट करने के बाद मैंने पहले इसे 80 ग्रिट सैंड पेपर से सैंड किया और फिर ऊपर दिए गए आरेख के अनुसार IR एलईडी को उनके छेद में रखना शुरू कर दिया।

मैंने कुछ गर्म गोंद के साथ उनके स्थान पर एलईड को सुरक्षित किया और फिर लगातार दो लीड्स के सकारात्मक और नकारात्मक लीड को एक साथ मिला दिया और फिर उन्हें एलईड का एक श्रृंखला कनेक्शन बनाने के लिए मिलाप किया।

12 वोल्ट वॉल एडॉप्टर से पॉजिटिव और नेगेटिव सिरों को जोड़ने के लिए एक लीड की पॉजिटिव लीड और बॉटम में उसके बगल में लेड की नेगेटिव लीड को बिना मिलाप के छोड़ दिया गया था।

चरण 5: प्रशिक्षित मशीन लर्निंग मॉडल

किसी व्यक्ति द्वारा तैयार किए गए पत्र को पहचानने के उद्देश्य से, मैंने यहां मिले हस्तलिखित अंग्रेजी अक्षरों के डेटासेट का उपयोग करके सपोर्ट वेक्टर मशीन (एसवीएम) एल्गोरिदम पर आधारित मशीन लर्निंग मॉडल को प्रशिक्षित किया। एसवीएम बहुत ही कुशल मशीन लर्निंग एल्गोरिदम हैं जो इस मामले में लगभग 99.2% उच्च सटीकता दे सकते हैं !! एसवीएम के बारे में और पढ़ें

डेटासेट.csv फ़ाइल के रूप में है जिसमें 785 कॉलम और 300, 000 से अधिक पंक्तियाँ हैं जहाँ प्रत्येक पंक्ति 28 x 28 छवि का प्रतिनिधित्व करती है और उस पंक्ति के प्रत्येक कॉलम में उस छवि के लिए उस पिक्सेल का मान होता है जिसमें एक अतिरिक्त कॉलम होता है शुरुआत जिसमें लेबल होता है, 0 से 25 तक की संख्या, प्रत्येक अंग्रेजी अक्षर के अनुरूप। एक साधारण पायथन कोड के माध्यम से, मैंने केवल 2 अक्षरों (ए और सी) के लिए सभी छवियों को प्राप्त करने के लिए डेटा को काट दिया और उनके लिए एक मॉडल को प्रशिक्षित किया।

मैंने प्रशिक्षित मॉडल (alphabet_classifier.pkl) संलग्न किया है और प्रशिक्षण कोड भी इसके माध्यम से जाने या विभिन्न अक्षरों के साथ मॉडल के प्रशिक्षण के लिए कोई भी बदलाव करने या विभिन्न एल्गोरिदम का प्रयास करने के लिए स्वतंत्र महसूस करता है। प्रोग्राम चलाने के बाद, यह स्वचालित रूप से प्रशिक्षित मॉडल को उसी निर्देशिका में सहेजता है जहां आपका कोड सहेजा गया है।

चरण 6: वह कोड जो यह सब करता है

वह कोड जो यह सब करता है !!
वह कोड जो यह सब करता है !!

प्रशिक्षित मॉडल बनाने के बाद, अंतिम चरण हमारे रास्पबेरी पाई के लिए एक पायथन प्रोग्राम लिखना है जो हमें निम्नलिखित करने की अनुमति देता है:

  • वास्तविक समय में पिकैमरा के रूप में वीडियो एक्सेस करें
  • वीडियो में सफेद धब्बों का पता लगाएं और ट्रैक करें (इस मामले में छड़ी की नोक जो नाइट विजन में रोशनी करती है)
  • कुछ ट्रिगर घटना के बाद वीडियो में चलती बूँद के पथ का पता लगाना शुरू करें (नीचे समझाया गया है)
  • एक और ट्रिगर घटना के बाद ट्रेस करना बंद करें (नीचे समझाया गया है)
  • उपयोगकर्ता द्वारा खींचे गए पैटर्न के साथ अंतिम फ्रेम लौटाएं
  • फ्रेम पर प्री-प्रोसेसिंग करें जैसे थ्रेशोल्डिंग, नॉइज़ रिमूवल, रीसाइज़िंग आदि।
  • भविष्यवाणी के लिए संसाधित अंतिम फ़्रेम का उपयोग करें।
  • भविष्यवाणी के अनुसार रास्पबेरी पाई के GPIO को नियंत्रित करके किसी तरह का जादू करें

इस परियोजना के लिए मैंने एक हैरी पॉटर थीम वाला बॉक्स बनाया जिसे मैं एक सर्वो मोटर का उपयोग करके खोल और बंद कर सकता हूं जिसे रास्पबेरी पाई के GPIO द्वारा नियंत्रित किया जाता है। चूंकि अक्षर 'ए' का अर्थ 'अलोहमोरा' है (हैरी पॉटर फिल्मों के सबसे प्रसिद्ध मंत्रों में से एक जो एक जादूगर को कोई भी ताला खोलने की अनुमति देता है !!), यदि कोई व्यक्ति छड़ी के साथ अक्षर ए खींचता है, तो पीआई सर्वो को आदेश देता है डिब्बा खोलो। यदि व्यक्ति 'सी' अक्षर खींचता है जो करीब के लिए खड़ा है (जैसा कि मैं बंद करने या लॉक करने के लिए उपयोग किए जाने वाले किसी उपयुक्त वर्तनी के बारे में नहीं सोच सकता था: पी), पीआई बॉक्स को बंद करने के लिए सर्वो को आदेश देता है।

इमेज/वीडियो प्रोसेसिंग से संबंधित सभी काम जैसे ब्लॉब डिटेक्शन, ब्लॉब का पाथ ट्रेस करना, लास्ट फ्रेम की प्री-प्रोसेसिंग आदि ओपनसीवी मॉड्यूल के जरिए किए जाते हैं।

ऊपर बताए गए ट्रिगर इवेंट के लिए, रीयल-टाइम वीडियो पर दो मंडलियां बनाई जाती हैं, एक हरा और एक लाल वृत्त. जब बूँद हरे घेरे के भीतर क्षेत्र में प्रवेश करती है, तो कार्यक्रम उस क्षण के बाद बूँद द्वारा लिए गए पथ का पता लगाना शुरू कर देता है जिससे व्यक्ति पत्र बनाना शुरू कर देता है। जब बूँद लाल घेरे में पहुँचती है, तो वीडियो रुक जाता है और अंतिम फ़्रेम को एक फ़ंक्शन में भेज दिया जाता है जो फ़्रेम पर प्री-प्रोसेसिंग करता है ताकि इसे भविष्यवाणी के लिए तैयार किया जा सके।

मैंने इस चरण में कोड फ़ाइलें संलग्न की हैं। बेझिझक इसके माध्यम से जाएं और अपनी इच्छानुसार कोई भी बदलाव करें।

नोट: मुझे अलग-अलग पायथन संस्करणों के साथ काम करने वाली दो अलग-अलग पायथन फाइलें बनानी पड़ीं, एक जो ओपनसीवी मॉड्यूल (पायथन 2.7) आयात करता है और दूसरा जो प्रशिक्षित मॉडल लोड करने के बाद भविष्यवाणी के लिए स्केलेर मॉड्यूल (पायथन 3.5) आयात करता है, क्योंकि मेरा ओपनसीवी स्थापित किया गया था पायथन 2.7 संस्करण जबकि स्केलेर को अजगर 3.5 के लिए स्थापित किया गया था। इसलिए, मैंने HarryPotterWandcv.py (सभी ओपनसीवी काम और रीयलटाइम वीडियो रिकॉर्डिंग के लिए) से फ़ाइल हैरीपॉटरवांडस्कलर्न.py (भविष्यवाणी के लिए) चलाने के लिए सबप्रोसेस मॉड्यूल का उपयोग किया और इसका आउटपुट प्राप्त किया। इस तरह मुझे केवल HarryPotterWandcv.py फ़ाइल चलानी है।

चरण 7: बॉक्स खोलने का तंत्र

बॉक्स खोलने का तंत्र
बॉक्स खोलने का तंत्र
बॉक्स खोलने का तंत्र
बॉक्स खोलने का तंत्र
बॉक्स खोलने का तंत्र
बॉक्स खोलने का तंत्र

मेरे पास लाल रंग का एक पुराना बक्सा पड़ा था जिसके चारों ओर मैंने इस परियोजना के लिए उपयोग किया था।

बॉक्स-ओपनिंग मैकेनिज्म के लिए:

  1. मैंने बॉक्स के किनारे के पास कार्डबोर्ड के एक टुकड़े पर बॉक्स के पीछे के छोर के पास एक सर्वो को गर्म किया।
  2. फिर मैंने एक साइकिल के पहिये से एक स्पोक लिया और उसे सर्वो की बांह से चिपका दिया।
  3. स्पोक का दूसरा सिरा तार के एक टुकड़े का उपयोग करके बॉक्स के ढक्कन से जुड़ा हुआ था।
  4. सर्वो का पॉजिटिव रास्पबेरी पाई पर +5वी पिन 2 से जुड़ा था।
  5. सर्वो का नकारात्मक GND पिन 39 से जुड़ा था।
  6. सर्वो का सिग्नल पिन 12. से जुड़ा था

चरण 8: बॉक्स बनाना हैरी पॉटर थीम्ड

बॉक्स बनाना हैरी पॉटर थीम्ड
बॉक्स बनाना हैरी पॉटर थीम्ड
बॉक्स बनाना हैरी पॉटर थीम्ड
बॉक्स बनाना हैरी पॉटर थीम्ड
बॉक्स बनाना हैरी पॉटर थीम्ड
बॉक्स बनाना हैरी पॉटर थीम्ड

बॉक्स को हैरी पॉटर थीम पर आधारित बनाने के लिए, मैंने हैरी पॉटर लोगो, द हॉगवर्ट्स क्रेस्ट, द क्रेस्ट ऑफ द फोर हाउसेस आदि जैसी विभिन्न चीजों की कुछ रंगीन छवियों को चमकदार ए 4 आकार की शीट पर प्रिंट किया और उन्हें विभिन्न बॉक्स पर चिपका दिया। स्थान।

मैंने स्ट्रिप्स को काटने के लिए पीले रंग की मखमली चादर का भी इस्तेमाल किया और उन्हें ढक्कन पर चिपका दिया ताकि बॉक्स को ग्राईफिंडर हाउस के समान रंग दिया जा सके। मैंने ढक्कन के अंदर और सर्वो के लिए कार्डबोर्ड को हरी मखमली चादर से ढक दिया। ढक्कन के अंदर मैंने हॉगवर्ट्स स्कूल के प्रत्येक घर का प्रतिनिधित्व करने वाले जानवरों को दिखाते हुए अधिक प्रतीकों और एक प्रतीक चिपकाया।

फिर अंत में मैंने अपने सभी हैरी पॉटर से संबंधित चीजों को बॉक्स में भर दिया जिसमें ग्रिफिंडर मफलर, हॉगवर्ट्स वर्दी के साथ एक डायरी और इस परियोजना में इस्तेमाल की जाने वाली एल्डर वैंड शामिल थी: डी

सिफारिश की: