İçeriğe geç

Ultralytics YOLO11 Kullanarak Güvenlik Alarm Sistemi Projesi

Güvenlik Alarm Sistemi

Ultralytics YOLO11 kullanan Güvenlik Alarm Sistemi Projesi, güvenlik önlemlerini artırmak için gelişmiş bilgisayar görüşü yeteneklerini entegre eder. Ultralytics tarafından geliştirilen YOLO11, gerçek zamanlı nesne algılama sağlayarak sistemin potansiyel güvenlik tehditlerini derhal tanımlamasını ve bunlara yanıt vermesini sağlar. Bu proje çeşitli avantajlar sunar:

  • Gerçek Zamanlı Algılama: YOLO11'in verimliliği, Güvenlik Alarm Sisteminin güvenlik olaylarını gerçek zamanlı olarak algılamasını ve bunlara yanıt vermesini sağlayarak yanıt süresini en aza indirir.
  • Doğruluk: YOLO11, nesne algılamadaki doğruluğu ile bilinir, yanlış pozitifleri azaltır ve güvenlik alarm sisteminin güvenilirliğini artırır.
  • Entegrasyon Yetenekleri: Proje, mevcut güvenlik altyapısıyla sorunsuz bir şekilde entegre edilebilir ve yükseltilmiş bir akıllı gözetim katmanı sağlar.



İzle: Ultralytics YOLO11 + Çözümleri ile Güvenlik Alarm Sistemi Nesne Algılama

Not

Uygulama Şifresi Oluşturma gereklidir

  • Şuraya gidin: Uygulama Parola Oluşturucu, "güvenlik projesi" gibi bir uygulama adı belirtin ve 16 haneli bir şifre alın. Bu şifreyi kopyalayın ve belirtilen yere yapıştırın password aşağıdaki kodda alan.

Ultralytics YOLO Kullanarak Güvenlik Alarm Sistemi

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="yolo11n.pt",  # i.e. yolo11s.pt, yolo11m.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

İşte bu kadar! Kodu çalıştırdığınızda, herhangi bir nesne algılanırsa e-postanıza tek bir bildirim alırsınız. Bildirim tekrar tekrar değil, hemen gönderilir. Ancak, proje gereksinimlerinize uyacak şekilde kodu özelleştirmekten çekinmeyin.

Alınan E-posta Örneği

Alınan E-posta Örneği

SecurityAlarm Argümanlar

İşte şunları içeren bir tablo: SecurityAlarm argümanlar:

Argüman Tür Varsayılan Açıklama
model str None Ultralytics YOLO Model Dosyasına Giden Yol.
records int 5 Güvenlik alarm sistemiyle bir e-posta tetiklemek için toplam tespit sayısı.

SecurityAlarm çözümü çeşitli şeyleri destekler track parametreler:

Argüman Tür Varsayılan Açıklama
tracker str 'botsort.yaml' Kullanılacak izleme algoritmasını belirtir, örneğin: bytetrack.yaml veya botsort.yaml.
conf float 0.3 Algılamalar için güven eşiğini ayarlar; daha düşük değerler daha fazla nesnenin izlenmesine olanak tanır ancak yanlış pozitifleri içerebilir.
iou float 0.5 Çakışan algılamaları filtrelemek için Intersection over Union (IoU) eşiğini ayarlar.
classes list None Sonuçları sınıf indeksine göre filtreler. Örneğin, classes=[0, 2, 3] yalnızca belirtilen sınıfları izler.
verbose bool True İzleme sonuçlarının görüntülenmesini kontrol eder ve izlenen nesnelerin görsel bir çıktısını sağlar.
device str None Çıkarım için cihazı belirtir (örn. cpu, cuda:0 veya 0). Kullanıcıların model yürütme için CPU, belirli bir GPU veya diğer işlem cihazları arasında seçim yapmasına olanak tanır.

Ayrıca, aşağıdaki görselleştirme ayarları mevcuttur:

Argüman Tür Varsayılan Açıklama
show bool False Eğer True, ek açıklamalı görüntüleri veya videoları bir pencerede görüntüler. Geliştirme veya test sırasında anında görsel geri bildirim için kullanışlıdır.
line_width None or int None Sınırlayıcı kutuların çizgi genişliğini belirtir. Eğer None, çizgi genişliği, görüntü boyutuna göre otomatik olarak ayarlanır. Netlik için görsel özelleştirme sağlar.
show_conf bool True Etiketin yanında her algılama için güvenilirlik puanını görüntüler. Modelin her algılama için kesinliği hakkında fikir verir.
show_labels bool True Görsel çıktıdaki her algılama için etiketleri görüntüler. Algılanan nesnelerin anında anlaşılmasını sağlar.

