İçeriğe geç

Yönlendirilmiş Sınırlayıcı Kutular Nesne Algılama

Yönlendirilmiş nesne tespiti, nesne tespitinden bir adım daha ileri gider ve bir görüntüdeki nesneleri daha doğru bulmak için ekstra bir açı sunar.

Yönlendirilmiş bir nesne algılayıcının çıktısı, her kutu için sınıf etiketleri ve güven puanlarıyla birlikte görüntüdeki nesneleri tam olarak çevreleyen bir dizi döndürülmüş sınırlayıcı kutudur. Nesne algılama, bir sahnedeki ilgi çekici nesneleri tanımlamanız gerektiğinde, ancak nesnenin tam olarak nerede olduğunu veya tam şeklini bilmeniz gerekmediğinde iyi bir seçimdir.

İpucu

YOLOv8 OBB modelleri şunları kullanır -obb son ek, yani yolov8n-obb.pt ve önceden eğitilmiş DOTAv1.


İzle: Ultralytics YOLOv8 Yönlendirilmiş Sınırlayıcı Kutular (YOLOv8-OBB) kullanarak Nesne Algılama

İzle: Ultralytics HUB kullanarak YOLOv8-OBB ile Nesne Algılama

Görsel Örnekler

OBB kullanarak Gemi Tespiti OBB kullanarak Araç Algılama
OBB kullanarak Gemi Tespiti OBB kullanarak Araç Algılama

Modeller

YOLOv8 Burada DOTAv1 veri kümesi üzerinde ön eğitime tabi tutulmuş OBB modelleri gösterilmektedir.

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

Model boyut
(piksel)
mAPtest
50
Hız
CPU ONNX
(ms)
Hız
A100 TensorRT
(ms)
params
(M)
FLOP'lar
(B)
YOLOv8n-obb 1024 78.0 204.77 3.57 3.1 23.3
YOLOv8s-obb 1024 79.5 424.88 4.07 11.4 76.3
YOLOv8m-obb 1024 80.5 763.48 7.61 26.4 208.6
YOLOv8l-obb 1024 80.7 1278.42 11.83 44.5 433.8
YOLOv8x-obb 1024 81.36 1759.10 13.23 69.5 676.7
  • mAPtest değerleri tek modelli çoklu ölçek içindir. DOTAv1 testi veri kümesi.
    Tarafından çoğaltın yolo val obb data=DOTAv1.yaml device=0 split=test ve birleştirilmiş sonuçları DOTA değerlendirmesi.
  • Hız kullanılarak DOTAv1 val görüntüleri üzerinden ortalaması alınmıştır. Amazon EC2 P4d örnek.
    Tarafından çoğaltın yolo val obb data=DOTAv1.yaml batch=1 device=0|cpu

Tren

Tren YOLOv8n-obb üzerinde dota8.yaml 640 görüntü boyutunda 100 epok için veri kümesi. Kullanılabilir argümanların tam listesi için bkz. Konfigürasyon Sayfa.

Örnek

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-obb.yaml')  # build a new model from YAML
model = YOLO('yolov8n-obb.pt')  # load a pretrained model (recommended for training)
model = YOLO('yolov8n-obb.yaml').load('yolov8n.pt')  # build from YAML and transfer weights

# Train the model
results = model.train(data='dota8.yaml', epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo obb train data=dota8.yaml model=yolov8n-obb.yaml epochs=100 imgsz=640

# Start training from a pretrained *.pt model
yolo obb train data=dota8.yaml model=yolov8n-obb.pt epochs=100 imgsz=640

# Build a new model from YAML, transfer pretrained weights to it and start training
yolo obb train data=dota8.yaml model=yolov8n-obb.yaml pretrained=yolov8n-obb.pt epochs=100 imgsz=640

Veri kümesi formatı

OBB veri kümesi formatı Veri Kümesi Kılavuzunda ayrıntılı olarak bulunabilir.

Val

DOTA8 veri kümesi üzerinde eğitilmiş YOLOv8n-obb model doğruluğunu doğrulayın. Herhangi bir argüman geçilmesine gerek yoktur. model eğitimini sürdürür data ve model öznitelikleri olarak argümanlar.

Örnek

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-obb.pt')  # load an official model
model = YOLO('path/to/best.pt')  # load a custom model

# Validate the model
metrics = model.val(data='dota8.yaml')  # no arguments needed, dataset and settings remembered
metrics.box.map    # map50-95(B)
metrics.box.map50  # map50(B)
metrics.box.map75  # map75(B)
metrics.box.maps   # a list contains map50-95(B) of each category
yolo obb val model=yolov8n-obb.pt data=dota8.yaml  # val official model
yolo obb val model=path/to/best.pt data=path/to/data.yaml  # val custom model

Tahmin Et

Görüntüler üzerinde tahminleri çalıştırmak için eğitilmiş bir YOLOv8n-obb modeli kullanın.

Örnek

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-obb.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
yolo obb predict model=yolov8n-obb.pt source='https://ultralytics.com/images/bus.jpg'  # predict with official model
yolo obb predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'  # predict with custom model

Tamamı görün predict modunun ayrıntıları Tahmin Et Sayfa.

İhracat

Bir YOLOv8n-obb modelini ONNX, CoreML, vb. gibi farklı bir formata aktarın.

Örnek

from ultralytics import YOLO

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

# Export the model
model.export(format='onnx')
yolo export model=yolov8n-obb.pt format=onnx  # export official model
yolo export model=path/to/best.pt format=onnx  # export custom trained model

Mevcut YOLOv8-obb dışa aktarma formatları aşağıdaki tabloda yer almaktadır. kullanarak herhangi bir formata dışa aktarabilirsiniz. format argümanı, yani format='onnx' veya format='engine'. Doğrudan dışa aktarılan modeller üzerinde tahmin veya doğrulama yapabilirsiniz, örn. yolo predict model=yolov8n-obb.onnx. Dışa aktarma tamamlandıktan sonra modeliniz için kullanım örnekleri gösterilir.

Biçim format Tartışma Model Metadata Argümanlar
PyTorch - yolov8n-obb.pt -
TorchScript torchscript yolov8n-obb.torchscript imgsz, optimize, batch
ONNX onnx yolov8n-obb.onnx imgsz, half, dynamic, simplify, opset, batch
OpenVINO openvino yolov8n-obb_openvino_model/ imgsz, half, int8, batch
TensorRT engine yolov8n-obb.engine imgsz, half, dynamic, simplify, workspace, int8, batch
CoreML coreml yolov8n-obb.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolov8n-obb_saved_model/ imgsz, keras, int8, batch
TF GraphDef pb yolov8n-obb.pb imgsz, batch
TF Lite tflite yolov8n-obb.tflite imgsz, half, int8, batch
TF Kenar TPU edgetpu yolov8n-obb_edgetpu.tflite imgsz, batch
TF.js tfjs yolov8n-obb_web_model/ imgsz, half, int8, batch
PaddlePaddle paddle yolov8n-obb_paddle_model/ imgsz, batch
NCNN ncnn yolov8n-obb_ncnn_model/ imgsz, half, batch

Tamamı görün export detaylar İhracat Sayfa.



Oluşturuldu 2024-01-05, Güncellendi 2024-05-08
Yazarlar: Burhan-Q (3), glenn-jocher (16), Laughing-q (3), AyushExel (1)

Yorumlar