Ultralytics YOLO Kullanarak Farklı Bölgelerdeki Nesneleri Sayma 🚀
Bölgelerde Nesne Sayımı nedir?
Ultralytics YOLO11 ile bölgelerdeki Nesne sayımı, gelişmiş bilgisayar görüşü kullanılarak belirtilen alanlardaki nesne sayısının tam olarak belirlenmesini içerir. Bu yaklaşım, çeşitli uygulamalarda süreçleri optimize etmek, güvenliği artırmak ve verimliliği artırmak için değerlidir.
İzle: Ultralytics YOLO11 ile Farklı Bölgelerdeki Nesneleri Sayma | Ultralytics Çözümleri 🚀
Bölgelerdeki Nesne Sayımının Avantajları Nelerdir?
- Kesinlik ve Doğruluk: Gelişmiş bilgisayar görüşüne sahip bölgelerdeki nesne sayımı, genellikle 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 sağlar ve farklı uygulamalardaki süreçleri kolaylaştırır.
- Çok Yönlülük ve Uygulama: Bölgelerdeki nesne sayımının çok yönlülüğü, üretim ve gözetimden trafik izlemeye kadar çeşitli alanlarda uygulanabilir olmasını sağlar ve yaygın kullanışlılığına ve etkinliğine katkıda bulunur.
Gerçek Dünya Uygulamaları
Perakende | Pazar Caddeleri |
---|---|
![]() |
![]() |
Ultralytics YOLO11 Kullanarak Farklı Bölgelerde İnsan Sayımı | Ultralytics YOLO11 Kullanarak Farklı Bölgelerde 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="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 Ö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ştirebilirsiniz.
RegionCounter
Argümanlar
İşte şunları içeren bir tablo: RegionCounter
argümanlar:
Argüman | Tür | Varsayılan | Açıklama |
---|---|---|---|
model |
str |
None |
Ultralytics YOLO Model Dosyasına Giden Yol. |
region |
list |
'[(20, 400), (1260, 400)]' |
Sayma bölgesini tanımlayan nokta listesi. |
RegionCounter
çözümü, nesne izleme parametrelerinin kullanımını sağlar:
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. |
Ek olarak, aşağıdaki görselleştirme ayarları desteklenir:
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. |
SSS
Ultralytics YOLO11 kullanılarak belirtilen bölgelerde nesne sayımı nedir?
Ultralytics YOLO11 ile belirtilen bölgelerdeki nesneleri sayma, gelişmiş bilgisayar görüşü kullanarak tanımlanan alanlardaki nesnelerin sayısını tespit etmeyi ve saymayı 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 YOLO11 ile bölge tabanlı nesne sayma komut dosyasını nasıl çalıştırırım?
Ultralytics YOLO11'de nesne sayımını çalıştırmak için şu adımları izleyin:
-
Ultralytics deposunu klonlayın ve dizine gidin:
git clone https://github.com/ultralytics/ultralytics cd ultralytics/examples/YOLOv8-Region-Counter
-
Bölge sayma komut dosyasını yürütün:
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 edin.
Bölgelerdeki nesne sayımı için neden Ultralytics YOLO11 kullanmalıyım?
Bölgelerdeki nesneleri saymak için Ultralytics YOLO11 kullanmak çeşitli avantajlar sunar:
- Gerçek zamanlı İşleme: YOLO11'in mimarisi hızlı çıkarımı mümkün kılarak anında sayım sonuçları gerektiren uygulamalar için ideal hale getirir.
- Esnek Bölge Tanımlama: Çözüm, özel izleme ihtiyaçlarınıza uyacak şekilde birden çok özel bölgeyi çokgen, dikdörtgen veya çizgi olarak tanımlamanıza olanak tanır.
- Çok Sınıflı Destek: Aynı bölgelerdeki farklı nesne türlerini aynı anda sayarak kapsamlı analizler sağlar.
- Entegrasyon Yetenekleri: Ultralytics python API'si veya komut satırı arayüzü aracılığıyla mevcut sistemlerle kolayca entegre edin.
Avantajlar bölümünde daha derin faydaları keşfedin.
Bölgelerdeki nesne sayımının bazı gerçek dünya uygulamaları nelerdir?
Ultralytics YOLO11 ile nesne sayma, çok sayıda gerçek dünya senaryosuna uygulanabilir:
- Perakende Analitiği: Mağaza yerleşimini ve personel sayısını optimize etmek için farklı mağaza bölümlerindeki müşterileri sayın.
- Trafik Yönetimi: Belirli yol bölümlerinde veya kavşaklarda araç akışını izleyin.
- Üretim: Farklı üretim bölgelerinde hareket eden ürünleri takip edin.
- Depo Operasyonları: Belirlenmiş depolama alanlarındaki envanter öğelerini sayın.
- Halk Güvenliği: Etkinlikler sırasında belirli bölgelerdeki kalabalık yoğunluğunu izleyin.
Gerçek Dünya Uygulamaları bölümünde ve ek alan tabanlı izleme yetenekleri için TrackZone çözümünde daha fazla örnek keşfedin.