Meet YOLO26: next-gen vision AI.

Link to this sectionVisionEye تعيين الكائنات باستخدام Ultralytics YOLO26 🚀#

Link to this sectionما هو تعيين الكائنات باستخدام VisionEye؟#

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

VisionEye object mapping with YOLO tracking

Link to this sectionتعيين الكائنات باستخدام YOLO26#

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

تعيين VisionEye باستخدام Ultralytics YOLO
# Monitor objects position with visioneye
yolo solutions visioneye show=True

# Pass a source video
yolo solutions visioneye source="path/to/video.mp4"

# Monitor the specific classes
yolo solutions visioneye classes="[0, 5]"

Link to this sectionوسائط VisionEye#

إليك جدول يحتوي على وسائط VisionEye:

الوسيطالنوعالافتراضيالوصف
modelstrNoneالمسار إلى ملف نموذج Ultralytics YOLO.
vision_pointtuple[int, int](20, 20)النقطة التي ستتتبع فيها الرؤية الكائنات وترسم المسارات باستخدام حل VisionEye.

يمكنك أيضاً استخدام وسائط track متنوعة ضمن حل VisionEye:

الوسيطالنوعالافتراضيالوصف
trackerstr'botsort.yaml'يحدد خوارزمية التتبع المطلوب استخدامها. الخيارات المدمجة هي: botsort.yaml و bytetrack.yaml و ocsort.yaml و deepocsort.yaml و fasttrack.yaml و tracktrack.yaml.
conffloat0.1يضبط عتبة الثقة للاكتشافات؛ تسمح القيم المنخفضة بتتبع المزيد من الكائنات ولكنها قد تتضمن إيجابيات كاذبة.
ioufloat0.7يضبط عتبة تقاطع الاتحاد (IoU) لتصفية الاكتشافات المتداخلة.
classeslistNoneيصفي النتائج حسب فهرس الفئة. على سبيل المثال، classes=[0, 2, 3] يتتبع الفئات المحددة فقط.
verboseboolTrueيتحكم في عرض نتائج التتبع، مما يوفر مخرجاً مرئياً للكائنات المتعقبة.
devicestrNoneيحدد الجهاز للاستدلال (على سبيل المثال، cpu أو cuda:0 أو 0). يسمح للمستخدمين بالاختيار بين وحدة المعالجة المركزية، أو وحدة معالجة رسومات محددة، أو أجهزة حوسبة أخرى لتنفيذ النموذج.

علاوة على ذلك، يتم دعم بعض وسائط التصور كما هو موضح أدناه:

الوسيطالنوعالافتراضيالوصف
showboolFalseإذا كان True، فإنه يعرض الصور أو مقاطع الفيديو المشروحة في نافذة. مفيد للحصول على ملاحظات مرئية فورية أثناء التطوير أو الاختبار.
line_widthint or NoneNoneيحدد عرض خط صناديق التحديد. إذا كان None، يتم تعديل عرض الخط تلقائياً بناءً على حجم الصورة. يوفر تخصيصاً مرئياً للوضوح.
show_confboolTrueيعرض درجة الثقة لكل اكتشاف بجانب التصنيف. يوفر رؤية حول مدى يقين النموذج في كل اكتشاف.
show_labelsboolTrueيعرض تصنيفات كل اكتشاف في المخرجات المرئية. يوفر فهماً فورياً للكائنات المكتشفة.

Link to this sectionكيف يعمل VisionEye#

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

تقوم طريقة process في فئة VisionEye بعدة عمليات رئيسية:

  1. استخراج المسارات (صناديق التحديد، والفئات، والأقنعة) من الصورة المدخلة
  2. إنشاء أداة تعليق توضيحي لرسم صناديق التحديد والتسميات
  3. لكل كائن مكتشف، يتم رسم تسمية صندوق وإنشاء خط رؤية من نقطة الرؤية
  4. إرجاع الصورة المعلقة مع إحصائيات التتبع

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

Link to this sectionتطبيقات VisionEye#

يحتوي تعيين الكائنات باستخدام VisionEye على العديد من التطبيقات العملية عبر مختلف الصناعات:

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

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

Link to this sectionالأسئلة الشائعة#

Link to this sectionكيف أبدأ استخدام تعيين الكائنات VisionEye مع Ultralytics YOLO26؟#

لبدء استخدام تعيين الكائنات VisionEye مع Ultralytics YOLO26، تحتاج أولاً إلى تثبيت حزمة Ultralytics YOLO عبر pip. بعد ذلك، يمكنك استخدام نموذج الكود المقدم في الوثائق لإعداد اكتشاف الكائنات مع VisionEye. إليك مثال بسيط للبدء:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

# Video writer
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("vision-eye-mapping.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Init vision eye object
visioneye = solutions.VisionEye(
    show=True,  # display the output
    model="yolo26n.pt",  # use any model that Ultralytics supports, e.g., YOLOv10
    classes=[0, 2],  # generate visioneye view for specific classes
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()

    if not success:
        print("Video frame is empty or video processing has been successfully completed.")
        break

    results = visioneye(im0)

    print(results)  # access the output

    video_writer.write(results.plot_im)  # write the video file

cap.release()
video_writer.release()
cv2.destroyAllWindows()  # destroy all opened windows

Link to this sectionلماذا يجب أن أستخدم Ultralytics YOLO26 لتعيين وتتبع الكائنات؟#

يُعرف Ultralytics YOLO26 بسرعته ودقه وسهولة تكامله، مما يجعله خياراً أول لتعيين وتتبع الكائنات. تشمل المزايا الرئيسية ما يلي:

  1. أداء متطور: يوفر دقة عالية في اكتشاف الكائنات في الوقت الفعلي.
  2. المرونة: يدعم مهام متنوعة مثل الاكتشاف والتتبع وحساب المسافة.
  3. المجتمع والدعم: وثائق شاملة ومجتمع GitHub نشط لاستكشاف الأخطاء وإصلاحها والتحسينات.
  4. سهولة الاستخدام: واجهة API بديهية تبسط المهام المعقدة، مما يسمح بالنشر والتكرار السريع.

لمزيد من المعلومات حول التطبيقات والفوائد، راجع توثيق Ultralytics YOLO26.

Link to this sectionكيف يمكنني دمج VisionEye مع أدوات تعلم الآلة الأخرى مثل Comet أو ClearML؟#

يمكن لـ Ultralytics YOLO26 التكامل بسلاسة مع العديد من أدوات تعلم الآلة مثل Comet و ClearML، مما يعزز تتبع التجارب والتعاون وقابلية التكرار. اتبع الأدلة التفصيلية حول كيفية استخدام YOLOv5 مع Comet و دمج YOLO26 مع ClearML للبدء.

لمزيد من الاستكشاف وأمثلة التكامل، تحقق من دليل تكاملات Ultralytics.

التعليقات