تطبيق سطح مكتب يسجل حضور الطلاب ويضبط دخول القاعات الدراسية والامتحانية بالتعرف على الوجه عبر YOLOv8 وDeepFace مع كشف الحيوية بـ MediaPipe وتقارير Excel.

مشروع تطوير نظام ذكي لتسجيل حضور الطلاب وضبط دخولهم إلى القاعات الدراسية والامتحانية بالتعرف على الوجه، نفذه فريق من الطلاب بمساعدة تقنية من مكتب تكنو إنجاز. يلتقط النظام الفيديو المباشر من الكاميرا، ويكتشف الوجوه، ويحولها إلى تمثيل رقمي (Embedding) يقارنه بقاعدة بيانات الطلاب، ثم يسجل الحضور فقط إذا اجتاز الطالب فحص الحيوية وكان مسجلًا في الجلسة والقاعة الصحيحة ضمن الوقت المسموح.
بُني النظام تطبيقَ سطح مكتب بلغة Python باستخدام OpenCV وDeepFace وMediaPipe لكشف الانتحال، مع قاعدة بيانات SQLite وتقارير Excel وواجهات CustomTkinter متعددة الصلاحيات. وجُرّب على كاميرا حاسوب محمول مدمجة، وأفاد التقرير بأن التعرف عمل في الزمن الحقيقي بدقة مرتفعة واستجابة شبه فورية، دون أن يعرض قيمًا رقمية لهذه الدقة.
| العنصر | البيانات |
|---|---|
| نوع المشروع | تطبيق سطح مكتب لتسجيل الحضور وضبط الدخول بالتعرف على الوجه |
| المجال | الرؤية الحاسوبية، القياسات الحيوية، الإدارة الأكاديمية |
| حالة المشروع | نموذج عامل جُرّب على كاميرا الحاسوب المحمول المدمجة |
| دور تكنو إنجاز | دعم ومساعدة تقنية للطلاب أثناء تطوير المشروع |
| تقنيات أساسية | Python 3.11، OpenCV، YOLOv8، DeepFace (FaceNet512/ArcFace)، MediaPipe، SQLite، Pandas، OpenPyXL، CustomTkinter |
| المخرجات | تسجيل حضور آلي، رفض محاولات الانتحال، إدارة أكاديمية، تقارير يومية وسجلات تاريخية بصيغة Excel، لوحة تحليلات |
ما تزال كثير من المؤسسات التعليمية تسجل الحضور بقوائم ورقية أو أنظمة إلكترونية بسيطة، وهي طرق تستهلك وقت المحاضرة، وتكثر فيها الأخطاء البشرية، ويسهل فيها التلاعب وانتحال الهوية. وتزداد حساسية المشكلة في القاعات الامتحانية، حيث يجب ضمان دخول كل طالب إلى القاعة المخصصة له وفق القوائم الاسمية الرسمية الصادرة عن قسم الامتحانات، والتي تتضمن الأسماء والأرقام الجامعية وتوزيع القاعات.
نُفذ المشروع أكاديميًا بواسطة الطلاب، مع مساعدة ودعم تقني من مكتب تكنو إنجاز أثناء مراحل التطوير. ويُعرض ضمن أعمال المكتب مثالًا على دعمه لمشاريع الرؤية الحاسوبية التي تجمع التعرف على الوجه وكشف الحيوية مع أنظمة إدارة البيانات.
| الأداة / التقنية | الاستخدام في النظام |
|---|---|
| Python 3.11 | تطوير النظام وربط جميع المكونات |
| OpenCV | التقاط الفيديو ومعالجة الإطارات وتحسين الصورة |
| YOLOv8 | كشف الوجوه داخل الإطار |
| DeepFace + FaceNet512 | استخراج السمات الحيوية للوجه والتعرف على الهوية |
| MediaPipe | كشف الحيوية ومنع التلاعب (الرمش وحركة الرأس) |
| SQLite | تخزين بيانات الطلاب والجلسات والحضور |
| Pandas وOpenPyXL | معالجة بيانات الحضور وتصدير التقارير إلى Excel |
| CustomTkinter | تصميم الواجهات الرسومية |
| Threading | تشغيل الكاميرات والمعالجة بالتوازي دون تجميد الواجهة |
ملاحظة: يذكر جدول الأدوات في التقرير نموذج FaceNet512 لاستخراج السمات، بينما يشير وصف آلية العمل والخاتمة إلى نموذج ArcFace ضمن DeepFace؛ وكلاهما من النماذج التي تدعمها المكتبة.
قُسم النظام إلى طبقات: واجهة المستخدم (النوافذ والفيديو المباشر والتقارير)، ومحرك الرؤية (كشف الوجه والتعرف وكشف الحيوية)، ومدير قاعدة البيانات (الاستعلام عن الطلاب المسموح لهم وتسجيل الحضور وتصدير التقارير)، ونظام الملفات المحلي لملفات البصمات الوجهية المؤقتة والتقارير اليومية. ويُفصل خيط الواجهة الرئيسي عن خيوط معالجة الفيديو لكل كاميرا وخيوط المؤقتات، مع طوابير (Queues) لتبادل البيانات بأمان، بحيث يمكن من حيث التصميم إضافة كاميرات أخرى.
صُممت قاعدة بيانات علائقية بمفاتيح أساسية وأجنبية تضم الجداول التالية:
| الجدول | المحتوى |
|---|---|
| Majors | الاختصاصات والأقسام |
| Academic_Years | السنوات الدراسية |
| Subjects | المواد مرتبطة بالاختصاص والسنة |
| Students | الاسم والرقم الجامعي والاختصاص والسنة ومسار ملف البصمة الوجهية (Face_Cache_Path) |
| Rooms | القاعات الدراسية والامتحانية |
| Sessions | المحاضرات أو الامتحانات: المادة والقاعة والنوع والتاريخ والوقت |
| Attendance | ربط الطالب بالجلسة مع وقت التسجيل والحالة |
يبدأ الاستخدام بشاشة تسجيل دخول، ثم واجهة رئيسية تضم أقسام إدارة الطلاب والجلسات والبث الحي والتقارير وإعدادات الجامعة. ومن أبرز الواجهات:
تتضمن تقارير Excel معلومات الجلسة (المادة، القاعة، التاريخ، عدد الحاضرين) وقائمة تفصيلية بالاسم والرقم الجامعي ووقت التسجيل والحالة.
جُرّب النظام على حاسوب بنظام Windows 10 باستخدام كاميرا الحاسوب المحمول المدمجة، ولخص التقرير نتائجه نوعيًا:
| المعيار | النتيجة المذكورة في التقرير |
|---|---|
| سرعة الاستجابة | فورية تقريبًا |
| دقة التعرف على الوجوه | مرتفعة، حتى مع اختلافات بسيطة في الإضاءة والزوايا |
| كشف محاولات التلاعب | فعّال ضد الصور ومقاطع الفيديو |
| استقرار الواجهة | مستقر أثناء التشغيل |
| إدارة الجلسات والتقارير | ناجحة، مع تصدير بصيغة Excel |
| العمل في الزمن الحقيقي | مدعوم |
هذه النتائج وصفية؛ إذ لم يعرض التقرير عدد الطلاب أو الصور المختبرة، ولا قيمًا رقمية لدقة التعرف أو معدلات القبول والرفض الخاطئ أو زمن المعالجة. أما نسب الدقة المرتفعة لنماذج مثل ArcFace الواردة في الدراسة النظرية فهي مأخوذة من مراجع منشورة على قواعد بيانات قياسية، وليست نتائج هذا النظام.
ذكر التقرير مجموعة من التحديات، أبرزها:
وإضافة إلى ذلك، جُرّب النظام بكاميرا مدمجة واحدة، وتعتمد قاعدة SQLite على جهاز محلي، ويشير التقرير إلى أن التوسع لعدد كبير من المستخدمين قد يتطلب الانتقال إلى PostgreSQL أو MySQL.
بحسب الآفاق الواردة في المشروع:
يعالج النظام صور وجوه وبيانات حيوية للطلاب، لذلك يحتاج أي استخدام فعلي إلى إعلام الطلاب وموافقتهم، وتحديد صلاحيات الوصول إلى البصمات الوجهية وسجلات الحضور، وتشفير البيانات وتحديد مدة الاحتفاظ بها.
إذا كنت تعمل على نظام حضور وضبط دخول بالتعرف على الوجه وتحتاج إلى مساعدة تقنية في تطوير الفكرة أو بناء نموذج أولي، يمكن التواصل مع مكتب تكنو إنجاز لمناقشة متطلبات المشروع ونطاق الدعم المناسب.
تطبيق سطح مكتب يسجل حضور الطلاب ويضبط دخولهم إلى القاعات الدراسية والامتحانية بالتعرف على الوجه في الزمن الحقيقي، وفق المجموعات والقوائم الاسمية الرسمية. نفذه فريق من الطلاب بمساعدة تقنية من مكتب تكنو إنجاز.
يكتشف YOLOv8 الوجه، وتحوله DeepFace إلى متجه رقمي يُقارن بقاعدة البيانات بالمسافة الإقليدية، وبالتوازي يُجرى فحص الحيوية. ثم يتحقق النظام من أن الطالب مسجل في الجلسة وفي القاعة الصحيحة ضمن الوقت المسموح؛ فإذا فشل أي فحص يُرفض التسجيل ويظهر تنبيه، وإلا يُسجَّل الحضور مع وقته.
يستخدم مكتبة MediaPipe لاستخراج نقاط الوجه وتتبع الرمش عبر نسبة العين (Eye Aspect Ratio) وحركة الرأس، مع تحليل الحركة بين الإطارات وتحليل النسيج لتمييز الصور المطبوعة ومقاطع الفيديو عن الوجه الحقيقي. ويُرفض تسجيل الحضور عند اكتشاف محاولة تلاعب.
Python 3.11 وOpenCV وYOLOv8 لكشف الوجوه، وDeepFace مع FaceNet512 (ويذكر التقرير ArcFace أيضًا) للتعرف، وMediaPipe لكشف الحيوية، وSQLite لقاعدة البيانات، وPandas وOpenPyXL لتقارير Excel، وCustomTkinter للواجهات، مع تعدد الخيوط لمنع تجمد الواجهة.
جُرّب على كاميرا حاسوب محمول مدمجة، ووصف التقرير الاستجابة بأنها شبه فورية والدقة بأنها مرتفعة وكشف التلاعب بأنه فعال، لكنه لم يعرض قيمًا رقمية أو حجم بيانات الاختبار. ومن حدوده التأثر بالإضاءة والزوايا الجانبية والنظارات والكمامات، وتشغيله بكاميرا واحدة وقاعدة SQLite محلية.
تواصل مع فريق تكنو إنجاز لمناقشة قابلية التنفيذ العملي، اختيار القطع، وتطوير النموذج الأولي.