Riferimento per ultralytics/data/loaders.py
Nota
Questo file è disponibile su https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/data/loaders .py. Se riscontri un problema, contribuisci a risolverlo inviando una Pull Request 🛠️. Grazie 🙏!
ultralytics.data.loaders.SourceTypes
dataclass
Classe per rappresentare vari tipi di fonti di input per le previsioni.
Codice sorgente in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadStreams
Stream Loader per vari tipi di flussi video, supporta flussi RTSP, RTMP, HTTP e TCP.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
sources |
str
|
I percorsi o gli URL di ingresso della sorgente per i flussi video. |
vid_stride |
int
|
Passo della frequenza dei fotogrammi video, valore predefinito 1. |
buffer |
bool
|
Se bufferizzare o meno i flussi di input, l'impostazione predefinita è False. |
running |
bool
|
Flag per indicare se il thread di streaming è in esecuzione. |
mode |
str
|
Imposta su "stream" per indicare l'acquisizione in tempo reale. |
imgs |
list
|
Elenco dei fotogrammi dell'immagine per ogni flusso. |
fps |
list
|
Elenco degli FPS per ogni flusso. |
frames |
list
|
Elenco dei fotogrammi totali per ogni flusso. |
threads |
list
|
Elenco dei thread per ogni flusso. |
shape |
list
|
Elenco di forme per ogni flusso. |
caps |
list
|
Elenco di oggetti cv2.VideoCapture per ogni flusso. |
bs |
int
|
Dimensione del lotto per l'elaborazione. |
Metodi:
Nome | Descrizione |
---|---|
__init__ |
Inizializza lo stream loader. |
update |
Leggi i fotogrammi dello stream nel thread del demone. |
close |
Chiudi lo stream loader e rilascia le risorse. |
__iter__ |
Restituisce un oggetto iteratore per la classe. |
__next__ |
Restituisce i percorsi di origine, le immagini trasformate e quelle originali per l'elaborazione. |
__len__ |
Restituisce la lunghezza dell'oggetto sorgenti. |
Codice sorgente in 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)
Inizializza le variabili dell'istanza e controlla che le forme del flusso di input siano coerenti.
Codice sorgente in ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Restituisce i percorsi di origine, le immagini trasformate e quelle originali per l'elaborazione.
Codice sorgente in ultralytics/data/loaders.py
close()
Chiudi lo stream loader e rilascia le risorse.
Codice sorgente in ultralytics/data/loaders.py
update(i, cap, stream)
Leggi il flusso i
frame nel thread del demone.
Codice sorgente in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadScreenshots
YOLOv8 screenshot dataloader.
Questa classe gestisce il caricamento di immagini di screenshot per l'elaborazione con YOLOv8.
Può essere utilizzata con yolo predict source=screen
.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
source |
str
|
L'ingresso sorgente che indica la schermata da catturare. |
screen |
int
|
Il numero della schermata da catturare. |
left |
int
|
La coordinata sinistra dell'area di cattura dello schermo. |
top |
int
|
La coordinata superiore dell'area di cattura dello schermo. |
width |
int
|
La larghezza dell'area di cattura dello schermo. |
height |
int
|
L'altezza dell'area di cattura dello schermo. |
mode |
str
|
Imposta su "stream" per indicare l'acquisizione in tempo reale. |
frame |
int
|
Contatore dei fotogrammi catturati. |
sct |
mss
|
Oggetto di cattura dello schermo da |
bs |
int
|
Dimensione del lotto, impostata su 1. |
monitor |
dict
|
Controlla i dettagli della configurazione. |
Metodi:
Nome | Descrizione |
---|---|
__iter__ |
Restituisce un oggetto iteratore. |
__next__ |
Cattura il prossimo screenshot e lo restituisce. |
Codice sorgente in ultralytics/data/loaders.py
__init__(source)
Fonte = [screen_number left top width height] (pixel).
Codice sorgente in ultralytics/data/loaders.py
__iter__()
__next__()
cattura schermo mss: ottieni i pixel grezzi dallo schermo come array np.
Codice sorgente in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadImagesAndVideos
YOLOv8 dataloader immagine/video.
Questa classe gestisce il caricamento e la pre-elaborazione dei dati di immagini e video per YOLOv8. Supporta il caricamento da vari formati, tra cui file di immagini singole, file video ed elenchi di percorsi di immagini e video.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
files |
list
|
Elenco dei percorsi dei file immagine e video. |
nf |
int
|
Numero totale di file (immagini e video). |
video_flag |
list
|
Flags che indicano se un file è un video (True) o un'immagine (False). |
mode |
str
|
Modalità corrente, "immagine" o "video". |
vid_stride |
int
|
Stride per la frequenza dei fotogrammi video, valore predefinito 1. |
bs |
int
|
Dimensione del lotto, impostata a 1 per questa classe. |
cap |
VideoCapture
|
Oggetto di acquisizione video per OpenCV. |
frame |
int
|
Contatore di fotogrammi per il video. |
frames |
int
|
Numero totale di fotogrammi nel video. |
count |
int
|
Contatore per l'iterazione, inizializzato a 0 durante la fase di |
Metodi:
Nome | Descrizione |
---|---|
_new_video |
Crea un nuovo oggetto cv2.VideoCapture per un determinato percorso video. |
Codice sorgente in 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)
Inizializza il Dataloader e solleva FileNotFoundError se il file non viene trovato.
Codice sorgente in ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Restituisce il prossimo gruppo di immagini o fotogrammi video con i relativi percorsi e metadati.
Codice sorgente in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadPilAndNumpy
Carica le immagini da array PIL e Numpy per l'elaborazione in batch.
Questa classe è stata progettata per gestire il caricamento e la pre-elaborazione dei dati delle immagini da entrambi i formati PIL e Numpy. Esegue la convalida di base e la conversione del formato per garantire che le immagini siano nel formato richiesto per l'elaborazione a valle. l'elaborazione a valle.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
paths |
list
|
Elenco dei percorsi delle immagini o dei nomi dei file autogenerati. |
im0 |
list
|
Elenco di immagini memorizzate come array Numpy. |
mode |
str
|
Tipo di dati da elaborare, per impostazione predefinita "immagine". |
bs |
int
|
Dimensione del lotto, equivalente alla lunghezza di |
Metodi:
Nome | Descrizione |
---|---|
_single_check |
Convalida e formatta una singola immagine in un array Numpy. |
Codice sorgente in ultralytics/data/loaders.py
__init__(im0)
Inizializza PIL e Numpy Dataloader.
Codice sorgente in ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Restituisce i percorsi dei batch, le immagini, le immagini elaborate, Nessuno, ''.
ultralytics.data.loaders.LoadTensor
Carica le immagini da torch.Tensor dati.
Questa classe gestisce il caricamento e la pre-elaborazione dei dati delle immagini dai tensori di PyTorch per la successiva elaborazione.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
im0 |
Tensor
|
L'ingresso tensor contenente le immagini. |
bs |
int
|
Dimensione del lotto, dedotta dalla forma di |
mode |
str
|
Modalità corrente, impostata su "immagine". |
paths |
list
|
Elenco dei percorsi o dei nomi dei file delle immagini. |
count |
int
|
Contatore per l'iterazione, inizializzato a 0 durante la fase di |
Metodi:
Nome | Descrizione |
---|---|
_single_check |
Convalida ed eventualmente modifica l'input tensor. |
Codice sorgente in ultralytics/data/loaders.py
__init__(im0)
Inizializza Tensor Dataloader.
Codice sorgente in ultralytics/data/loaders.py
__iter__()
__len__()
ultralytics.data.loaders.autocast_list(source)
Unisce un elenco di sorgenti di tipo diverso in un elenco di array numpy o immagini PIL.
Codice sorgente in ultralytics/data/loaders.py
ultralytics.data.loaders.get_best_youtube_url(url, use_pafy=True)
Recupera l'URL del flusso video MP4 di migliore qualità da un determinato video di YouTube.
Questa funzione utilizza la libreria pafy o yt_dlp per estrarre le informazioni sul video da YouTube. Trova quindi il formato MP4 di massima qualità formato MP4 di massima qualità che ha un codec video ma non un codec audio e restituisce l'URL di questo flusso video.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
url |
str
|
L'URL del video di YouTube. |
richiesto |
use_pafy |
bool
|
Usa il pacchetto pafy, default=True, altrimenti usa il pacchetto yt_dlp. |
True
|
Restituzione:
Tipo | Descrizione |
---|---|
str
|
L'URL del flusso video MP4 di migliore qualità, oppure Nessuno se non viene trovato alcun flusso adatto. |