Object Tracking
تعرف على كيفية عمل تتبع الكائنات في رؤية الكمبيوتر. اكتشف كيفية استخدام Ultralytics YOLO26 لتحديد ومراقبة الكائنات بمعرفات فريدة للتحليل في الوقت الفعلي.
تتبع الكائنات هو عملية ديناميكية في computer vision (CV) تتضمن تحديد كيانات محددة في مقطع فيديو ومراقبة حركتها عبر تسلسل من الإطارات. على عكس تحليل الصور الثابتة، الذي يتعامل مع كل لقطة بمعزل عن الأخرى، يُدخل التتبع بُعد الزمن. هذا يسمح لأنظمة artificial intelligence (AI) بتعيين رقم تعريف فريد (ID) لكل عنصر يتم اكتشافه - مثل سيارة، أو شخص، أو حيوان - والحفاظ على هذه الهوية أثناء تحرك الكائن، أو تغير اتجاهه، أو احتجابه مؤقتاً. تُعد هذه القدرة حجر الأساس للفهم المتقدم لـ video understanding، مما يُمكّن الآلات من تحليل السلوك، وحساب المسارات، واستخلاص رؤى قابلة للاستخدام من اللقطات الخام.
كيف يعمل تتبع الكائنات#
تستخدم أنظمة التتبع الحديثة بشكل عام نموذج "التتبع عبر الكشف". يجمع سير العمل هذا بين نماذج كشف قوية وخوارزميات متخصصة لربط عمليات الكشف بمرور الوقت. تتبع العملية عادةً ثلاث مراحل رئيسية:
-
التحديد: في كل إطار، يقوم نموذج object detection، مثل نموذج YOLO26 المتطور، بمسح الصورة لتحديد موقع الكائنات محل الاهتمام. يُخرج النموذج bounding boxes التي تحدد النطاق المكاني لكل كائن.
-
التنبؤ بالحركة: تقدر خوارزميات مثل Kalman Filter الموقع المستقبلي للكائن بناءً على سرعته ومساره الحاليين. يقلل هذا التنبؤ مساحة البحث للإطار التالي، مما يجعل النظام أكثر كفاءة.
-
ربط البيانات: يطابق النظام الاكتشافات الجديدة مع المسارات الحالية باستخدام طرق التحسين مثل Hungarian algorithm. تعتمد هذه الخطوة غالباً على مقاييس مثل Intersection over Union (IoU) لقياس مدى تداخل المربع المتوقع مع الاكتشاف الجديد. قد تستخدم المتعقباعات المتقدمة أيضاً feature extraction البصري لإعادة تحديد الكائنات التي تبدو متشابهة.
تتبع الكائنات مقابل كشف الكائنات#
على الرغم من أن هذه المصطلحات مرتبطة ارتباطاً وثيقاً، إلا أنها تؤدي وظائف متميزة داخل خط أنابيب machine learning (ML).
- كشف الكائنات يجيب على السؤال، "ما الموجود في هذه الصورة وأين؟". هو نظام عديم الحالة (stateless)، مما يعني أنه لا يمتلك ذاكرة للإطارات السابقة. إذا قادت سيارة عبر مقطع فيديو، يرى الكاشف "سيارة" في الإطار 1 و "سيارة" في الإطار 2، لكنه لا يعرف أنهما نفس المركبة.
- يُجيب تتبع الكائنات على السؤال: "إلى أين يذهب هذا الكائن بالتحديد؟" إنه ذو حالة. فهو يربط "السيارة" في الإطار 1 بـ "السيارة" في الإطار 2، مما يسمح للنظام بتسجيل أن "السيارة ذات الرقم المعرف #42" تتحرك من اليسار إلى اليمين. هذا أمر بالغ الأهمية لمهام مثل predictive modeling والعد.
تطبيقات العالم الحقيقي#
تتيح القدرة على الحفاظ على هوية الكائن تطبيقات real-time inference المعقدة عبر مختلف الصناعات.
- أنظمة النقل الذكية: يُعد التتبع أمراً حيويّاً لكي تتنقل autonomous vehicles بأمان. من خلال تتبع المشاة والمركبات الأخرى، يمكن للسيارات التنبؤ بالاصطدامات المحتملة. علاوة على ذلك، يستخدم مهندسو المرور هذه الأنظمة لـ speed estimation لتنفيذ لوائح السلامة وتحسين تدفق المرور.
- تحليلات التجزئة: تستخدم المتاجر الفعلية AI in retail لفهم سلوك العملاء. يتيح التتبع لمديري المتاجر إجراء object counting لقياس حركة المشاة، وتحليل أوقات المكوث أمام العروض باستخدام heatmaps، وتحسين queue management لتقليل أوقات الانتظار.
- تحليلات الرياضة: في الرياضات الاحترافية، يستخدم المدربون التتبع مجتمعاً مع pose estimation لتحليل حركات اللاعبين وتشكيلات الفريق. توفر هذه البيانات ميزة تنافسية من خلال الكشف عن أنماط تكون غير مرئية بالعين المجردة.
تنفيذ التتبع باستخدام Python#
تجعل Ultralytics من السهل تطبيق تتبع عالي الأداء. يتعامل الوضع track في المكتبة تلقائياً مع الاكتشاف، والتنبؤ بالحركة، وتعيين معرف التعريف (ID). يوضح المثال أدناه كيفية استخدام نموذج YOLO26 المتوافق مع Ultralytics Platform لتتبع الكائنات في فيديو.
from ultralytics import YOLO
# Load the official YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Track objects in a video file or webcam (source=0)
# 'show=True' displays the video with bounding boxes and unique IDs
results = model.track(source="https://ultralytics.com/images/bus.jpg", show=True)
# Access the unique tracking IDs from the results
if results[0].boxes.id is not None:
print(f"Detected Track IDs: {results[0].boxes.id.cpu().numpy()}")مفاهيم ذات صلة#
لفهم نظام التتبع البيئي بالكامل، من المفيد استكشاف instance segmentation، الذي يتتبع محددات مستوى البكسل الدقيقة للكائن بدلاً من مجرد مربع. بالإضافة إلى ذلك، غالباً ما تتضمن تحديات التتبع متعدد الكائنات (MOT) معايير مستخدمة على نطاق واسع مثل MOTChallenge لتقييم مدى جودة تعامل الخوارزميات مع المشاهد المزدحمة وحالات الاحتجاب. للنشر في بيئات الإنتاج، غالباً ما يستخدم المطورون أدوات مثل NVIDIA DeepStream أو OpenCV لدمج هذه النماذج في خطوط أنابيب فعالة.






