Ultralytics YOLO ile Farklı Bölgelerde Nesne Sayımı 🚀

Bölgelerde Nesne Sayımı nedir?

Object counting in regions with Ultralytics YOLO26 involves precisely determining the number of objects within specified areas using advanced computer vision. This approach is valuable for optimizing processes, enhancing security, and improving efficiency in various applications.



Watch: Object Counting in Different Regions using Ultralytics YOLO26 | Ultralytics Solutions 🚀

Bölgelerde Nesne Sayımının Avantajları

  • Hassasiyet ve Doğruluk: Gelişmiş bilgisayarlı görü ile bölgelerde nesne sayımı, manuel sayımla ilişkili hataları en aza indirerek kesin ve doğru sayımlar sağlar.
  • Verimlilik Artışı: Otomatik nesne sayımı, operasyonel verimliliği artırır, gerçek zamanlı sonuçlar sunar ve farklı uygulamalardaki süreçleri kolaylaştırır.
  • Çok Yönlülük ve Uygulama: Bölgelerde nesne sayımının çok yönlülüğü; üretim ve gözetimden trafik izlemeye kadar çeşitli alanlarda uygulanabilir olmasını sağlayarak yaygın kullanımına ve etkinliğine katkıda bulunur.

Gerçek Dünya Uygulamaları

PerakendePazar Sokakları
Ultralytics YOLO26 kullanarak Farklı Bölgede İnsan SayımıUltralytics YOLO26 kullanarak Farklı Bölgede Kalabalık Sayımı
Ultralytics YOLO26 kullanarak Farklı Bölgede İnsan SayımıUltralytics YOLO26 kullanarak Farklı Bölgede Kalabalık Sayımı

Kullanım Örnekleri

Ultralytics YOLO kullanarak bölge sayımı
 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="yolo26n.pt",  # model for counting in regions, e.g., yolo26s.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 Örnek Kodu

Ultralytics bölge sayma modülü, örnekler bölümümüzde mevcuttur. Kod özelleştirmesi için bu örneği inceleyebilir ve özel kullanım durumunuza uyacak şekilde değiştirebilirsin.

RegionCounter Bağımsız Değişkenleri

İşte RegionCounter bağımsız değişkenlerini içeren bir tablo:

ArgümanTürVarsayılanAçıklama
modelstrNoneBir Ultralytics YOLO model dosyasına giden yol.
regionlist'[(20, 400), (1260, 400)]'Sayım bölgesini tanımlayan noktalar listesi.

RegionCounter çözümü, nesne takip parametrelerinin kullanımını sağlar:

ArgümanTürVarsayılanAçıklama
trackerstr'botsort.yaml'Kullanılacak takip algoritmasını belirtir, örneğin bytetrack.yaml veya botsort.yaml.
conffloat0.1Tespitler için güven eşiğini belirler; daha düşük değerler daha fazla nesnenin takip edilmesine izin verir ancak hatalı pozitifleri içerebilir.
ioufloat0.7Çakışan tespitleri filtrelemek için Birleşim Üzerinde Kesişim (IoU) eşiğini belirler.
classeslistNoneSonuçları sınıf dizinine göre filtreler. Örneğin, classes=[0, 2, 3] sadece belirtilen sınıfları takip eder.
verboseboolTrueTakip edilen nesnelerin görsel bir çıktısını sağlayarak takip sonuçlarının görüntülenmesini kontrol eder.
devicestrNoneÇıkarım için cihazı belirtir (örneğin cpu, cuda:0 veya 0). Kullanıcıların model yürütme için CPU, belirli bir GPU veya diğer bilgi işlem cihazları arasında seçim yapmasına olanak tanır.

Ek olarak, aşağıdaki görselleştirme ayarları desteklenmektedir:

ArgümanTürVarsayılanAçıklama
showboolFalseEğer True ise, 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_widthint or NoneNoneSınırlayıcı kutuların çizgi kalınlığını belirtir. None ise, çizgi kalınlığı otomatik olarak görüntü boyutuna göre ayarlanır. Netlik için görsel özelleştirme sağlar.
show_confboolTrueEtiketle birlikte her tespit için güven puanını görüntüler. Her bir tespit için modelin kesinliği hakkında fikir verir.
show_labelsboolTrueGörsel çıktıda her tespit için etiketleri görüntüler. Tespit edilen nesnelerin anında anlaşılmasını sağlar.

SSS

Ultralytics YOLO26 kullanarak belirtilen bölgelerde nesne sayımı nedir?

Ultralytics YOLO26 ile belirtilen bölgelerde nesne sayımı, gelişmiş bilgisayarlı görü kullanarak tanımlanmış alanlardaki nesnelerin tespit edilmesini ve sayılmasını içerir. Bu hassas yöntem, üretim, gözetim ve trafik izleme gibi çeşitli uygulamalarda verimliliği ve doğruluğu artırır.

Ultralytics YOLO26 ile bölge tabanlı nesne sayma betiğini nasıl çalıştırırım?

Ultralytics YOLO26'da nesne sayımını çalıştırmak için şu adımları izle:

  1. Ultralytics deposunu klonla ve dizine git:

    git clone https://github.com/ultralytics/ultralytics
    cd ultralytics/examples/YOLOv8-Region-Counter
  2. Bölge sayma betiğini çalıştır:

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

Daha fazla seçenek için Kullanım Örnekleri bölümünü ziyaret et.

Neden bölgelerde nesne sayımı için Ultralytics YOLO26 kullanmalıyım?

Bölgelerde nesne sayımı için Ultralytics YOLO26 kullanmak çeşitli avantajlar sunar:

  1. Gerçek Zamanlı İşleme: YOLO26'nın mimarisi hızlı çıkarım yapılmasını sağlar, bu da onu anlık sayım sonuçları gerektiren uygulamalar için ideal hale getirir.
  2. Esnek Bölge Tanımı: Çözüm, özel izleme ihtiyaçlarınıza uyacak şekilde birden fazla özel bölgeyi çokgenler, dikdörtgenler veya çizgiler olarak tanımlamanıza olanak tanır.
  3. Çoklu Sınıf Desteği: Aynı bölgeler içindeki farklı nesne türlerini eş zamanlı olarak sayarak kapsamlı analizler sağlar.
  4. Entegrasyon Yetenekleri: Ultralytics Python API veya komut satırı arayüzü aracılığıyla mevcut sistemlerle kolayca entegre ol.

Daha derin avantajları Avantajlar bölümünde keşfet.

Bölgelerde nesne sayımının bazı gerçek dünya uygulamaları nelerdir?

Ultralytics YOLO26 ile nesne sayımı, birçok gerçek dünya senaryosunda uygulanabilir:

  • Perakende Analitiği: Yerleşimi ve personel görevlendirmesini optimize etmek için farklı mağaza bölümlerindeki müşterileri say.
  • Trafik Yönetimi: Belirli yol bölümlerindeki veya kavşaklardaki araç akışını izle.
  • Üretim: Farklı üretim bölgelerinde hareket eden ürünleri takip et.
  • Depo Operasyonları: Belirlenen depolama alanlarındaki envanter kalemlerini say.
  • Kamu Güvenliği: Etkinlikler sırasında belirli bölgelerdeki kalabalık yoğunluğunu izle.

Daha fazla örneği Gerçek Dünya Uygulamaları bölümünde ve ek bölge tabanlı izleme yetenekleri için TrackZone çözümünde keşfet.

Yorumlar