YOLO Vision 2026:

Ultralytics YOLO ile Nesne Tespiti#

Ultralytics YOLO object detection with bounding boxes

Nesne tespiti, bir görüntü veya video akışındaki nesnelerin konumunu ve sınıfını belirlemeyi içeren bir görevdir.

Bir nesne dedektörünün çıktısı, görüntüdeki nesneleri çevreleyen bir dizi sınırlayıcı kutu ile birlikte her kutu için sınıf etiketleri ve güven puanlarıdır. Nesne algılama, bir sahnede ilgilendiğin nesneleri tanımlaman gerektiğinde, ancak nesnenin tam olarak nerede olduğunu veya kesin şeklini bilmene gerek olmadığında iyi bir seçimdir.



Watch: Object Detection with Pretrained Ultralytics YOLO Model.
İpucu

YOLO26 Detect modelleri varsayılan YOLO26 modelleridir, yani yolo26n.pt, ve COCO üzerinde ön eğitilmiştir.

Modeller#

YOLO26 ön eğitilmiş Detect modelleri burada gösterilmektedir. Detect, Segment ve Pose modelleri COCO veri kümesi üzerinde, Semantic modelleri Cityscapes üzerinde ve Classify modelleri ImageNet veri kümesi üzerinde ön eğitilmiştir.

Models, ilk kullanımda en son Ultralytics release sürümünden otomatik olarak indirilir.

Modelboyut
(piksel)
mAPval
50-95
mAPval
50-95(e2e)
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(M)
FLOPs
(B)
YOLO26n64040.940.138.9 ± 0.71.7 ± 0.02.45.4
YOLO26s64048.647.887.2 ± 0.92.5 ± 0.09.520.7
YOLO26m64053.152.5220.0 ± 1.44.7 ± 0.120.468.2
YOLO26l64055.054.4286.2 ± 2.06.2 ± 0.224.886.4
YOLO26x64057.556.9525.8 ± 4.011.8 ± 0.255.7193.9
  • mAPval değerleri COCO val2017 veri kümesinde tek model ve tek ölçek içindir.
    Şununla yeniden üretin: yolo val detect data=coco.yaml device=0
  • Speed, bir Amazon EC2 P4d örneği kullanılarak COCO val görüntüleri üzerinden ortalama olarak hesaplanmıştır.
    Şu komutla yeniden üretebilirsin: yolo val detect data=coco.yaml batch=1 device=0|cpu
  • Params ve FLOPs değerleri, Conv ve BatchNorm katmanlarını birleştiren ve uçtan uca modeller için yardımcı bire çok algılama başlığını kaldıran model.fuse() sonrasındaki birleştirilmiş model içindir. Önceden eğitilmiş kontrol noktaları tam eğitim mimarisini korur ve daha yüksek sayılar gösterebilir.

Eğit (Train)#

YOLO26n modelini COCO8 veri kümesi üzerinde 640 görüntü boyutunda 100 epoch boyunca eğit. Mevcut argümanların tam listesi için Configuration sayfasına bak.

Örnek
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.yaml")  # build a new model from YAML
model = YOLO("yolo26n.pt")  # load a pretrained model (recommended for training)
model = YOLO("yolo26n.yaml").load("yolo26n.pt")  # build from YAML and transfer weights

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

Tam train modu detaylarını Train sayfasında gör. Algılama modelleri ayrıca Ultralytics Platform cloud training ile eğitilebilir.

Veri kümesi biçimi#

YOLO algılama veri kümesi formatı hakkında ayrıntılı bilgi Dataset Guide içinde bulunabilir. Mevcut veri kümeni diğer formatlardan (COCO vb.) YOLO formatına dönüştürmek için lütfen Ultralytics tarafından sunulan JSON2YOLO aracını kullan. Ayrıca algılama veri kümelerini Ultralytics Platform's AI-assisted annotation tools ile etiketleyebilir ve yönetebilirsin.

Doğrula (Val)#

Eitilmiş YOLO26n model accuracy değerini COCO8 veri kümesi üzerinde doğrula. model, eğitim data verilerini ve argümanlarını model öznitelikleri olarak koruduğu için herhangi bir argümana gerek yoktur.

Örnek
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")  # load an official model
model = YOLO("path/to/best.pt")  # load a custom model

# Validate the model
metrics = model.val()  # no arguments needed, dataset and settings remembered
metrics.box.map  # map50-95
metrics.box.map50  # map50
metrics.box.map75  # map75
metrics.box.maps  # a list containing mAP50-95 for each category
metrics.box.image_metrics  # per-image metrics dictionary with precision, recall, F1, TP, FP, and FN

Tahmin Et (Predict)#

Görüntüler üzerinde tahminler çalıştırmak için eğitilmiş bir YOLO26n modeli kullan.

Örnek
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")  # load an official model
model = YOLO("path/to/best.pt")  # load a custom model

# Predict with the model
results = model("https://ultralytics.com/images/bus.jpg")  # predict on an image

# Access the results
for result in results:
    xywh = result.boxes.xywh  # center-x, center-y, width, height
    xywhn = result.boxes.xywhn  # normalized
    xyxy = result.boxes.xyxy  # top-left-x, top-left-y, bottom-right-x, bottom-right-y
    xyxyn = result.boxes.xyxyn  # normalized
    names = [result.names[cls.item()] for cls in result.boxes.cls.int()]  # class name of each box
    confs = result.boxes.conf  # confidence score of each box

Tam predict modu ayrıntılarını Tahmin sayfasında görün.

Sonuç Çıktısı#

Nesne tespiti, görüntü başına bir Results nesnesi döndürür. Birincil tahmin alanı, algılanan her nesne için kutu koordinatlarını, sınıf kimliklerini ve güven skorlarını içeren result.boxes alanıdır.

ÖznitelikTipŞekilAçıklama
result.boxesBoxes(N)Tespit kutuları.
result.boxes.datatorch.float32(N,6/7)Ham [x1,y1,x2,y2,conf,cls] ve isteğe bağlı izleme kimliği (track ID).
result.boxes.xyxytorch.float32(N,4)xyxy piksel kutuları.
result.boxes.conftorch.float32(N,)Güven skorları.
result.boxes.clstorch.float32(N,)Sınıf kimlikleri; adlar için int türüne dönüştürülür.

Her görev genelinde göreve özgü Results alanları için Göreve Göre Tahmin Sonuçları bölümüne bakın.

Dışa Aktar (Export)#

Bir YOLO26n modelini ONNX, CoreML vb. gibi farklı bir formata dışa aktar.

Örnek
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")  # load an official model
model = YOLO("path/to/best.pt")  # load a custom-trained model

# Export the model
model.export(format="onnx")

Mevcut YOLO26 dışa aktarma formatları aşağıdaki tabloda yer almaktadır. format argümanını, yani format='onnx' veya format='engine' kullanarak herhangi bir forma dışa aktarabilirsin. Dışa aktarılan modeller üzerinde doğrudan tahmin veya doğrulama yapabilirsin, yani yolo predict model=yolo26n.onnx. Kullanım örnekleri dışa aktarma tamamlandıktan sonra modelin için gösterilir.

Formatformat ArgümanıModelMeta verilerArgümanlar
PyTorch-yolo26n.pt-
TorchScripttorchscriptyolo26n.torchscriptimgsz, quantize, dynamic, nms, batch, device
ONNXonnxyolo26n.onnximgsz, quantize, dynamic, simplify, opset, nms, batch, data, fraction, device
OpenVINOopenvinoyolo26n_openvino_model/imgsz, quantize, dynamic, nms, batch, data, fraction, device
TensorRTengineyolo26n.engineimgsz, quantize, dynamic, simplify, opset, workspace, nms, batch, data, fraction, device
CoreMLcoremlyolo26n.mlpackageimgsz, dynamic, quantize, nms, batch, device
TF SavedModelsaved_modelyolo26n_saved_model/imgsz, keras, quantize, opset, nms, batch, data, fraction, device
TF GraphDefpbyolo26n.pbimgsz, opset, batch, device
TF Edge TPUedgetpuyolo26n_edgetpu.tfliteimgsz, quantize, opset, data, fraction, device
PaddlePaddlepaddleyolo26n_paddle_model/imgsz, batch, device
MNNmnnyolo26n.mnnimgsz, batch, dynamic, quantize, simplify, opset, nms, device
NCNNncnnyolo26n_ncnn_model/imgsz, quantize, batch, device
IMX500imxyolo26n_imx_model/imgsz, quantize, data, fraction, nms, device
RKNNrknnyolo26n_rknn_model/imgsz, batch, name, quantize, simplify, opset, data, fraction, device
ExecuTorchexecutorchyolo26n_executorch_model/imgsz, batch, device
Axeleraaxelerayolo26n_axelera_model/imgsz, batch, quantize, data, fraction, device
DEEPXdeepxyolo26n_deepx_model/imgsz, quantize, simplify, opset, data, optimize, device
Qualcomm QNNqnnyolo26n_qnn.onnximgsz, batch, name, quantize, simplify, opset, data, fraction, device
LiteRTlitertyolo26n.tfliteimgsz, quantize, batch, data, fraction, device
Hailohailoyolo26n_hailo_model/imgsz, name, quantize, data, fraction, simplify, conf, iou
Huawei Ascendascendyolo26n_ascend_model/imgsz, batch, name, quantize, opset, simplify, nms

