Riferimento per ultralytics/data/augment.py
Nota
Questo file è disponibile all'indirizzo https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/data/augment .py. Se riscontri un problema, contribuisci a risolverlo inviando una Pull Request 🛠️. Grazie 🙏!
ultralytics.data.augment.BaseTransform
Classe base per le trasformazioni delle immagini.
Si tratta di una classe di trasformazione generica che può essere estesa per esigenze specifiche di elaborazione delle immagini. La classe è stata progettata per essere compatibile con compiti di classificazione e segmentazione semantica.
Metodi:
Nome | Descrizione |
---|---|
__init__ |
Inizializza l'oggetto BaseTransform. |
apply_image |
Applica la trasformazione dell'immagine alle etichette. |
apply_instances |
Applica le trasformazioni alle istanze degli oggetti nelle etichette. |
apply_semantic |
Applica la segmentazione semantica a un'immagine. |
__call__ |
Applica tutte le trasformazioni delle etichette a un'immagine, alle istanze e alle maschere semantiche. |
Codice sorgente in ultralytics/data/augment.py
__call__(labels)
Applica tutte le trasformazioni delle etichette a un'immagine, alle istanze e alle maschere semantiche.
__init__()
apply_image(labels)
apply_instances(labels)
ultralytics.data.augment.Compose
Classe per comporre più trasformazioni di immagini.
Codice sorgente in ultralytics/data/augment.py
__call__(data)
__getitem__(index)
Recupera una trasformazione specifica o un insieme di trasformazioni utilizzando l'indicizzazione.
Codice sorgente in ultralytics/data/augment.py
__init__(transforms)
__repr__()
__setitem__(index, value)
Recupera una trasformazione specifica o un insieme di trasformazioni utilizzando l'indicizzazione.
Codice sorgente in ultralytics/data/augment.py
append(transform)
insert(index, transform)
ultralytics.data.augment.BaseMixTransform
Classe per le trasformazioni di base del mix (MixUp/Mosaico).
Questa implementazione proviene da mmyolo.
Codice sorgente in ultralytics/data/augment.py
__call__(labels)
Applica le trasformazioni di pre-elaborazione e le trasformazioni di mixup/mosaico ai dati delle etichette.
Codice sorgente in ultralytics/data/augment.py
__init__(dataset, pre_transform=None, p=0.0)
Inizializza l'oggetto BaseMixTransform con dataset, pre_transform e probabilità.
ultralytics.data.augment.Mosaic
Basi: BaseMixTransform
Aumento del mosaico.
Questa classe esegue l'aumento del mosaico combinando più immagini (4 o 9) in un'unica immagine a mosaico. L'incremento viene applicato a un set di dati con una determinata probabilità.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
dataset |
Il set di dati su cui viene applicato l'aumento del mosaico. |
|
imgsz |
int
|
Dimensioni dell'immagine (altezza e larghezza) dopo la pipeline a mosaico di una singola immagine. Predefinito a 640. |
p |
float
|
Probabilità di applicare l'aumento del mosaico. Deve essere compresa nell'intervallo 0-1. Valore predefinito 1.0. |
n |
int
|
La dimensione della griglia, 4 (per 2x2) o 9 (per 3x3). |
Codice sorgente in ultralytics/data/augment.py
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 247 248 249 250 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 |
|
__init__(dataset, imgsz=640, p=1.0, n=4)
Inizializza l'oggetto con un set di dati, le dimensioni dell'immagine, la probabilità e il bordo.
Codice sorgente in ultralytics/data/augment.py
get_indexes(buffer=True)
Restituisce un elenco di indici casuali dal dataset.
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.MixUp
Basi: BaseMixTransform
Classe per applicare l'aumento MixUp al set di dati.
Codice sorgente in ultralytics/data/augment.py
__init__(dataset, pre_transform=None, p=0.0)
Inizializza l'oggetto MixUp con il set di dati, la pre_trasformazione e la probabilità di applicare il MixUp.
ultralytics.data.augment.RandomPerspective
Implementa trasformazioni prospettiche e affini casuali su immagini e corrispondenti bounding box, segmenti e punti chiave. punti chiave. Queste trasformazioni includono rotazione, traduzione, scalatura e taglio. La classe offre anche l'opzione opzione di applicare queste trasformazioni in modo condizionale con una probabilità specificata.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
degrees |
float
|
Intervallo di gradi per le rotazioni casuali. |
translate |
float
|
Frazione della larghezza e dell'altezza totali per la traduzione casuale. |
scale |
float
|
Intervallo del fattore di scala, ad esempio un fattore di scala di 0,1 consente un ridimensionamento tra il 90% e il 110%. |
shear |
float
|
Intensità del taglio (angolo in gradi). |
perspective |
float
|
Fattore di distorsione prospettica. |
border |
tuple
|
Tupla che specifica il bordo del mosaico. |
pre_transform |
callable
|
Una funzione/trasformazione da applicare all'immagine prima di avviare la trasformazione casuale. |
Metodi:
Nome | Descrizione |
---|---|
affine_transform |
Applica una serie di trasformazioni affini all'immagine. |
apply_bboxes |
Trasforma i riquadri di delimitazione utilizzando la matrice affine calcolata. |
apply_segments |
Trasforma i segmenti e genera nuove caselle di delimitazione. |
apply_keypoints |
Trasforma i punti chiave. |
__call__ |
Metodo principale per applicare le trasformazioni sia alle immagini che alle annotazioni corrispondenti. |
box_candidates |
Filtra le caselle di delimitazione che non soddisfano determinati criteri dopo la trasformazione. |
Codice sorgente in ultralytics/data/augment.py
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 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 |
|
__call__(labels)
Immagini e obiettivi affini.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
labels |
dict
|
un dettato di |
richiesto |
Codice sorgente in ultralytics/data/augment.py
__init__(degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, border=(0, 0), pre_transform=None)
Inizializza l'oggetto RandomPerspective con i parametri di trasformazione.
Codice sorgente in ultralytics/data/augment.py
affine_transform(img, border)
Applica una sequenza di trasformazioni affini centrate sul centro dell'immagine.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
img |
ndarray
|
Immagine di ingresso. |
richiesto |
border |
tuple
|
Dimensioni del bordo. |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
img |
ndarray
|
Immagine trasformata. |
M |
ndarray
|
Matrice di trasformazione. |
s |
float
|
Fattore di scala. |
Codice sorgente in ultralytics/data/augment.py
apply_bboxes(bboxes, M)
Applica l'affine solo ai bbox.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
bboxes |
ndarray
|
elenco di bbox, formato xyxy, con forma (num_bboxes, 4). |
richiesto |
M |
ndarray
|
matrice affine. |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
new_bboxes |
ndarray
|
bboxes dopo affine, [num_bboxes, 4]. |
Codice sorgente in ultralytics/data/augment.py
apply_keypoints(keypoints, M)
Applica l'affine ai punti chiave.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
keypoints |
ndarray
|
punti chiave, [N, 17, 3]. |
richiesto |
M |
ndarray
|
matrice affine. |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
new_keypoints |
ndarray
|
punti chiave dopo l'affine, [N, 17, 3]. |
Codice sorgente in ultralytics/data/augment.py
apply_segments(segments, M)
Applica l'affine ai segmenti e genera nuovi bbox dai segmenti.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
segments |
ndarray
|
elenco di segmenti, [num_samples, 500, 2]. |
richiesto |
M |
ndarray
|
matrice affine. |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
new_segments |
ndarray
|
elenco di segmenti dopo l'affine, [num_samples, 500, 2]. |
new_bboxes |
ndarray
|
bbox dopo affine, [N, 4]. |
Codice sorgente in ultralytics/data/augment.py
box_candidates(box1, box2, wh_thr=2, ar_thr=100, area_thr=0.1, eps=1e-16)
Calcolo dei candidati ai box in base a una serie di soglie. Questo metodo confronta le caratteristiche delle caselle prima e dopo l'aumento per decidere se un riquadro è un candidato per un'ulteriore elaborazione.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
box1 |
ndarray
|
Il rettangolo di selezione 4,n prima dell'incremento, rappresentato come [x1, y1, x2, y2]. |
richiesto |
box2 |
ndarray
|
Il rettangolo di selezione 4,n dopo l'incremento, rappresentato come [x1, y1, x2, y2]. |
richiesto |
wh_thr |
float
|
La soglia di larghezza e altezza in pixel. Il valore predefinito è 2. |
2
|
ar_thr |
float
|
La soglia del rapporto d'aspetto. Il valore predefinito è 100. |
100
|
area_thr |
float
|
La soglia del rapporto d'area. Il valore predefinito è 0,1. |
0.1
|
eps |
float
|
Un piccolo valore di epsilon per evitare la divisione per zero. Il valore predefinito è 1e-16. |
1e-16
|
Restituzione:
Tipo | Descrizione |
---|---|
ndarray
|
Un array booleano che indica quali caselle sono candidate in base alle soglie indicate. |
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.RandomHSV
Questa classe è responsabile dell'esecuzione di regolazioni casuali dei canali Hue, Saturation e Value (HSV) di un'immagine. immagine.
Le regolazioni sono casuali ma entro i limiti stabiliti da hgain, sgain e vgain.
Codice sorgente in ultralytics/data/augment.py
__call__(labels)
Applica un aumento HSV casuale a un'immagine entro i limiti predefiniti.
L'immagine modificata sostituisce l'immagine originale nel dettato "etichette" dell'input.
Codice sorgente in ultralytics/data/augment.py
__init__(hgain=0.5, sgain=0.5, vgain=0.5)
Inizializza la classe RandomHSV con i guadagni per ogni canale HSV.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
hgain |
float
|
Variazione massima della tonalità. Il valore predefinito è 0,5. |
0.5
|
sgain |
float
|
Variazione massima per la saturazione. Il valore predefinito è 0,5. |
0.5
|
vgain |
float
|
Variazione massima del valore. Il valore predefinito è 0,5. |
0.5
|
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.RandomFlip
Applica un capovolgimento orizzontale o verticale casuale a un'immagine con una determinata probabilità.
Aggiorna anche tutte le istanze (bounding box, keypoint, ecc.) di conseguenza.
Codice sorgente in ultralytics/data/augment.py
__call__(labels)
Applica un capovolgimento casuale a un'immagine e aggiorna di conseguenza tutte le istanze come i riquadri di delimitazione o i punti chiave.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
labels |
dict
|
Un dizionario contenente le chiavi 'img' e 'instances'. 'img' è l'immagine da capovolgere. 'instances' è un oggetto contenente i riquadri di delimitazione e, facoltativamente, i punti chiave. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
dict
|
Lo stesso dicasi per l'immagine capovolta e le istanze aggiornate sotto le chiavi 'img' e 'instances'. |
Codice sorgente in ultralytics/data/augment.py
__init__(p=0.5, direction='horizontal', flip_idx=None)
Inizializza la classe RandomFlip con probabilità e direzione.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
p |
float
|
La probabilità di applicare il flip. Deve essere compresa tra 0 e 1. Il valore predefinito è 0,5. |
0.5
|
direction |
str
|
La direzione in cui applicare il flip. Deve essere "orizzontale" o "verticale". Il valore predefinito è "orizzontale". |
'horizontal'
|
flip_idx |
array - like
|
Mappatura dell'indice per il ribaltamento dei punti chiave, se presente. |
None
|
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.LetterBox
Ridimensionamento dell'immagine e imbottitura per il rilevamento, segmentazione dell'istanza, posa.
Codice sorgente in ultralytics/data/augment.py
__call__(labels=None, image=None)
Restituisci le etichette e l'immagine aggiornate con l'aggiunta del bordo.
Codice sorgente in ultralytics/data/augment.py
__init__(new_shape=(640, 640), auto=False, scaleFill=False, scaleup=True, center=True, stride=32)
Inizializza l'oggetto LetterBox con parametri specifici.
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.CopyPaste
Implementa il potenziamento Copia-Incolla descritto nel documento https://arxiv.org/abs/2012.07177. Questa classe è responsabile dell'applicazione del potenziamento Copia-Incolla alle immagini e alle loro istanze corrispondenti.
Codice sorgente in ultralytics/data/augment.py
__call__(labels)
Applica l'incremento del Copia-Incolla all'immagine e alle istanze indicate.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
labels |
dict
|
Un dizionario contenente: - 'img': L'immagine da incrementare. - 'cls': Etichette di classe associate alle istanze. - 'istanze': Oggetto contenente i riquadri di delimitazione e, facoltativamente, i punti chiave e i segmenti. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
dict
|
Dict con immagine aumentata e istanze aggiornate sotto le chiavi 'img', 'cls' e 'instances'. |
Note
- Affinché questo aumento funzioni, le istanze devono avere "segmenti" come uno dei loro attributi.
- Questo metodo modifica il dizionario di input "etichette" in posizione.
Codice sorgente in ultralytics/data/augment.py
__init__(p=0.5)
Inizializza la classe CopiaIncolla con una determinata probabilità.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
p |
float
|
La probabilità di applicare il potenziamento Copia-Incolla. Deve essere compresa tra 0 e 1. Il valore predefinito è 0,5. |
0.5
|
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.Albumentations
Trasformazioni di Albumentations.
Opzionale, disinstalla il pacchetto per disabilitarlo. Applica sfocatura, sfocatura mediana, conversione in scala di grigi, equalizzazione istogrammatica adattiva limitata al contrasto, modifica casuale della luminosità e del contrasto, RandomGamma e abbassamento della qualità dell'immagine per mezzo di un'azione di contrasto. Equalizzazione istogramma limitata, modifica casuale della luminosità e del contrasto, RandomGamma e riduzione della qualità dell'immagine tramite la compressione. compressione.
Codice sorgente in ultralytics/data/augment.py
__call__(labels)
Genera rilevamenti di oggetti e restituisce un dizionario con i risultati del rilevamento.
Codice sorgente in ultralytics/data/augment.py
__init__(p=1.0)
Inizializza l'oggetto transform per i parametri formattati di YOLO bbox.
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.Format
Formatta le annotazioni delle immagini per il rilevamento degli oggetti, la segmentazione delle istanze e la stima della posa. La classe
standardizza le annotazioni dell'immagine e dell'istanza che verranno utilizzate dalla classe collate_fn
in PyTorch DataLoader.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
bbox_format |
str
|
Formato per le caselle di delimitazione. Il valore predefinito è 'xywh'. |
normalize |
bool
|
Normalizza o meno i riquadri di delimitazione. Il valore predefinito è Vero. |
return_mask |
bool
|
Restituisce le maschere di istanza per la segmentazione. L'impostazione predefinita è False. |
return_keypoint |
bool
|
Restituisce i punti chiave per la stima della posa. L'impostazione predefinita è False. |
mask_ratio |
int
|
Rapporto di downsample per le maschere. Il valore predefinito è 4. |
mask_overlap |
bool
|
Se sovrapporre le maschere. Il valore predefinito è Vero. |
batch_idx |
bool
|
Mantiene gli indici batch. Il valore predefinito è Vero. |
bgr |
float
|
La probabilità di restituire le immagini BGR. Il valore predefinito è 0,0. |
Codice sorgente in ultralytics/data/augment.py
919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 |
|
__call__(labels)
Restituisce l'immagine formattata, le classi, i riquadri di delimitazione e i punti chiave da utilizzare con 'collate_fn'.
Codice sorgente in ultralytics/data/augment.py
__init__(bbox_format='xywh', normalize=True, return_mask=False, return_keypoint=False, return_obb=False, mask_ratio=4, mask_overlap=True, batch_idx=True, bgr=0.0)
Inizializza la classe Format con i parametri indicati.
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.RandomLoadText
Campiona a caso i testi positivi e quelli negativi e aggiorna gli indici di classe in base al numero di campioni.
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
prompt_format |
str
|
Formato del prompt. Il valore predefinito è '{}'. |
neg_samples |
tuple[int]
|
Un ranger per campionare in modo casuale i testi negativi, il valore predefinito è (80, 80). |
max_samples |
int
|
Il numero massimo di campioni di testo diversi in un'immagine, l'impostazione predefinita è 80. |
padding |
bool
|
Se imbottire i testi fino a max_samples. L'impostazione predefinita è False. |
padding_value |
str
|
Il testo del padding. Il valore predefinito è "". |
Codice sorgente in ultralytics/data/augment.py
1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 |
|
__call__(labels)
Restituisci le classi e i testi aggiornati.
Codice sorgente in ultralytics/data/augment.py
__init__(prompt_format='{}', neg_samples=(80, 80), max_samples=80, padding=False, padding_value='')
Inizializza la classe RandomLoadText con i parametri indicati.
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.ClassifyLetterBox
YOLOv8 Classe LetterBox per la preelaborazione delle immagini, progettata per far parte di una pipeline di trasformazione, ad es, T.Compose([LetterBox(size), ToTensor()]).
Attributi:
Nome | Tipo | Descrizione |
---|---|---|
h |
int
|
Altezza target dell'immagine. |
w |
int
|
Larghezza target dell'immagine. |
auto |
bool
|
Se Vero, risolve automaticamente il lato corto utilizzando lo stride. |
stride |
int
|
Il valore di stride, utilizzato quando 'auto' è True. |
Codice sorgente in ultralytics/data/augment.py
__call__(im)
Ridimensiona l'immagine e la imbottisce con un metodo letterbox.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
im |
ndarray
|
L'immagine di input come array numpy di forma HWC. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
ndarray
|
L'immagine letterboxata e ridimensionata come array numpy. |
Codice sorgente in ultralytics/data/augment.py
__init__(size=(640, 640), auto=False, stride=32)
Inizializza la classe ClassifyLetterBox con una dimensione target, un auto-flag e uno stride.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
size |
Union[int, Tuple[int, int]]
|
Le dimensioni di destinazione (altezza, larghezza) per il letterbox. |
(640, 640)
|
auto |
bool
|
Se Vero, calcola automaticamente il lato corto in base alla falcata. |
False
|
stride |
int
|
Il valore di stride, utilizzato quando 'auto' è True. |
32
|
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.CenterCrop
YOLOv8 Classe CenterCrop per la preelaborazione delle immagini, progettata per essere parte di una pipeline di trasformazione, ad es, T.Compose([CenterCrop(size), ToTensor()]).
Codice sorgente in ultralytics/data/augment.py
__call__(im)
Ridimensiona e ritaglia il centro dell'immagine utilizzando un metodo letterbox.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
im |
ndarray
|
L'immagine di input come array numpy di forma HWC. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
ndarray
|
L'immagine ritagliata e ridimensionata al centro come array numpy. |
Codice sorgente in ultralytics/data/augment.py
__init__(size=640)
ultralytics.data.augment.ToTensor
YOLOv8 Classe ToTensor per la preelaborazione delle immagini, ovvero T.Compose([LetterBox(size), ToTensor()]).
Codice sorgente in ultralytics/data/augment.py
__call__(im)
Trasforma un'immagine da un array numpy a un PyTorch tensor , applicando la normalizzazione e la semiprecisione opzionale.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
im |
ndarray
|
Immagine di input come array numpy con forma (H, W, C) in ordine BGR. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
Tensor
|
L'immagine trasformata come PyTorch tensor in float32 o float16, normalizzata a [0, 1]. |
Codice sorgente in ultralytics/data/augment.py
__init__(half=False)
ultralytics.data.augment.v8_transforms(dataset, imgsz, hyp, stretch=False)
Convertire le immagini in un formato adatto alla formazione su YOLOv8 .
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.classify_transforms(size=224, mean=DEFAULT_MEAN, std=DEFAULT_STD, interpolation=Image.BILINEAR, crop_fraction=DEFAULT_CROP_FRACTION)
Trasformazioni di classificazione per la valutazione e l'inferenza. Ispirato da timm/data/transforms_factory.py.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
size |
int
|
dimensioni dell'immagine |
224
|
mean |
tuple
|
valori medi dei canali RGB |
DEFAULT_MEAN
|
std |
tuple
|
valori std dei canali RGB |
DEFAULT_STD
|
interpolation |
InterpolationMode
|
La modalità di interpolazione predefinita è T.InterpolationMode.BILINEAR. |
BILINEAR
|
crop_fraction |
float
|
frazione dell'immagine da ritagliare. l'impostazione predefinita è 1.0. |
DEFAULT_CROP_FRACTION
|
Restituzione:
Tipo | Descrizione |
---|---|
Compose
|
Torchvision si trasforma |
Codice sorgente in ultralytics/data/augment.py
ultralytics.data.augment.classify_augmentations(size=224, mean=DEFAULT_MEAN, std=DEFAULT_STD, scale=None, ratio=None, hflip=0.5, vflip=0.0, auto_augment=None, hsv_h=0.015, hsv_s=0.4, hsv_v=0.4, force_color_jitter=False, erasing=0.0, interpolation=Image.BILINEAR)
Trasformazioni di classificazione con incremento per l'addestramento. Ispirato da timm/data/transforms_factory.py.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
size |
int
|
dimensioni dell'immagine |
224
|
scale |
tuple
|
intervallo di scala dell'immagine. L'impostazione predefinita è (0.08, 1.0). |
None
|
ratio |
tuple
|
intervallo di proporzioni dell'immagine. l'impostazione predefinita è (3./4., 4./3.) |
None
|
mean |
tuple
|
valori medi dei canali RGB |
DEFAULT_MEAN
|
std |
tuple
|
valori std dei canali RGB |
DEFAULT_STD
|
hflip |
float
|
probabilità di capovolgimento orizzontale |
0.5
|
vflip |
float
|
probabilità di capovolgimento verticale |
0.0
|
auto_augment |
str
|
Può essere "randaugment", "augmix", "autoaugment" o Nessuno. |
None
|
hsv_h |
float
|
aumento della tonalità HSV dell'immagine (frazione) |
0.015
|
hsv_s |
float
|
immagine Aumento della saturazione HSV (frazione) |
0.4
|
hsv_v |
float
|
aumento del valore HSV dell'immagine (frazione) |
0.4
|
force_color_jitter |
bool
|
forza l'applicazione del jitter del colore anche se l'incremento automatico è abilitato |
False
|
erasing |
float
|
probabilità di cancellazione casuale |
0.0
|
interpolation |
InterpolationMode
|
La modalità di interpolazione predefinita è T.InterpolationMode.BILINEAR. |
BILINEAR
|
Restituzione:
Tipo | Descrizione |
---|---|
Compose
|
Torchvision si trasforma |
Codice sorgente in ultralytics/data/augment.py
1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 |
|