تخطي إلى المحتوى

إحصاء الكائنات في مناطق مختلفة باستخدام Ultralytics YOLO 🚀 🚀

ما هو عد الكائنات في المناطق؟

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



شاهد: عدّ الكائنات في مناطق مختلفة باستخدام Ultralytics YOLO11 | | Ultralytics الحلول 🚀

مزايا عد الكائنات في المناطق؟

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

التطبيقات الواقعية

البيع بالتجزئة شوارع السوق
عد الأشخاص في مناطق مختلفة باستخدام Ultralytics YOLO11 عدّ الحشود في مناطق مختلفة باستخدام Ultralytics YOLO11
عد الأشخاص في مناطق مختلفة باستخدام Ultralytics YOLO11 عدّ الحشود في مناطق مختلفة باستخدام Ultralytics YOLO11

عدّ المناطق باستخدام Ultralytics YOLO

import cv2

from ultralytics import solutions

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

# Pass region as list
# region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

# Pass region as dictionary
region_points = {
    "region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
    "region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
}

# 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("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Initialize region counter object
regioncounter = solutions.RegionCounter(
    show=True,  # display the frame
    region=region_points,  # pass region points
    model="yolo11n.pt",  # model for counting in regions i.e yolo11s.pt
)

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

    if not success:
        print("Video frame is empty or processing is complete.")
        break

    results = regioncounter(im0)

    # print(results)  # access the output

    video_writer.write(results.plot_im)

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

Ultralytics مثال على الرمز

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

RegionCounter الحجج

إليك الجدول الذي يحتوي على RegionCounter الحجج

الجدال النوع افتراضي الوصف
model str None المسار إلى ملف نموذج Ultralytics YOLO Model File.
region list [(20, 400), (1260, 400)] قائمة النقاط التي تحدد منطقة العد.

إن RegionCounter يتيح الحل استخدام معلمات تتبع الكائنات:

الجدال النوع افتراضي الوصف
tracker str 'botsort.yaml' يحدد خوارزمية التتبع المراد استخدامها، على سبيل المثال, bytetrack.yaml أو botsort.yaml.
conf float 0.3 تعيين عتبة الثقة للاكتشافات؛ تسمح القيم المنخفضة بتتبع المزيد من الكائنات ولكنها قد تتضمن نتائج إيجابية كاذبة.
iou float 0.5 يضبط عتبة التقاطع على الاتحاد (IoU) لتصفية الاكتشافات المتداخلة.
classes list None تصفية النتائج حسب فهرس الفئة. على سبيل المثال, classes=[0, 2, 3] يتتبع الفئات المحددة فقط.
verbose bool True يتحكم في عرض نتائج التتبع، مما يوفر إخراجًا مرئيًا للأجسام المتعقبة.
device str None يحدد جهاز الاستدلال (على سبيل المثال, cpu, cuda:0 أو 0). يسمح للمستخدمين بالاختيار بين CPU ، أو جهاز GPU معين، أو أجهزة حوسبة أخرى لتنفيذ النموذج.

بالإضافة إلى ذلك، يتم دعم إعدادات التصور التالية:

الجدال النوع افتراضي الوصف
show bool False إذا كان Trueيعرض الصور أو مقاطع الفيديو المشروحة في نافذة. مفيد للتعليقات المرئية الفورية أثناء التطوير أو الاختبار.
line_width None or int None يحدد عرض خط المربعات المحدودة. إذا كان None، يتم ضبط عرض الخط تلقائيًا بناءً على حجم الصورة. يوفر تخصيصاً مرئياً للوضوح.

الأسئلة الشائعة

ما هو عد الكائنات في مناطق محددة باستخدام Ultralytics YOLO11 ؟

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

كيف أقوم بتشغيل البرنامج النصي لحساب عدد الكائنات القائمة على المنطقة باستخدام Ultralytics YOLO11 ؟

اتبع هذه الخطوات لتشغيل عد الكائنات في Ultralytics YOLO11 :

  1. استنسخ المستودع Ultralytics وانتقل إلى الدليل:

    git clone https://github.com/ultralytics/ultralytics
    cd ultralytics/examples/YOLOv8-Region-Counter
    
  2. تنفيذ البرنامج النصي لحساب المنطقة:

    python yolov8_region_counter.py --source "path/to/video.mp4" --save-img
    

للمزيد من الخيارات، قم بزيارة قسم عد مناطق التشغيل.

لماذا يجب استخدام Ultralytics YOLO11 لعد الكائنات في المناطق؟

يوفر استخدام Ultralytics YOLO11 لعد الكائنات في المناطق العديد من المزايا:

  1. المعالجة في الوقت الحقيقي: تُتيح بنية YOLO11 إمكانية الاستدلال السريع، مما يجعلها مثالية للتطبيقات التي تتطلب نتائج عد فورية.
  2. تعريف مرن للمناطق: يسمح لك الحل بتحديد مناطق مخصصة متعددة كمضلعات أو مستطيلات أو خطوط مخصصة لتناسب احتياجات المراقبة الخاصة بك.
  3. دعم متعدد الفئات: عد أنواع الكائنات المختلفة في نفس الوقت داخل نفس المناطق، مما يوفر تحليلات شاملة.
  4. قدرات التكامل: التكامل بسهولة مع الأنظمة الحالية من خلال واجهة برمجة تطبيقات Ultralytics Python أو واجهة سطر الأوامر.

استكشف مزايا أعمق في قسم المزايا.

ما هي بعض التطبيقات الواقعية لعد الكائنات في المناطق؟

يمكن تطبيق عد الكائنات باستخدام Ultralytics YOLO11 على العديد من سيناريوهات العالم الحقيقي:

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

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

📅 تم إنشاؤها منذ 1 سنة مضت ✏️ تم التحديث منذ 5 أيام

التعليقات