iPhone iOS UIImage कैमरा फीड पर "लेजर पॉइंटर" डॉट का पता कैसे लगाएं?


9

मुझे एक ट्रैक किया हुआ रोबोट खिलौना मिला और मैं इसे एक iPhone के साथ नियंत्रित कर रहा हूं। रोबोट एक ज्ञात फ्रेम आकार का एक लाइव कैमरा फ़ीड का उत्पादन करता है और मैं इसे UIImage पर प्रदर्शित कर रहा हूं।

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

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

एक और तरीका यह होगा कि पिछले कुछ फ्रेमों पर डॉट की औसत स्थिति पर नज़र रखी जाए, जिससे गेसिस्टियस रेडियस कम हो। यदि पूर्व-परिभाषित क्षेत्र के भीतर कोई डॉट नहीं है, तो खोज क्षेत्र का विस्तार किया जा सकता है।

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

मैंने देखा कि लेजर चमकदार सतहों से परिलक्षित होता है, और इस प्रतिबिंब की दिशा मुझे अपवर्तन के नियमों के अनुसार अंतरिक्ष में सतह के उन्मुखीकरण के बारे में कुछ बता सकती है।

धन्यवाद!

लेजर सूचक करीब

लेजर सूचक 1


1
क्या आप एक पैटर्न में लेजर पॉइंटर को चालू और बंद कर सकते हैं? एक फ्रेम की तरह यह बंद है, अगला यह चालू है, और आप इसे बहुत स्पष्ट बनाने के लिए बाद के फ्रेम को घटाते हैं।

यह एक बहुत अच्छा विचार है! लेकिन मेरा लेज़र पॉइंटर पर नियंत्रण नहीं है।
एलेक्स स्टोन

@AlexStone मैं इसी तरह की चीज हासिल करने की कोशिश कर रहा हूं, फर्क सिर्फ इतना है कि मैं आंख की पुतली पर लगी लेजर लाइट का पता लगाने की कोशिश कर रहा हूं। आप लेजर बीम पर नज़र रखने में opencv के साथ मुकदमा दायर किया है कि आप ios कोड या किसी भी नमूना कोड के साथ मेरी मदद कर सकते हैं? आपकी मदद की सराहना अग्रिम में, धन्यवाद ए जे।
अमेजा

जवाबों:


10

OpenCV iOS के लिए compilable है। हालांकि यह सबसे कुशल नहीं हो सकता है, यह आपको एल्गोरिथ्म को पोर्ट करने का विकल्प देता है। मैंने ConDensation algorithm का उपयोग करके एक समान मार्कर ट्रैकिंग समस्या को किया है। OpenCV के साथ मार्कर ट्रैकिंग देखें। यह एक बहुत बड़ा शोध क्षेत्र है और सटीक एल्गोरिथम जो आप चाहते हैं वह पूरी तरह से आपके आवेदन पर निर्भर करता है। अगर मुझे सही ढंग से याद है कि लगभग 3000 रिपोर्ट की गई इमेज प्रोसेसिंग तकनीकें हैं - एक अच्छी कला चुनने के लिए!

एक समाधान यह होगा कि केंद्र के एक निश्चित दायरे में पिक्सेल के रंग का नमूना लिया जाए और एक चमकीले चमकीले रंग का पता लगाया जाए। क्या कोई इस गतिविधि के लिए एक एल्गोरिथम सुझा सकता है?

वैसे, यह एक कण फिल्टर (जिनमें से संक्षेपण एक विधि है) कहा जाता है के पीछे मूल विचार है। अच्छा किया आपने अपने विचार से मूल विचार का पता लगाया!

एक और तरीका यह होगा कि पिछले कुछ फ्रेमों पर डॉट की औसत स्थिति पर नज़र रखी जाए, जिससे गेसिस्टियस रेडियस कम हो। यदि पूर्व-परिभाषित क्षेत्र के भीतर कोई डॉट नहीं है, तो खोज क्षेत्र का विस्तार किया जा सकता है।

इसे राज्य दृढ़ता कहा जाता है और इसे विभिन्न तरीकों से मॉडलिंग की जा सकती है। संक्षेपण एल्गोरिथ्म एक पुराने पुराने कलमन फ़िल्टर से भिन्न न होने वाले स्टोकेस्टिक दृष्टिकोण का उपयोग करता है।

क्या उनके सिल्हूट से मेल खाने के लिए कई छोटी छवियों की एक दूसरे से तुलना करने का एक कुशल तरीका है?

यह थोड़ा और कठिन है। आप टेम्पलेट मिलान की कोशिश कर सकते हैं लेकिन मुझे नहीं पता कि यह iOS पर कितना अच्छा प्रदर्शन करेगा (बहुत भारी गणना और iOS कैमरा इसके अनुकूल नहीं है)।


पॉल, एक अविश्वसनीय रूप से विस्तृत जवाब के लिए धन्यवाद! मुझे ओपनसीवी फ्रेमवर्क मिला है, और इसका उपयोग करने वाली परियोजनाओं के उदाहरणों के लिए देखेंगे।
एलेक्स स्टोन

हाय पॉल, क्या आपके पास ओपन कैमरा का उपयोग करके आईओएस कैमरे के माध्यम से लेजर का पता लगाने के लिए नमूना ऐप पर कोई विचार है?
अम्मा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.