एआई विज़न सेंसर#
परिचय#
VEX IQ AI विज़न सेंसर वस्तुओं, रंगों और AprilTag ID का पता लगा सकता है और उन्हें ट्रैक कर सकता है। इससे रोबोट अपने आसपास के वातावरण का विश्लेषण कर सकता है, वस्तुओं का पीछा कर सकता है और पता लगाए गए दृश्य डेटा के आधार पर प्रतिक्रिया कर सकता है।
एआई विज़न के उदाहरण VEX IQ एआई विज़न सेंसर से लैस बेसबॉट के साथ उपयोग के लिए डिज़ाइन किए गए हैं। इन उदाहरणों में, सेंसर को AIVision1 नाम से कॉन्फ़िगर किया गया है, जो ब्लॉक में दिखाई देता है।
नीचे सभी ब्लॉकों की सूची दी गई है:
कार्य — चयनित हस्ताक्षर के लिए VEX IQ AI विज़न सेंसर से डेटा कैप्चर करें।
वस्तु डेटा प्राप्त करें — एक विशिष्ट हस्ताक्षर के लिए डेटा कैप्चर करता है, जैसे कि कॉन्फ़िगर किया गया रंग, एक पूर्व-प्रशिक्षित वस्तु, या एक अप्रैलटैग आईडी।
सेटिंग्स — यह चुनें कि आप किस वस्तु के साथ इंटरैक्ट करना चाहते हैं।
सेट एआई विज़न ऑब्जेक्ट आइटम — पता लगाए गए ऑब्जेक्ट सूची से एक विशिष्ट ऑब्जेक्ट का चयन करता है।
मूल्य — एकत्रित डेटा तक पहुंच और उसका उपयोग करें।
एआई विज़न ऑब्जेक्ट मौजूद है — रिपोर्ट करता है कि कोई ऑब्जेक्ट पता लगाया गया है या नहीं।
एआई विज़न ऑब्जेक्ट काउंट — पता लगाए गए ऑब्जेक्टों की संख्या की रिपोर्ट करता है।
एआई विज़न ऑब्जेक्ट प्रॉपर्टी — निम्नलिखित विवरण रिपोर्ट करता है:
एआई विज़न ऑब्जेक्ट क्या है? — जांच करता है कि क्या पता लगाया गया ऑब्जेक्ट एक विशिष्ट वर्गीकरण से मेल खाता है।
एआई विज़न ऑब्जेक्ट अप्रैलटैग है? — जांच करता है कि पता लगाया गया ऑब्जेक्ट एक विशिष्ट आईडी से मेल खाने वाला अप्रैलटैग है या नहीं।
एआई विज़न ऑब्जेक्ट अप्रैलटैग आईडी है? — जांच करता है कि पता लगाया गया अप्रैलटैग आईडी किसी विशिष्ट आईडी से मेल खाता है या नहीं।
कार्रवाई#
ऑब्जेक्ट डेटा प्राप्त करें#
गेट ऑब्जेक्ट डेटा स्टैक ब्लॉक VEX IQ AI विज़न सेंसर फ्रेम से डेटा को एक ही सिग्नेचर में फ़िल्टर करता है - सेंसर द्वारा पहचाने जा सकने वाली किसी चीज़ का सहेजा गया विवरण, जैसे कि एक पूर्व-प्रशिक्षित ऑब्जेक्ट, एक AprilTag ID, या एक कॉन्फ़िगर किया गया रंग या रंग कोड।
इस ब्लॉक के साथ उपयोग करने से पहले एआई विज़न यूटिलिटी में रंगों और रंग कोड को पहले कॉन्फ़िगर किया जाना चाहिए।
इस डेटासेट में ऑब्जेक्ट्स को चौड़ाई के अनुसार सबसे बड़े से सबसे छोटे क्रम में, इंडेक्स 0 से शुरू करके संग्रहित किया गया है। प्रत्येक ऑब्जेक्ट के गुणों को AI विज़न ऑब्जेक्ट प्रॉपर्टी ब्लॉक का उपयोग करके एक्सेस किया जा सकता है। यदि कोई मेल खाने वाले ऑब्जेक्ट्स नहीं मिलते हैं, तो एक खाली डेटासेट रिपोर्ट किया जाता है।
[AIVision1 v] से [SELECT_A_SIG v] डेटा प्राप्त करें
पैरामीटर |
विवरण |
|---|---|
हस्ताक्षर |
दिए गए हस्ताक्षर के डेटा को ही शामिल करने के लिए डेटासेट को फ़िल्टर करता है। उपलब्ध हस्ताक्षर हैं:
|
नोट: AprilTag ID या AI वर्गीकरण विकल्प दिखाई देने के लिए, AI विज़न यूटिलिटी में उनका पता लगाना सक्षम होना चाहिए।
उदाहरण
जब शुरू हो
[Drive forward if an AprilTag ID is detected.]
हमेशा
[AIVision1 v] से [AprilTag IDs v] डेटा प्राप्त करें
यदि <[AIVIsion1 v] ऑब्जेक्ट मौजूद है?> तो
[आगे v] दिशा में [10] [mm v] चलाएं ▶
एआई वर्गीकरण#
VEX IQ AI विज़न सेंसर कुछ AI वर्गीकरणों के अंतर्गत विभिन्न वस्तुओं का पता लगा सकता है। डिवाइस विंडो में VEX IQ AI विज़न सेंसर को कॉन्फ़िगर करते समय चयनित AI वर्गीकरण मॉडल के आधार पर, विभिन्न वस्तुओं का पता लगाया जाएगा। वर्तमान में उपलब्ध मॉडल हैं:
कक्षा के वस्तुओं
ब्लू बॉल
ग्रीनबॉल
रेड बॉल
ब्लू रिंग
ग्रीनरिंग
रेड रिंग
ब्लू क्यूब
ग्रीनक्यूब
रेडक्यूब
VEX IQ रोबोटिक्स प्रतियोगिता मिक्स एंड मैच
खुशी से उछलना
रेडपिन
ब्लू पिन
ऑरेंजपिन
VEX IQ रोबोटिक्स प्रतियोगिता का स्तर बढ़ा
ब्लूबीनबैग
रेडबीनबैग
येलोबीनबैग
रंग हस्ताक्षर#
कलर सिग्नेचर एक विशिष्ट रंग होता है जिसे VEX IQ AI विज़न सेंसर पहचान सकता है। ये सिग्नेचर सेंसर को वस्तुओं को उनके रंग के आधार पर पहचानने और ट्रैक करने में सक्षम बनाते हैं। एक बार कलर सिग्नेचर कॉन्फ़िगर हो जाने पर, सेंसर अपने दृश्य क्षेत्र में उस विशिष्ट रंग वाली वस्तुओं की पहचान कर सकता है।
get object data ब्लॉक में रंगीन वस्तुओं को वास्तविक समय में संसाधित करने और पहचानने के लिए कलर सिग्नेचर का उपयोग किया जाता है। एक समय में अधिकतम 7 कलर सिग्नेचर कॉन्फ़िगर किए जा सकते हैं।

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

