مستشعر رؤية بالذكاء الاصطناعي#
مقدمة#
يستطيع مستشعر الرؤية المدعوم بالذكاء الاصطناعي اكتشاف وتتبع الأجسام والألوان ومعرفات AprilTag. وهذا يسمح للروبوت بتحليل محيطه، ومتابعة الأجسام، والتفاعل بناءً على البيانات المرئية المكتشفة.
فيما يلي قائمة بالكتل المتاحة:
الإجراءات – التقاط البيانات من مستشعر الرؤية المدعوم بالذكاء الاصطناعي لتوقيع محدد.
أخذ لقطة – يلتقط البيانات لتوقيع معين، مثل لون مُكوّن، أو كائن مُدرّب مسبقًا، أو معرف AprilTag.
الإعدادات – اختر العنصر الذي تريد التفاعل معه.
set AI Vision object item – يحدد كائنًا معينًا من قائمة الكائنات المكتشفة.
القيم – الوصول إلى البيانات التي تم جمعها واستخدامها.
كائن رؤية الذكاء الاصطناعي موجود – يُبلغ عما إذا تم اكتشاف كائن ما.
كائن رؤية الذكاء الاصطناعي هو – يتحقق مما إذا كان الكائن المكتشف يطابق تصنيفًا محددًا.
كائن رؤية الذكاء الاصطناعي هو معرف AprilTag – يتحقق مما إذا كان معرف AprilTag المكتشف يطابق معرفًا محددًا.
عدد الكائنات المكتشفة بواسطة رؤية الذكاء الاصطناعي – يعرض عدد الكائنات المكتشفة.
خاصية كائن رؤية الذكاء الاصطناعي – تقارير بتفاصيل مثل:
الإجراءات#
التقط صورة للشاشة#
تقوم كتلة المكدس أخذ لقطة بتصفية البيانات من إطار مستشعر الرؤية بالذكاء الاصطناعي إلى توقيع واحد - وهو وصف محفوظ لشيء يمكن للمستشعر التعرف عليه، مثل كائن مدرب مسبقًا، أو معرف AprilTag، أو لون أو رمز لوني تم تكوينه.
يجب أولاً ضبط الألوان ورموز الألوان في أداة الرؤية بالذكاء الاصطناعي قبل استخدامها مع هذه الوحدة.
تحتوي مجموعة البيانات على كائنات مرتبة من الأكبر إلى الأصغر حسب العرض، بدءًا من الفهرس 0. يمكن الوصول إلى خصائص كل كائن باستخدام كتلة AI Vision object property. يتم الإبلاغ عن مجموعة بيانات فارغة في حال عدم اكتشاف أي كائنات مطابقة.
التقط لقطة [AIVision1 v] من [SELECT_A_SIG v]
المعلمة |
وصف |
|---|---|
جهاز |
أي مستشعر رؤية يعمل بالذكاء الاصطناعي يجب استخدامه؟ |
إمضاء |
يقوم هذا الإجراء بتصفية مجموعة البيانات بحيث لا تتضمن إلا البيانات التي تحمل التوقيع المحدد. التوقيعات المتاحة هي:
|
ملاحظة: لكي تظهر خيارات معرف AprilTag أو تصنيف الذكاء الاصطناعي، يجب تمكين اكتشافها في أداة AI Vision Utility.
مثال
عند البدء
[Drive forward if an AprilTag ID is detected.]
للأبد
التقط لقطة [AIVision1 v] من [AprilTag IDs v]
إذا <كائن [AIVIsion1 v] موجود؟> إذن
تشغيل [للأمام v] لمسافة [10] [مم v] ▶
تصنيفات الذكاء الاصطناعي#
يستطيع مستشعر الرؤية المدعوم بالذكاء الاصطناعي اكتشاف أجسام مختلفة ضمن تصنيفات ذكاء اصطناعي محددة. ويختلف الجسم الذي يتم اكتشافه باختلاف نموذج تصنيف الذكاء الاصطناعي المُختار عند إعداد مستشعر الرؤية المدعوم بالذكاء الاصطناعي في نافذة الأجهزة. النماذج المتاحة حاليًا هي:
أدوات الفصل الدراسي
بلو بول
جرينبول
ريدبول
بلو رينغ
جرين رينج
ريد رينغ
بلو كيوب
جرين كيوب
ريد كيوب
دفعة خلفية في مسابقة VEX V5 للروبوتات
بلو بلوك
ريد بلوك
مسابقة VEX V5 للروبوتات ذات الرهانات العالية
موبايل جول
ريد رينغ
بلو رينغ
تجاوز مسابقة الروبوتات VEX V5
دبوس أحمر أزرق
دبوس أزرق أصفر
دبوس أحمر أصفر
يلوبين
كوب
التوقيعات اللونية#
البصمة اللونية هي لون فريد يمكن لمستشعر الرؤية المدعوم بالذكاء الاصطناعي التعرف عليه. تُمكّن هذه البصمات المستشعر من اكتشاف الأجسام وتتبعها بناءً على لونها. بمجرد ضبط البصمة اللونية، يستطيع المستشعر تحديد الأجسام التي تحمل هذا اللون المحدد ضمن مجال رؤيته.
تُستخدم التوقيعات اللونية في كتلة أخذ لقطة لمعالجة واكتشاف الكائنات الملونة في الوقت الفعلي. يمكن تهيئة ما يصل إلى 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 رموز لونية مرتبة بترتيب محدد. تسمح هذه الرموز لمستشعر الرؤية المدعوم بالذكاء الاصطناعي بالتعرف على أنماط الألوان المحددة مسبقًا.
تُعدّ رموز الألوان مفيدةً للغاية لتحديد العناصر المعقدة، ومواءمتها مع عناصر اللعبة، أو إنشاء علامات مميزة للتنقل الذاتي. ويمكن ضبط ما يصل إلى 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!] على الشاشة ▶
إعدادات#
تعيين عنصر كائن رؤية الذكاء الاصطناعي#
تحدد كتلة المكدس set AI Vision object item العنصر المراد استخدامه في مجموعة البيانات.
اضبط عنصر كائن [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]) على الشاشة ▶
قيم#
كائن رؤية الذكاء الاصطناعي موجود#
يشير مربع AI Vision object exists المنطقي إلى ما إذا تم اكتشاف أي كائن في مجموعة البيانات.
صحيح – تتضمن مجموعة البيانات كائنًا تم اكتشافه.
خطأ – لا تتضمن مجموعة البيانات أي كائنات تم اكتشافها.
<كائن [AIVision1 v] موجود؟>
حدود |
وصف |
|---|---|
جهاز |
أي مستشعر رؤية يعمل بالذكاء الاصطناعي يجب استخدامه؟ |
مثال
عند البدء
[Drive forward if an object is detected.]
للأبد
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
تشغيل [للأمام v] لمسافة [10] [مم v] ▶
كائن رؤية الذكاء الاصطناعي هو#
تقوم كتلة AI Vision object is المنطقية بالإبلاغ عما إذا كان الكائن المكتشف يطابق تصنيفًا محددًا.
صحيح – العنصر الموجود في مجموعة البيانات هو الكائن المحدد.
خطأ – العنصر الموجود في مجموعة البيانات ليس هو الكائن المحدد.
<كائن [AIVision1 v] هو [BlueBall v]؟>
المعلمة |
وصف |
|---|---|
جهاز |
أي مستشعر رؤية يعمل بالذكاء الاصطناعي يجب استخدامه؟ |
هدف |
Which AI Classification to compare the item to. |
مثال
عند البدء
[Display if a Blue Cube is detected.]
للأبد
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
امسح الصف [1] من الشاشة
اضبط المؤشر على الصف [1] العمود [1] على الشاشة
إذا <كائن [AIVision1 v] موجود؟> إذن
إذا <كائن [AIVision1 v] هو [BlueCube v]؟> إذن
اطبع [Cube detected!] على الشاشة ▶
انتظر [0.5] ثانية
كائن رؤية الذكاء الاصطناعي هو معرف AprilTag#
كائن الرؤية الذكية هو معرف AprilTag كتلة منطقية تُبلغ عما إذا كان معرف AprilTag المكتشف يطابق معرفًا محددًا.
صحيح – معرف AprilTag هو الرقم.
خطأ – معرف AprilTag ليس هو الرقم.
<[AIVision1 v] object is AprilTag ID [1] ?>
حدود |
وصف |
|---|---|
جهاز |
أي مستشعر رؤية يعمل بالذكاء الاصطناعي يجب استخدامه؟ |
رقم تعريف AprilTag |
الرقم المراد مقارنته برقم تعريف AprilTag المكتشف. |
مثال:
عند البدء
[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!] على الشاشة ▶
fin
fin
انتظر [0.1] ثانية
عدد الكائنات في رؤية الذكاء الاصطناعي#
تقوم وحدة الإبلاغ عن عدد الكائنات المكتشفة في مجموعة البيانات بـ AI Vision object count كرقم صحيح.
(عدد كائنات [AIVision1 v])
حدود |
وصف |
|---|---|
جهاز |
أي مستشعر رؤية يعمل بالذكاء الاصطناعي يجب استخدامه؟ |
مثال
عند البدء
[Display the total amount of cubes, rings, and balls.]
للأبد
امسح الصف [1] من الشاشة
اضبط المؤشر على الصف [1] العمود [1] على الشاشة
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
اطبع (عدد كائنات [AIVision1 v]) على الشاشة ▶
fin
انتظر [0.5] ثانية
خاصية كائن رؤية الذكاء الاصطناعي#
هناك تسع خصائص يتم تضمينها مع كل كائن (موضح أدناه) يتم تخزينها بعد استخدام كتلة take snapshot.
(كائن [AIVision1 v] [العرض v])
تصف جميع قيم الخصائص، باستثناء tagID وscore، موضع وحجم الكائن المكتشف في مجال رؤية مستشعر الرؤية بالذكاء الاصطناعي لحظة استخدام كتلة take snapshot. تُقاس هذه القيم بالبكسل، بناءً على دقة المستشعر البالغة 320 × 240 بكسل.
المعلمة |
وصف |
|---|---|
جهاز |
أي مستشعر رؤية يعمل بالذكاء الاصطناعي يجب استخدامه؟ |
ملكية |
أي خاصية من خصائص الكائن المكتشف يجب استخدامها؟ |
عرض#
تُبلغ خاصية العرض عن عرض الكائن المكتشف بالبكسل كرقم صحيح من 1 إلى 320.
(كائن [AIVision1 v] [العرض v])
مثال
عند البدء
[Drive towards an object until its width is larger than 100 pixels.]
للأبد
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
إذا <(كائن [AIVision1 v] [العرض v]) [math_less_than v] [100]> إذن
تشغيل [للأمام v]
وإلا
إيقاف القيادة
fin
ارتفاع#
تُظهر خاصية الارتفاع ارتفاع الكائن المكتشف بالبكسل كرقم صحيح من 1 إلى 240.
(كائن [AIVision1 v] [الارتفاع v])
مثال
عند البدء
[Drive towards an object until its height is larger than 100 pixels.]
للأبد
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
إذا <(كائن [AIVision1 v] [الارتفاع v]) [math_less_than v] [100]> إذن
تشغيل [للأمام v]
وإلا
إيقاف القيادة
fin
سنتر إكس#
تقوم خاصية centerX بالإبلاغ عن الإحداثي السيني لمركز الكائن المكتشف بالبكسل كرقم صحيح من 0 إلى 320.
(كائن [AIVision1 v] [centerX v])
مثال
عند البدء
[Turn slowly until an object is centered in front of the robot.]
اضبط سرعة الدوران إلى [30] [% v]
استدر [يمين v]
للأبد
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي 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] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
إذا <(كائن [AIVision1 v] [centerY v]) [math_less_than v] [140]> إذن
تشغيل [للأمام v]
وإلا
إيقاف القيادة
fin
زاوية#
تشير خاصية الزاوية إلى اتجاه رمز اللون المكتشف أو معرف AprilTag كرقم صحيح بالدرجات من 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]
وإلا
إيقاف القيادة
fin
وإلا
إيقاف القيادة
IX#
تشير خاصية originX إلى الإحداثي السيني للزاوية العلوية اليسرى من المربع المحيط بالكائن المكتشف بالبكسل كرقم صحيح من 0 إلى 320.
(كائن [AIVision1 v] [originX v])
مثال
عند البدء
[Display if an object is to the left or the right.]
للأبد
امسح الصف [1] من الشاشة
اضبط المؤشر على الصف [1] العمود [1] على الشاشة
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
إذا <(كائن [AIVision1 v] [originX v]) [math_less_than v] [160]> إذن
اطبع [To the left!] على الشاشة ▶
وإلا
اطبع [To the right!] على الشاشة ▶
fin
انتظر [0.5] ثانية
الأصل Y#
تشير خاصية originY إلى إحداثيات y للزاوية العلوية اليسرى من المربع المحيط بالكائن المكتشف بالبكسل كرقم صحيح من 0 إلى 240.
(كائن [AIVision1 v] [originY v])
مثال
عند البدء
[Display if an object is close or far from the robot.]
للأبد
امسح الصف [1] من الشاشة
اضبط المؤشر على الصف [1] العمود [1] على الشاشة
التقط لقطة [AIVision1 v] من [تصنيفات الذكاء الاصطناعي v]
إذا <كائن [AIVision1 v] موجود؟> إذن
إذا <(كائن [AIVision1 v] [originY v]) [math_less_than v] [80]> إذن
اطبع [Far!] على الشاشة ▶
وإلا
اطبع [Close!] على الشاشة ▶
fin
انتظر [0.5] ثانية
tagID#
تقوم خاصية 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]
وإلا
إيقاف القيادة
fin
انتظر [0.5] ثانية
نتيجة#
تُظهر خاصية النتيجة مدى ثقة النموذج في تصنيف الذكاء الاصطناعي المكتشف كنسبة مئوية من 70% إلى 100%.
تشير الدرجة المنخفضة إلى أن المستشعر أقل ثقة بشأن الجسم المكتشف، بينما تشير الدرجة الأعلى إلى أن المستشعر أكثر ثقة.
(كائن [AIVision1 v] [النتيجة v])