Nasıl Çalışır

Güvenlik Alarm Sistemi şunu kullanır: nesne takibi video akışlarını izlemek ve olası güvenlik tehditlerini tespit etmek için. Sistem, belirtilen eşiği aşan nesneleri algıladığında (tarafından ayarlanan records parametresi) ile algılanan nesneleri gösteren bir resim eki içeren bir e-posta bildirimi otomatik olarak gönderir.

Sistem, şu yöntemleri sağlayan SecurityAlarm sınıfını kullanır:

  1. Çerçeveleri işleyin ve nesne tespitlerini çıkarın
  2. Algılanan nesnelerin etrafındaki sınırlayıcı kutularla çerçeveleri açıklayın
  3. Algılama eşikleri aşıldığında e-posta bildirimleri gönder

Bu uygulama, tespit edilen nesnelerin anında bildirilmesinin kritik olduğu ev güvenliği, perakende gözetimi ve diğer izleme uygulamaları için idealdir.

SSS

Ultralytics YOLO11 bir güvenlik alarm sisteminin doğruluğunu nasıl artırır?

Ultralytics YOLO11, yüksek doğruluklu, gerçek zamanlı nesne algılama sağlayarak güvenlik alarm sistemlerini geliştirir. Gelişmiş algoritmaları, yanlış pozitifleri önemli ölçüde azaltarak sistemin yalnızca gerçek tehditlere yanıt vermesini sağlar. Bu artan güvenilirlik, mevcut güvenlik altyapısıyla sorunsuz bir şekilde entegre edilebilir ve genel gözetim kalitesini yükseltir.

Ultralytics YOLO11'i mevcut güvenlik altyapımla entegre edebilir miyim?

Evet, Ultralytics YOLO11 mevcut güvenlik altyapınızla sorunsuz bir şekilde entegre edilebilir. Sistem çeşitli modları destekler ve özelleştirme için esneklik sağlayarak mevcut kurulumunuzu gelişmiş nesne algılama yetenekleriyle geliştirmenize olanak tanır. YOLO11'i projelerinize entegre etme hakkında ayrıntılı talimatlar için entegrasyon bölümünü ziyaret edin.

Ultralytics YOLO11 çalıştırmak için gereken depolama alanı nedir?

Standart bir kurulumda Ultralytics YOLO11 çalıştırmak genellikle yaklaşık 5 GB boş disk alanı gerektirir. Bu, YOLO11 modelini ve ek bağımlılıkları depolama alanını içerir. Bulut tabanlı çözümler için Ultralytics HUB, depolama ihtiyaçlarını optimize edebilecek verimli proje yönetimi ve veri kümesi işleme olanağı sunar. Genişletilmiş depolama da dahil olmak üzere gelişmiş özellikler için Pro Plan hakkında daha fazla bilgi edinin.

Ultralytics YOLO11'i Faster R-CNN veya SSD gibi diğer nesne algılama modellerinden farklı kılan nedir?

Ultralytics YOLO11, gerçek zamanlı algılama yetenekleri ve daha yüksek doğruluğu ile Faster R-CNN veya SSD gibi modellere göre bir adım öne çıkar. Benzersiz mimarisi, hassasiyetten ödün vermeden görüntüleri çok daha hızlı işlemesini sağlar, bu da onu güvenlik alarm sistemleri gibi zamana duyarlı uygulamalar için ideal hale getirir. Nesne algılama modellerinin kapsamlı bir karşılaştırması için kılavuzumuzu inceleyebilirsiniz.

Ultralytics YOLO11 kullanarak güvenlik sistemimdeki yanlış pozitiflerin sıklığını nasıl azaltabilirim?

Yanlış pozitifleri azaltmak için, Ultralytics YOLO11 modelinizin çeşitli ve iyi açıklanmış bir veri kümesiyle yeterince eğitildiğinden emin olun. Hiperparametreleri ince ayar yapmak ve modeli düzenli olarak yeni verilerle güncellemek, algılama doğruluğunu önemli ölçüde artırabilir. Ayrıntılı hiperparametre ayarlama teknikleri, hiperparametre ayarlama kılavuzumuzda bulunabilir.



📅 1 yıl önce oluşturuldu ✏️ 2 ay önce güncellendi

Yorumlar