YOLOv10 - DAMO-YOLO Karşılaştırması: Teknik Bir Karşılaştırma
Optimum nesne algılama modelini seçmek, doğruluk, hız ve hesaplama maliyeti arasındaki ödünleşimleri dengeleyen kritik bir karardır. Bu sayfa, Ultralytics ekosistemine entegre edilmiş en son yüksek verimli model olan YOLOv10 ile Alibaba Group'tan güçlü bir detectör olan DAMO-YOLO arasında ayrıntılı bir teknik karşılaştırma sunar. Bilgisayar görüşü projeleriniz için bilinçli bir seçim yapmanıza yardımcı olmak için mimarilerini, performans metriklerini ve ideal kullanım durumlarını analiz edeceğiz.
YOLOv10: Gerçek Zamanlı Uçtan Uca Algılama
Tsinghua Üniversitesi'ndeki araştırmacılar tarafından Mayıs 2024'te tanıtılan YOLOv10, gerçek zamanlı nesne tespitinde önemli bir adımı işaret ediyor. Temel yeniliği, işlem sonrası yükünü azaltan ve çıkarım gecikmesini düşüren Non-Maximum Suppression (NMS) ihtiyacını ortadan kaldırarak uçtan uca algılama elde etmektir.
Teknik Detaylar:
Yazarlar: Ao Wang, Hui Chen, Lihao Liu, ve diğerleri
Kuruluş:Tsinghua Üniversitesi
Tarih: 2024-05-23
Arxiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Belgeler:https://docs.ultralytics.com/models/yolov10/
Mimari ve Temel Özellikler
YOLOv10, kullanım kolaylığı ve güçlü ekosistemi miras alarak sağlam Ultralytics çerçevesi üzerine inşa edilmiştir. Mimarisi, üstün verimlilik ve performans için çeşitli önemli gelişmeler sunar:
- NMS'siz Eğitim: YOLOv10, eğitim sırasında etiketler için tutarlı ikili atamalar kullanır. Bu, modelin NMS son işleme adımına ihtiyaç duymadan temiz tahminler üretmesini sağlayarak dağıtım hattını basitleştirir ve onu gerçekten uçtan uca hale getirir.
- Bütünsel Verimlilik-Doğruluk Tasarımı: Model mimarisi, hesaplama yedekliliğini azaltmak için kapsamlı bir şekilde optimize edilmiştir. Bu, hem hızı hem de yeteneği artıran hafif bir sınıflandırma başlığı ve uzamsal-kanal ayrıştırmalı alt örneklemeyi içerir.
- Sorunsuz Ultralytics Entegrasyonu: Ultralytics ekosisteminin bir parçası olarak YOLOv10, kolaylaştırılmış bir kullanıcı deneyiminden yararlanır. Bu, basit bir Python API, kapsamlı belgeler, verimli eğitim süreçleri ve kolayca erişilebilen önceden eğitilmiş ağırlıkları içerir. Bu entegrasyon, geliştiricilerin başlamasını ve modelleri hızla dağıtmasını son derece kolaylaştırır.
Neden NMS'siz Olması Önemli
Geleneksel nesne detectörleri genellikle tek bir nesne için birden çok sınırlayıcı kutu tahmin eder. Non-Maximum Suppression (NMS), bu yinelenenleri filtrelemek için kullanılan bir son işlem adımıdır. YOLOv10, NMS'yi ortadan kaldırarak, özellikle her milisaniyenin önemli olduğu uç dağıtım senaryolarında çıkarım gecikmesini ve karmaşıklığını önemli ölçüde azaltır.
YOLOv10 hakkında daha fazla bilgi edinin
DAMO-YOLO: NAS Odaklı Verimlilik
DAMO-YOLO, Alibaba Group tarafından geliştirilen hızlı ve doğru bir nesne algılama modelidir. Kasım 2022'de piyasaya sürülen bu model, arama algoritmaları aracılığıyla mimari optimizasyona büyük önem vererek YOLO tarzı dedektörlerin performans sınırlarını zorlamak için çeşitli yeni teknikler sunmuştur.
Teknik Detaylar:
Yazarlar: Xianzhe Xu, Yiqi Jiang, Weihua Chen, ve diğerleri
Kuruluş:Alibaba Group
Tarih: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444
GitHub:https://github.com/tinyvision/DAMO-YOLO
Belgeler:https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Mimari ve Temel Özellikler
DAMO-YOLO, hız-doğruluk dengesini iyileştirmek için gelişmiş teknikler araştırır. Mimarisi şu özelliklere sahiptir:
- Sinir Ağı Mimarisi Arama (NAS): DAMO-YOLO'nun backbone'u NAS kullanılarak oluşturuldu ve bu da özellikle detect görevleri için uyarlanmış son derece optimize edilmiş bir özellik çıkarma ağına olanak sağladı.
- Verimli RepGFPN Katmanı: Farklı ölçeklerden özellikleri verimli bir şekilde birleştiren yeni bir Özellik Piramidi Ağı (FPN) tasarımı olan RepGFPN'yi içerir.
- ZeroHead ve AlignedOTA: Model, detect doğruluğunu ve lokalizasyonu artırmak için basitleştirilmiş, sıfır parametreli bir başlık ve AlignedOTA (Aligned Optimal Transport Assignment - Hizalı Optimal Taşıma Ataması) adı verilen geliştirilmiş bir etiket atama stratejisi kullanır.
- Bilgi Damıtma: DAMO-YOLO, daha büyük öğretmen ağlarından öğrenerek daha küçük modellerinin performansını daha da artırmak için bilgi damıtmayı kullanır.
DAMO-YOLO hakkında daha fazla bilgi edinin
Performans Kafa Kafaya
Aşağıdaki tablo, çeşitli YOLOv10 ve DAMO-YOLO model boyutlarının COCO veri kümesi üzerindeki performansını karşılaştırmaktadır. YOLOv10, daha düşük gecikme süresi ve daha az parametre ile daha yüksek doğruluk sunarak sürekli olarak üstün performans göstermektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
Verilerin gösterdiği gibi, YOLOv10 modelleri genellikle verimlilik açısından DAMO-YOLO muadillerinden daha iyi performans gösteriyor. Örneğin, YOLOv10-S, önemli ölçüde daha hızlı (2.66 ms'ye karşı 3.45 ms) ve parametrelerin yarısından daha azına (7.2M'ye karşı 16.3M) sahipken, DAMO-YOLO-S'den daha yüksek bir mAP (46.7'ye karşı 46.0) elde ediyor. Bu eğilim, tüm model boyutlarında geçerli olup, YOLOv10-X'in en yüksek 54.4 mAP değerine ulaşmasıyla sonuçlanıyor.
Güçlü Yönler ve Zayıflıklar Analizi
YOLOv10'un Güçlü Yönleri
- Son Teknoloji Verimliliği: YOLOv10, daha az parametre ve daha düşük gecikme süresiyle rakiplerinden genellikle daha iyi performans göstererek hız ve doğruluk arasında olağanüstü bir denge sunar.
- Kullanım Kolaylığı: Model, Ultralytics ekosistemiyle entegrasyonu sayesinde inanılmaz derecede kullanıcı dostudur.
- Uçtan Uca Dağıtım: NMS'siz tasarım, eğitimden çıkarıma kadar tüm iş akışını basitleştirerek uç cihazlardaki gerçek dünya uygulamaları için ideal hale getirir.
- Daha Düşük Bellek Gereksinimleri: Daha karmaşık mimarilerle karşılaştırıldığında, YOLOv10 hem eğitim hem de çıkarım sırasında bellek kullanımı açısından verimlidir.
DAMO-YOLO'nun Güçlü Yönleri
- Yüksek Performans: DAMO-YOLO, rekabetçi doğruluk ve hız elde ederek nesne algılama alanında güçlü bir rakip haline gelir.
- Yenilikçi Teknolojiler: Akademik keşif için değerli olan NAS ve gelişmiş etiket atama stratejileri gibi en son araştırma konseptlerini içerir.
Zayıflıklar
- YOLOv10: Nesne algılama için olağanüstü olsa da, YOLOv10 şu anda bu tek göreve odaklanmıştır, oysa çok yönlü Ultralytics YOLO11, kutudan çıkar çıkmaz segmentasyon, sınıflandırma ve poz tahmini destekler.
- DAMO-YOLO: Modelin mimarisi ve eğitim hattı, YOLOv10'a kıyasla daha karmaşıktır. Öncelikle belirli araştırma araç kutularında mevcuttur ve bu, Ultralytics tarafından sunulan gibi daha entegre, kullanıcı dostu bir çözümü tercih eden geliştiriciler için bir engel olabilir.
Ultralytics'in Avantajı
Her iki model de etkileyici olsa da, YOLOv10 ve amiral gemisi YOLO11 gibi Ultralytics modelleri, geliştiriciler ve araştırmacılar için belirgin bir avantaj sunar:
- Birleşik Ekosistem: Ultralytics, veri etiketleme, eğitim ve dağıtımın sorunsuz bir şekilde gerçekleştiği uyumlu bir platform sağlar.
- Kullanım Kolaylığı: Basit bir Python API ile, bir modeli yükleyebilir ve çıkarımı sadece birkaç satır kodla çalıştırabilirsiniz.
- Çok Yönlülük: Ultralytics, örnek segmentasyonu, görüntü sınıflandırması, poz tahmini ve Yönlendirilmiş Sınırlayıcı Kutular (OBB) dahil olmak üzere çok çeşitli görevleri destekler.
- Topluluk Desteği: Canlı bir topluluk ve kapsamlı dokümantasyon, uzun süre bir soruna takılmamanızı sağlar.
Kullanım Örneği: Ultralytics ile YOLOv10
Ultralytics python paketini kullanarak YOLOv10'u çalıştırmak basittir. İşte önceden eğitilmiş bir modeli nasıl yükleyebileceğiniz ve bir görüntü üzerinde nasıl tahmin yürütebileceğiniz:
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Perform object detection on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Sonuç
Hem YOLOv10 hem de DAMO-YOLO, zorlu nesne algılama modelleridir. DAMO-YOLO, NAS tabanlı mimariler ve gelişmiş özellik kaynaştırması üzerine yapılan araştırmalar için mükemmel bir referans görevi görür. Ancak, pratik dağıtım ve MLOps verimliliği için YOLOv10 üstün bir seçim olarak öne çıkıyor. NMS'siz mimarisi, kapsamlı Ultralytics ekosistemiyle birleştiğinde, konseptten üretime daha hızlı ve daha iyi performansla geçmenizi sağlar.
Birden fazla görüntü işleme görevinde daha da fazla çok yönlülüğe ihtiyaç duyan kullanıcılar için, YOLO ailesinin mevcut en gelişmiş teknolojisini tanımlayan YOLO11'i keşfetmelerini şiddetle tavsiye ediyoruz.
Diğer Model Karşılaştırmalarını İnceleyin
Bu modellerin diğer önde gelen mimarilere karşı nasıl performans gösterdiğini görmek için şu karşılaştırmalara göz atın:
- YOLO11 ve DAMO-YOLO
- YOLOv8 - DAMO-YOLO
- RT-DETR - DAMO-YOLO Karşılaştırması
- YOLOX - DAMO-YOLO Karşılaştırması
- YOLOv10 - RT-DETR Karşılaştırması
- YOLOv10 - YOLOX karşılaştırması