Yolo فيجن شنتشن
شنتشن
انضم الآن

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

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

عندما تتجاوز سيارة إشارة مرور حمراء ويتم إرسال مخالفة آلية إلى السائق، أو عندما يراوغ لاعب كرة قدم في الملعب وتتابع الكاميرا اللعبة بسلاسة، فإن الذكاء الاصطناعي يعمل بهدوء في الخلفية. على وجه الخصوص، تعتمد هذه الأنظمة على الرؤية الحاسوبية، وهي أحد مجالات الذكاء الاصطناعي التي تمكّن الآلات من رؤية المعلومات البصرية من العالم وتفسيرها وفهمها.

في مجال الرؤية الحاسوبية، تتمثل إحدى المهام الرئيسية وراء هذه التطبيقات في تتبع الأجسام. وتُستخدم هذه المهمة لتحديد الأجسام في كل إطار من إطارات الفيديو ثم تتبع تلك الأجسام أثناء تحركها أو تداخلها مع أجسام أخرى أو تغيير اتجاهها.

هناك العديد من أدوات وخوارزميات تتبع الأجسام المتاحة اليوم، كل منها مصمم لحالات استخدام مختلفة واحتياجات أداء ومستويات تعقيد مختلفة. تركز بعضها على السرعة ويمكنها track الأجسام في الوقت الفعلي، بينما تركز أخرى على الدقة أو الاستقرار على المدى الطويل في ظروف صعبة مثل الانسداد أو الحركة السريعة أو الإضاءة المنخفضة.

على وجه التحديد، لعبت المشاريع مفتوحة المصدر دوراً رئيسياً في تطوير هذا المجال. ونظراً لأن أكوادها متاحة للجميع، يمكن للمطورين والباحثين دراسة كيفية عملها وتحسين الأساليب الحالية وتكييفها مع التطبيقات الجديدة. وقد ساعدت هذه الشفافية على تطور تتبع الأجسام بسرعة وجعلت دمجها في الأنظمة الواقعية أسهل.

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

ما هو تتبع الكائنات؟

تخيل سيناريو حيث يقوم حارس أمن بمراقبة لقطات كاميرات المراقبة في موقف للسيارات. يقرر الحارس مراقبة سيارة حمراء. أثناء تشغيل الفيديو، يضع علامة ذهنية على تلك السيارة ويستمر في تتبعها أينما ذهبت، حتى عندما تمر سيارات أخرى أو يمشي أشخاص أمامها.

تتشابه تقنية تتبع الأجسام المدعومة بالذكاء الاصطناعي مع ذلك، ولكنها تعمل تلقائيًا وعلى نطاق واسع. بعبارة أخرى، تتبع الأجسام هو عملية تتبع جسم ما أثناء تحركه عبر إطارات الفيديو والحفاظ على هويته ثابتة من إطار إلى آخر. 

في العديد من الأنظمة، يبدأ ذلك باكتشاف الأجسام، الذي يعثر على أجسام مثل الأشخاص أو المركبات أو إشارات الطرق في كل إطار ويصنفها. ثم، مع تحرك هذه الأجسام أو ظهورها أو اختفائها أو تداخلها، يربط نظام التتبع عمليات الاكتشاف عبر الإطارات حتى يتعرف على كل جسم ومكانه مع مرور الوقت.

الشكل 1. نظرة على تتبع الكائنات (المصدر)

هناك نوعان شائعان من التتبع: تتبع كائن واحد (SOT)، الذي يركز على كائن رئيسي واحد (مثل تتبع الكرة فقط في فيديو رياضي)، وتتبع كائنات متعددة (MOT)، الذي يتتبع العديد من الكائنات في وقت واحد ويخصص لكل منها معرفًا فريدًا (مثل تتبع جميع السيارات عند تقاطع مزدحم). 

بغض النظر عن نوع التتبع، تعتمد معظم الأنظمة على ثلاثة مكونات أساسية: كاشف للعثور على الكائنات في كل إطار، ونموذج حركة للتنبؤ بكيفية تحرك تلك الكائنات، وخطوة مطابقة لربط الاكتشافات الجديدة بالكائنات التي تم تتبعها مسبقًا. تحول هذه الأجزاء الفيديو الخام إلى معلومات مفيدة حول كيفية تحرك الكائنات وتفاعلها بمرور الوقت.

الحاجة إلى أدوات تتبع الكائنات مفتوحة المصدر

قبل أن ندخل في التفاصيل، قد تتساءل: ما الذي يجعل أدوات وخوارزميات تتبع الكائنات مفتوحة المصدر مميزة للغاية؟

لعبت الأدوات مفتوحة المصدر دوراً كبيراً في تسهيل استخدام تتبع الكائنات وجعله متاحاً على نطاق أوسع. ونظراً لأن الكود مفتوح، يمكن للمطورين والباحثين أن يروا بالضبط كيف يعمل جهاز التتبع، ويتعلموا منه، ويكيفوه مع مشاريعهم الخاصة بدلاً من التعامل معه كصندوق أسود.

كما أنها تستفيد من وجود مجتمعات قوية. يتم صيانة العديد من أدوات التتبع مفتوحة المصدر من قبل مساهمين نشطين يضيفون ميزات جديدة، ويحسنون السرعة والدقة، ويصلحون الأخطاء، ويحافظون على توافق الأدوات مع أحدث الأبحاث. يساعد هذا التعاون المستمر على الحفاظ على موثوقيتها وفائدتها في مختلف التطبيقات.

التكلفة هي سبب آخر مهم لكونها مهمة. نظرًا لأن الأدوات مفتوحة المصدر مجانية، يمكن للطلاب والشركات الناشئة والفرق الصغيرة التجربة وتصميم النماذج الأولية وبناء أنظمة حقيقية دون القلق بشأن رسوم الترخيص أو تكاليف الاشتراك.

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

تتوفر اليوم مجموعة متنوعة من الخيارات مفتوحة المصدر لإنشاء أنظمة التتبع. بعضها عبارة عن خوارزميات أو نماذج تتبع يمكنك توصيلها مباشرة بخط أنابيبك، بينما البعض الآخر عبارة عن مكتبات وأطر عمل تسهل تشغيل تلك النماذج وإدارتها ودمجها. وتغطي هذه الخيارات مجتمعة كل شيء بدءًا من منطق التتبع الأساسي وحتى الأدوات المحيطة التي تحتاجها في مشروع حقيقي. 

بعد ذلك، دعونا نلقي نظرة على ثمانية أدوات وخوارزميات مفتوحة المصدر شائعة لتتبع الكائنات.

1.YOLO Ultralytics YOLO Python Ultralytics Python

أحد الخيارات الأسهل والأكثر عملية لتتبع الكائنات هو استخدام YOLO Ultralytics YOLO مع Python Ultralytics Python .YOLO Ultralytics YOLO مثل Ultralytics YOLO11 و Ultralytics المرتقبة هي نماذج رؤية حاسوبية تدعم مجموعة من مهام الرؤية، بما في ذلك اكتشاف الكائنات وتجزئة الحالات وتقدير الوضع وتتبع الكائنات.

الشكل 2. مثال على استخدام YOLO11 detect track . (المصدر)

ومن المثير للاهتمام أن النماذج نفسها لا track عبر الإطارات. بدلاً من ذلك، فإنPython Ultralytics Python وهي مكتبة تبسط تشغيل ونشرYOLO Ultralytics YOLO تجعل التتبع ممكنًا من خلال الجمع بين عمليات الكشف إطارًا بإطار YOLOوخوارزميات تتبع متعددة الكائنات مخصصة مثل BoT-SORT و ByteTrack. 

بفضل قدرتها المدمجة على التتبع، يمكن استخدام Ultralytics YOLO Ultralytics YOLO detect في كل إطار ثم تعيين معرفات متسقة لها بحيث يمكن تتبعها أثناء تحركها وتداخلها ومغادرتها الإطار والعودة إليه لاحقًا. يتم اعتماد هذا النهج بشكل متزايد في قطاعات مثل التصنيع والتجزئة، مما يتيح تطبيقات مثل سير عمل فحص العيوب وتتبع تدفق المخزون وتتبع العملاء داخل المتجر.

2. OpenCV

OpenCV هي مكتبة رؤية حاسوبية واسعة النطاق تتضمن مجموعة من خوارزميات تتبع الأجسام. تم تطوير هذه المكتبة وصيانتها من قبل OpenCV منذ عام 1999. 

بدلاً من الاعتماد على التعلم العميق، تستخدم معظم أجهزة التتبع هذه طرق الرؤية الحاسوبية التقليدية مثل مرشحات الترابط والتقنيات القائمة على النواة (التي تتبع كائنًا ما من خلال مطابقة مظهره البصري، مثل اللون والملمس، من إطار إلى آخر، بدلاً من تعلم الميزات باستخدام الشبكات العصبية). 

عند استخدام هذه الخوارزميات، يمكنك عادةً أولاً تحديد الكائن الذي تريد track، ويقوم المتتبع بالبحث باستمرار عن المنطقة المرئية الأكثر تشابهاً في الإطارات اللاحقة أثناء تحرك الكائن. 

الشكل 3. تتبع الأجسام باستخدام OpenCV المصدر)

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

3. ByteTrack

ByteTrack هي واحدة من أكثر الخوارزميات مفتوحة المصدر شيوعًا لتتبع الأجسام المتعددة. بدلاً من مطابقة الاكتشافات التي يكون النموذج متأكدًا منها تمامًا، فإنه يستخدم أيضًا الاكتشافات الأقل ثقة التي تتجاهلها العديد من الأنظمة عادةً. 

وهذا يساعده track الأجسام التي يصعب رؤيتها لفترة وجيزة، مثل عندما تكون محجوبة جزئيًا أو بعيدة أو تتحرك بسرعة. نظرًا لسرعته وموثوقيته، يستخدم ByteTrack بشكل شائع في تطبيقات مثل تحليل حركة المرور وتتبع المشاة ومراقبة البيع بالتجزئة، حيث الأداء في الوقت الفعلي والمعرفات المتسقة مهمة. 

كما ذكرنا سابقًا، إذا كنت تستخدمYOLO Ultralytics YOLO للكشف، فمن السهل تمكين ByteTrack من خلالPython Ultralytics Python . ولكن يمكن أيضًا استخدامه بشكل مستقل في خطوط الإنتاج المخصصة، مما يجعله مناسبًا لكل شيء بدءًا من نماذج البحث الأولية وحتى أنظمة الإنتاج المكتوبة بلغة C++.

4. DeepSORT

هناك خوارزمية أخرى مستخدمة على نطاق واسع لتتبع الأجسام المتعددة وهي DeepSORT، وهي اختصار لـ Deep Simple Online and Real-Time Tracking (التتبع العميق البسيط عبر الإنترنت وفي الوقت الحقيقي). وهي نسخة متقدمة من SORT، والتي تعني Simple Online and Real-Time Tracking (التتبع البسيط عبر الإنترنت وفي الوقت الحقيقي).

على غرار ByteTrack، يتبع SORT نهج التتبع عن طريق الكشف. ومع ذلك، يعتمد SORT على مرشح كالمان، وهو نموذج رياضي يقدر الموقع المستقبلي للكائن بناءً على حركته السابقة، للتنبؤ بالمكان الذي من المحتمل أن يتحرك إليه كل كائن بعد ذلك.

ثم يقارن الاكتشافات الجديدة بالمسارات الموجودة، بناءً على الموقع وتداخل المربعات المحيطة بشكل أساسي. وهذا يجعل SORT سريعًا وخفيفًا، ولكنه قد يواجه صعوبات عندما تتداخل الكائنات أو تتقاطع مساراتها أو تختفي لفترة وجيزة عن الأنظار.

يعمل DeepSORT على تحسين SORT من خلال إضافة معلومات المظهر إلى عملية التتبع. بالإضافة إلى الحركة والموقع، يستخدم نموذج إعادة التعريف أو إعادة تحديد الهوية القائم على التعلم العميق الذي يتعلم كيف تبدو الأشياء. وهذا يسمح للمتتبع بالتعرف على نفس الشيء عبر الإطارات، حتى عندما لا تكون الحركة كافية لتمييزه عن غيره.

لهذا السبب، يستخدم DeepSORT بشكل شائع في تطبيقات مثل المراقبة ومراقبة الحشود، حيث يتداخل الأشخاص أو يتحجبون عن الرؤية لفترات قصيرة. ومع ذلك، يعتبر هذا البرنامج اليوم أساسًا كلاسيكيًا، وغالبًا ما تحقق طرق التتبع الأحدث أداءً أفضل في المشاهد الأكثر صعوبة.

5. نورفير

Norfair هي مكتبة تتبع خفيفة الوزن مصممة لتكون مرنة، بدلاً من إجبارك على استخدام مسار تتبع ثابت. يمكنها إضافة التتبع إلى أي كاشف تقريبًا، طالما أن مخرجات الكاشف يمكن تمثيلها كمجموعة من النقاط، مثل مراكز الصناديق المحيطة أو النقاط الرئيسية أو بيانات الإحداثيات المخصصة.

الشكل 4. تتبع الأجسام في العالم الحقيقي باستخدام Norfair (المصدر)

هذه المرونة تجعلها مؤثرة بشكل خاص في المشاريع التي تتضمن مدخلات غير عادية أو أنماط حركة ديناميكية حيث قد تقصر أدوات التتبع القياسية متعددة الأهداف. توفر المكتبة أيضًا وظائف مسافة مدمجة للتحكم في كيفية مطابقة عمليات الكشف عبر الإطارات. 

تقيس وظائف المسافة هذه مدى تشابه نقطتين أو كائنين، مما يمنح المستخدمين تحكمًا كاملاً في منطق التتبع. غالبًا ما يستخدم Norfair في الروبوتات وتحليل الحركات الرياضية وملاحة الطائرات بدون طيار والتطبيقات التي تعتمد بشكل كبير على تتبع معالم الوضع أو النقاط الرئيسية.

6. MMTracking

MMTracking هي مجموعة أدوات تتبع مفتوحة المصدر من فريق OpenMMLab، الذي يقف أيضًا وراء مكتبات الرؤية الحاسوبية المستخدمة على نطاق واسع مثل MMDetection. وهي مبنية على MMDetection، وتوفر إطارًا مرنًا لتطوير أنظمة التتبع وتجربتها.

تتمثل إحدى أكبر نقاط قوته في تصميمه المعياري. بدلاً من حصر استخدامك في مسار واحد، يتيح لك MMTracking تكوين مكونات مختلفة وتبديلها، مثل أجهزة الكشف ووحدات التتبع، وفي بعض الإعدادات نماذج إعادة التعريف. وبفضل هذه المرونة، يحظى هذا البرنامج بشعبية خاصة في الأبحاث والمشاريع المتقدمة حيث ترغب الفرق في قياس الأساليب، واختبار الأفكار الجديدة، أو ضبط مسارات التتبع.

7. FairMOT

FairMOT هو إطار عمل لتتبع كائنات متعددة مصمم track الكائنات في نفس الوقت. على عكس أنظمة التتبع بالكشف التقليدية التي تعمل على الكشف أولاً ثم تربط الكائنات عبر الإطارات كخطوة منفصلة، يتعلم FairMOT الكشف وإعادة التعرف معاً في شبكة واحدة. 

الشكل 5. كيفية عمل إطار عمل FairMOT (المصدر)

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

8. SiamMask

SiamMask هي طريقة تتبع كائن واحد تتجاوز العديد من أجهزة التتبع من خلال إنتاج قناع تقسيم مع مربع حدودي. ببساطة، لا تقتصر على رسم مستطيل حول الهدف. بل تحدد أيضًا شكل الكائن على مستوى البكسل، مما قد يكون مفيدًا عندما يتغير شكل الهدف أو يدور أو يصبح مخفيًا جزئيًا. 

الشكل 6. تتبع وتقسيم كائن باستخدام SiamMask (المصدر)

يستخدم هذا النهج تصميم تتبع سيامي، والذي يتضمن قيام المتتبع أولاً بأخذ عرض مرجعي صغير للهدف من الإطار الأول، والذي يُسمى غالبًا بالقالب. ثم، في كل إطار جديد، يبحث في منطقة أكبر ويجد المكان الأكثر تشابهًا مع ذلك القالب. 

يعتمد SiamMask على هذه الفكرة القائمة على المطابقة. كما أنه يتنبأ بقناع على مستوى البكسل للهدف، بحيث تحصل على موقع الكائن ومخطط أكثر دقة أثناء تشغيل الفيديو.

العوامل الرئيسية في اختيار أداة تتبع الكائنات

مع توفر خيارات متنوعة لأدوات تتبع الكائنات مفتوحة المصدر في مجال الذكاء الاصطناعي اليوم، فإن الخيار الأفضل لمشروع الرؤية الحاسوبية الخاص بك يعتمد على متطلبات حالة الاستخدام المحددة الخاصة بك. فيما يلي بعض العوامل التي يجب أخذها في الاعتبار:

  • الدقة: هذا الأمر مهم للغاية في المشاهد المزدحمة أو المعقدة بصريًا، حيث يحتاج نظام الرؤية إلى الحفاظ على معرفات ثابتة حتى أثناء التداخل أو الحجب أو الحركة السريعة.
  • السرعة: بالنسبة للتطبيقات في الوقت الفعلي مثل الروبوتات ومراقبة حركة المرور وتحليلات الرياضة، قد تكون الاستجابة أكثر أهمية من الدقة المثالية.
  • سهولة التكامل: بعض أدوات تتبع الكائنات سهلة التوصيل والتشغيل وتعمل ببضع أسطر من التعليمات البرمجية، بينما تتطلب أدوات أخرى مزيدًا من الإعداد أو التكوين أو العمل على خط الأنابيب المخصص.
  • قيود النشر: يمكن أن تحدد البيئة المستهدفة، مثل GPU أو الأجهزة الطرفية أو الأجهزة المحمولة، نهج التتبع العملي.
  • قابلية التوسع: إذا كان نظامك بحاجة إلى track الكائنات في وقت واحد أو معالجة عدة تدفقات فيديو، فيجب أن يتم توسيع نطاق المتتبع بكفاءة دون انخفاض كبير في الأداء.

تخدم كل أداة أو خوارزمية لتتبع الكائنات غرضًا مختلفًا. في النهاية، يعتمد الاختيار الصحيح على متطلباتك المحددة وقيود وقت التشغيل ومقاييس الأداء ومدى قابلية التخصيص التي يتطلبها مشروعك لنهج التتبع. 

النقاط الرئيسية

تطورت تقنية تتبع الأجسام من التقنيات اليدوية البدائية إلى أنظمة التعلم العميق المتطورة الحالية التي تفسر الحركة والهوية والسلوك بدقة مذهلة. كانت الأدوات مفتوحة المصدر قوة دافعة وراء هذا التقدم. فهي تتيح الوصول إلى خوارزميات قوية، وتشجع على التجريب، وتمكن الباحثين من بناء خطوط تتبع متطورة دون ترخيص مقيد أو بنية تحتية ثقيلة. 

تحقق من مجتمعنا ومستودع GitHub لمعرفة المزيد عن الذكاء الاصطناعي. استكشف صفحات حلولنا حول الذكاء الاصطناعي في الزراعة والرؤية الحاسوبية في التصنيع. اكتشف خيارات الترخيص لدينا وابدأ في بناء نموذج الرؤية الخاص بك.

لنبنِ مستقبل
الذكاء الاصطناعي معًا!

ابدأ رحلتك مع مستقبل تعلم الآلة

ابدأ مجانًا