उदाहरण
जब शुरू हो
[Display if any objects matching the RED_BLUE code is detected.]
हमेशा
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
स्क्रीन पर पंक्ति [1] साफ़ करें
[Change the signature to any configured Color Code.]
[AIVision1 v] से [RED_BLUE v] डेटा प्राप्त करें
यदि <[AIVIsion1 v] ऑब्जेक्ट मौजूद है?> तो
स्क्रीन पर [Code detected!] प्रिंट करें ▶
सेटिंग्स#
एआई विज़न ऑब्जेक्ट आइटम सेट करें#
सेट एआई विज़न ऑब्जेक्ट आइटम स्टैक ब्लॉक यह निर्धारित करता है कि डेटासेट में किस आइटम का उपयोग करना है।
[AIVision1 v] ऑब्जेक्ट आइटम (1) पर सेट करें
पैरामीटर |
विवरण |
|---|---|
वस्तु |
उपयोग किए जाने वाले डेटासेट में आइटम की संख्या। |
उदाहरण
जब शुरू हो
[Display the largest detected AprilTag ID.]
हमेशा
[AIVision1 v] से [AprilTag IDs v] डेटा प्राप्त करें
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
[AIVision1 v] ऑब्जेक्ट आइटम ([AIVision1 v] ऑब्जेक्ट की संख्या) पर सेट करें
स्क्रीन पर ([AIVision1 v] ऑब्जेक्ट [tagID v]) प्रिंट करें ▶
मान#
एआई विज़न ऑब्जेक्ट मौजूद है#
एआई विज़न ऑब्जेक्ट मौजूद है बूलियन ब्लॉक यह रिपोर्ट करता है कि डेटासेट में कोई ऑब्जेक्ट पाया गया है या नहीं।
सही — डेटासेट में एक पहचानी गई वस्तु शामिल है।
गलत — डेटासेट में कोई भी पहचाने गए ऑब्जेक्ट शामिल नहीं हैं।
<[AIVision1 v] ऑब्जेक्ट मौजूद है?>
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो
[Drive forward if an object is detected.]
हमेशा
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
[आगे v] दिशा में [10] [mm v] चलाएं ▶
एआई विज़न ऑब्जेक्ट गणना#
एआई विज़न ऑब्जेक्ट काउंट रिपोर्टर ब्लॉक डेटासेट में पता लगाए गए ऑब्जेक्ट्स की संख्या को एक पूर्ण संख्या के रूप में रिपोर्ट करता है।
([AIVision1 v] ऑब्जेक्ट की संख्या)
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो
[Display the total amount of cubes, rings, and balls.]
हमेशा
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
स्क्रीन पर ([AIVision1 v] ऑब्जेक्ट की संख्या) प्रिंट करें ▶
अंत
[0.5] सेकंड प्रतीक्षा करें
एआई विज़न ऑब्जेक्ट प्रॉपर्टी#
प्रत्येक ऑब्जेक्ट (नीचे दिखाया गया है) के साथ नौ गुण शामिल हैं जो get object data ब्लॉक का उपयोग करने के बाद संग्रहीत होते हैं।
([AIVision1 v] ऑब्जेक्ट [चौड़ाई v])
tagID को छोड़कर सभी प्रॉपर्टी वैल्यू, get object data ब्लॉक का उपयोग किए जाने के समय VEX IQ AI विज़न सेंसर के दृश्य में पता लगाए गए ऑब्जेक्ट की स्थिति और आकार का वर्णन करती हैं। ये मान सेंसर के 320 x 240 पिक्सेल रिज़ॉल्यूशन के आधार पर पिक्सेल में मापे जाते हैं।
पैरामीटर |
विवरण |
|---|---|
संपत्ति |
पता लगाए गए ऑब्जेक्ट की कौन सी प्रॉपर्टी का उपयोग करना है: |
चौड़ाई#
width प्रॉपर्टी पता लगाए गए ऑब्जेक्ट की चौड़ाई को पिक्सल में 1 से 320 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [चौड़ाई v])
उदाहरण
जब शुरू हो
[Drive towards an object until its width is larger than 100 pixels.]
हमेशा
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <([AIVision1 v] ऑब्जेक्ट [चौड़ाई v]) [math_less_than v] [100]> तो
[आगे v] दिशा में चलाएं
अंत
अन्यथा
चलाना बंद करें
ऊंचाई#
ऊंचाई प्रॉपर्टी पता लगाए गए ऑब्जेक्ट की ऊंचाई को पिक्सल में 1 से 240 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [ऊंचाई v])
उदाहरण
जब शुरू हो
[Drive towards an object until its height is larger than 100 pixels.]
हमेशा
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <([AIVision1 v] ऑब्जेक्ट [ऊंचाई v]) [math_less_than v] [100]> तो
[आगे v] दिशा में चलाएं
अंत
अन्यथा
चलाना बंद करें
केंद्रX#
centerX प्रॉपर्टी पता लगाए गए ऑब्जेक्ट के केंद्र के x-निर्देशांक को पिक्सल में 0 से 320 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [centerX v])
उदाहरण
जब शुरू हो
[Turn slowly until an object is centered in front of the robot.]
टर्न वेलोसिटी [30] [% v] पर सेट करें
[दाएं v] दिशा में मुड़ें
हमेशा
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <[140] [math_less_than v] ([AIVision1 v] ऑब्जेक्ट [centerX v]) [math_less_than v] [180]> तो
चलाना बंद करें
केंद्र#
centerY प्रॉपर्टी, पता लगाए गए ऑब्जेक्ट के केंद्र के y-निर्देशांक को पिक्सल में 0 से 240 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [centerY v])
उदाहरण
जब शुरू हो
[Drive towards an object until its center y-coordinate is more than 140 pixels.]
हमेशा
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <([AIVision1 v] ऑब्जेक्ट [centerY v]) [math_less_than v] [140]> तो
[आगे v] दिशा में चलाएं
अंत
अन्यथा
चलाना बंद करें
कोण#
एंगल प्रॉपर्टी, पता लगाए गए कलर कोड या अप्रैलटैग आईडी के ओरिएंटेशन को 0 से 359 डिग्री तक की पूर्ण संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [कोण v])
उदाहरण
जब शुरू हो
[Slide left or right depending on how the Color Code is rotated.]
हमेशा
[AIVision1 v] से [RED_BLUE v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <[50] [math_less_than v] ([AIVision1 v] ऑब्जेक्ट [कोण v]) [math_less_than v] [100]> तो
[दाएं v] दिशा में चलाएं
अन्यथा यदि <[270] [math_less_than v] ([AIVision1 v] ऑब्जेक्ट [कोण v]) [math_less_than v] [330]> तो
[बाएं v] दिशा में चलाएं
अन्यथा
चलाना बंद करें
अंत
अन्यथा
चलाना बंद करें
उत्पत्तिX#
originX प्रॉपर्टी, पता लगाए गए ऑब्जेक्ट के बाउंडिंग बॉक्स के ऊपरी-बाएँ कोने के x-निर्देशांक को पिक्सेल में 0 से 320 तक की पूर्ण संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [originX v])
उदाहरण
जब शुरू हो
[Display if an object is to the left or the right.]
हमेशा
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <([AIVision1 v] ऑब्जेक्ट [originX v]) [math_less_than v] [160]> तो
स्क्रीन पर [To the left!] प्रिंट करें ▶
अन्यथा
स्क्रीन पर [To the right!] प्रिंट करें ▶
अंत
[0.5] सेकंड प्रतीक्षा करें
उत्पत्ति#
originY प्रॉपर्टी, पता लगाए गए ऑब्जेक्ट के बाउंडिंग बॉक्स के ऊपरी-बाएँ कोने के y-निर्देशांक को पिक्सेल में 0 से 240 तक की पूर्णांक संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [originY v])
उदाहरण
जब शुरू हो
[Display if an object is close or far from the robot.]
हमेशा
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <([AIVision1 v] ऑब्जेक्ट [originY v]) [math_less_than v] [80]> तो
स्क्रीन पर [Far!] प्रिंट करें ▶
अन्यथा
स्क्रीन पर [Close!] प्रिंट करें ▶
अंत
[0.5] सेकंड प्रतीक्षा करें
टैगआईडी#
tagID प्रॉपर्टी, पता लगाए गए AprilTag ID की पहचान संख्या को एक पूर्ण संख्या के रूप में रिपोर्ट करती है।
([AIVision1 v] ऑब्जेक्ट [tagID v])
उदाहरण
जब शुरू हो
[Drive forward when AprilTag ID 0 is detected.]
हमेशा
[AIVision1 v] से [AprilTag IDs v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <([AIVision1 v] ऑब्जेक्ट [tagID v]) [math_equal v] [0]> तो
[आगे v] दिशा में चलाएं
अन्यथा
चलाना बंद करें
अंत
[0.5] सेकंड प्रतीक्षा करें
एआई विज़न ऑब्जेक्ट क्या है?#
AI विज़न ऑब्जेक्ट क्या है? ब्लॉक एक बूलियन मान रिपोर्ट करता है जो यह दर्शाता है कि क्या पता लगाया गया ऑब्जेक्ट किसी विशिष्ट वर्गीकरण से मेल खाता है।
सत्य — डेटासेट में मौजूद आइटम विशिष्ट वस्तु है।
गलत — डेटासेट में मौजूद आइटम विशिष्ट वस्तु नहीं है।
<[AIVision1 v] ऑब्जेक्ट [BlueBall v] है?>
पैरामीटर |
विवरण |
|---|---|
वस्तु |
आइटम की तुलना किस एआई वर्गीकरण से करनी है. |
उदाहरण
जब शुरू हो
[Display if a Blue Cube is detected.]
हमेशा
[AIVision1 v] से [AI वर्गीकरण v] डेटा प्राप्त करें
स्क्रीन पर पंक्ति [1] साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <[AIVision1 v] ऑब्जेक्ट [BlueCube v] है?> तो
स्क्रीन पर [Cube detected!] प्रिंट करें ▶
[0.5] सेकंड प्रतीक्षा करें
एआई विज़न ऑब्जेक्ट AprilTag है?#
AI विज़न ऑब्जेक्ट अप्रैलटैग है? ब्लॉक एक बूलियन मान रिपोर्ट करता है जो यह दर्शाता है कि क्या पता लगाया गया ऑब्जेक्ट एक अप्रैलटैग है जो एक विशिष्ट आईडी से मेल खाता है।
सत्य — पता लगाया गया ऑब्जेक्ट दिए गए आईडी वाला एक अप्रैलटैग है।
गलत — पता लगाया गया ऑब्जेक्ट दिए गए आईडी वाला अप्रैलटैग नहीं है।
<[AIVision1 v] ऑब्जेक्ट AprilTag [0] है?>
पैरामीटर |
विवरण |
|---|---|
अप्रैलटैग आईडी |
पता लगाए गए AprilTag से तुलना करने के लिए आईडी नंबर। |
उदाहरण
जब शुरू हो
[Report if AprilTag 3 is detected.]
हमेशा
स्क्रीन साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
[AIVision1 v] से [AprilTag IDs v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <[AIVision1 v] ऑब्जेक्ट AprilTag [3] है?> तो
स्क्रीन पर [That is 3!] प्रिंट करें ▶
अन्यथा
स्क्रीन पर [That isn't 3!] प्रिंट करें ▶
अंत
अंत
[0.1] सेकंड प्रतीक्षा करें
एआई विज़न ऑब्जेक्ट का अप्रैलटैग आईडी क्या है?#
AI विज़न ऑब्जेक्ट अप्रैलटैग आईडी है? ब्लॉक एक बूलियन मान रिपोर्ट करता है जो यह दर्शाता है कि क्या पता लगाया गया अप्रैलटैग आईडी किसी विशिष्ट आईडी से मेल खाता है।
सही — अप्रैलटैग आईडी एक संख्या है।
गलत — अप्रैलटैग आईडी संख्या नहीं है।
<[AIVision1 v] object is AprilTag ID [1] ?>
पैरामीटर |
विवरण |
|---|---|
अप्रैलटैग आईडी संख्या |
पता लगाए गए अप्रैलटैग आईडी नंबर से तुलना करने के लिए संख्या। |
उदाहरण:
जब शुरू हो
[Report if AprilTag ID 3 is detected.]
हमेशा
स्क्रीन साफ़ करें
स्क्रीन पर पंक्ति [1] कॉलम [1] पर कर्सर सेट करें
[AIVision1 v] से [AprilTag IDs v] डेटा प्राप्त करें
यदि <[AIVision1 v] ऑब्जेक्ट मौजूद है?> तो
यदि <[AIVision1 v] object is AprilTag ID [3] ?> तो
स्क्रीन पर [That is 3!] प्रिंट करें ▶
अन्यथा
स्क्रीन पर [That isn't 3!] प्रिंट करें ▶
अंत
अंत
[0.1] सेकंड प्रतीक्षा करें