السلام عليكم ورحمة الله وبركاته، لقد اطلعت على المشكلة التي تواجهها في نظام تحليل وتتبع اللاعبين عبر الفيديو، وهي مشكلة تقنية معروفة جداً في أنظمة الرؤية الحاسوبية (Computer Vision) تتعلق بـ "فقدان الهوية وتكرار المعرفات" (ID Switching) نتيجة الحجب المؤقت أو خروج اللاعب من الإطار. أنا متمكن تماماً من حل هذه المشكلة برمجياً وإصلاح الخلل في نظام التتبع الحالي لديكم، بحيث يحتفظ كل لاعب بـ ID ثابت وموحد طوال المباراة مهما اختفى عن الكاميرا، مما يضمن لك إحصائيات دقيقة بنسبة 100%. الحل يتطلب دمج تقنية إعادة التعرف (Re-Identification) المتقدمة مع الكود الحالي وضبط معايير التتبع الذكي، دون الحاجة لإعادة بناء المشروع من الصفر. يسعدني مناقشة آلية التطبيق والبدء في حل المشكلة مباشرة عبر الرسائل الخاصة، وأنا جاهز للالتزام معكم كعمل مستمر لتطوير المشروع كما طلبت. أطيب التحيات،
السلام عليكم، المشكلة دي بتواجه كتير من أنظمة التتبع اللي بتعتمد على الـ Detection اللحظي بدل الـ Tracking المستمر. فقدان الـ ID عند خروج اللاعب من الـ Frame أو حجب الرؤية بيخلي النظام يفتكر إنه لاعب جديد، وده بيضرب الـ Data Integrity تمامًا لأنك بتفقد الـ History الخاص باللاعب. الحل هنا مش في الـ Detection، الحل في بناء Tracking Layer قوية بتستخدم Re-Identification (ReID) و Kalman Filter بشكل متقدم. لازم الـ Model يقدر يحفظ الـ Features بتاعة اللاعب (زي شكل التيشيرت، لون الجسم، وحركته) عشان لما يرجع للـ Frame تاني، النظام يعمل Match للـ ID القديم بدل ما يرمي ID جديد. ده هيضمن إن الـ Stats اللي بتطلع تكون دقيقة ومبنية على مسار اللاعب طوال الماتش. لو النظام مبني بـ Clean Architecture، التعديل ده هيكون في الـ Processing Pipeline من غير ما نغير الـ Core detection models. سؤال، هل بتعتمدوا حالياً على DeepSORT للـ Tracking ولا في Custom Implementation خاص بيكم؟
السلام عليكم كيفك اخي محمد اطلعت على المشكلة، وهي غالباً مرتبطة بمنطق **Object Tracking / Re-Identification (ReID)** وليس بعملية كشف اللاعبين نفسها.
عند اختفاء اللاعب من إطار الكاميرا ثم عودته، يتم إنشاء ID جديد بدلاً من ربطه بهويته السابقة، لذلك يزداد عدد اللاعبين بشكل غير صحيح مع مرور الوقت.
يمكنني مراجعة آلية التتبع الحالية وتحليل سبب فقدان الهوية، ثم تحسين نظام التتبع بحيث يحتفظ اللاعب بنفس الـ ID حتى بعد الاختفاء المؤقت أو التداخل مع لاعبين آخرين، مع التركيز على رفع دقة التتبع وتقليل الأخطاء قدر الإمكان.
بما أن المشروع ما زال قيد التطوير، فأفضل خطوة هي الاطلاع على النموذج الحالي والتقنيات المستخدمة (YOLO، DeepSORT، ByteTrack، BoT-SORT أو غيرها) ثم تحديد الحل المناسب بدقة.
إذا أمكن إرسال تفاصيل الـ Pipeline الحالية أو جزء من الكود، سأراجعها وأعطيك تصوراً واضحاً للحل وخطوات التنفيذ. والعمل المستمر مرحب به.