نظرة عامة على مجموعات بيانات تتبع الأجسام المتعددة#
تتبع الأجسام المتعددة هو مكون حاسم في تحليلات الفيديو يقوم بتحديد الأجسام والحفاظ على معرفات فريدة لكل جسم مكتشف عبر إطارات الفيديو. يوفر Ultralytics YOLO قدرات تتبع قوية يمكن تطبيقها في مجالات متنوعة بما في ذلك المراقبة، وتحليلات الرياضة، ومراقبة المرور.
تنسيق مجموعة البيانات (قريباً)#
تعمل ميزة التتبع في Ultralytics حالياً على إعادة استخدام نماذج الكشف أو التجزئة أو الوضع أو OBB دون الحاجة إلى تدريب مخصص للمتتبع. الدعم الأصلي لتدريب المتتبعات قيد التطوير النشط.
المتتبعات المتاحة#
يدعم Ultralytics YOLO خوارزميات التتبع التالية:
- BoT-SORT - استخدم
botsort.yamlلتفعيل هذا المتتبع (افتراضي) - ByteTrack - استخدم
bytetrack.yamlلتفعيل هذا المتتبع - OC-SORT - استخدم
ocsort.yamlلتفعيل هذا المتتبع - Deep OC-SORT - استخدم
deepocsort.yamlلتفعيل هذا المتتبع - FastTracker - استخدم
fasttrack.yamlلتفعيل هذا المتتبع - TrackTrack - استخدم
tracktrack.yamlلتفعيل هذا المتتبع
الاستخدام#
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)استمرار التتبع بين الإطارات#
للتتبع المستمر عبر إطارات الفيديو، يمكنك استخدام معامل persist=True:
import cv2
from ultralytics import YOLO
# Load the YOLO model
model = YOLO("yolo26n.pt")
# Open the video file
cap = cv2.VideoCapture("path/to/video.mp4")
while cap.isOpened():
success, frame = cap.read()
if success:
# Run tracking with persistence between frames
results = model.track(frame, persist=True)
# Visualize the results
annotated_frame = results[0].plot()
cv2.imshow("Tracking", annotated_frame)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
else:
break
cap.release()
cv2.destroyAllWindows()الأسئلة الشائعة#
لاستخدام تتبع الأجسام المتعددة مع Ultralytics YOLO، يمكنك البدء باستخدام أمثلة Python أو CLI المتاحة. إليك كيفية البدء:
مثالfrom ultralytics import YOLO model = YOLO("yolo26n.pt") # Load the YOLO26 model results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)تقوم هذه الأوامر بتحميل نموذج YOLO26 واستخدامه لتتبع الكائنات في مصدر الفيديو المحدد باستخدام عتبات الثقة (
conf) وIntersection over Union (iou). لمزيد من التفاصيل، راجع توثيق وضع التتبع.تقوم Ultralytics باستمرار بتحسين نماذج الذكاء الاصطناعي الخاصة بها. ميزة قادمة ستمكن من تدريب متتبعات مستقلة. حتى ذلك الحين، يستفيد نموذج كشف الكائنات المتعددة من نماذج الكشف أو التجزئة أو الوضع أو OBB المدربة مسبقاً للتتبع دون الحاجة إلى تدريب مستقل. ابق على اطلاع من خلال متابعة المدونة الخاصة بنا.
يعد Ultralytics YOLO نموذجاً متطوراً لكشف الكائنات معروفاً بأدائه في الوقت الفعلي ودقتة العالية. يوفر استخدام YOLO لتتبع الكائنات المتعددة عدة مزايا:
- التتبع في الوقت الفعلي: تحقيق تتبع فعال وعالي السرعة ومثالي للبيئات الديناميكية.
- مرونة مع النماذج المدربة مسبقاً: لا حاجة للتدريب من الصفر؛ ما عليك سوى استخدام نماذج الكشف أو التجزئة أو الوضع أو OBB المدربة مسبقاً.
- سهولة الاستخدام: تجعل تكامل واجهة برمجة التطبيقات البسيط مع كل من Python وCLI إعداد خطوط أنابيب التتبع أمراً مباشراً.
- توثيق واسع ودعم المجتمع: توفر Ultralytics توثيقاً شاملاً ومنتدى مجتمعياً نشطاً لاستكشاف الأخطاء وإصلاحها وتحسين نماذج التتبع الخاصة بك.
لمزيد من التفاصيل حول إعداد واستخدام YOLO للتتبع، تفضل بزيارة دليل استخدام التتبع الخاص بنا.
نعم، يمكنك استخدام مجموعات بيانات مخصصة لتتبع الأجسام المتعددة مع Ultralytics YOLO. على الرغم من أن دعم تدريب المتتبع المستقل هو ميزة قادمة، يمكنك بالفعل استخدام نماذج مدربة مسبقاً على مجموعات البيانات المخصصة الخاصة بك. قم بإعداد مجموعات البيانات الخاصة بك بالتنسيق المناسب المتوافق مع YOLO واتبع التوثيق لدمجها.
بعد تشغيل مهمة تتبع باستخدام Ultralytics YOLO، تتضمن النتائج نقاط بيانات مختلفة مثل معرفات الأجسام المتعقبة، ومربعات الإحاطة الخاصة بها، ودرجات الثقة. إليك نظرة عامة موجزة حول كيفية تفسير هذه النتائج:
- معرفات التتبع: يتم تعيين معرف فريد لكل جسم، مما يساعد في تتبعه عبر الإطارات.
- مربعات الإحاطة: تشير هذه إلى موقع الأجسام المتعقبة داخل الإطار.
- درجات الثقة: تعكس هذه ثقة النموذج في اكتشاف الجسم المتعقب.
للحصول على إرشادات تفصيلية حول تفسير هذه النتائج وتصورها، راجع دليل التعامل مع النتائج.
يمكنك تخصيص المتتبع عن طريق إنشاء نسخة معدلة من ملف تكوين المتتبع. قم بنسخ ملف تكوين المتتبع الموجود من ultralytics/cfg/trackers، وقم بتعديل المعاملات حسب الحاجة، وقم بتحديد هذا الملف عند تشغيل المتتبع:
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model.track(source="video.mp4", tracker="custom_tracker.yaml")