एआई विज़न#
परिचय#
VEX AIM कोडिंग रोबोट का AI विज़न सेंसर वस्तुओं, रंगों और AprilTag ID का पता लगाता है और उन्हें ट्रैक करता है। इससे रोबोट अपने आसपास के वातावरण का विश्लेषण कर पाता है, वस्तुओं का पीछा कर पाता है और प्राप्त दृश्य डेटा के आधार पर प्रतिक्रिया करता है।
एआई विज़न सेंसर का रिज़ॉल्यूशन 320×240 पिक्सल है। मूल बिंदु (0, 0) ऊपरी-बाएँ कोने में स्थित है, जिससे सेंसर का केंद्र (160, 120) पर स्थित होता है, जैसा कि नीचे दिए गए चित्र में दिखाया गया है:

नीचे सभी ब्लॉकों की सूची दी गई है:
कार्य — एआई विज़न फ़ीड को नियंत्रित करें और ऑब्जेक्ट डेटा कैप्चर करें।
स्क्रीन पर एआई विज़न व्यूअर — रोबोट की स्क्रीन पर लाइव एआई विज़न फ़ीड को सक्षम या अक्षम करता है।
वस्तु डेटा प्राप्त करें — एक विशिष्ट हस्ताक्षर के लिए डेटा कैप्चर करता है, जैसे कि कॉन्फ़िगर किया गया रंग, एक पूर्व-प्रशिक्षित वस्तु, या एक अप्रैलटैग आईडी।
सेटिंग्स — यह तय करें कि किन पहचाने गए ऑब्जेक्ट्स तक पहुंच प्राप्त की जाए।
सेट एआई विज़न ऑब्जेक्ट आइटम — पता लगाए गए ऑब्जेक्ट सूची से एक विशिष्ट ऑब्जेक्ट का चयन करता है।
वैल्यूज़ — ऑब्जेक्ट की उपस्थिति, वर्गीकरण और गुणधर्म लौटाता है।
वस्तु है — जाँच करता है कि रोबोट किसी पता लगाई गई वस्तु को पकड़े हुए है या नहीं।
एआई विज़न ऑब्जेक्ट मौजूद है — रिपोर्ट करता है कि कोई ऑब्जेक्ट पता लगाया गया है या नहीं।
एआई विज़न ऑब्जेक्ट है — जांच करता है कि क्या पता लगाया गया ऑब्जेक्ट एक विशिष्ट वर्गीकरण से मेल खाता है।
एआई विज़न ऑब्जेक्ट अप्रैलटैग आईडी है — जांच करता है कि पता लगाया गया अप्रैलटैग आईडी एक विशिष्ट आईडी से मेल खाता है या नहीं।
एआई विज़न ऑब्जेक्ट काउंट — पता लगाए गए ऑब्जेक्टों की संख्या की रिपोर्ट करता है।
एआई विज़न ऑब्जेक्ट प्रॉपर्टी — निम्नलिखित विवरण रिपोर्ट करता है:
कार्रवाई#
स्क्रीन पर एआई विज़न व्यूअर#
स्क्रीन पर AI विज़न व्यूअर स्टैक ब्लॉक रोबोट की स्क्रीन पर लाइव AI विज़न फ़ीड को चालू या बंद करता है। चालू होने पर, स्क्रीन पर रीयल-टाइम सेंसर डेटा प्रदर्शित होता है, जिससे अन्य चित्र या टेक्स्ट दिखाई नहीं देते। अन्य सामग्री प्रदर्शित करने के लिए, फ़ीड को छिपाने के लिए इस ब्लॉक का उपयोग करें।
स्क्रीन पर AI Vision [दिखाएं v] व्यूअर
पैरामीटर |
विवरण |
|---|---|
स्थिति |
यह रोबोट की स्क्रीन पर डेटा फीड के प्रदर्शन को नियंत्रित करता है: show डेटा फीड को प्रदर्शित करता है, जबकि hide स्क्रीन से डेटा फीड को हटा देता है। |
उदाहरण
जब शुरू हो
[View the AI Vision Sensor's feed for five seconds.]
स्क्रीन पर AI Vision [दिखाएं v] व्यूअर
[5] सेकंड प्रतीक्षा करें
स्क्रीन पर AI Vision [छुपाएं v] व्यूअर
ऑब्जेक्ट डेटा प्राप्त करें#
गेट ऑब्जेक्ट डेटा स्टैक ब्लॉक एआई विज़न सेंसर फ्रेम से डेटा को एक ही सिग्नेचर में फ़िल्टर करता है - सेंसर द्वारा पहचाने जा सकने वाली किसी चीज़ का सहेजा गया विवरण, जैसे कि एक पूर्व-प्रशिक्षित ऑब्जेक्ट, एक अप्रैलटैग आईडी, या एक कॉन्फ़िगर किया गया रंग या रंग कोड।
इस ब्लॉक के साथ उपयोग करने से पहले एआई विज़न यूटिलिटी में रंगों और रंग कोड को पहले कॉन्फ़िगर किया जाना चाहिए।
इस डेटासेट में ऑब्जेक्ट्स को चौड़ाई के अनुसार सबसे बड़े से सबसे छोटे क्रम में, इंडेक्स 0 से शुरू करके संग्रहित किया गया है। प्रत्येक ऑब्जेक्ट के गुणों को AI विज़न ऑब्जेक्ट प्रॉपर्टी ब्लॉक का उपयोग करके एक्सेस किया जा सकता है। यदि कोई मेल खाने वाले ऑब्जेक्ट्स नहीं मिलते हैं, तो एक खाली डेटासेट रिपोर्ट किया जाता है।
AI Vision से [स्पोर्ट्स बॉल v] डेटा प्राप्त करें
पैरामीटर |
विवरण |
|---|---|
हस्ताक्षर |
यह फ़ंक्शन डेटासेट को फ़िल्टर करके केवल दिए गए सिग्नेचर का डेटा शामिल करता है। उपलब्ध सिग्नेचर हैं:
|
उदाहरण
जब शुरू हो
[Move forward if a sports ball is detected.]
हमेशा
AI Vision से [स्पोर्ट्स बॉल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
[आगे v] दिशा में [10] [mm v] जाएं ▶
रंग हस्ताक्षर#
कलर सिग्नेचर एक विशिष्ट रंग होता है जिसे एआई विज़न सेंसर पहचान सकता है। ये सिग्नेचर सेंसर को वस्तुओं को उनके रंग के आधार पर पहचानने और ट्रैक करने में सक्षम बनाते हैं। एआई विज़न यूटिलिटी में कलर सिग्नेचर कॉन्फ़िगर करने के बाद, सेंसर अपने दृश्य क्षेत्र में उस विशिष्ट रंग वाली वस्तुओं की पहचान कर सकता है।
कलर सिग्नेचर का उपयोग गेट ऑब्जेक्ट डेटा ब्लॉक में वास्तविक समय में रंगीन वस्तुओं को संसाधित करने और पता लगाने के लिए किया जाता है।

उदाहरण
जब शुरू हो
[Display if any objects matching the Red_Box signature is detected.]
हमेशा
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
स्क्रीन पर पंक्ति [1] साफ़ करें
[Change the signature to any configured Color Signature.]
AI Vision से [Red_Box v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
स्क्रीन पर [Color signature detected!] प्रिंट करें ▶
रंग कोड#
कलर कोड एक संरचित पैटर्न होता है जो 2 से 4 रंगों के विशिष्ट क्रम में व्यवस्थित होता है। एआई विज़न यूटिलिटी में कलर कोड कॉन्फ़िगर हो जाने के बाद, सेंसर रंगों के पूर्वनिर्धारित पैटर्न को पहचान सकता है।
कलर कोड विशेष रूप से जटिल वस्तुओं की पहचान करने, गेम तत्वों के साथ संरेखित करने या स्वायत्त नेविगेशन के लिए अद्वितीय मार्कर बनाने में उपयोगी होते हैं।

उदाहरण
जब शुरू हो
[Display if any objects matching the BlueRed code is detected.]
हमेशा
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
स्क्रीन पर पंक्ति [1] साफ़ करें
[Change the signature to any configured Color Code.]
AI Vision से [BlueRed v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
स्क्रीन पर [Color code detected!] प्रिंट करें ▶
सेटिंग्स#
एआई विज़न ऑब्जेक्ट आइटम सेट करें#
सेट एआई विज़न ऑब्जेक्ट आइटम स्टैक ब्लॉक यह निर्धारित करता है कि डेटासेट में किस आइटम का उपयोग करना है।
AI Vision ऑब्जेक्ट आइटम (1) पर सेट करें
पैरामीटर |
विवरण |
|---|---|
वस्तु |
उपयोग किए जाने वाले डेटासेट में आइटम की संख्या। |
उदाहरण
जब शुरू हो
[Display the width of the smallest detected object.]
हमेशा
AI Vision से [सभी कार्गो v] डेटा प्राप्त करें
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
AI Vision ऑब्जेक्ट आइटम (AI Vision ऑब्जेक्ट की संख्या) पर सेट करें
स्क्रीन पर (AI Vision ऑब्जेक्ट [चौड़ाई v]) प्रिंट करें ▶
मान#
वस्तु है#
है ऑब्जेक्ट बूलियन ब्लॉक रिपोर्ट करता है कि क्या रोबोट के पास वर्तमान में उसके किकर के विरुद्ध कोई पता लगाया गया ऑब्जेक्ट है।
सच — रोबोट के पास वस्तु है।
गलत — रोबोट के पास वह वस्तु नहीं है।
<[स्पोर्ट्स बॉल v] है? :: custom-ai-vision>
पैरामीटर |
विवरण |
|---|---|
वस्तु |
रोबोट के किकर के विरुद्ध पता लगाने वाली वस्तु:
|
उदाहरण
जब शुरू हो
[Kick when the robot has a sports ball.]
हमेशा
यदि <[स्पोर्ट्स बॉल v] है? :: custom-ai-vision> तो
[मध्यम v] क्रिया से ऑब्जेक्ट किक करें
एआई विज़न ऑब्जेक्ट मौजूद है#
एआई विज़न ऑब्जेक्ट मौजूद है बूलियन ब्लॉक यह रिपोर्ट करता है कि डेटासेट में कोई ऑब्जेक्ट डिटेक्ट हुआ है या नहीं।
सही — डेटासेट में एक पहचानी गई वस्तु शामिल है।
गलत — कोई वस्तु नहीं पाई गई।
<AI Vision ऑब्जेक्ट मौजूद है?>
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो
[Move forward if a sports ball is detected.]
हमेशा
AI Vision से [स्पोर्ट्स बॉल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
[आगे v] दिशा में [10] [mm v] जाएं ▶
एआई विज़न ऑब्जेक्ट है#
AI विज़न ऑब्जेक्ट एक बूलियन ब्लॉक है जो यह रिपोर्ट करता है कि क्या पता लगाया गया ऑब्जेक्ट किसी विशिष्ट वर्गीकरण से मेल खाता है।
सही — डेटासेट में मौजूद आइटम विशिष्ट वस्तु है।
गलत — डेटासेट में मौजूद आइटम विशिष्ट वस्तु नहीं है।
<AI Vision ऑब्जेक्ट [स्पोर्ट्स बॉल v] है?>
पैरामीटर |
विवरण |
|---|---|
वस्तु |
इस वस्तु की तुलना किससे करें:
|
उदाहरण
जब शुरू हो
[Display if a sports ball is detected.]
हमेशा
AI Vision से [सभी कार्गो v] डेटा प्राप्त करें
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <AI Vision ऑब्जेक्ट [स्पोर्ट्स बॉल v] है?> तो
स्क्रीन पर [Sports ball detected!] प्रिंट करें ▶
[0.5] सेकंड प्रतीक्षा करें
एआई विज़न ऑब्जेक्ट अप्रैलटैग आईडी है#
एआई विज़न ऑब्जेक्ट अप्रैलटैग आईडी बूलियन ब्लॉक यह रिपोर्ट करता है कि क्या पता लगाया गया अप्रैलटैग आईडी किसी विशिष्ट आईडी से मेल खाता है।
सच है — अप्रैलटैग आईडी एक संख्या है।
गलत — अप्रैलटैग आईडी संख्या नहीं है।
<AI Vision object is AprilTag ID [1] ?>
पैरामीटर |
विवरण |
|---|---|
अप्रैलटैग आईडी |
पता लगाए गए अप्रैलटैग आईडी नंबर से तुलना करने के लिए संख्या। |
एआई विज़न ऑब्जेक्ट गणना#
एआई विज़न ऑब्जेक्ट काउंट रिपोर्टर ब्लॉक डेटासेट में पता लगाए गए ऑब्जेक्ट्स की संख्या को एक पूर्ण संख्या के रूप में रिपोर्ट करता है।
AI Vision ऑब्जेक्ट की संख्या
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो
[Display the amount of sports balls and barrels.]
हमेशा
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
AI Vision से [सभी कार्गो v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
स्क्रीन पर (AI Vision ऑब्जेक्ट की संख्या) प्रिंट करें ▶
अंत
[0.5] सेकंड प्रतीक्षा करें
एआई विज़न ऑब्जेक्ट प्रॉपर्टी#
प्रत्येक ऑब्जेक्ट (नीचे दिखाया गया है) के साथ नौ गुण शामिल हैं जो get object data ब्लॉक का उपयोग करने के बाद संग्रहीत होते हैं।
AI Vision ऑब्जेक्ट [चौड़ाई v]
tagID को छोड़कर सभी प्रॉपर्टी वैल्यू, get object data ब्लॉक का उपयोग किए जाने के समय पता लगाए गए ऑब्जेक्ट की स्थिति, आकार, अभिविन्यास या दिशा का वर्णन करती हैं। ये मान सेंसर के 320 x 240 पिक्सेल रिज़ॉल्यूशन के आधार पर पिक्सेल या डिग्री में मापे जाते हैं।

पैरामीटर |
विवरण |
|---|---|
संपत्ति |
पता लगाए गए ऑब्जेक्ट की कौन सी प्रॉपर्टी का उपयोग करना है: |
चौड़ाई#
width प्रॉपर्टी पता लगाए गए ऑब्जेक्ट की चौड़ाई को पिक्सल में 1 से 320 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
नोट: पिक्सेल मान सेंसर के समन्वय प्रणाली के सापेक्ष हैं। संदर्भ के लिए परिचय में दिए गए आरेख को देखें।
AI Vision ऑब्जेक्ट [चौड़ाई v]

उदाहरण
जब शुरू हो
[Move towards a blue barrel until its width is larger than 100 pixels.]
हमेशा
AI Vision से [नीला बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <(AI Vision ऑब्जेक्ट [चौड़ाई v]) [math_less_than v] [100]> तो
[आगे v] दिशा में चलें
अंत
अन्यथा
सभी गतिविधियां रोकें
ऊंचाई#
ऊंचाई प्रॉपर्टी पता लगाए गए ऑब्जेक्ट की ऊंचाई को पिक्सल में 1 से 240 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
नोट: पिक्सेल मान सेंसर के समन्वय प्रणाली के सापेक्ष हैं। संदर्भ के लिए परिचय में दिए गए आरेख को देखें।
AI Vision ऑब्जेक्ट [ऊंचाई v]

उदाहरण
जब शुरू हो
[Move towards a blue barrel until its height is larger than 100 pixels.]
हमेशा
AI Vision से [नीला बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <(AI Vision ऑब्जेक्ट [ऊंचाई v]) [math_less_than v] [100]> तो
[आगे v] दिशा में चलें
अंत
अन्यथा
सभी गतिविधियां रोकें
केंद्रX#
centerX प्रॉपर्टी पता लगाए गए ऑब्जेक्ट के केंद्र के x-निर्देशांक को पिक्सल में 0 से 320 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
नोट: पिक्सेल मान सेंसर के समन्वय प्रणाली के सापेक्ष हैं। संदर्भ के लिए परिचय में दिए गए आरेख को देखें।
AI Vision ऑब्जेक्ट [centerX v]

उदाहरण
जब शुरू हो
[Turn slowly until a blue barrel is centered in front of the robot.]
टर्न वेलोसिटी [30]% पर सेट करें
[दाएं v] दिशा में मुड़ें
हमेशा
AI Vision से [नीला बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <[140] [math_less_than v] (AI Vision ऑब्जेक्ट [centerX v]) [math_less_than v] [180]> तो
सभी गतिविधियां रोकें
केंद्र#
centerY प्रॉपर्टी, पता लगाए गए ऑब्जेक्ट के केंद्र के y-निर्देशांक को पिक्सल में 0 से 240 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
नोट: पिक्सेल मान सेंसर के समन्वय प्रणाली के सापेक्ष हैं। संदर्भ के लिए परिचय में दिए गए आरेख को देखें।
AI Vision ऑब्जेक्ट [centerY v]

उदाहरण
जब शुरू हो
[Move towards a blue barrel until its center y-coordinate is more than 140 pixels.]
हमेशा
AI Vision से [नीला बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <(AI Vision ऑब्जेक्ट [centerY v]) [math_less_than v] [140]> तो
[आगे v] दिशा में चलें
अंत
अन्यथा
सभी गतिविधियां रोकें
उत्पत्तिX#
originX प्रॉपर्टी, पता लगाए गए ऑब्जेक्ट के बाउंडिंग बॉक्स के ऊपरी-बाएँ कोने के x-निर्देशांक को पिक्सेल में 0 से 320 तक की पूर्ण संख्या के रूप में रिपोर्ट करती है।
नोट: पिक्सेल मान सेंसर के समन्वय प्रणाली के सापेक्ष हैं। संदर्भ के लिए परिचय में दिए गए आरेख को देखें।
AI Vision ऑब्जेक्ट [originX v]

उदाहरण
जब शुरू हो
[Display if an orange barrel is to the left or the right.]
हमेशा
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
AI Vision से [नारंगी बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <(AI Vision ऑब्जेक्ट [originX v]) [math_less_than v] [160]> तो
स्क्रीन पर [To the left!] प्रिंट करें ▶
अन्यथा
स्क्रीन पर [To the right!] प्रिंट करें ▶
अंत
[0.5] सेकंड प्रतीक्षा करें
उत्पत्ति#
originY प्रॉपर्टी, पता लगाए गए ऑब्जेक्ट के बाउंडिंग बॉक्स के ऊपरी-बाएँ कोने के y-निर्देशांक को पिक्सेल में 0 से 240 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
नोट: पिक्सेल मान सेंसर के समन्वय प्रणाली के सापेक्ष हैं। संदर्भ के लिए परिचय में दिए गए आरेख को देखें।
AI Vision ऑब्जेक्ट [originY v]

उदाहरण
जब शुरू हो
[Display if an orange barrel is close or far from the robot.]
हमेशा
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
AI Vision से [नारंगी बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <(AI Vision ऑब्जेक्ट [originY v]) [math_less_than v] [80]> तो
स्क्रीन पर [Far!] प्रिंट करें ▶
अन्यथा
स्क्रीन पर [Close!] प्रिंट करें ▶
अंत
[0.5] सेकंड प्रतीक्षा करें
ROTATION#
रोटेशन प्रॉपर्टी, पता लगाए गए अप्रैलटैग आईडी या कलर कोड के ओरिएंटेशन को 0 से 359 डिग्री तक की पूर्ण संख्या के रूप में रिपोर्ट करती है।
AI Vision ऑब्जेक्ट [रोटेशन v]

उदाहरण
जब शुरू हो
[Slide left or right depending on how the Color Code is rotated.]
हमेशा
AI Vision से [Red_Blue v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <[50] [math_less_than v] (AI Vision ऑब्जेक्ट [रोटेशन v]) [math_less_than v] [100]> तो
[दाएं v] दिशा में चलें
अन्यथा यदि <[270] [math_less_than v] (AI Vision ऑब्जेक्ट [रोटेशन v]) [math_less_than v] [330]> तो
[बाएं v] दिशा में चलें
अन्यथा
सभी गतिविधियां रोकें
अंत
अन्यथा
सभी गतिविधियां रोकें
सहन करना#
बेयरिंग प्रॉपर्टी यह बताती है कि कोई वस्तु एआई विज़न सेंसर के दृश्य के केंद्र से कितनी दूर (बाईं या दाईं ओर) है। 0 का मान केंद्र में होने का संकेत देता है, धनात्मक मान का अर्थ है कि वस्तु दाईं ओर है, और ऋणात्मक मान का अर्थ है कि वस्तु बाईं ओर है।
जब शुरू हो
[Keep the blue barrel directly in front of the robot.]
टर्न वेलोसिटी [40]% पर सेट करें
हमेशा
AI Vision से [नीला बैरल v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
यदि <(AI Vision ऑब्जेक्ट [बियरिंग v]) [math_greater_than v] [5]> तो
[दाएं v] दिशा में मुड़ें
अन्यथा यदि <(AI Vision ऑब्जेक्ट [बियरिंग v]) [math_less_than v] [-5]> तो
[बाएं v] दिशा में मुड़ें
अन्यथा
सभी गतिविधियां रोकें
टैगआईडी#
tagID प्रॉपर्टी, पता लगाए गए AprilTag ID की पहचान संख्या को एक पूर्ण संख्या के रूप में रिपोर्ट करती है।
AI Vision ऑब्जेक्ट [tagID v]
उदाहरण
जब शुरू हो
[Move forward when AprilTag ID 0 is detected.]
हमेशा
AI Vision से [AprilTag ID 0 v] डेटा प्राप्त करें
यदि <AI Vision ऑब्जेक्ट मौजूद है?> तो
[आगे v] दिशा में चलें
अंत
सभी गतिविधियां रोकें