أفضل 8 أدوات وخوارزميات مفتوحة المصدر لتتبع الكائنات
استكشف 8 أفضل أدوات مفتوحة المصدر لتتبع الكائنات لتحليل الفيديو في الوقت الفعلي. شاهد كيف تعمل كل واحدة وكيف تختار الخيار المناسب لمشروعك.

عندما تتجاوز سيارة إشارة مرورية حمراء ويتم إرسال مخالفة آلية إلى السائق، أو عندما يراوغ لاعب كرة قدم الكرة في الملعب وتتابع الكاميرا اللعب بسلاسة، يعمل الذكاء الاصطناعي بهدوء في الخلفية. على وجه الخصوص، تعتمد هذه الأنظمة على computer vision، وهو فرع فرعي من الذكاء الاصطناعي يمكن الآلات من رؤية وتفسير وفهم المعلومات المرئية من العالم.
داخل مجال computer vision، تُعد إحدى المهام الرئيسية الكامنة وراء هذه التطبيقات هي object tracking. يتم استخدامه لتحديد الكائنات في كل إطار من الفيديو ثم متابعة تلك الكائنات أثناء تحركها، أو تداخلها مع كائنات أخرى، أو تغيير اتجاهها.
توفر اليوم العديد من أدوات وخوارزميات object tracking tools، حيث تم تصميم كل منها لحالات استخدام واحتياجات أداء ومستويات تعقيد مختلفة. تركز بعض الأدوات على السرعة ويمكنها تتبع العشرات من الكائنات في الوقت الفعلي، بينما تعطي أدوات أخرى الأولوية للدقة أو الاستقرار على المدى الطويل في الظروف الصعبة مثل التخفي، أو الحركة السريعة، أو الإضاءة المنخفضة.
على وجه الخصوص، لعبت open-source projects دورًا رئيسيًا في دفع عجلة التقدم في هذا المجال. ونظرًا لأن رموزها البرمجية متاحة للجميع بحرية، يمكن للمطورين والباحثين دراسة كيفية عملها، وتحسين الطرق الحالية، وتكييفها مع تطبيقات جديدة. ساعد هذا الانفتاح تقنية تتبع الكائنات على التطور بسرعة وأصبح دمجها في الأنظمة الواقعية أمرًا أكثر سهولة.
في هذه المقالة، سوف نستكشف ثماني أدوات وخوارزميات شهيرة مفتوحة المصدر لتتبع الكائنات. لنبدأ!
ما هو تتبع الكائنات؟#
تخيل سيناريو يراقب فيه حارس أمن لقطات كاميرات المراقبة (CCTV) لموقف سيارات. قرر الحارس مراقبة سيارة حمراء واحدة. أثناء تشغيل الفيديو، يقوم ذهنياً بتمييز تلك السيارة ويستمر في تتبعها أينما ذهبت، حتى عندما تمر سيارات أخرى أو يمشي أشخاص أمامها.
يشبه تتبع الكائنات المعتمد على الذكاء الاصطناعي ذلك، لكنه يعمل تلقائياً وبنطاق واسع. بعبارة أخرى، تتبع الكائنات هو عملية متابعة كائن أثناء تحركه عبر إطارات الفيديو والحفاظ على هويته متسقة من إطار إلى آخر.
في العديد من الأنظمة، يبدأ هذا بـ object detection، والذي يجد ويفهرس كائنات مثل الأشخاص، أو المركبات، أو إشارات المرور في كل إطار. بعد ذلك، بينما تتحرك هذه الكائنات أو تظهر أو تختفي أو تتداخل، يقوم نظام التتبع بربط عمليات الاكتشاف عبر الإطارات لكي يعرف أي كجزء يمثل أياً وأين يذهب كل منها بمرور الوقت.

