Referentie voor ultralytics/data/loaders.py
Opmerking
Dit bestand is beschikbaar op https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/data/loaders .py. Als je een probleem ziet, help het dan oplossen door een Pull Request 🛠️ bij te dragen. Bedankt 🙏!
ultralytics.data.loaders.SourceTypes
dataclass
Klasse om verschillende soorten invoerbronnen voor voorspellingen weer te geven.
Broncode in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadStreams
Stream Loader voor verschillende soorten videostreams, ondersteunt RTSP, RTMP, HTTP en TCP streams.
Kenmerken:
Naam | Type | Beschrijving |
---|---|---|
sources |
str
|
De broninvoerpaden of URL's voor de videostreams. |
vid_stride |
int
|
Video frame-rate stride, standaard ingesteld op 1. |
buffer |
bool
|
Of invoerstromen gebufferd moeten worden, staat standaard op False. |
running |
bool
|
Vlag om aan te geven of de streaming thread draait. |
mode |
str
|
Ingesteld op 'stream' om real-time vastlegging aan te geven. |
imgs |
list
|
Lijst met afbeeldingsframes voor elke stream. |
fps |
list
|
Lijst met FPS voor elke stream. |
frames |
list
|
Lijst met totale frames voor elke stream. |
threads |
list
|
Lijst met threads voor elke stream. |
shape |
list
|
Lijst met vormen voor elke stroom. |
caps |
list
|
Lijst met cv2.VideoCapture objecten voor elke stream. |
bs |
int
|
Batchgrootte voor verwerking. |
Methoden:
Naam | Beschrijving |
---|---|
__init__ |
De streamloader initialiseren. |
update |
Streamframes lezen in daemon thread. |
close |
Sluit de streamloader en geef de bronnen vrij. |
__iter__ |
Geeft een iteratorobject voor de klasse terug. |
__next__ |
Geeft bronpaden, getransformeerde en originele afbeeldingen terug voor verwerking. |
__len__ |
Geeft de lengte van het bronobject. |
Broncode 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)
Initialiseer instantievariabelen en controleer op consistente vormen van de invoerstroom.
Broncode in ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Geeft bronpaden, getransformeerde en originele afbeeldingen terug voor verwerking.
Broncode in ultralytics/data/loaders.py
close()
Sluit de streamloader en geef de bronnen vrij.
Broncode in ultralytics/data/loaders.py
update(i, cap, stream)
Stroom lezen i
frames in daemon thread.
Broncode in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadScreenshots
YOLOv8 screenshot dataloader.
Deze klasse beheert het laden van schermafbeeldingen voor verwerking met YOLOv8.
Geschikt voor gebruik met yolo predict source=screen
.
Kenmerken:
Naam | Type | Beschrijving |
---|---|---|
source |
str
|
De broningang die aangeeft welk scherm moet worden vastgelegd. |
screen |
int
|
Het schermnummer dat moet worden vastgelegd. |
left |
int
|
De linkercoördinaat voor het schermopnamegebied. |
top |
int
|
De bovenste coördinaat voor het schermopnamegebied. |
width |
int
|
De breedte van het schermopnamegebied. |
height |
int
|
De hoogte van het schermopnamegebied. |
mode |
str
|
Ingesteld op 'stream' om real-time vastlegging aan te geven. |
frame |
int
|
Teller voor vastgelegde frames. |
sct |
mss
|
Object voor schermopname van |
bs |
int
|
Batchgrootte, ingesteld op 1. |
monitor |
dict
|
Monitor configuratiedetails. |
Methoden:
Naam | Beschrijving |
---|---|
__iter__ |
Geeft een iteratorobject terug. |
__next__ |
Maakt het volgende screenshot en stuurt het terug. |
Broncode in ultralytics/data/loaders.py
__init__(source)
Bron = [scherm_nummer links boven breedte hoogte] (pixels).
Broncode in ultralytics/data/loaders.py
__iter__()
__next__()
mss schermopname: ruwe pixels van het scherm als np-array.
Broncode in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadImagesAndVideos
YOLOv8 beeld/video datalader.
Deze klasse beheert het laden en voorbewerken van beeld- en videodata voor YOLOv8. Het ondersteunt het laden van verschillende formaten, waaronder afzonderlijke afbeeldingsbestanden, videobestanden en lijsten met afbeeldings- en videopaden.
Kenmerken:
Naam | Type | Beschrijving |
---|---|---|
files |
list
|
Lijst met paden van afbeeldings- en videobestanden. |
nf |
int
|
Totaal aantal bestanden (afbeeldingen en video's). |
video_flag |
list
|
Vlaggen die aangeven of een bestand een video (True) of een afbeelding (False) is. |
mode |
str
|
Huidige modus, 'afbeelding' of 'video'. |
vid_stride |
int
|
Stride voor video frame-rate, standaard ingesteld op 1. |
bs |
int
|
Partijgrootte, ingesteld op 1 voor deze klasse. |
cap |
VideoCapture
|
Video-opnameobject voor OpenCV. |
frame |
int
|
Frameteller voor video. |
frames |
int
|
Totaal aantal frames in de video. |
count |
int
|
Teller voor iteratie, geïnitialiseerd op 0 tijdens |
Methoden:
Naam | Beschrijving |
---|---|
_new_video |
Creëert een nieuw cv2.VideoCapture object voor een gegeven videopad. |
Broncode 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)
Initialiseer de Dataloader en raise FileNotFoundError als het bestand niet wordt gevonden.
Broncode in ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Retourneert de volgende reeks afbeeldingen of videoframes samen met hun paden en metagegevens.
Broncode in ultralytics/data/loaders.py
ultralytics.data.loaders.LoadPilAndNumpy
Afbeeldingen laden vanuit PIL en Numpy arrays voor batchverwerking.
Deze klasse is ontworpen om het laden en voorbewerken van afbeeldingsgegevens van zowel PIL als Numpy formaten te beheren. Het voert basisvalidatie en formaatconversie uit om ervoor te zorgen dat de afbeeldingen het vereiste formaat hebben voor verwerking.
Kenmerken:
Naam | Type | Beschrijving |
---|---|---|
paths |
list
|
Lijst met afbeeldingspaden of automatisch gegenereerde bestandsnamen. |
im0 |
list
|
Lijst met afbeeldingen opgeslagen als Numpy arrays. |
mode |
str
|
Type gegevens dat wordt verwerkt, standaard ingesteld op 'afbeelding'. |
bs |
int
|
Partijgrootte, gelijk aan de lengte van |
Methoden:
Naam | Beschrijving |
---|---|
_single_check |
Valideer en formatteer een enkele afbeelding naar een Numpy array. |
Broncode in ultralytics/data/loaders.py
__init__(im0)
Initialiseer PIL en Numpy Dataloader.
Broncode in ultralytics/data/loaders.py
__iter__()
__len__()
__next__()
Geeft als resultaat batchpaden, afbeeldingen, bewerkte afbeeldingen, geen, ''.
ultralytics.data.loaders.LoadTensor
Afbeeldingen laden van torch.Tensor gegevens.
Deze klasse beheert het laden en voorbewerken van beeldgegevens van PyTorch tensors voor verdere verwerking.
Kenmerken:
Naam | Type | Beschrijving |
---|---|---|
im0 |
Tensor
|
De invoer tensor die de afbeelding(en) bevat. |
bs |
int
|
Partijgrootte, afgeleid uit de vorm van |
mode |
str
|
Huidige modus, ingesteld op 'afbeelding'. |
paths |
list
|
Lijst met afbeeldingspaden of bestandsnamen. |
count |
int
|
Teller voor iteratie, geïnitialiseerd op 0 tijdens |
Methoden:
Naam | Beschrijving |
---|---|
_single_check |
Valideer en wijzig eventueel de invoer tensor. |
Broncode in ultralytics/data/loaders.py
__init__(im0)
Initialiseer Tensor Dataloader.
__iter__()
__len__()
ultralytics.data.loaders.autocast_list(source)
Voegt een lijst met bronnen van verschillende typen samen in een lijst met numpy arrays of PIL afbeeldingen.
Broncode in ultralytics/data/loaders.py
ultralytics.data.loaders.get_best_youtube_url(url, use_pafy=True)
Haalt de URL op van de beste kwaliteit MP4 video stream van een gegeven YouTube video.
Deze functie gebruikt de pafy of yt_dlp bibliotheek om de video-informatie van YouTube te halen. Vervolgens wordt de hoogste MP4-indeling van de hoogste kwaliteit die wel videocodec maar geen audiocodec heeft, en geeft de URL van deze videostream terug.
Parameters:
Naam | Type | Beschrijving | Standaard |
---|---|---|---|
url |
str
|
De URL van de YouTube-video. |
vereist |
use_pafy |
bool
|
Gebruik het pafy pakket, standaard=True, gebruik anders het yt_dlp pakket. |
True
|
Retourneert:
Type | Beschrijving |
---|---|
str
|
De URL van de beste kwaliteit MP4 video stream, of Geen als er geen geschikte stream is gevonden. |