İçeriğe geç

Meituan YOLOv6

Genel Bakış

Meituan YOLOv6, hız ve doğruluk arasında dikkate değer bir denge sunan ve gerçek zamanlı uygulamalar için popüler bir seçim haline getiren son teknoloji ürünü bir nesne dedektörüdür. Bu model, mimarisinde ve eğitim şemasında, Çift Yönlü Birleştirme (BiC) modülünün uygulanması, çapa destekli eğitim (AAT) stratejisi ve COCO veri kümesinde son teknoloji doğruluk için geliştirilmiş bir omurga ve boyun tasarımı dahil olmak üzere birkaç önemli geliştirme sunmaktadır.

Meituan YOLOv6 Örnek model görüntüsü YOLOv6'ya genel bakış. Önemli performans iyileştirmelerine yol açan yeniden tasarlanmış ağ bileşenlerini ve eğitim stratejilerini gösteren model mimarisi diyagramı. (a) YOLOv6'nın boynu (N ve S gösterilmiştir). M/L için RepBlocks'un CSPStackRep ile değiştirildiğine dikkat edin. (b) Bir BiC modülünün yapısı. (c) Bir SimCSPSPPF bloğu. (kaynak).

Temel Özellikler

  • Çift Yönlü Birleştirme (BiC) Modülü: YOLOv6, dedektörün boynuna bir BiC modülü ekleyerek lokalizasyon sinyallerini geliştirir ve ihmal edilebilir hız düşüşü ile performans kazanımları sağlar.
  • Çapa Destekli Eğitim (AAT) Stratejisi: Bu model, çıkarım verimliliğinden ödün vermeden hem çapa tabanlı hem de çapasız paradigmaların avantajlarından yararlanmak için AAT'yi önermektedir.
  • Geliştirilmiş Omurga ve Boyun Tasarımı: YOLOv6'yı omurga ve boyunda başka bir aşama içerecek şekilde derinleştiren bu model, yüksek çözünürlüklü girdide COCO veri kümesinde en son teknolojiye sahip performansa ulaşır.
  • Kendi Kendine Damıtma Stratejisi: YOLOv6'nın daha küçük modellerinin performansını artırmak için, eğitim sırasında yardımcı regresyon dalını geliştiren ve belirgin bir hız düşüşünü önlemek için çıkarımda kaldıran yeni bir kendi kendine damıtma stratejisi uygulanmaktadır.

Performans Ölçütleri

YOLOv6, farklı ölçeklerde çeşitli önceden eğitilmiş modeller sağlar:

  • YOLOv6-N: 37.5% AP on COCO val2017 at 1187 FPS with NVIDIA T4 GPU.
  • YOLOv6-S: 484 FPS'de %45,0 AP.
  • YOLOv6-M: 226 FPS'de %50,0 AP.
  • YOLOv6-L: 116 FPS'de %52,8 AP.
  • YOLOv6-L6: Gerçek zamanlı olarak son teknoloji ürünü doğruluk.

YOLOv6 also provides quantized models for different precisions and models optimized for mobile platforms.

Kullanım Örnekleri

Bu örnek basit YOLOv6 eğitim ve çıkarım örnekleri sağlar. Bu ve diğer modlarla ilgili tüm belgeler için Predict, Train, Val ve Export docs sayfalarına bakın.

Örnek

PyTorch pretrained *.pt modellerin yanı sıra yapılandırma *.yaml dosyalar şu dosyalara aktarılabilir YOLO() sınıfında bir model örneği oluşturmak için python:

from ultralytics import YOLO

# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLOv6n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

CLI komutları modelleri doğrudan çalıştırmak için kullanılabilir:

# Build a YOLOv6n model from scratch and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov6n.yaml data=coco8.yaml epochs=100 imgsz=640

# Build a YOLOv6n model from scratch and run inference on the 'bus.jpg' image
yolo predict model=yolov6n.yaml source=path/to/bus.jpg

Desteklenen Görevler ve Modlar

The YOLOv6 series offers a range of models, each optimized for high-performance Object Detection. These models cater to varying computational needs and accuracy requirements, making them versatile for a wide array of applications.

Model Tipi Önceden Eğitilmiş Ağırlıklar Desteklenen Görevler Çıkarım Doğrulama Eğitim İhracat
YOLOv6-N yolov6-n.pt Nesne Algılama
YOLOv6-S yolov6-s.pt Nesne Algılama
YOLOv6-M yolov6-m.pt Nesne Algılama
YOLOv6-L yolov6-l.pt Nesne Algılama
YOLOv6-L6 yolov6-l6.pt Nesne Algılama