الشكل 1. نظرة على تتبع الكائنات (Source)
هناك نوعان شائعان من التتبع: تتبع الكائن المفرد (SOT)، الذي يركز على كائن رئيسي واحد (مثل تتبع الكرة فقط في فيديو رياضي)، وتتبع الكائنات المتعددة (MOT)، الذي يتابع العديد من الكائنات في وقت واحد ويخصص لكل منها معرّفاً فريداً (مثل تتبع جميع السيارات عند تقاطع مزدحم).
بغض النظر عن نوع التتبع، تعتمد معظم الأنظمة على ثلاثة مكونات أساسية: كاشف للعثور على الكائنات في كل إطار، ونموذج حركة للتنبؤ بكيفية تحرك تلك الكائنات، وخطوة مطابقة لربط الاكتشافات الجديدة بالكائنات التي تم تتبعها مسبقاً. تحول هذه الأجزاء الفيديو الخام إلى معلومات ذات مغزى حول كيفية تحرك الكائنات وتفاعلها بمرور الوقت.
الحاجة إلى أدوات تتبع الكائنات مفتوحة المصدر#
قبل أن نتعمق في التفاصيل، قد تتساءل: ما الذي يجعل أدوات وخوارزميات تتبع الكائنات مفتوحة المصدر مميزة جداً؟
لعبت الأدوات مفتوحة المصدر دوراً كبيراً في جعل تتبع الكائنات أسهل في الاستخدام وأكثر توافراً على نطاق واسع. ولأن الكود مفتوح، يمكن للمطورين والباحثين رؤية كيفية عمل المتتبع بالضبط، والتعلم منه، وتكييفه مع مشاريعهم الخاصة بدلاً من التعامل معه كصندوق أسود.
كما أنها تستفيد من مجتمعات قوية. يتم صيانة العديد من أدوات التتبع مفتوحة المصدر من قبل مساهمين نشطين يضيفون ميزات جديدة، ويحسنون السرعة والدقة، ويصلحون الأخطاء، ويحافظون على توافق الأدوات مع أحدث الأبحاث. يساعد هذا التعاون المستمر في الحفاظ على موثوقيتها وفائدتها عبر تطبيقات مختلفة.
التكلفة هي سبب كبير آخر لأهميتها. ونظراً لأن الأدوات مفتوحة المصدر مجانية، يمكن للطلاب والشركات الناشئة والفرق الصغيرة تجربة النماذج الأولية وبناء أنظمة حقيقية دون القلق بشأن رسوم الترخيص أو تكاليف الاشتراك.
أفضل 8 أدوات وخوارزميات مفتوحة المصدر لتتبع الكائنات#
تتوفر مجموعة واسعة من الخيارات مفتوحة المصدر اليوم لبناء أنظمة التتبع. بعضها عبارة عن خوارزميات أو نماذج تتبع يمكنك توصيلها مباشرة بخط المعالجة الخاص بك، بينما البعض الآخر عبارة عن مكتبات وأطر عمل تجعل تشغيل تلك النماذج وإدارتها ودمجها أسهل. معاً، تغطي كل شيء بدءاً من منطق التتبع الأساسي وصولاً إلى الأدوات المحيطة التي تحتاجها في مشروع حقيقي.
بعد ذلك، دعونا نلقي نظرة على ثماني أدوات وخوارزميات شهيرة مفتوحة المصدر لتتبع الكائنات.
نماذج Ultralytics YOLO وحزمة Ultralytics Python#
تعد إحدى أبسط الخيارات وأكثرها عملية لتتبع الكائنات هي استخدام Ultralytics YOLO models جنباً إلى جنب مع Ultralytics Python package. نماذج Ultralytics YOLO مثل Ultralytics YOLO11 والنموذج القادم Ultralytics YOLO26 هي نماذج computer vision تدعم مجموعة من المهام المرئية، بما في ذلك اكتشاف الكائنات، وتقسيم الحالات، وتقدير الأوضاع، وتتبع الكائنات.

الشكل 2. مثال على استخدام YOLO11 لاكتشاف وتتبع الكائنات. (Source)
ومن المثير للاهتمام أن النماذج نفسها لا تتتبع الكائنات عبر الإطارات. بدلاً من ذلك، تجعل حزمة Ultralytics Python، وهي مكتبة تبسّط تشغيل نماذج Ultralytics YOLO ونشرها، التتبع ممكناً من خلال الجمع بين عمليات الاكتشاف التي يقوم بها YOLO لكل إطار على حدة وخوارزميات تتبع كائنات متعددة متخصصة مثل BoT-SORT وByteTrack.
بفضل قدرة التتبع المضمنة، يمكن استخدام حزمة Ultralytics ونماذج Ultralytics YOLO لاكتشاف الكائنات في كل إطار ثم تعيين معرفات متسقة لها بحيث يمكن متابعتها أثناء حركتها، وتداخلها، وخروجها من الإطار، وإعادة دخولها لاحقاً. يتم اعتماد هذا النهج بشكل متزايد في قطاعات مثل التصنيع وتجارة التجزئة، مما يتيح تطبيقات مثل سير عمل فحص العيوب، وتتبع تدفق المخزون، وتتبع العملاء داخل المتجر.
متتبعات OpenCV#
OpenCV هي مكتبة واسعة النطاق لـ computer vision تتضمن مجموعة من خوارزميات تتبع الكائنات. تم تطوير هذه المكتبة وصيانتها بواسطة مجتمع OpenCV منذ عام 1999.
بدلاً من الاعتماد على التعلم العميق، تستخدم معظم هذه المتتبعات طرق رؤية حاسوبية تقليدية مثل مرشحات الارتباط والتقنيات القائمة على النواة (التي تتبع كائناً عن طريق مطابقة مظهره المرئي، مثل اللون والملمس، من إطار إلى آخر، بدلاً من تعلم السمات باستخدام الشبكات العصبية).
عند استخدام هذه الخوارزميات، يمكنك عادةً أولاً تحديد الكائن الذي تريد تتبعه، ويبحث المتتبع باستمرار عن المنطقة المرئية الأكثر تشابهاً في الإطارات اللاحقة أثناء تحرك الكائن.

الشكل 3. تتبع الكائنات باستخدام OpenCV (Source)
على الرغم من أن هذه الطرق قد لا تكون قوية مثل أنظمة التتبع الحديثة القائمة على التعلم العميق في المشاهد المعقدة أو المزدحمة، إلا أنها لا تزال تستخدم على نطاق واسع لأنها خفيفة وسريعة وسهلة التشغيل. أيضاً، نظراً لأن هذه المتتبعات تعمل بكفاءة على وحدات المعالجة المركزية (CPU) وعادة لا تتطلب وحدة معالجة رسومات (GPU)، فهي تعمل بشكل جيد للتجارب السريعة والتعلم في الفصول الدراسية والمشاريع الهواية.
ByteTrack#
ByteTrack هي واحدة من أكثر الخوارزميات مفتوحة المصدر شيوعاً لتتبع الكائنات المتعددة. بدلاً من مطابقة عمليات الاكتشاف التي يكون النموذج متأكداً جداً منها فقط، فإنها تستخدم أيضاً عمليات الاكتشاف منخفضة الثقة التي تتجاهلها العديد من الأنظمة عادةً.
يساعدها هذا على تتبع الكائنات التي يصعب رؤيتها لفترة وجيزة، مثل عندما تكون محجوبة جزئياً، أو بعيدة، أو تتحرك بسرعة. ولأنها سريعة وموثوقة، تُستخدم ByteTrack بشكل شائع في تطبيقات مثل تحليل حركة المرور، وتتبع المشاة، ومراقبة التجزئة، حيث يكون الأداء في الوقت الفعلي والمعرفات المتسقة أمراً مهماً.
كما ذُكر سابقاً، إذا كنت تستخدم نماذج Ultralytics YOLO للاكتشاف، فمن السهل تمكين ByteTrack من خلال حزمة Ultralytics Python. ولكن يمكن استخدامها أيضاً بشكل مستقل في خطوط معالجة مخصصة، مما يجعلها مناسبة لكل شيء بدءاً من نماذج الأبحاث الأولية وصولاً إلى أنظمة الإنتاج المكتوبة بلغة C++.
DeepSORT#
خوارزمية أخرى مستخدمة على نطاق واسع لتتبع الكائنات المتعددة هي DeepSORT، وهي اختصار لـ Deep Simple Online and Real-Time Tracking. وهي نسخة متقدمة من SORT، والتي ترمز إلى Simple Online and Real-Time Tracking.
على غرار ByteTrack، يتبع نظام SORT نهج التتبع من خلال الاكتشاف. ومع ذلك، يعتمد SORT على Kalman filter، وهو نموذج رياضي يقدر الموقع المستقبلي للكائن استناداً إلى حركته السابقة، للتنبؤ بالمكان الذي منرجح أن ينتقل إليه كل كائن بعد ذلك.
ثم تقوم بمطابقة الاكتشافات الجديدة مع المسارات الحالية، بشكل رئيسي بناءً على الموضع وتداخل مربع الإحاطة. وهذا يجعل SORT سريعة وخفيفة، لكنها قد تواجه صعوبة عندما تتداخل الكائنات، أو تتقاطع مساراتها، أو تختفي لفترة وجيزة من العرض.
تعمل DeepSORT على تحسين SORT بإضافة معلومات المظهر إلى عملية التتبع. بالإضافة إلى الحركة والموضع، فهي تستخدم نموذج إعادة تعريف (re-identification أو re-id) قائماً على التعلم العميق يتعلم كيف تبدو الكائنات. يسمح هذا للمتتبع بالتعرف على نفس الكائن عبر الإطارات، حتى عندما لا تكون الحركة كافية لتمييزه عن الآخرين.
وبسبب هذا، تُستخدم DeepSORT بشكل شائع في تطبيقات مثل المراقبة ورصد الحشود، حيث يتداخل الأشخاص بشكل متكرر أو يتم حجبهم لفترة وجيزة. ومع ذلك، فهي تُعتبر أساساً كلاسيكياً اليوم، وغالباً ما تحقق طرق التتبع الأحدث أداءً أفضل في المشاهد الأكثر تحدياً.
Norfair#
Norfair هي مكتبة تتبع خفيفة مصممة لتكون مرنة، بدلاً من إجبارك على استخدام خط تتبع ثابت. يمكنها إضافة التتبع فوق أي كاشف تقريباً، طالما يمكن تمثيل مخرجات الكاشف كمجموعة من النقاط، مثل مراكز مربعات الإحاطة، أو النقاط الرئيسية، أو بيانات الإحداثيات المخصصة.

