YOLOX ve YOLOv7: Gerçek Zamanlı Nesne Algılamanın Evrimini Keşfetmek
Bilgisayar görme alanı, nesne algılama mimarilerinin giderek daha sofistike ve verimli hale gelmesiyle hızlı bir evrim geçirdi. Bu yolculuktaki iki önemli dönüm noktası YOLOX ve YOLOv7. Her iki model de piyasaya sürüldükleri dönemde önemli bir ilerleme kaydetti ve geliştiricilere algılama sorunlarını çözmek için farklı yaklaşımlar sundu. Bu karşılaştırma, uygulamalarınız için bilinçli kararlar almanıza yardımcı olmak amacıyla teknik özelliklerini, mimari farklılıklarını ve performans ölçütlerini derinlemesine inceler.
Performans Kıyaslama Analizi
Algılama modellerini değerlendirirken, hız ve doğruluk arasındaki denge çok önemlidir. Aşağıdaki tablo, COCO inde standart YOLOX ve YOLOv7 performansını göstermektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
YOLOX: Çapa Kullanmayan Yenilikçi
2021 yılında Megvii araştırmacıları tarafından piyasaya sürülen YOLOX, önceki YOLO hakim olan çapa tabanlı paradigmalardan uzaklaşmayı işaret etti. Çapa içermeyen bir mekanizma ve ayrıştırılmış bir başlık benimseyerek, algılama sürecini basitleştirmeyi ve çeşitli veri kümeleri arasında genellemeyi iyileştirmeyi amaçladı.
- Yazarlar: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li ve Jian Sun
- Kuruluş:Megvii
- Tarih: 2021-07-18
- Bağlantılar:Arxiv, GitHub, Belgeler
YOLOX hakkında daha fazla bilgi edinin
Mimari Öne Çıkanlar
YOLOX, birkaç önemli tasarım seçeneği ile kendini diğerlerinden ayırır:
- Anchor-Free Mekanizma: Önceden tanımlanmış anchor kutularına dayanan öncüllerinden (YOLOv4 veya YOLOv5 gibi) farklı olarak, YOLOX sınır kutularını doğrudan tahmin eder. Bu, tasarım parametrelerinin sayısını azaltır ve karmaşık anchor ayarlamasına olan ihtiyacı ortadan kaldırır, böylece değişen nesne şekilleri için özellikle sağlam hale getirir.
- Ayrıştırılmış Başlık: Sınıflandırma ve regresyon görevleri, ağ başlığının farklı dallarına ayrılır. Bu ayrım, sınıflandırma güvenilirliği ve yerelleştirme doğruluğu arasındaki çelişkiyi çözmeye yardımcı olur ve eğitim sırasında daha hızlı yakınsama sağlar.
- SimOTA: Basitleştirilmiş Optimal Transport Assignment (SimOTA) adı verilen gelişmiş bir etiket atama stratejisi, pozitif örnekleri dinamik olarak temel gerçeğe atayarak, eğitim sürecini yerel olarak değil, küresel olarak optimize eder.
İdeal Kullanım Senaryoları
YOLOX, belirli senaryolar için güçlü bir rakip olmaya devam ediyor:
- Akademik Araştırma: Temiz mimarisi, çapa içermeyen algılamada yeni teorileri test etmek için mükemmel bir araştırma temeli oluşturur.
- Eski Mobil Cihazlar: Nano ve Tiny varyantları son derece hafiftir ve her miliwattlık güç tüketiminin önemli olduğu eski mobil yonga setleri için uygundur.
- Genel Amaçlı Algılama: Aşırı en boy oranına sahip nesnelerle ilgili görevlerde, sabit bağlantı noktası içermeyen tasarım genellikle sabit bağlantı noktası tabanlı sistemlerden daha iyi genelleme yapar.
YOLOv7: Ücretsiz Hediyelerle Dolu Güç Merkezi
Bir yıl sonra, 2022'de piyasaya çıkan YOLOv7 , hız ve doğruluk sınırlarını daha da ileriye YOLOv7 . YOLOv4 ve Scaled-YOLOv4'ün arkasındaki aynı yazarlar tarafından geliştirilen bu model, çıkarım maliyetlerini artırmadan eğitim sürecini ve mimariyi optimize etmeye odaklandı.
- Yazarlar: Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao
- Kuruluş: Bilgi Bilimi Enstitüsü, Academia Sinica
- Tarih: 2022-07-06
- Bağlantılar:Arxiv, GitHub, Belgeler
YOLOv7 hakkında daha fazla bilgi edinin.
Temel Mimari Yenilikler
YOLOv7 , performansı en üst düzeye çıkarmak için birkaç gelişmiş teknik YOLOv7 :
- E-ELAN (Genişletilmiş Verimli Katman Birleştirme Ağı): Bu mimari, gradyan yolunu kontrol ederek ağın öğrenme yeteneğini geliştirir. Modelin, orijinal gradyan akışını bozmadan daha çeşitli özellikleri öğrenmesini sağlar ve böylece daha iyi yakınsama elde edilir.
- Model Ölçeklendirme: YOLOv7 , ağın derinliğini ve genişliğini aynı anda değiştiren bileşik bir ölçeklendirme yöntemi YOLOv7 ve farklı model boyutlarında (Tiny'den E6E'ye kadar) optimum verimlilik sağlar.
- Eğitilebilir Bag-of-Freebies: Model, eğitim sırasında doğruluğu artıran ancak çıkarım sırasında birleştirilerek gecikme cezası oluşturmayan planlı yeniden parametreleştirme teknikleri ve dinamik etiket atama stratejilerini içerir.
İdeal Kullanım Senaryoları
YOLOv7 , yüksek performanslı endüstriyel uygulamalar için sıklıkla tercih YOLOv7 :
- Gerçek Zamanlı Gözetim: GPU yüksek FPS ile, gecikmenin kritik olduğu güvenlik alarm sistemleri ve trafik izleme alanlarında üstün performans gösterir.
- Robotik: Hız ve hassasiyet dengesi, otonom navigasyon ve robotik manipülasyon görevlerini destekler.
- Ayrıntılı İnceleme: Daha büyük varyantlar (YOLOv7, YOLOv7), üretim hatlarındaki küçük kusurları tespit etmek için üstün doğruluk sunar.
Ultralytics'in Avantajı
YOLOX ve YOLOv7 etkileyici mimariler YOLOv7 da, yapay zeka geliştirme alanı, ham metriklerin yanı sıra geliştirici deneyimini önceliklendiren entegre ekosistemlere doğru kaymıştır. İşte burada Ultralytics devreye girer. YOLOv8, YOLO11ve en son teknoloji ürünü YOLO26 parlıyor.
Kolaylaştırılmış Geliştirici Deneyimi
Araştırma odaklı veri depolarının (orijinal YOLOX veya YOLOv7 gibi) en büyük engellerinden biri, kurulum ve kullanımının karmaşıklığıdır. Ultralytics , tüm modelleri tek bir tutarlı Python altında birleştirerek bu sorunu Ultralytics .
Birleştirilmiş API Örneği
Mimariler arasında geçiş yapmak için tek bir dizeyi değiştirmek yeterlidir, böylece boru hattınızın geleceğe hazır olmasını sağlarsınız.
from ultralytics import YOLO
# Load YOLOX, YOLOv7, or the new YOLO26
model_yolox = YOLO("yolox_s.pt")
model_v7 = YOLO("yolov7.pt")
model_26 = YOLO("yolo26n.pt") # Recommended for new projects
# Train with a standard command
results = model_26.train(data="coco8.yaml", epochs=100)
Verimlilik ve Kaynak Yönetimi
Modern Ultralytics verimlilik için tasarlanmıştır. Transformatör tabanlı modellerden (örneğin RT-DETR) aksine, Ultralytics YOLO genellikle eğitim sırasında önemli ölçüde daha az GPU gerektirir. Bu demokratikleşme, geliştiricilerin tüketici sınıfı donanımlarda en son teknoloji modelleri eğitmelerine veya daha istikrarlı bir yakınsama için daha büyük parti boyutları kullanmalarına olanak tanır.
Algılamanın Ötesinde: Gerçek Çok Yönlülük
YOLOX öncelikle bir nesne algılayıcı olsa da, Ultralytics aynı çerçeve içinde çok çeşitli bilgisayar görme görevlerini destekler.
- Örnek Segmentasyonu: Nesneleri arka plandan piksel hassasiyetinde izole edin.
- Poz Tahmini: Spor analizi veya sağlık hizmetleri için insan vücudundaki kilit noktaları tespit edin.
- Yönlendirilmiş Sınır Kutuları (OBB): Uydu görüntülerindeki gemiler veya konveyör bant üzerindeki paketler gibi döndürülmüş nesneleri algılar.
- Sınıflandırma: Görüntülerin tamamını verimli bir şekilde kategorilere ayırın.
Yeni Nesil Performans: YOLO26
2026 yılında yeni projelere başlayan geliştiriciler için YOLO26, bu evrimin zirvesini temsil ediyor. Radikal mimari YOLOv7 hem YOLOX hem YOLOv7 sınırlamalarını ortadan kaldırıyor:
- NMS Tasarım: YOLO26, doğal olarak uçtan uca çalışır ve Non-Maximum Suppression (NMS) ihtiyacını ortadan kaldırır. Bu, dağıtımda önemli bir darboğazı ortadan kaldırarak gecikme değişkenliğini azaltır ve uç cihazlara aktarımı basitleştirir.
- Hız ve Doğruluk: Önceki nesillere kıyasla %43'e kadar daha hızlı CPU sahip olan bu ürün, özellikle uç bilgi işlem için optimize edilmiştir.
- Gelişmiş Eğitim: MuSGD Optimizer'ı kullanarak, Büyük Dil Modeli eğitiminden gelen istikrar yeniliklerini bilgisayar görüşüne getirir.
- Küçük Nesnelerin Algılanmasında Ustalık: Geliştirilmiş kayıp fonksiyonları (ProgLoss + STAL), birçok algılayıcı için geleneksel bir zayıf nokta olan küçük nesnelerin algılanmasında kayda değer kazanımlar sağlar.
YOLO26 hakkında daha fazla bilgi edinin
Sonuç
YOLOX ve YOLOv7 arasında seçim yapmak YOLOv7 belirli miras kısıtlamalarınıza veya araştırma hedeflerinize bağlıdır. YOLOX, araştırma temel hatları ve belirli mobil nişler için mükemmel olan daha basit, bağlantısız bir tasarım sunar. YOLOv7 endüstriyel ortamlarda üst düzey GPU için ham güç ve hız sunar.
Ancak, modern uygulamaların çoğu için Ultralytics yararlanmak en iyi yoludur. Savaşta test edilmiş YOLOv8, çok yönlü YOLO11 veya devrim niteliğindeki YOLO26'yı seçin, bakımlı bir platform, sorunsuz dağıtım seçenekleri ve AI çözümlerinizin en son teknolojiyi yansıtmasını sağlayan bir topluluktan faydalanabilirsiniz.
Benzer modeller hakkında daha fazla bilgi için, karşılaştırmalarımıza göz atın YOLOv6 ve YOLOv9ile ilgili karşılaştırmalarımıza göz atın veya Ultralytics keşfederek kendi modellerinizi bugün eğitmeye başlayın.