كان هذا المشروع جزءًا من دورة الواقع الافتراضي/الواقع المعزز في جامعتي TU Darmstadt. كان الهدف من المشروع هو إنشاء تطبيق لتسجيل سهام السهام تلقائيًا، حيث يمكن للاعبين لعب لعبة رمي السهام دون التركيز على حساب النقاط. يستخدم التطبيق OpenCV لجزء رؤية الكمبيوتر وPyside2 لواجهة المستخدم الرسومية.
نحن نستخدم كاميرا ويب تمت معايرتها لالتقاط دفق الفيديو ومعالجته باستخدام OpenCV لاستخراج السهام الموجودة على اللوحة وتتبع اللاعبين.
يبدو خط أنابيب الكشف الكامل كما يلي:
تم تلخيص المسار الإجمالي في هذا المخطط الانسيابي (حاليًا باللغة الألمانية فقط):
سوف تحتاج إلى:
ضع العلامات حول لوحة المعلومات كما في الصورة أدناه وتأكد من أنها مرئية. ضع كاميرا الويب أمام لوحة السهام على بعد متر واحد تقريبًا وإلى اليمين قليلاً، حتى لا تعيق رمي السهام.
هام: أنت بحاجة إلى إضاءة جيدة للحصول على نتائج جيدة. فقط الإضاءة من أعلى لوحة السهام مباشرة هي سيئة. الأمثل سيكون ضوءًا حلقيًا مع ناشر مثل هذا:
واجهنا بعض المشاكل مع اهتزاز اللوحة مما أدى إلى حدوث ضوضاء أثناء الكشف. لقد قمنا بحل هذه المشكلة من خلال حوامل مطبوعة ثلاثية الأبعاد للوحة:
ما عليك سوى استنساخ المستودع وتشغيل الأمر التالي:
pip install -r requirements.txt
تحتاج أولاً إلى معايرة الكاميرا. يمكن القيام بذلك باستخدام برنامج المعايرة. ثم يمكنك البدء main_with_gui.py. تبدو واجهة المستخدم الرسومية كما يلي: