İçeriğe geç

OBB ile DOTA Veri Kümesi

DOTA, nesne tespiti konusunda uzmanlaşmış bir veri kümesi olarak öne çıkar ve hava görüntülerindeki nesne tespitine odaklanır. DOTA veri kümesi serisinden türetilmiştir ve çeşitli hava sahnelerini Yönlendirilmiş Sınırlayıcı Kutular (OBB) ile yakalayan açıklama eklenmiş görüntüler sunar.

DOTA sınıfı görselleri

Temel Özellikler



İzle: Google Colab'da Yönlendirilmiş Sınırlayıcı Kutular için DOTA Veri Kümesi üzerinde Ultralytics YOLO11 Nasıl Eğitilir

  • 800 × 800 ile 20.000 × 20.000 piksel arasında değişen görüntü boyutlarına sahip, çeşitli sensörlerden ve platformlardan toplama.
  • özelliği, 18 kategoride 1,7 milyondan fazla Yönlendirilmiş Sınırlayıcı Kutu.
  • Çok ölçekli nesne algılamayı kapsar.
  • Örnekler, farklı ölçeklerdeki, yönelimlerdeki ve şekillerdeki nesneleri yakalayan keyfi (8 d.o.f.) dörtgen kullanılarak uzmanlar tarafından açıklanır.

Veri Kümesi Sürümleri

DOTA-v1.0

  • 15 ortak kategori içerir.
  • 188.282 örnekle birlikte 2.806 görüntüden oluşur.
  • Bölünme oranları: eğitim için 1/2, doğrulama için 1/6 ve test için 1/3.

DOTA-v1.5

DOTA-v2.0

  • Google Earth, GF-2 Uydusu ve diğer hava görüntülerinden koleksiyonlar.
  • 18 ortak kategori içerir.
  • Tam 1.793.658 örnekle birlikte 11.268 görüntüden oluşur.
  • Yeni eklenen kategoriler: "havaalanı" ve "helikopter pisti".
  • Görüntü bölmeleri:
    • Eğitim: 268.627 örneklemli 1.830 resim.
    • Doğrulama: 81.048 örnek içeren 593 görüntü.
    • Test-dev: 353.346 örneklemli 2.792 görüntü.
    • Test-challenge: 1.090.637 örneklemli 6.053 görüntü.

Veri Seti Yapısı

DOTA, OBB nesne algılama zorlukları için özel olarak tasarlanmış yapılandırılmış bir düzene sahiptir:

  • Görüntüler: Çeşitli arazileri ve yapıları yakalayan geniş bir yüksek çözünürlüklü hava görüntüleri koleksiyonu.
  • Yönlendirilmiş Sınırlayıcı Kutular: Nesneleri yönelimlerinden bağımsız olarak kapsayan, döndürülmüş dikdörtgenler şeklindeki açıklamalar; uçaklar, gemiler ve binalar gibi nesneleri yakalamak için idealdir.

Uygulamalar

DOTA, özellikle hava görüntü analizi için uyarlanmış modelleri eğitmek ve değerlendirmek için bir ölçüt görevi görür. OBB açıklamalarının dahil edilmesiyle, hava görüntülerinin nüanslarına hitap eden özel nesne algılama modellerinin geliştirilmesini sağlayarak benzersiz bir zorluk sunar. Veri kümesi, uzaktan algılama, gözetim ve çevre izleme uygulamaları için özellikle değerlidir.

Veri Seti YAML

Tipik olarak, veri kümeleri, veri kümesinin yapılandırmasını detaylandıran bir YAML (Yet Another Markup Language) dosyası içerir. DOTA v1 ve DOTA v1.5 için Ultralytics şunları sağlar: DOTAv1.yaml ve DOTAv1.5.yaml dosyaları. Bunlar ve DOTA v2 hakkında ek ayrıntılar için lütfen DOTA'nın resmi deposuna ve belgelerine bakın.

DOTAv1.yaml

# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# DOTA 1.0 dataset https://captain-whu.github.io/DOTA/index.html for object detection in aerial images by Wuhan University
# Documentation: https://docs.ultralytics.com/datasets/obb/dota-v2/
# Example usage: yolo train model=yolov8n-obb.pt data=DOTAv1.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dota1 ← downloads here (2GB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: DOTAv1 # dataset root dir
train: images/train # train images (relative to 'path') 1411 images
val: images/val # val images (relative to 'path') 458 images
test: images/test # test images (optional) 937 images

# Classes for DOTA 1.0
names:
  0: plane
  1: ship
  2: storage tank
  3: baseball diamond
  4: tennis court
  5: basketball court
  6: ground track field
  7: harbor
  8: bridge
  9: large vehicle
  10: small vehicle
  11: helicopter
  12: roundabout
  13: soccer ball field
  14: swimming pool

# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/DOTAv1.zip

DOTA resimlerini böl

DOTA veri kümesini eğitmek için, yüksek çözünürlüklü orijinal DOTA görüntülerini çok ölçekli şekilde 1024x1024 çözünürlüğe sahip görüntülere böleriz. Bu ön işleme adımı, orijinal görüntüler son derece büyük olabileceğinden verimli eğitim için çok önemlidir.

Resimleri böl

from ultralytics.data.split_dota import split_test, split_trainval

# split train and val set, with labels.
split_trainval(
    data_root="path/to/DOTAv1.0/",
    save_dir="path/to/DOTAv1.0-split/",
    rates=[0.5, 1.0, 1.5],  # multiscale
    gap=500,
)
# split test set, without labels.
split_test(
    data_root="path/to/DOTAv1.0/",
    save_dir="path/to/DOTAv1.0-split/",
    rates=[0.5, 1.0, 1.5],  # multiscale
    gap=500,
)

Kullanım

DOTA v1 veri kümesi üzerinde bir model eğitmek için aşağıdaki kod parçacıklarını kullanabilirsiniz. Mevcut argümanların kapsamlı bir listesi için daima modelinizin belgelerine bakın. Daha küçük bir alt küme ile deneme yapmak isteyenler için, hızlı test için yalnızca 8 görüntü içeren DOTA8 veri kümesini kullanmayı düşünebilirsiniz.

Uyarı

Lütfen DOTAv1 veri setindeki tüm resimlerin ve ilgili açıklamaların akademik amaçlarla kullanılabileceğini, ancak ticari kullanımın yasak olduğunu unutmayın. Veri seti oluşturucularının isteklerine gösterdiğiniz anlayış ve saygı için çok teşekkür ederiz!

Eğitim Örneği

from ultralytics import YOLO

# Create a new YOLO11n-OBB model from scratch
model = YOLO("yolo11n-obb.yaml")

# Train the model on the DOTAv1 dataset
results = model.train(data="DOTAv1.yaml", epochs=100, imgsz=1024)
# Train a new YOLO11n-OBB model on the DOTAv1 dataset
yolo obb train data=DOTAv1.yaml model=yolo11n-obb.pt epochs=100 imgsz=1024

Örnek Veri ve Açıklamalar

Veri kümesine bir göz atmak, derinliğini gösterir:

Veri kümesi örnek görüntüsü

  • DOTA örnekleri: Bu anlık görüntü, hava sahnelerinin karmaşıklığının ve nesneleri doğal yönelimlerinde yakalayan Yönlendirilmiş Sınırlayıcı Kutu açıklamalarının öneminin altını çiziyor.

Veri kümesinin zenginliği, yalnızca hava görüntülemeye özgü nesne algılama zorluklarına dair paha biçilmez bilgiler sunar. DOTA-v2.0 veri kümesi, kapsamlı açıklamaları ve çeşitli nesne kategorileri nedeniyle özellikle uzaktan algılama ve hava gözetleme projeleri için popüler hale gelmiştir.

Alıntılar ve Teşekkürler

Çalışmalarında DOTA'dan yararlananlar için, ilgili araştırma makalelerine atıfta bulunmak önemlidir:

@article{9560031,
  author={Ding, Jian and Xue, Nan and Xia, Gui-Song and Bai, Xiang and Yang, Wen and Yang, Michael and Belongie, Serge and Luo, Jiebo and Datcu, Mihai and Pelillo, Marcello and Zhang, Liangpei},
  journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
  title={Object Detection in Aerial Images: A Large-Scale Benchmark and Challenges},
  year={2021},
  volume={},
  number={},
  pages={1-1},
  doi={10.1109/TPAMI.2021.3117983}
}

Bu veri kümesini düzenleme konusundaki takdire şayan çabalarından dolayı DOTA veri kümelerinin arkasındaki ekibe özel bir teşekkür. Veri kümesi ve nüanslarının kapsamlı bir şekilde anlaşılması için lütfen resmi DOTA web sitesini ziyaret edin.

SSS

DOTA veri seti nedir ve hava görüntülerinde nesne tespiti için neden önemlidir?

