Référence pour ultralytics/data/dataset.py
Note
Ce fichier est disponible à l'adresse https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/data/dataset .py. Si tu repères un problème, aide à le corriger en contribuant à une Pull Request 🛠️. Merci 🙏 !
ultralytics.data.dataset.YOLODataset
Bases : BaseDataset
Classe de jeu de données pour charger les étiquettes de détection et/ou de segmentation d'objets au format YOLO .
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
data |
dict
|
Un dictionnaire YAML de jeu de données. La valeur par défaut est None. |
None
|
task |
str
|
Un arg explicite pour pointer la tâche en cours, La valeur par défaut est 'detect'. |
'detect'
|
Retourne :
Type | Description |
---|---|
Dataset
|
Un objet du jeu de données PyTorch qui peut être utilisé pour former un modèle de détection d'objets. |
Code source dans ultralytics/data/dataset.py
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 |
|
__init__(*args, data=None, task='detect', **kwargs)
Initialise le jeu de données YOLOD avec des configurations optionnelles pour les segments et les points clés.
Code source dans ultralytics/data/dataset.py
build_transforms(hyp=None)
Construit et ajoute des transformations Ă la liste.
Code source dans ultralytics/data/dataset.py
cache_labels(path=Path('./labels.cache'))
Mets en cache les étiquettes des ensembles de données, vérifie les images et lis les formes.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
path |
Path
|
Chemin d'accès où enregistrer le fichier de cache. La valeur par défaut est Path('./labels.cache'). |
Path('./labels.cache')
|
Retourne :
Type | Description |
---|---|
dict
|
Ă©tiquettes. |
Code source dans ultralytics/data/dataset.py
close_mosaic(hyp)
Fixe les options mosaïque, copier_coller et mélange à 0.0 et construit les transformations.
Code source dans ultralytics/data/dataset.py
collate_fn(batch)
staticmethod
Rassemble les échantillons de données en lots.
Code source dans ultralytics/data/dataset.py
get_labels()
Renvoie le dictionnaire des Ă©tiquettes pour la formation YOLO .
Code source dans ultralytics/data/dataset.py
update_labels_info(label)
Personnalise le format de ton Ă©tiquette ici.
Note
cls n'est pas avec les bboxes maintenant, la classification et la segmentation sémantique ont besoin d'une étiquette cls indépendante. Peut également prendre en charge la classification et la segmentation sémantique en ajoutant ou en supprimant des clés dict à cet endroit.
Code source dans ultralytics/data/dataset.py
ultralytics.data.dataset.YOLOMultiModalDataset
Bases : YOLODataset
Classe de jeu de données pour charger les étiquettes de détection et/ou de segmentation d'objets au format YOLO .
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
data |
dict
|
Un dictionnaire YAML de jeu de données. La valeur par défaut est None. |
None
|
task |
str
|
Un arg explicite pour pointer la tâche en cours, La valeur par défaut est 'detect'. |
'detect'
|
Retourne :
Type | Description |
---|---|
Dataset
|
Un objet du jeu de données PyTorch qui peut être utilisé pour former un modèle de détection d'objets. |
Code source dans ultralytics/data/dataset.py
__init__(*args, data=None, task='detect', **kwargs)
Initialise un objet de jeu de données pour les tâches de détection d'objets avec des spécifications facultatives.
build_transforms(hyp=None)
Améliore les transformations de données avec une augmentation optionnelle du texte pour une formation multimodale.
Code source dans ultralytics/data/dataset.py
update_labels_info(label)
Ajoute des informations sur les textes pour la formation aux modèles multimodaux.
Code source dans ultralytics/data/dataset.py
ultralytics.data.dataset.GroundingDataset
Bases : YOLODataset
Code source dans ultralytics/data/dataset.py
__init__(*args, task='detect', json_file, **kwargs)
Initialise un GroundingDataset pour la détection d'objets, en chargeant des annotations à partir d'un fichier JSON spécifié.
Code source dans ultralytics/data/dataset.py
build_transforms(hyp=None)
Configure les augmentations pour la formation avec un chargement de texte optionnel ; hyp
règle l'intensité de l'augmentation.
Code source dans ultralytics/data/dataset.py
get_img_files(img_path)
get_labels()
Charge les annotations à partir d'un fichier JSON, filtre et normalise les boîtes de délimitation pour chaque image.
Code source dans ultralytics/data/dataset.py
ultralytics.data.dataset.YOLOConcatDataset
Bases : ConcatDataset
Ensemble de données en tant que concaténation de plusieurs ensembles de données.
Cette classe est utile pour assembler différents ensembles de données existants.
Code source dans ultralytics/data/dataset.py
ultralytics.data.dataset.SemanticDataset
Bases : BaseDataset
Ensemble de données de segmentation sémantique.
Cette classe est chargée de gérer les ensembles de données utilisés pour les tâches de segmentation sémantique. Elle hérite des fonctionnalités de la classe BaseDataset.
Note
Cette classe est actuellement un substitut et doit être complétée par des méthodes et des attributs pour soutenir les tâches de segmentation sémantique. les tâches de segmentation sémantique.
Code source dans ultralytics/data/dataset.py
ultralytics.data.dataset.ClassificationDataset
Étend torchvision ImageFolder pour prendre en charge les tâches de classification YOLO , en offrant des fonctionnalités telles que l'augmentation de l'image, la mise en cache et la vérification. d'images, la mise en cache et la vérification. Il est conçu pour traiter efficacement de grands ensembles de données pour la formation de modèles d'apprentissage profond. modèles d'apprentissage profond, avec des transformations d'images et des mécanismes de mise en cache optionnels pour accélérer la formation.
Cette classe permet des augmentations à l'aide des bibliothèques torchvision et Albumentations, et prend en charge la mise en cache des images dans la RAM ou sur le disque pour réduire la charge d'entrée-sortie. dans la RAM ou sur le disque pour réduire la charge d'E/S pendant la formation. En outre, elle met en œuvre un processus de vérification robuste pour garantir l'intégrité et la cohérence des données.
Attributs :
Nom | Type | Description |
---|---|---|
cache_ram |
bool
|
Indique si la mise en cache dans la mémoire vive est activée. |
cache_disk |
bool
|
Indique si la mise en cache sur disque est activée. |
samples |
list
|
Une liste de tuples, chacun contenant le chemin d'accès à une image, son index de classe, le chemin d'accès à son fichier cache .npy (si la mise en cache se fait sur disque), et éventuellement le tableau d'images chargées (si la mise en cache se fait en RAM). |
torch_transforms |
callable
|
PyTorch les transformations Ă appliquer aux images. |
Code source dans ultralytics/data/dataset.py
384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 |
|
__getitem__(i)
Renvoie le sous-ensemble de données et de cibles correspondant aux indices donnés.
Code source dans ultralytics/data/dataset.py
__init__(root, args, augment=False, prefix='')
Initialise l'objet YOLO avec la racine, la taille de l'image, les augmentations et les paramètres du cache.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
root |
str
|
Chemin d'accès au répertoire du jeu de données où les images sont stockées dans une structure de dossiers spécifique à la classe. |
requis |
args |
Namespace
|
Configuration contenant les paramètres liés au jeu de données, tels que la taille de l'image, les paramètres d'augmentation et les paramètres du cache.
les paramètres d'augmentation et les paramètres de cache. Elle comprend des attributs tels que |
requis |
augment |
bool
|
Indique s'il faut appliquer des augmentations à l'ensemble de données. La valeur par défaut est False. |
False
|
prefix |
str
|
Préfixe pour les noms de fichiers d'enregistrement et de cache, facilitant l'identification des ensembles de données et le débogage. débogage. La valeur par défaut est une chaîne vide. |
''
|
Code source dans ultralytics/data/dataset.py
__len__()
verify_images()
Vérifie toutes les images de l'ensemble de données.
Code source dans ultralytics/data/dataset.py
Créé le 2023-11-12, Mis à jour le 2024-05-08
Auteurs : Burhan-Q (1), glenn-jocher (4), Laughing-q (1)