الشكل 4. تتبع الكائنات في العالم الحقيقي باستخدام Norfair (Source)
هذه المرونة تجعلها مؤثرة بشكل خاص للمشاريع التي تتضمن مدخلات غير عادية أو أنماط حركة ديناميكية حيث قد تفشل أدوات تتبع الكائنات المتعددة القياسية. توفر المكتبة أيضاً وظائف مسافة مدمجة للتحكم في كيفية مطابقة الاكتشافات عبر الإطارات.
تقيس وظائف المسافة هذه مدى تشابه نقطتين أو كائنين، مما يمنح المستخدمين تحكماً كاملاً في منطق التتبع. غالباً ما تُستخدم Norfair في الروبوتات، وتحليل الحركة الرياضية، وملاحة الطائرات بدون طيار، والتطبيقات التي تعتمد بشكل كبير على تتبع معالم الوضع أو النقاط الرئيسية.
MMTracking#
MMTracking هي مجموعة أدوات تتبع مفتوحة المصدر من فريق OpenMMLab، وهو الفريق الذي يقف أيضاً وراء مكتبات رؤية الحاسوب المستخدمة على نطاق واسع مثل MMDetection. وبناءً على MMDetection، فإنها توفر إطار عمل مرناً لتطوير أنظمة التتبع وتجربتها.
إحدى أكبر نقاط قوتها هي تصميمها النمطي. بدلاً من حبسك في خط معالجة واحد، تتيح لك MMTracking تهيئة مكونات مختلفة وتبديلها، مثل الكاشفات، ووحدات التتبع، وفي بعض الإعدادات نماذج إعادة التعريف. وبسبب هذه المرونة، فهي تحظى بشعبية خاصة في الأبحاث والمشاريع المتقدمة حيث ترغب الفرق في قياس الطرق، أو اختبار أفكار جديدة، أو ضبط خطوط معالجة التتبع.
FairMOT#
FairMOT هو إطار عمل لتتبع كائنات متعددة مصمم لتتبع العديد من الكائنات في نفس الوقت. على عكس خطوط معالجة التتبع بالاكتشاف التقليدية التي تشغل الاكتشاف أولاً ثم تربط الكائنات عبر الإطارات كخطوة منفصلة، تتعلم FairMOT الاكتشاف وإعادة التعريف معاً في شبكة واحدة.

