Référence pour ultralytics/data/loaders.py
Note
Ce fichier est disponible à l'adresse https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/data/loaders .py. Si tu repères un problème, aide à le corriger en contribuant à une Pull Request 🛠️. Merci 🙏 !
ultralytics.data.loaders.SourceTypes
dataclass
Classe permettant de représenter différents types de sources d'entrée pour les prédictions.
Code source dans ultralytics/data/loaders.py
ultralytics.data.loaders.LoadStreams
Chargeur de flux pour divers types de flux vidéo, prend en charge les flux RTSP, RTMP, HTTP et TCP.
Attributs :
Nom | Type | Description |
---|---|---|
sources |
str
|
Les chemins d'entrée de la source ou les URL pour les flux vidéo. |
vid_stride |
int
|
La bande de fréquence d'images vidéo, la valeur par défaut est 1. |
buffer |
bool
|
Indique si les flux d'entrée doivent être mis en mémoire tampon, la valeur par défaut est False. |
running |
bool
|
Drapeau indiquant si le thread de streaming est en cours d'exécution. |
mode |
str
|
La valeur "stream" indique une capture en temps réel. |
imgs |
list
|
Liste des images pour chaque flux. |
fps |
list
|
Liste des FPS pour chaque flux. |
frames |
list
|
Liste des trames totales pour chaque flux. |
threads |
list
|
Liste des fils pour chaque flux. |
shape |
list
|
Liste des formes pour chaque cours d'eau. |
caps |
list
|
Liste des objets cv2.VideoCapture pour chaque flux. |
bs |
int
|
Taille du lot pour le traitement. |
MĂ©thodes :
Nom | Description |
---|---|
__init__ |
Initialise le chargeur de flux. |
update |
Lire les trames de flux dans le thread du démon. |
close |
Ferme le chargeur de flux et libère les ressources. |
__iter__ |
Renvoie un objet itérateur pour la classe. |
__next__ |
Renvoie les chemins d'accès aux sources, les images transformées et les images originales à traiter. |
__len__ |
Renvoie la longueur de l'objet sources. |
Code source dans ultralytics/data/loaders.py
33 34 35 36 37 38 39 40 41 42 43 44 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 |
|
__init__(sources='file.streams', vid_stride=1, buffer=False)
Initialise les variables d'instance et vérifie que les formes du flux d'entrée sont cohérentes.
Code source dans ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Renvoie les chemins d'accès à la source, les images transformées et les images originales à traiter.
Code source dans ultralytics/data/loaders.py
close()
Ferme le chargeur de flux et libère les ressources.
Code source dans ultralytics/data/loaders.py
update(i, cap, stream)
Lire le flux i
dans le thread du démon.
Code source dans ultralytics/data/loaders.py
ultralytics.data.loaders.LoadScreenshots
YOLOv8 Le chargeur de données pour les captures d'écran.
Cette classe gère le chargement des images de capture d'écran pour les traiter avec YOLOv8.
Convient pour une utilisation avec yolo predict source=screen
.
Attributs :
Nom | Type | Description |
---|---|---|
source |
str
|
L'entrée source indiquant l'écran à capturer. |
screen |
int
|
Le numéro de l'écran à capturer. |
left |
int
|
La coordonnée gauche de la zone de capture d'écran. |
top |
int
|
La coordonnée supérieure de la zone de capture d'écran. |
width |
int
|
La largeur de la zone de capture d'Ă©cran. |
height |
int
|
La hauteur de la zone de capture d'Ă©cran. |
mode |
str
|
La valeur "stream" indique une capture en temps réel. |
frame |
int
|
Compteur pour les images capturées. |
sct |
mss
|
Objet de capture d'Ă©cran de |
bs |
int
|
Taille du lot, réglée sur 1. |
monitor |
dict
|
Surveille les détails de la configuration. |
MĂ©thodes :
Nom | Description |
---|---|
__iter__ |
Renvoie un objet itérateur. |
__next__ |
Capture la prochaine capture d'Ă©cran et la renvoie. |
Code source dans ultralytics/data/loaders.py
__init__(source)
Source = [numéro_d'écran gauche haut largeur hauteur] (pixels).
Code source dans ultralytics/data/loaders.py
__iter__()
__next__()
Capture d'écran mss : récupère les pixels bruts de l'écran sous forme de tableau np.
Code source dans ultralytics/data/loaders.py
ultralytics.data.loaders.LoadImagesAndVideos
YOLOv8 image/video dataloader.
Cette classe gère le chargement et le prétraitement des données image et vidéo pour YOLOv8. Elle prend en charge le chargement à partir de différents formats, y compris des fichiers d'images uniques, des fichiers vidéo et des listes de chemins d'accès aux images et aux vidéos.
Attributs :
Nom | Type | Description |
---|---|---|
files |
list
|
Liste des chemins d'accès aux fichiers image et vidéo. |
nf |
int
|
Nombre total de fichiers (images et vidéos). |
video_flag |
list
|
Drapeaux indiquant si un fichier est une vidéo (True) ou une image (False). |
mode |
str
|
Mode actuel, 'image' ou 'vidéo'. |
vid_stride |
int
|
La marche pour le taux d'images vidéo, la valeur par défaut est 1. |
bs |
int
|
Taille du lot, fixée à 1 pour cette classe. |
cap |
VideoCapture
|
Objet de capture vidéo pour OpenCV. |
frame |
int
|
Compteur d'images pour la vidéo. |
frames |
int
|
Nombre total d'images dans la vidéo. |
count |
int
|
Compteur pour l'itération, initialisé à 0 pendant l'itération. |
MĂ©thodes :
Nom | Description |
---|---|
_new_video |
Crée un nouvel objet cv2.VideoCapture pour un chemin vidéo donné. |
Code source dans ultralytics/data/loaders.py
251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 |
|
__init__(path, batch=1, vid_stride=1)
Initialise le Dataloader et lève FileNotFoundError si le fichier n'est pas trouvé.
Code source dans ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Renvoie le prochain lot d'images ou de trames vidéo avec leurs chemins d'accès et leurs métadonnées.
Code source dans ultralytics/data/loaders.py
ultralytics.data.loaders.LoadPilAndNumpy
Charge les images Ă partir de tableaux PIL et Numpy pour le traitement par lots.
Cette classe est conçue pour gérer le chargement et le prétraitement des données d'image à partir des formats PIL et Numpy. Elle effectue une validation de base et une conversion de format pour s'assurer que les images sont dans le format requis pour le traitement en aval. traitement en aval.
Attributs :
Nom | Type | Description |
---|---|---|
paths |
list
|
Liste des chemins d'accès aux images ou des noms de fichiers autogénérés. |
im0 |
list
|
Liste d'images stockées sous forme de tableaux Numpy. |
mode |
str
|
Type de données en cours de traitement, la valeur par défaut est "image". |
bs |
int
|
Taille du lot, Ă©quivalente Ă la longueur de |
MĂ©thodes :
Nom | Description |
---|---|
_single_check |
Valide et formate une seule image dans un tableau Numpy. |
Code source dans ultralytics/data/loaders.py
__init__(im0)
Initialise le PIL et le Numpy Dataloader.
Code source dans ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Renvoie les chemins d'accès aux lots, les images, les images traitées, None, ''.
ultralytics.data.loaders.LoadTensor
Charge les images à partir des données torch.Tensor .
Cette classe gère le chargement et le prétraitement des données d'image à partir des tenseurs PyTorch en vue d'un traitement ultérieur.
Attributs :
Nom | Type | Description |
---|---|---|
im0 |
Tensor
|
L'entrée tensor contenant l'image ou les images. |
bs |
int
|
La taille du lot, déduite de la forme de l'échantillon. |
mode |
str
|
Mode actuel, réglé sur "image". |
paths |
list
|
Liste des chemins d'accès aux images ou des noms de fichiers. |
count |
int
|
Compteur pour l'itération, initialisé à 0 pendant l'itération. |
MĂ©thodes :
Nom | Description |
---|---|
_single_check |
Valide et modifie éventuellement l'entrée tensor. |
Code source dans ultralytics/data/loaders.py
__init__(im0)
Initialise Tensor Dataloader.
Code source dans ultralytics/data/loaders.py
__iter__()
__len__()
ultralytics.data.loaders.autocast_list(source)
Fusionne une liste de sources de différents types en une liste de tableaux numpy ou d'images PIL.
Code source dans ultralytics/data/loaders.py
ultralytics.data.loaders.get_best_youtube_url(url, use_pafy=True)
Récupère l'URL du flux vidéo MP4 de meilleure qualité d'une vidéo YouTube donnée.
Cette fonction utilise la bibliothèque pafy ou yt_dlp pour extraire les informations vidéo de YouTube. Elle trouve ensuite le format MP4 de qualité MP4 qui possède un codec vidéo mais pas de codec audio, et renvoie l'URL de ce flux vidéo.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
url |
str
|
L'URL de la vidéo YouTube. |
requis |
use_pafy |
bool
|
Utilise le paquet pafy, default=True, sinon utilise le paquet yt_dlp. |
True
|
Retourne :
Type | Description |
---|---|
str
|
L'URL du flux vidéo MP4 de meilleure qualité, ou Aucun si aucun flux approprié n'est trouvé. |
Code source dans ultralytics/data/loaders.py
Créé le 2023-11-12, Mis à jour le 2024-05-08
Auteurs : Burhan-Q (1), glenn-jocher (4), Laughing-q (1)