DOTA veri seti, hava görüntülerinde nesne tespiti üzerine odaklanan özel bir veri setidir. Yönlendirilmiş Sınırlayıcı Kutular (OBB) içerir ve çeşitli hava sahnelerinden açıklanmış görüntüler sağlar. DOTA'nın 1,7 milyon açıklaması ve 18 kategorisi genelindeki nesne yönlendirmesi, ölçeği ve şeklindeki çeşitlilik, onu gözetim, çevre izleme ve afet yönetimi gibi alanlarda kullanılanlar gibi hava görüntüleme analizi için uyarlanmış modeller geliştirmek ve değerlendirmek için ideal hale getirmektedir.

DOTA veri kümesi, görüntülerdeki farklı ölçekleri ve yönlendirmeleri nasıl ele alır?

DOTA, nesneleri yönlerinden bağımsız olarak kapsayan döndürülmüş dikdörtgenlerle temsil edilen Yönlendirilmiş Sınırlayıcı Kutuları (OBB) kullanır. Bu yöntem, küçük veya farklı açılarda olsun, nesnelerin doğru bir şekilde yakalanmasını sağlar. 800 × 800 ile 20.000 × 20.000 piksel arasında değişen veri kümesinin çok ölçekli görüntüleri, hem küçük hem de büyük nesnelerin etkili bir şekilde algılanmasına olanak tanır. Bu yaklaşım, nesnelerin çeşitli açılarda ve ölçeklerde göründüğü hava görüntüleri için özellikle değerlidir.

DOTA veri kümesini kullanarak bir modeli nasıl eğitebilirim?

DOTA veri kümesi üzerinde bir model eğitmek için, Ultralytics YOLO ile aşağıdaki örneği kullanabilirsiniz:

Eğitim Örneği

from ultralytics import YOLO

# Create a new YOLO11n-OBB model from scratch
model = YOLO("yolo11n-obb.yaml")

# Train the model on the DOTAv1 dataset
results = model.train(data="DOTAv1.yaml", epochs=100, imgsz=1024)
# Train a new YOLO11n-OBB model on the DOTAv1 dataset
yolo obb train data=DOTAv1.yaml model=yolo11n-obb.pt epochs=100 imgsz=1024

DOTA resimlerini bölme ve ön işleme hakkında daha fazla bilgi için DOTA resimlerini bölme bölümüne bakın.

DOTA-v1.0, DOTA-v1.5 ve DOTA-v2.0 arasındaki farklar nelerdir?

  • DOTA-v1.0: 188.282 örnekle 2.806 görüntüde 15 ortak kategori içerir. Veri kümesi eğitim, doğrulama ve test kümelerine ayrılmıştır.
  • DOTA-v1.5: Çok küçük örnekleri (10 pikselden az) açıklayarak ve toplamda 403.318 örnekle yeni bir "konteyner vinci" kategorisi ekleyerek DOTA-v1.0 üzerine inşa edilmiştir.
  • DOTA-v2.0: Google Earth ve GF-2 Uydusu'ndan alınan açıklamalarla daha da genişleyerek 11.268 görüntü ve 1.793.658 örnek içerir. "Havaalanı" ve "helikopter pisti" gibi yeni kategoriler içerir.

Ayrıntılı bir karşılaştırma ve ek ayrıntılar için veri kümesi sürümleri bölümünü kontrol edin.

Yüksek çözünürlüklü DOTA görüntülerini eğitim için nasıl hazırlayabilirim?

Çok büyük olabilen DOTA görüntüleri, yönetilebilir eğitim için daha küçük çözünürlüklere bölünür. Görüntüleri bölmek için bir Python kodu parçacığı:

Örnek

from ultralytics.data.split_dota import split_test, split_trainval

# split train and val set, with labels.
split_trainval(
    data_root="path/to/DOTAv1.0/",
    save_dir="path/to/DOTAv1.0-split/",
    rates=[0.5, 1.0, 1.5],  # multiscale
    gap=500,
)
# split test set, without labels.
split_test(
    data_root="path/to/DOTAv1.0/",
    save_dir="path/to/DOTAv1.0-split/",
    rates=[0.5, 1.0, 1.5],  # multiscale
    gap=500,
)

Bu işlem, daha iyi eğitim verimliliği ve model performansı sağlar. Ayrıntılı talimatlar için split DOTA images section bölümünü ziyaret edin.



📅 1 yıl önce oluşturuldu ✏️ 2 ay önce güncellendi

Yorumlar