This table provides a detailed overview of the YOLOv6 model variants, highlighting their capabilities in object detection tasks and their compatibility with various operational modes such as Inference, Validation, Training, and Export. This comprehensive support ensures that users can fully leverage the capabilities of YOLOv6 models in a broad range of object detection scenarios.

Atıflar ve Teşekkür

Yazarlara gerçek zamanlı nesne algılama alanındaki önemli katkılarından dolayı teşekkür ederiz:

@misc{li2023yolov6,
      title={YOLOv6 v3.0: A Full-Scale Reloading},
      author={Chuyi Li and Lulu Li and Yifei Geng and Hongliang Jiang and Meng Cheng and Bo Zhang and Zaidan Ke and Xiaoming Xu and Xiangxiang Chu},
      year={2023},
      eprint={2301.05586},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Orijinal YOLOv6 makalesi arXiv'de bulunabilir. Yazarlar çalışmalarını kamuya açık hale getirmişlerdir ve kod tabanına GitHub üzerinden erişilebilir. Alanı ilerletme ve çalışmalarını daha geniş bir topluluk için erişilebilir hale getirme çabalarını takdir ediyoruz.

SSS

Meituan YOLOv6 nedir ve onu benzersiz kılan nedir?

Meituan YOLOv6, hız ve doğruluğu dengeleyen, gerçek zamanlı uygulamalar için ideal, son teknoloji ürünü bir nesne dedektörüdür. Çift Yönlü Birleştirme (BiC) modülü ve Çapa Destekli Eğitim (AAT) stratejisi gibi önemli mimari geliştirmelere sahiptir. Bu yenilikler, minimum hız düşüşü ile önemli performans kazanımları sağlayarak YOLOv6'yı nesne algılama görevleri için rekabetçi bir seçim haline getirir.

YOLOv6'daki Çift Yönlü Birleştirme (BiC) Modülü performansı nasıl artırır?

YOLOv6'daki Çift Yönlü Birleştirme (BiC) modülü, dedektörün boynundaki lokalizasyon sinyallerini geliştirerek ihmal edilebilir hız etkisiyle performans iyileştirmeleri sağlar. Bu modül, farklı özellik haritalarını etkili bir şekilde birleştirerek modelin nesneleri doğru bir şekilde tespit etme yeteneğini artırır. YOLOv6'nın özellikleri hakkında daha fazla ayrıntı için Temel Özellikler bölümüne bakın.

Ultralytics kullanarak bir YOLOv6 modelini nasıl eğitebilirim?

Basit Python veya CLI komutları ile Ultralytics kullanarak bir YOLOv6 modelini eğitebilirsiniz. Örneğin:

Örnek

from ultralytics import YOLO

# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
yolo train model=yolov6n.yaml data=coco8.yaml epochs=100 imgsz=640

Daha fazla bilgi için Tren sayfasını ziyaret edin.

YOLOv6'nın farklı sürümleri ve performans ölçümleri nelerdir?

YOLOv6, her biri farklı performans gereksinimleri için optimize edilmiş birden fazla sürüm sunar:

  • YOLOv6-N: 1187 FPS'de %37,5 AP
  • YOLOv6-S: 484 FPS'de %45,0 AP
  • YOLOv6-M: 226 FPS'de %50,0 AP
  • YOLOv6-L: 116 FPS'de %52,8 AP
  • YOLOv6-L6: Gerçek zamanlı senaryolarda son teknoloji doğruluk

These models are evaluated on the COCO dataset using an NVIDIA T4 GPU. For more on performance metrics, see the Performance Metrics section.

Çapa Destekli Eğitim (AAT) stratejisi YOLOv6'ya nasıl fayda sağlıyor?

Anchor-Aided Training (AAT) in YOLOv6 combines elements of anchor-based and anchor-free approaches, enhancing the model's detection capabilities without compromising inference efficiency. This strategy leverages anchors during training to improve bounding box predictions, making YOLOv6 effective in diverse object detection tasks.

Ultralytics adresinde YOLOv6 modelleri tarafından hangi çalışma modları desteklenmektedir?

YOLOv6, Çıkarım, Doğrulama, Eğitim ve Dışa Aktarma dahil olmak üzere çeşitli operasyonel modları destekler. Bu esneklik, kullanıcıların farklı senaryolarda modelin yeteneklerinden tam olarak yararlanmasına olanak tanır. Her bir moda ilişkin ayrıntılı genel bakış için Desteklenen Görevler ve Mod lar bölümüne göz atın.


📅 Created 11 months ago ✏️ Updated 13 days ago

Yorumlar