Link to this sectionYOLOv4: Yüksek Hızlı ve Hassas Nesne Algılama#
2020 yılında Alexey Bochkovskiy tarafından https://github.com/AlexeyAB/darknet adresinde yayınlanan, son teknoloji ürünü ve gerçek zamanlı bir nesne dedektörü olan YOLOv4 için hazırlanan Ultralytics dokümantasyon sayfasına hoş geldin. YOLOv4, hız ve doğruluk arasında en iyi dengeyi sağlayacak şekilde tasarlanmıştır; bu da onu birçok uygulama için mükemmel bir seçenek haline getirir.
YOLOv4 mimari şeması. Backbone (omurga), neck (boyun) ve head (baş) bileşenleri ile en iyi gerçek zamanlı nesne algılama için birbirine bağlı katmanları dahil olmak üzere YOLOv4'ün karmaşık ağ tasarımını gösterir.
Link to this sectionGiriş#
YOLOv4, You Only Look Once version 4'ün kısaltmasıdır. YOLOv3 gibi önceki YOLO sürümlerinin ve diğer nesne algılama modellerinin sınırlamalarını gidermek için geliştirilmiş gerçek zamanlı bir nesne algılama modelidir. Diğer konvolüsyonel sinir ağı (CNN) tabanlı nesne dedektörlerinin aksine YOLOv4, yalnızca öneri sistemleri için değil, aynı zamanda bağımsız süreç yönetimi ve insan girdisinin azaltılması için de uygulanabilir. Geleneksel grafik işlem birimleri (GPU) üzerindeki çalışması, uygun maliyetle kitlesel kullanıma olanak tanır ve geleneksel bir GPU üzerinde gerçek zamanlı olarak çalışacak, eğitim için ise yalnızca tek bir GPU gerektirecek şekilde tasarlanmıştır.
Link to this sectionMimari#
YOLOv4, performansını optimize etmek için birlikte çalışan birçok yenilikçi özellikten yararlanır. Bunlar arasında Ağırlıklı-Artık-Bağlantılar (WRC), Çapraz-Aşama-Kısmi-bağlantılar (CSP), Çapraz mini-Toplu Normalizasyon (CmBN), Kendi kendine çekişmeli-eğitim (SAT), Mish-aktivasyonu, Mosaic veri artırma, DropBlock düzenlileştirme ve CIoU kaybı yer alır. Bu özellikler, son teknoloji sonuçlar elde etmek için bir araya getirilmiştir.
Tipik bir nesne dedektörü giriş, backbone, boyun (neck) ve baş (head) dahil olmak üzere çeşitli kısımlardan oluşur. YOLOv4'ün backbone'u ImageNet üzerinde önceden eğitilmiştir ve nesnelerin sınıflarını ve bounding boxes tahmin etmek için kullanılır. Backbone; VGG, ResNet, ResNeXt veya DenseNet gibi çeşitli modellerden olabilir. Dedektörün boyun kısmı, farklı aşamalardan feature maps toplamak için kullanılır ve genellikle birkaç aşağıdan yukarıya ve yukarıdan aşağıya yol içerir. Baş kısmı ise nihai nesne tespitlerini ve sınıflandırmalarını yapmak için kullanılan kısımdır.
Link to this sectionÜcretsiz Araçlar Çantası (Bag of Freebies)#
YOLOv4 ayrıca, çıkarım maliyetini artırmadan eğitim sırasında modelin doğruluğunu artıran teknikler olan "bag of freebies" (ücretsiz araçlar çantası) olarak bilinen yöntemlerden de yararlanır. Veri artırma, nesne algılamada kullanılan yaygın bir bag of freebies tekniğidir ve modelin dayanıklılığını artırmak için giriş görüntülerinin çeşitliliğini artırır. Bazı veri artırma örnekleri arasında fotometrik bozulmalar (görüntünün parlaklığını, kontrastını, tonunu, doygunluğunu ve gürültüsünü ayarlama) ve geometrik bozulmalar (rastgele ölçeklendirme, kırpma, çevirme ve döndürme ekleme) yer alır. Bu teknikler, modelin farklı görüntü türlerine daha iyi genelleme yapmasına yardımcı olur.
Link to this sectionÖzellikler ve Performans#
YOLOv4, nesne tespitinde optimum hız ve doğruluk için tasarlanmıştır. YOLOv4'ün mimarisi, backbone olarak CSPDarknet53, boyun olarak PANet ve detection head olarak YOLOv3'ü içerir. Bu tasarım, YOLOv4'ün etkileyici bir hızda nesne tespiti yapmasını sağlayarak onu gerçek zamanlı uygulamalar için uygun hale getirir. YOLOv4, doğruluk konusunda da üstünlük sağlayarak COCO gibi nesne tespiti kıyaslamalarında en güncel sonuçları elde eder.
YOLOv5 ve YOLOv7 gibi YOLO ailesindeki diğer modellerle karşılaştırıldığında, YOLOv4 hız ve doğruluk arasındaki dengede güçlü konumunu korur. Daha yeni modeller belirli avantajlar sunabilse de, YOLOv4'ün mimari yenilikleri onu gerçek zamanlı performans gerektiren birçok uygulama için hala geçerli kılmaktadır.
Link to this sectionKullanım Örnekleri#
YOLOv4 is a Darknet-based model and is not natively supported by the Ultralytics Python package: there are no yolov4.pt pretrained weights published on ultralytics/assets and no ultralytics/cfg/models/v4/ YAMLs. This page is kept as an architectural reference. Users interested in running YOLOv4 should refer directly to the YOLOv4 GitHub repository for installation and usage instructions.
İşte YOLOv4'ü kullanmak için atabileceğin tipik adımlara kısa bir genel bakış:
-
YOLOv4 GitHub deposunu ziyaret et: https://github.com/AlexeyAB/darknet.
-
Kurulum için README dosyasında verilen talimatları izle. Bu genellikle depoyu klonlamayı, gerekli bağımlılıkları yüklemeyi ve gerekli ortam değişkenlerini ayarlamayı içerir.
-
Kurulum tamamlandığında, depoda sağlanan kullanım talimatlarına göre modeli eğitebilir ve kullanabilirsin. Bu genellikle veri setini hazırlamayı, model parametrelerini yapılandırmayı, modeli eğitmeyi ve ardından eğitilmiş modeli nesne algılama gerçekleştirmek için kullanmayı içerir.
Belirli adımların kullanım durumuna ve YOLOv4 deposunun mevcut durumuna bağlı olarak değişebileceğini lütfen unutma. Bu nedenle, doğrudan YOLOv4 GitHub deposunda sağlanan talimatlara başvurman önemle tavsiye edilir.
Ultralytics çerçevesi dahilinde eğitim ve çıkarım için YOLO11 veya YOLO26 modellerine göz at.
Link to this sectionSonuç#
YOLOv4, hız ve doğruluk arasında bir denge kuran güçlü ve verimli bir nesne algılama modelidir. Eğitim sırasında benzersiz özellikleri ve bag of freebies tekniklerini kullanması, gerçek zamanlı nesne algılama görevlerinde mükemmel performans göstermesini sağlar. YOLOv4, geleneksel bir GPU'ya sahip herkes tarafından eğitilebilir ve kullanılabilir; bu da onu gözetim sistemleri, otonom araçlar ve endüstriyel otomasyon dahil olmak üzere çok çeşitli uygulamalar için erişilebilir ve pratik hale getirir.
Projelerinde nesne algılamayı uygulamak isteyenler için YOLOv4, özellikle gerçek zamanlı performans bir öncelik olduğunda güçlü bir aday olmaya devam ediyor. Ultralytics şu anda YOLO11 ve YOLO26 gibi daha yeni YOLO sürümlerini desteklemeye odaklansa da, YOLOv4'te tanıtılan mimari yenilikler bu daha sonraki modellerin geliştirilmesini etkilemiştir.
Link to this sectionAlıntılar ve Teşekkür#
Gerçek zamanlı nesne algılama alanına yaptıkları önemli katkılardan dolayı YOLOv4 yazarlarına teşekkür ederiz:
@misc{bochkovskiy2020yolov4,
title={YOLOv4: Optimal Speed and Accuracy of Object Detection},
author={Alexey Bochkovskiy and Chien-Yao Wang and Hong-Yuan Mark Liao},
year={2020},
eprint={2004.10934},
archivePrefix={arXiv},
primaryClass={cs.CV}
}Orijinal YOLOv4 makalesi arXiv üzerinde bulunabilir. Yazarlar çalışmalarını herkese açık hale getirmişlerdir ve kod tabanına GitHub üzerinden erişilebilir. Alanı ilerlettikleri ve çalışmalarını daha geniş topluluğa erişilebilir kıldıkları için çabalarını takdir ediyoruz.
Link to this sectionSSS#
Link to this sectionYOLOv4 nedir ve nesne algılama için neden kullanmalıyım?#
You Only Look Once version 4'ün kısaltması olan YOLOv4, 2020 yılında Alexey Bochkovskiy tarafından geliştirilen son teknoloji bir gerçek zamanlı nesne algılama modelidir. Hız ve doğruluk arasında optimum bir denge sağlayarak gerçek zamanlı uygulamalar için son derece uygun hale gelir. YOLOv4 mimarisi, son teknoloji sonuçlar elde etmek için diğerlerinin yanı sıra Ağırlıklı-Artık-Bağlantılar (WRC), Çapraz-Aşama-Kısmi-bağlantılar (CSP) ve Kendi kendine çekişmeli-eğitim (SAT) gibi birkaç yenilikçi özelliği birleştirir. Geleneksel GPU'larda verimli bir şekilde çalışan yüksek performanslı bir model arıyorsan, YOLOv4 mükemmel bir seçimdir.
Link to this sectionYOLOv4'ün mimarisi performansını nasıl artırıyor?#
YOLOv4 mimarisi birkaç temel bileşen içerir: backbone, neck ve head. VGG, ResNet veya CSPDarknet53 gibi modeller olabilen backbone, sınıfları ve sınırlayıcı kutuları tahmin etmek için önceden eğitilmiştir. PANet kullanan neck, kapsamlı veri çıkarımı için farklı aşamalardan özellik haritalarını birbirine bağlar. Son olarak, YOLOv3'ün konfigürasyonlarını kullanan head, nihai nesne algılamalarını yapar. YOLOv4 ayrıca, hızını ve doğruluğunu daha da optimize eden mosaic veri artırma ve DropBlock düzenlileştirme gibi "bag of freebies" tekniklerini kullanır.
Link to this sectionYOLOv4 bağlamında "bag of freebies" nedir?#
"Bag of freebies" (ücretsiz araçlar çantası), çıkarım maliyetini artırmadan YOLOv4'ün eğitim doğruluğunu artıran yöntemleri ifade eder. Bu teknikler, fotometrik bozulmalar (parlaklık, kontrast vb. ayarlama) ve geometrik bozulmalar (ölçeklendirme, kırpma, çevirme, döndürme) gibi çeşitli veri artırma biçimlerini içerir. Giriş görüntülerinin değişkenliğini artırarak, bu artırmalar YOLOv4'ün farklı görüntü türlerine daha iyi genelleme yapmasına yardımcı olur, böylece gerçek zamanlı performansından ödün vermeden dayanıklılığını ve doğruluğunu artırır.
Link to this sectionYOLOv4 neden geleneksel GPU'larda gerçek zamanlı nesne algılama için uygun kabul edilir?#
YOLOv4, hem hızı hem de doğruluğu optimize etmek için tasarlanmıştır, bu da onu hızlı ve güvenilir performans gerektiren gerçek zamanlı nesne algılama görevleri için ideal kılar. Geleneksel GPU'larda verimli bir şekilde çalışır ve hem eğitim hem de çıkarım için sadece bir tanesine ihtiyaç duyar. Bu, onu öneri sistemlerinden bağımsız süreç yönetimine kadar çeşitli uygulamalar için erişilebilir ve pratik hale getirerek kapsamlı donanım kurulumlarına olan ihtiyacı azaltır ve gerçek zamanlı nesne algılama için uygun maliyetli bir çözüm sunar.
Link to this sectionUltralytics şu anda desteklemiyorsa YOLOv4 ile nasıl başlayabilirim?#
YOLOv4 ile başlamak için resmi YOLOv4 GitHub deposunu ziyaret etmelisin. README dosyasında verilen kurulum talimatlarını izle; bunlar genellikle depoyu klonlamayı, bağımlılıkları yüklemeyi ve ortam değişkenlerini ayarlamayı içerir. Kurulumdan sonra, veri setini hazırlayarak, model parametrelerini yapılandırarak ve sağlanan kullanım talimatlarını izleyerek modeli eğitebilirsin. Ultralytics şu anda YOLOv4'ü desteklemediğinden, en güncel ve ayrıntılı rehberlik için doğrudan YOLOv4 GitHub deposuna başvurman önerilir.