Tam export ayrıntılarını Dışa Aktar sayfasında görün.

SSS#

  • Evet. Ultralytics Platform quickstart, veri kümelerini etiketleme, bulut GPU'larında algılama modelleri eğitme ve bunları çıkarım uç noktalarına dağıtma için tarayıcı tabanlı bir iş akışını kapsar.

  • Özel bir veri kümesinde bir YOLO26 modelini eğitmek birkaç adım içerir:

    1. Veri Kümesini Hazırla: Veri kümenin YOLO formatında olduğundan emin ol. Rehberlik için Dataset Guide sayfamıza göz at.
    2. Modeli Yükle: Önceden eğitilmiş bir modeli yüklemek veya bir YAML dosyasından yeni bir model oluşturmak için Ultralytics YOLO kütüphanesini kullan.
    3. Modeli Eğit: Python'da train yöntemini veya CLI'da yolo detect train komutunu çalıştır.
    Örnek
    from ultralytics import YOLO
    
    # Load a pretrained model
    model = YOLO("yolo26n.pt")
    
    # Train the model on your custom dataset
    model.train(data="my_custom_dataset.yaml", epochs=100, imgsz=640)

    Ayrıntılı yapılandırma seçenekleri için Configuration sayfasını ziyaret et.

  • Ultralytics YOLO26, object detection, instance segmentation, semantic segmentation ve pose estimation için çeşitli ön eğitilmiş modeller sunar. Bu modeller COCO veri kümesi, anlamsal segmentasyon için Cityscapes veya sınıflandırma görevleri için ImageNet üzerinde ön eğitilmiştir. Mevcut modellerden bazıları şunlardır:

    Ayrıntılı bir liste ve performans metrikleri için Models bölümüne bak.

  • Eğittiğin YOLO26 modelinin doğruluğunu doğrulamak için Python'da .val() yöntemini veya CLI'da yolo detect val komutunu kullanabilirsin. Bu, mAP50-95, mAP50 ve benzeri metrikleri sağlayacaktır.

    Örnek
    from ultralytics import YOLO
    
    # Load the model
    model = YOLO("path/to/best.pt")
    
    # Validate the model
    metrics = model.val()
    print(metrics.box.map)  # mAP50-95

    Daha fazla doğrulama detayı için Val sayfasını ziyaret et.

  • Ultralytics YOLO26; farklı platformlar ve cihazlar arasında uyumluluk sağlamak amacıyla modellerin ONNX, TensorRT, CoreML ve benzeri çeşitli formatlara dışa aktarılmasına olanak tanır.

    Örnek
    from ultralytics import YOLO
    
    # Load the model
    model = YOLO("yolo26n.pt")
    
    # Export the model to ONNX format
    model.export(format="onnx")

    Desteklenen formatların tam listesini ve talimatları Export sayfasında kontrol et.

  • Ultralytics YOLO26; object detection, instance segmentation, semantic segmentation ve pose estimation için en son teknoloji performansını sunmak üzere tasarlanmıştır. İşte bazı temel avantajlar:

    1. Ön Eğitilmiş Modeller: Daha hızlı geliştirme için COCO ve ImageNet gibi popüler veri kümeleri üzerinde ön eğitilmiş modelleri kullan.
    2. Yüksek Doğruluk: Etkileyici mAP skorlarına ulaşarak güvenilir nesne algılama sağlar.
    3. Hız: real-time inference için optimize edilmiştir, bu da onu hızlı işleme gerektiren uygulamalar için ideal kılar.
    4. Esneklik: Modelleri birden fazla platformda dağıtmak için ONNX ve TensorRT gibi çeşitli formatlara dışa aktar.

    YOLO26'yı iş başında gösteren kullanım senaryoları ve başarı hikayeleri için Blog sayfamızı keşfet.

Yorumlar