الشكل 5. كيف يعمل إطار عمل FairMOT (Source)
يساعد هذا الإعداد المشترك في الحفاظ على هويات أكثر اتساقاً، خاصة في المشاهد المزدحمة حيث يتداخل الأشخاص غالباً أو يتحركون بسرعة. تُستخدم FairMOT بشكل شائع في سيناريوهات مثل تتبع المشاة ورصد الحشود، كما يتم تطبيقها في إعدادات مثل تحليلات التجزئة ومراقبة حركة المرور، حيث يكون تتبع العديد من الأهداف في الوقت الفعلي أمراً مهماً.
SiamMask#
SiamMask هي طريقة لتتبع كائن واحد تخطو خطوة أبعد من العديد من المتتبعات من خلال إنتاج قناع تجزئة إلى جانب مربع إحاطة. ببساطة، فهي لا ترسم مستطيلاً حول الهدف فحسب، بل تحدد أيضاً شكل الكائن على مستوى البكسل، وهو ما يمكن أن يكون مفيداً عندما يغير الهدف شكله، أو يدور، أو يصبح مخفياً جزئياً.

الشكل 6. تتبع وتجزئة كائن باستخدام SiamMask (Source)
يستخدم هذا النهج تصميم تتبع سيامي، الذي يتضمن قيام المتتبع أولاً بأخذ عرض مرجعي صغير للهدف من الإطار الأول، والذي يسمى غالباً القالب. ثم، في كل إطار جديد، يبحث في منطقة أكبر ويجد البقعة ذات أعلى تشابه مع ذلك القالب.
تبني SiamMask على هذه الفكرة القائمة على المطابقة. كما أنها تتنبأ بقناع على مستوى البكسل للهدف، بحيث تحصل على موقع الكائن ومخطط أكثر دقة أثناء تشغيل الفيديو.
عوامل رئيسية في اختيار أداة تتبع الكائنات#
مع توفر خيارات متنوعة لأدوات تتبع الكائنات مفتوحة المصدر في مجال الذكاء الاصطناعي اليوم، يعتمد الخيار الأفضل لمشروع رؤية الحاسوب الخاص بك على ما تتطلبه حالة استخدامك المحددة. إليك بعض العوامل التي يجب مراعاتها:
- الدقة: هذا هو الأكثر أهمية في المشاهد المزدحمة أو المعقدة بصرياً، حيث يحتاج نظام الرؤية إلى الحفاظ على معرفات مستقرة حتى أثناء التداخل، أو التغطية، أو الحركة السريعة.
- السرعة: بالنسبة للتطبيقات في الوقت الفعلي مثل الروبوتات، ومراقبة حركة المرور، والتحليلات الرياضية، قد تكون الاستجابة أكثر أهمية من الدقة المثالية.
- سهولة الدمج: بعض أدوات تتبع الكائنات سهلة التشغيل وتعمل ببضعة أسطر من الكود، بينما تتطلب أدوات أخرى المزيد من الإعداد والتهيئة أو عمل خط معالجة مخصص.
- قيود النشر: يمكن أن تحدد البيئة المستهدفة، مثل خوادم GPU، أو أجهزة الحافة، أو أجهزة الهاتف المحمول، أي نهج تتبع عملي.
- قابلية التوسع: إذا كان نظامك يحتاج إلى تتبع العديد من الكائنات في وقت واحد أو معالجة تدفقات فيديو متعددة، فيجب أن يتوسع المتتبع بكفاءة دون انخفاض كبير في الأداء.
تخدم كل أداة أو خوارزمية لتتبع الكائنات غرضاً مختلفاً. في النهاية، يعتمد الاختيار الصحيح على متطلباتك المحددة، وقيود وقت التشغيل، ومقاييس الأداء، ومدى القابلية للتخصيص التي يتطلبها نهج التتبع في مشروعك.
أبرز النقاط#
تطور تتبع الكائنات من التقنيات اليدوية المبكرة إلى أنظمة التعلم العميق الحديثة اليوم التي تفسر الحركة والهوية والسلوك بدقة مبهرة. كانت الأدوات مفتوحة المصدر قوة دافعة وراء هذا التقدم. فهي تضفي الطابع الديمقراطي على الوصول إلى الخوارزميات القوية، وتشجع على التجريب، وتمكن الباحثين من بناء خطوط معالجة تتبع متطورة دون تراخيص تقييدية أو بنية تحتية ثقيلة.
تحقق من community و GitHub repository الخاصين بنا لمعرفة المزيد حول الذكاء الاصطناعي. استكشف صفحات حلولنا حول AI in agriculture و computer vision in manufacturing. اكتشف licensing options الخاصة بنا وابدأ في بناء نموذج الرؤية الخاص بك.






