Skip to content

Aperçu des ensembles de données OBB (Oriented Bounding Box)

L'apprentissage d'un modèle précis de détection d'objets à l'aide de boîtes de délimitation orientées (OBB) nécessite un ensemble de données approfondi. Ce guide explique les différents formats d'ensembles de données OBB compatibles avec les modèles Ultralytics YOLO , et donne un aperçu de leur structure, de leur application et des méthodes de conversion de format.

Formats de jeux de données OBB pris en charge

YOLO Format OBB

Le format OBB de YOLO désigne les boîtes de délimitation par leurs quatre points d'angle dont les coordonnées sont normalisées entre 0 et 1. Il suit ce format :

class_index, x1, y1, x2, y2, x3, y3, x4, y4

En interne, YOLO traite les pertes et les produits dans le cadre de la xywhr qui représente le point central (xy), la largeur, la hauteur et la rotation de la boîte de délimitation.

Exemples de formats OBB

Un exemple de *.txt fichier d'Ă©tiquette pour l'image ci-dessus, qui contient un objet de la classe 0 au format OBB, pourrait ressembler Ă  ce qui suit :

0 0.780811 0.743961 0.782371 0.74686 0.777691 0.752174 0.776131 0.749758

Utilisation

Pour former un modèle à l'aide de ces formats OBB :

Exemple

from ultralytics import YOLO

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

# Train the model on the DOTAv2 dataset
results = model.train(data="DOTAv1.yaml", epochs=100, imgsz=640)
# Train a new YOLOv8n-OBB model on the DOTAv2 dataset
yolo detect train data=DOTAv1.yaml model=yolov8n.pt epochs=100 imgsz=640

Ensembles de données pris en charge

Actuellement, les ensembles de données suivants sont pris en charge avec des boîtes de délimitation orientées :

  • DOTA-v2: DOTA (A Large-scale Dataset for Object Detection in Aerial Images) version 2, met l'accent sur la dĂ©tection Ă  partir de perspectives aĂ©riennes et contient des boĂ®tes de dĂ©limitation orientĂ©es avec 1,7 million d'instances et 11 268 images.
  • DOTA8: Un petit sous-ensemble de 8 images du jeu de donnĂ©es DOTA complet adaptĂ© aux flux de travail de test et aux vĂ©rifications de l'intĂ©gration continue (CI) de la formation Ă  l'OBB dans le cadre du programme de formation Ă  l'OBB. ultralytics dĂ©pĂ´t.

Incorporer ton propre jeu de données OBB

Pour ceux qui souhaitent introduire leurs propres ensembles de données avec des boîtes de délimitation orientées, assure-toi de la compatibilité avec le "YOLO OBB format " mentionné ci-dessus. Convertis tes annotations à ce format requis et détaille les chemins, les classes et les noms de classes dans un fichier de configuration YAML correspondant.

Convertir les formats d'Ă©tiquettes

DOTA Dataset Format vers YOLO OBB Format

Ce script permet de faire passer les Ă©tiquettes du format DOTA dataset au format YOLO OBB :

Exemple

from ultralytics.data.converter import convert_dota_to_yolo_obb

convert_dota_to_yolo_obb("path/to/DOTA")

Ce mécanisme de conversion est essentiel pour les ensembles de données au format DOTA, car il garantit l'alignement sur le format OBB de Ultralytics YOLO .

Il est impératif de valider la compatibilité de l'ensemble de données avec ton modèle et de respecter les conventions de format nécessaires. Des ensembles de données correctement structurés sont essentiels pour former des modèles de détection d'objets efficaces avec des boîtes de délimitation orientées.



Created 2023-11-12, Updated 2024-06-02
Authors: glenn-jocher (9)

Commentaires