انتقل إلى المحتوى

إدارة مواقف السيارات باستخدام Ultralytics YOLOv8 🚀 🚀

ما هو نظام إدارة مواقف السيارات؟

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

مزايا نظام إدارة مواقف السيارات؟

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

تطبيقات العالم الحقيقي

نظام إدارة مواقف السيارات نظام إدارة مواقف السيارات
تحليلات مواقف السيارات باستخدام Ultralytics YOLOv8 منظر علوي لإدارة مواقف السيارات باستخدام Ultralytics YOLOv8
إدارة مواقف السيارات إيريل فيو باستخدام Ultralytics YOLOv8 إدارة مواقف السيارات عرض علوي باستخدام Ultralytics YOLOv8

سير عمل رمز نظام إدارة مواقف السيارات

اختيار النقاط

اختيار النقاط أصبح الآن سهلاً

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

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

حجم الصورة

يدعم أقصى حجم للصورة 1920 * 1080 كحد أقصى

شارح فتحات وقوف السيارات Ultralytics YOLOv8

from ultralytics import solutions

solutions.ParkingPtsSelection()
  • بعد تحديد مناطق وقوف السيارات بالمضلعات، انقر فوق save لتخزين ملف JSON مع البيانات في دليل العمل الخاص بك.

Ultralytics YOLOv8 عرض توضيحي لاختيار النقاط

Python كود إدارة مواقف السيارات

مثال على إدارة مواقف السيارات باستخدام YOLOv8

import cv2
from ultralytics import solutions

# Path to json file, that created with above point selection app
polygon_json_path = "bounding_boxes.json"

# Video capture
cap = cv2.VideoCapture("Path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"
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
video_writer = cv2.VideoWriter("parking management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Initialize parking management object
management = solutions.ParkingManagement(model_path="yolov8n.pt")

while cap.isOpened():
    ret, im0 = cap.read()
    if not ret:
        break

    json_data = management.parking_regions_extraction(polygon_json_path)
    results = management.model.track(im0, persist=True, show=False)

    if results[0].boxes.id is not None:
        boxes = results[0].boxes.xyxy.cpu().tolist()
        clss = results[0].boxes.cls.cpu().tolist()
        management.process_data(json_data, im0, boxes, clss)

    management.display_frames(im0)
    video_writer.write(im0)

cap.release()
video_writer.release()
cv2.destroyAllWindows()

الحجج الاختيارية ParkingManagement

اسم نوع افتراضي وصف
model_path str None الطريق إلى النموذج YOLOv8
txt_color tuple (0, 0, 0) مجموعة ألوان RGB للنص.
bg_color tuple (255, 255, 255) مجموعة ألوان RGB للخلفية.
occupied_region_color tuple (0, 255, 0) مجموعة ألوان RGB للمناطق المشغولة.
available_region_color tuple (0, 0, 255) مجموعة ألوان RGB للمناطق المتاحة.
margin int 10 هامش عرض النص.

الحجج model.track

اسم نوع افتراضي وصف
source im0 None الدليل المصدر للصور أو مقاطع الفيديو
persist bool False المسارات المستمرة بين الإطارات
tracker str botsort.yaml طريقة التتبع "bytetrack" أو "botsort"
conf float 0.3 عتبة الثقة
iou float 0.5 عتبة IOU
classes list None تصفية النتائج حسب الفئة ، أي الفئات = 0 ، أو الفئات = [0،2،3]
verbose bool True عرض نتائج تعقب الكائن


تم الإنشاء 2024-04-29، تم التحديث 2024-05-25
المؤلفون: جلين-جوتشر (3)، رضوان منور (3)

التعليقات