अतिरिक्त सिद्धांत
विज़न टारगेट्स
FRC गेम डिज़ाइनर अक्सर फील्ड में रणनीतिक स्थानों पर परावर्तक "विज़न टारगेट्स" रखते हैं। ये विज़न टारगेट्स आमतौर पर रेट्रो-रिफ्लेक्टिव टेप से बने होते हैं। प्रमुख स्कोरिंग तत्वों में आमतौर पर विज़न टारगेट्स होते हैं जिनका उपयोग स्वचालित रूप से निशाना लगाने के लिए किया जा सकता है। नीचे आप 2016 और 2017 FRC गेम्स के कुछ विज़न टारगेट्स के दो उदाहरण देख सकते हैं।
इन रेट्रो-रिफ्लेक्टिव विज़न टारगेट्स में एक बहुत उपयोगी गुण होता है: जब उन पर प्रकाश डाला जाता है, तो वह सीधे प्रकाश स्रोत की ओर परावर्तित होता है। यही कारण है कि Limelight के कैमरा लेंस के चारों ओर चमकीली हरी LED होती हैं। कैमरा एक्सपोजर को बहुत कम करके जबकि लक्ष्य की ओर एक चमकीला हरा प्रकाश उत्सर्जित करके, हम एक ऐसी छवि प्राप्त कर सकते हैं जो ज्यादातर काली होती है और जिसमें एक चमकीला हरा विज़न टारगेट होता है। यह लक्ष्य को प्राप्त करने का काम अपेक्षाकृत आसान बना देता है।
यहां आप आदर्श छवि का एक उदाहरण देख सकते हैं। ध्यान दें कि कम एक्सपोजर सेटिंग के कारण छवि में लगभग सभी विवरण चले गए हैं लेकिन रेट्रो-रिफ्लेक्टिव टेप चमकीले रूप से उभरता है।
थ्रेशोल्डिंग
थ्रेशोल्डिंग अधिकांश FRC विज़न ट्रैकिंग एल्गोरिदम का अगला महत्वपूर्ण घटक है। यह एक छवि लेने और किसी विशिष्ट रंग सीमा में न आने वाले किसी भी पिक्सेल को फेंक देने का कार्य है। थ्रेशोल्डिंग का परिणाम आम तौर पर एक एक-आयामी छवि होती है जिसमें एक पिक्सेल या तो "चालू" या "बंद" होता है। थ्रेशोल्डिंग उन छवियों पर बहुत अच्छी तरह से काम करता है जो उपरोक्त रणनीति (कम एक्सपोजर, बहुत गहरी छवि के साथ एक चमकीले प्रकाशित विज़न टारगेट) का उपयोग करके कैप्चर की जाती हैं।
Limelight HSV (Hue-Saturation-Value) कलरस्पेस में थ्रेशोल्डिंग क रता है। आप RGB (Red-Green-Blue) कलरस्पेस में रंगों के बारे में सोचने के आदी हो सकते हैं। HSV रंग का प्रतिनिधित्व करने का बस एक और तरीका है जैसे कार्टेशियन निर्देशांक या ध्रुवीय निर्देशांक स्थितियों का वर्णन करने के लिए उपयोग किए जा सकते हैं। हम HSV कलरस्पेस का उपयोग इसलिए करते हैं क्योंकि ह्यू का उपयोग उस हरे रंग को बहुत कसकर चुनने के लिए किया जा सकता है जो Limelight की LED आउटपुट करती हैं।
यह महत्वपूर्ण है कि आप अपनी थ्रेशोल्डिंग सेटिंग्स को समायोजित करें ताकि छवि से जितना हो सके उतना हटा दिया जाए। आपको सबसे अच्छे परिणाम तब मिलेंगे जब आप अगले चरण पर जाने से पहले अपनी विज़न पाइपलाइन के प्रत्येक चरण को अनुकूलित करें। निम्नलिखित छवि अनुचित और उचित थ्रेशोल्डिंग के बीच अंतर को दर्शाती है:
कभी-कभी छत की रोशनी या एरीना में खिड़कियों जैसी चीजों को थ्रेशोल्डिंग का उपयोग करके छवि से हटाना मुश्किल हो सकता है, जो हमें अगले चरण पर लाता है।
कंटूर फिल्टरिंग
थ्रेशोल्डिंग के बाद, Limelight की विज़न पाइपलाइन छवि के लिए कंटूर का एक सेट उत्पन्न करती है। एक कंटूर पिक्सेल के एक सन्निहित सेट को घेरने वाला एक वक्र है। कभी-कभी छत की रोशनी, एरीना स्कोरबोर्ड, खिड़कियां और अन्य चीजें थ्रेशोल्डिंग चरण से बच सकती हैं। यहीं पर कंटूर फिल्टरिंग उपयोगी हो जाती है। लक्ष्य किसी भी कंटूर को हटाना है जो हमारे इच्छित लक्ष्य नहीं हैं।
पहला और सबसे आसान कंटूर फिल्टर किसी भी कंटूर को अनदेखा करना है जो हमारे स्कोरिंग दूरी से हमारे विज़न टारगेट की तरह दिखने से छोटा है। उस आकार से छोटी कोई भी चीज स्पष्ट रूप से कुछ दूर की चीज है और उसे अनदेखा किया जाना चाहिए। इसे क्षेत्र फिल्टरिंग कहा जाता है।
FRC विज़न टारगेट्स में अक्सर कुछ ज्यामितीय गुण होते हैं जिनका उपयोग कंटूर को फिल्टर करने में मदद के लिए किया जा सकता है। उदाहरण के लिए, यदि विज़न टारगेट का एक चौड़ा पहलू अनुपात है, तो हम किसी भी कंटूर को फिल्टर कर सकते हैं जो चौड़ा नहीं है:
हालांकि, ध्यान रखें कि आपका कैमरा लक्ष्य को एक अजीब कोण से देख सकता है। यह इसके कंटूर के पहलू अनुपात को काफी प्रभावित कर सकता है। सुनिश्चित करें कि आप अपनी सेटिंग्स का विभिन्न कोणों से परीक्षण करें ताकि आप बहुत आक्रामक रूप से फिल्टर न करें और अंत में विज़न टारगेट को अनदेखा न कर दें!