Meet YOLO26: next-gen vision AI.

Link to this sectionمشروع نظام إنذار أمني باستخدام Ultralytics YOLO26#

AI-powered security alarm system with object detection

يدمج مشروع نظام الإنذار الأمني باستخدام Ultralytics YOLO26 قدرات متقدمة في رؤية الحاسوب لتعزيز تدابير الأمن. يوفر YOLO26، الذي طورته Ultralytics، اكتشاف كائنات في الوقت الفعلي، مما يسمح للنظام بتحديد التهديدات الأمنية المحتملة والاستجابة لها بسرعة. يقدم هذا المشروع العديد من المزايا:

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


Watch: Security Alarm System with Ultralytics YOLO26 + Solutions Object Detection

Link to this sectionإرسال تنبيهات أمنية باستخدام YOLO26#

يقوم حل SecurityAlarm بتتبع الكائنات في بث الفيديو الخاص بك ويرسل تنبيهًا واحدًا عبر البريد الإلكتروني مرفقًا بصورة مشروحة بمجرد وصول عدد الاكتشافات إلى الحد الأدنى المحدد في records. قم بمصادقة حساب Gmail باستخدام كلمة مرور التطبيق، ثم قم بتشغيل الحل على المصدر الخاص بك.

ملاحظة

إنشاء كلمة مرور التطبيق ضروري

  • انتقل إلى مولد كلمات مرور التطبيق، وقم بتعيين اسم للتطبيق مثل "security project"، واحصل على كلمة مرور مكونة من 16 رقمًا. انسخ هذه الكلمة وألصقها في حقل password المحدد في الكود أدناه.
نظام إنذار أمني باستخدام Ultralytics YOLO
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("security_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

from_email = "abc@gmail.com"  # the sender email address
password = "---- ---- ---- ----"  # 16-digits password generated via: https://myaccount.google.com/apppasswords
to_email = "xyz@gmail.com"  # the receiver email address

# Initialize security alarm object
securityalarm = solutions.SecurityAlarm(
    show=True,  # display the output
    model="yolo26n.pt",  # e.g., yolo26s.pt, yolo26m.pt
    records=1,  # total detections count to send an email
)

securityalarm.authenticate(from_email, password, to_email)  # authenticate the email server

# 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 = securityalarm(im0)

    # print(results)  # access the output

    video_writer.write(results.plot_im)  # write the processed frame.

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

عند تشغيل الكود، ستتلقى إشعارًا واحدًا عبر البريد الإلكتروني في حال اكتشاف أي كائن. يتم إرسال الإشعار فورًا، وليس بشكل متكرر. يمكنك تخصيص الكود ليتناسب مع متطلبات مشروعك.

Link to this sectionنموذج بريد إلكتروني مستلم#

Security alert email notification example

Link to this sectionوسائط SecurityAlarm#

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

الوسيطالنوعالافتراضيالوصف
modelstrNoneالمسار إلى ملف نموذج Ultralytics YOLO.
recordsint5إجمالي عدد الاكتشافات لإطلاق رسالة بريد إلكتروني مع نظام الإنذار الأمني.

يدعم حل SecurityAlarm مجموعة متنوعة من وسائط track:

الوسيطالنوعالافتراضيالوصف
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كيف يعمل#

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

يستفيد النظام من فئة SecurityAlarm التي توفر طرقًا لـ:

  1. معالجة الإطارات واستخراج اكتشافات الكائنات
  2. تعليق الإطارات بصناديق إحاطة (BBox) حول الكائنات المكتشفة
  3. إرسال إشعارات عبر البريد الإلكتروني عند تجاوز عتبات الاكتشاف

هذا التنفيذ مثالي للأمن المنزلي، ومراقبة التجزئة، وتطبيقات المراقبة الأخرى حيث يكون الإشعار الفوري بالكائنات المكتشفة أمرًا بالغ الأهمية.

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

Link to this sectionكيف يحسن Ultralytics YOLO26 دقة نظام الإنذار الأمني؟#

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

Link to this sectionهل يمكنني دمج Ultralytics YOLO26 مع بنيتي التحتية الأمنية الحالية؟#

نعم، يمكن دمج Ultralytics YOLO26 بسلاسة مع بنيتك التحتية الأمنية الحالية. يدعم النظام أوضاعًا متنوعة ويوفر مرونة في التخصيص، مما يسمح لك بتعزيز إعداداتك الحالية بقدرات متقدمة لاكتشاف الكائنات. للحصول على تعليمات مفصلة حول دمج YOLO26 في مشاريعك، تفضل بزيارة قسم التكامل.

Link to this sectionما هي متطلبات التخزين لتشغيل Ultralytics YOLO26؟#

يتطلب تشغيل Ultralytics YOLO26 على إعداد قياسي عادةً حوالي 5 جيجابايت من مساحة القرص الفارغة. يتضمن ذلك مساحة لتخزين نموذج YOLO26 وأي تبعيات إضافية. بالنسبة للحلول القائمة على السحابة، توفر منصة Ultralytics إدارة فعالة للمشاريع والتعامل مع مجموعات البيانات، مما يمكن أن يحسن احتياجات التخزين. تعرف على المزيد حول خطة Pro للحصول على ميزات محسنة تشمل سعة تخزين موسعة.

Link to this sectionما الذي يجعل Ultralytics YOLO26 مختلفًا عن نماذج اكتشاف الكائنات الأخرى مثل Faster R-CNN أو SSD؟#

يوفر Ultralytics YOLO26 ميزة على نماذج مثل Faster R-CNN أو SSD بفضل قدراته على الاكتشاف في الوقت الفعلي ودقته العالية. تسمح بنيته الفريدة بمعالجة الصور بشكل أسرع بكثير دون المساومة على الدقة، مما يجعله مثاليًا للتطبيقات الحساسة للوقت مثل أنظمة الإنذار الأمني. لإجراء مقارنة شاملة لنماذج اكتشاف الكائنات، يمكنك استكشاف دليلنا.

Link to this sectionكيف يمكنني تقليل وتيرة الإنذارات الكاذبة في نظامي الأمني باستخدام Ultralytics YOLO26؟#

لتقليل النتائج الإيجابية الكاذبة، تأكد من تدريب نموذج Ultralytics YOLO26 الخاص بك بشكل كافٍ باستخدام مجموعة بيانات متنوعة ومصنفة بشكل جيد. يمكن أن يؤدي ضبط المعلمات الفائقة (hyperparameters) وتحديث النموذج بانتظام ببيانات جديدة إلى تحسين دقة الكشف بشكل كبير. يمكن العثور على تقنيات مفصلة حول ضبط المعلمات الفائقة في دليل ضبط المعلمات الفائقة الخاص بنا.

التعليقات