Riferimento per ultralytics/utils/ops.py
Nota
Questo file è disponibile all'indirizzo https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/utils/ops .py. Se noti un problema, contribuisci a risolverlo inviando una Pull Request 🛠️. Grazie 🙏!
ultralytics.utils.ops.Profile
Basi: ContextDecorator
YOLOv8 Classe Profilo. Utilizzala come decoratore con @Profile() o come gestore del contesto con 'with Profile():'.
Esempio
Codice sorgente in ultralytics/utils/ops.py
__enter__()
__exit__(type, value, traceback)
__init__(t=0.0, device=None)
Inizializza la classe Profilo.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
t |
float
|
Tempo iniziale. Il valore predefinito è 0,0. |
0.0
|
device |
device
|
Dispositivi utilizzati per l'inferenza del modello. Il valore predefinito è Nessuno (cpu). |
None
|
Codice sorgente in ultralytics/utils/ops.py
__str__()
Restituisce una stringa leggibile dall'uomo che rappresenta il tempo trascorso accumulato nel profiler.
ultralytics.utils.ops.segment2box(segment, width=640, height=640)
Convertire 1 etichetta di segmento in 1 etichetta di casella, applicando il vincolo dell'immagine interna, cioè (xy1, xy2, ...) in (xyxy).
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
segment |
Tensor
|
l'etichetta del segmento |
richiesto |
width |
int
|
la larghezza dell'immagine. Il valore predefinito è 640 |
640
|
height |
int
|
L'altezza dell'immagine. Valore predefinito: 640 |
640
|
Restituzione:
Tipo | Descrizione |
---|---|
ndarray
|
i valori x e y minimi e massimi del segmento. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.scale_boxes(img1_shape, boxes, img0_shape, ratio_pad=None, padding=True, xywh=False)
Ridimensiona i riquadri di delimitazione (nel formato xyxy per impostazione predefinita) dalla forma dell'immagine in cui sono stati originariamente specificati (img1_shape) alla forma di un'immagine diversa (img0_shape). (img1_shape) alla forma di un'altra immagine (img0_shape).
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
img1_shape |
tuple
|
La forma dell'immagine a cui si riferiscono i riquadri di delimitazione, nel formato (altezza, larghezza). |
richiesto |
boxes |
Tensor
|
le caselle di delimitazione degli oggetti nell'immagine, nel formato (x1, y1, x2, y2) |
richiesto |
img0_shape |
tuple
|
la forma dell'immagine di destinazione, nel formato (altezza, larghezza). |
richiesto |
ratio_pad |
tuple
|
una tupla di (ratio, pad) per scalare le caselle. Se non viene fornita, il rapporto e il blocco verranno calcolati in base alla differenza di dimensioni tra le due immagini. |
None
|
padding |
bool
|
Se True, assume che le caselle siano basate sull'immagine aumentata dallo stile yolo . Se Falso, allora esegui il normale ridimensionamento. |
True
|
xywh |
bool
|
Il formato della casella è xywh o no, default=False. |
False
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
boxes |
Tensor
|
I riquadri di delimitazione in scala, nel formato di (x1, y1, x2, y2) |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.make_divisible(x, divisor)
Restituisce il numero più vicino che è divisibile per il divisore dato.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
int
|
Il numero da rendere divisibile. |
richiesto |
divisor |
int | Tensor
|
Il divisore. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
int
|
Il numero più vicino divisibile per il divisore. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.nms_rotated(boxes, scores, threshold=0.45)
NMS per obbs, alimentato da probiou e fast-nms.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
boxes |
Tensor
|
(N, 5), xywhr. |
richiesto |
scores |
Tensor
|
(N, ). |
richiesto |
threshold |
float
|
Soglia IoU. |
0.45
|
Restituzione:
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.non_max_suppression(prediction, conf_thres=0.25, iou_thres=0.45, classes=None, agnostic=False, multi_label=False, labels=(), max_det=300, nc=0, max_time_img=0.05, max_nms=30000, max_wh=7680, in_place=True, rotated=False)
Esegui la soppressione non massimale (NMS) su un insieme di scatole, con il supporto di maschere ed etichette multiple per scatola.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
prediction |
Tensor
|
Un tensor di forma (batch_size, num_classes + 4 + num_masks, num_boxes) contenente le caselle, le classi e le maschere previste. Il file tensor deve essere nel formato prodotto da un modello, come ad esempio YOLO. |
richiesto |
conf_thres |
float
|
La soglia di fiducia al di sotto della quale le caselle saranno filtrate. I valori validi sono compresi tra 0,0 e 1,0. |
0.25
|
iou_thres |
float
|
La soglia IoU al di sotto della quale le caselle saranno filtrate durante l'NMS. I valori validi sono compresi tra 0.0 e 1.0. |
0.45
|
classes |
List[int]
|
Un elenco di indici di classe da considerare. Se Nessuno, verranno considerate tutte le classi. |
None
|
agnostic |
bool
|
Se Vero, il modello è agnostico rispetto al numero di classi e tutte le classi saranno considerate come una sola. saranno considerate come un'unica classe. |
False
|
multi_label |
bool
|
Se Vero, ogni casella può avere più etichette. |
False
|
labels |
List[List[Union[int, float, Tensor]]]
|
Un elenco di liste, dove ogni lista interna contiene le etichette apriori per una determinata immagine. L'elenco dovrebbe essere nel formato prodotto da un dataloader, in cui ogni etichetta è una tupla di (class_index, x1, y1, x2, y2). |
()
|
max_det |
int
|
Il numero massimo di caselle da conservare dopo l'NMS. |
300
|
nc |
int
|
Il numero di classi prodotte dal modello. Tutti gli indici successivi a questo saranno considerati maschere. |
0
|
max_time_img |
float
|
Il tempo massimo (secondi) per l'elaborazione di un'immagine. |
0.05
|
max_nms |
int
|
Il numero massimo di caselle in torchvision.ops.nms(). |
30000
|
max_wh |
int
|
La larghezza e l'altezza massima del riquadro in pixel. |
7680
|
in_place |
bool
|
Se è vero, la previsione di ingresso tensor verrà modificata sul posto. |
True
|
Restituzione:
Tipo | Descrizione |
---|---|
List[Tensor]
|
Un elenco di lunghezza lotto_dimensioni, in cui ogni elemento è un tensor di (num_boxes, 6 + num_masks) contenente le scatole conservate, con le colonne (x1, y1, x2, y2, fiducia, classe, maschera1, maschera2, ...). |
Codice sorgente in ultralytics/utils/ops.py
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 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 |
|
ultralytics.utils.ops.clip_boxes(boxes, shape)
Prende un elenco di rettangoli di selezione e una forma (altezza, larghezza) e ritaglia i rettangoli di selezione alla forma.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
boxes |
Tensor
|
le caselle di delimitazione da ritagliare |
richiesto |
shape |
tuple
|
la forma dell'immagine |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
Tensor | ndarray
|
Scatole tagliate |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.clip_coords(coords, shape)
Appunta le coordinate delle linee ai confini dell'immagine.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
coords |
Tensor | ndarray
|
Un elenco di coordinate di linea. |
richiesto |
shape |
tuple
|
Una tupla di numeri interi che rappresentano le dimensioni dell'immagine nel formato (altezza, larghezza). |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
Tensor | ndarray
|
Coordinate ritagliate |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.scale_image(masks, im0_shape, ratio_pad=None)
Prende una maschera e la ridimensiona alle dimensioni dell'immagine originale.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
masks |
ndarray
|
maschere/immagini ridimensionate e imbottite, [h, w, num]/[h, w, 3]. |
richiesto |
im0_shape |
tuple
|
la forma dell'immagine originale |
richiesto |
ratio_pad |
tuple
|
il rapporto tra il padding e l'immagine originale. |
None
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
masks |
Tensor
|
Le maschere che vengono restituite. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xyxy2xywh(x)
Converte le coordinate del rettangolo di selezione dal formato (x1, y1, x2, y2) al formato (x, y, larghezza, altezza) dove (x1, y1) è l'angolo in alto a sinistra e (x2, y2) è l'angolo in basso a destra. angolo in alto a sinistra e (x2, y2) è l'angolo in basso a destra.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione in ingresso nel formato (x1, y1, x2, y2). |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione in formato (x, y, larghezza, altezza). |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xywh2xyxy(x)
Converte le coordinate del rettangolo di selezione dal formato (x, y, larghezza, altezza) al formato (x1, y1, x2, y2) dove (x1, y1) è l'angolo in alto a sinistra e (x2, y2) è l'angolo in basso a destra. angolo in alto a sinistra e (x2, y2) è l'angolo in basso a destra.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione in ingresso nel formato (x, y, larghezza, altezza). |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione nel formato (x1, y1, x2, y2). |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xywhn2xyxy(x, w=640, h=640, padw=0, padh=0)
Converte le coordinate normalizzate del rettangolo di selezione in coordinate pixel.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione. |
richiesto |
w |
int
|
Larghezza dell'immagine. Valore predefinito: 640 |
640
|
h |
int
|
Altezza dell'immagine. Valore predefinito: 640 |
640
|
padw |
int
|
Larghezza del padding. Il valore predefinito è 0 |
0
|
padh |
int
|
Altezza dell'imbottitura. Il valore predefinito è 0 |
0
|
Restituisce: y (np.ndarray | torch.Tensor): Le coordinate del rettangolo di selezione nel formato [x1, y1, x2, y2] dove x1,y1 è l'angolo in alto a sinistra, x2,y2 è l'angolo in basso a destra del rettangolo di selezione.
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xyxy2xywhn(x, w=640, h=640, clip=False, eps=0.0)
Converte le coordinate del rettangolo di selezione dal formato (x1, y1, x2, y2) al formato (x, y, larghezza, altezza, normalizzato). x, y, larghezza e altezza sono normalizzate alle dimensioni dell'immagine.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione in ingresso nel formato (x1, y1, x2, y2). |
richiesto |
w |
int
|
La larghezza dell'immagine. Valore predefinito: 640 |
640
|
h |
int
|
L'altezza dell'immagine. Valore predefinito: 640 |
640
|
clip |
bool
|
Se Vero, i riquadri saranno ritagliati ai confini dell'immagine. Per impostazione predefinita è Falso |
False
|
eps |
float
|
Il valore minimo della larghezza e dell'altezza del riquadro. Il valore predefinito è 0,0 |
0.0
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione in formato (x, y, larghezza, altezza, normalizzato) |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xywh2ltwh(x)
Converte il formato del rettangolo di selezione da [x, y, w, h] a [x1, y1, w, h], dove x1, y1 sono le coordinate in alto a sinistra.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
L'input tensor con le coordinate del rettangolo di selezione nel formato xywh |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione nel formato xyltwh |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xyxy2ltwh(x)
Converte nx4 caselle di delimitazione da [x1, y1, x2, y2] a [x1, y1, w, h], dove xy1=in alto a sinistra, xy2=in basso a destra.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
L'input tensor con le coordinate delle caselle di delimitazione nel formato xyxy |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione nel formato xyltwh. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.ltwh2xywh(x)
Converte nx4 caselle da [x1, y1, w, h] a [x, y, w, h] dove xy1=alto a sinistra, xy=centro.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
Tensor
|
l'ingresso tensor |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
Le coordinate del rettangolo di selezione nel formato xywh. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xyxyxyxy2xywhr(corners)
Converte le Oriented Bounding Boxes (OBB) da [xy1, xy2, xy3, xy4] a [xywh, rotation]. I valori di rotazione sono previsti in gradi da 0 a 90.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
corners |
ndarray | Tensor
|
Angoli di ingresso di forma (n, 8). |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
ndarray | Tensor
|
Dati convertiti nel formato [cx, cy, w, h, rotazione] della forma (n, 5). |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.xywhr2xyxyxyxy(rboxes)
Converte le Oriented Bounding Boxes (OBB) da [xywh, rotation] a [xy1, xy2, xy3, xy4]. I valori di rotazione devono essere espressi in gradi da 0 a 90.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
rboxes |
ndarray | Tensor
|
Caselle in formato [cx, cy, w, h, rotazione] di forma (n, 5) o (b, n, 5). |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
ndarray | Tensor
|
Punti d'angolo convertiti di forma (n, 4, 2) o (b, n, 4, 2). |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.ltwh2xyxy(x)
Converte il riquadro di delimitazione da [x1, y1, w, h] a [x1, y1, x2, y2] dove xy1=in alto a sinistra, xy2=in basso a destra.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
x |
ndarray | Tensor
|
l'immagine in ingresso |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
y |
ndarray | Tensor
|
le coordinate xyxy delle caselle di delimitazione. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.segments2boxes(segments)
Converte le etichette dei segmenti in etichette delle caselle, cioè (cls, xy1, xy2, ...) in (cls, xywh)
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
segments |
list
|
elenco di segmenti, ogni segmento è un elenco di punti, ogni punto è un elenco di coordinate x, y |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
ndarray
|
le coordinate xywh delle caselle di delimitazione. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.resample_segments(segments, n=1000)
Inserisce un elenco di segmenti (n,2) e restituisce un elenco di segmenti (n,2) campionati a n punti ciascuno.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
segments |
list
|
un elenco di array (n,2), dove n è il numero di punti del segmento. |
richiesto |
n |
int
|
numero di punti a cui ricampionare il segmento. Per impostazione predefinita è 1000 |
1000
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
segments |
list
|
i segmenti ricampionati. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.crop_mask(masks, boxes)
Prende una maschera e un rettangolo di selezione e restituisce una maschera ritagliata sul rettangolo di selezione.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
masks |
Tensor
|
[n, h, w] tensor di maschere |
richiesto |
boxes |
Tensor
|
[n, 4] tensor di coordinate bbox in forma di punto relativo |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
Tensor
|
Le maschere vengono ritagliate in base al riquadro di delimitazione. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.process_mask_upsample(protos, masks_in, bboxes, shape)
Prende l'output della testa della maschera e applica la maschera ai riquadri di delimitazione. Questo produce maschere di qualità superiore ma è più lenta.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
protos |
Tensor
|
[mask_dim, mask_h, mask_w] |
richiesto |
masks_in |
Tensor
|
[n, mask_dim], n è il numero di maschere dopo nms |
richiesto |
bboxes |
Tensor
|
[n, 4], n è il numero di maschere dopo nms |
richiesto |
shape |
tuple
|
le dimensioni dell'immagine di ingresso (h,w) |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
Tensor
|
Le maschere sovracampionate. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.process_mask(protos, masks_in, bboxes, shape, upsample=False)
Applica le maschere ai riquadri di delimitazione utilizzando l'output della testa della maschera.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
protos |
Tensor
|
Un tensor di forma [mask_dim, mask_h, mask_w]. |
richiesto |
masks_in |
Tensor
|
Un tensor di forma [n, mask_dim], dove n è il numero di maschere dopo NMS. |
richiesto |
bboxes |
Tensor
|
Un tensor di forma [n, 4], dove n è il numero di maschere dopo l'NMS. |
richiesto |
shape |
tuple
|
Una tupla di numeri interi che rappresenta la dimensione dell'immagine di input nel formato (h, w). |
richiesto |
upsample |
bool
|
Un flag per indicare se campionare la maschera in base alle dimensioni dell'immagine originale. Il valore predefinito è Falso. |
False
|
Restituzione:
Tipo | Descrizione |
---|---|
Tensor
|
Una maschera binaria tensor di forma [n, h, w], dove n è il numero di maschere dopo l'NMS, e h e w sono l'altezza e la larghezza dell'immagine di input. La maschera viene applicata ai riquadri di delimitazione. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.process_mask_native(protos, masks_in, bboxes, shape)
Prende l'output della testa della maschera e lo ritaglia dopo il sovracampionamento ai riquadri di delimitazione.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
protos |
Tensor
|
[mask_dim, mask_h, mask_w] |
richiesto |
masks_in |
Tensor
|
[n, mask_dim], n è il numero di maschere dopo nms |
richiesto |
bboxes |
Tensor
|
[n, 4], n è il numero di maschere dopo nms |
richiesto |
shape |
tuple
|
le dimensioni dell'immagine di ingresso (h,w) |
richiesto |
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
masks |
Tensor
|
Le maschere restituite con dimensioni [h, w, n] |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.scale_masks(masks, shape, padding=True)
Ridimensiona le maschere di segmento in base alla forma.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
masks |
Tensor
|
(N, C, H, W). |
richiesto |
shape |
tuple
|
Altezza e larghezza. |
richiesto |
padding |
bool
|
Se True, assume che le caselle siano basate sull'immagine aumentata dallo stile yolo . Se Falso, allora esegui il normale ridimensionamento. |
True
|
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.scale_coords(img1_shape, coords, img0_shape, ratio_pad=None, normalize=False, padding=True)
Ridimensiona le coordinate del segmento (xy) da img1_shape a img0_shape.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
img1_shape |
tuple
|
La forma dell'immagine da cui provengono le coordinate. |
richiesto |
coords |
Tensor
|
le coordinate da scalare della forma n,2. |
richiesto |
img0_shape |
tuple
|
la forma dell'immagine a cui viene applicata la segmentazione. |
richiesto |
ratio_pad |
tuple
|
il rapporto tra la dimensione dell'immagine e la dimensione dell'immagine imbottita. |
None
|
normalize |
bool
|
Se Vero, le coordinate saranno normalizzate all'intervallo [0, 1]. L'impostazione predefinita è False. |
False
|
padding |
bool
|
Se True, assume che le caselle siano basate sull'immagine aumentata dallo stile yolo . Se Falso, allora esegui il normale ridimensionamento. |
True
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
coords |
Tensor
|
Le coordinate in scala. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.regularize_rboxes(rboxes)
Regolarizza le caselle ruotate nell'intervallo [0, pi/2].
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
rboxes |
Tensor
|
(N, 5), xywhr. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
Tensor
|
Le scatole regolarizzate. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.masks2segments(masks, strategy='largest')
Prende un elenco di maschere(n,h,w) e restituisce un elenco di segmenti(n,xy)
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
masks |
Tensor
|
l'uscita del modello, che è un tensor di forma (batch_size, 160, 160) |
richiesto |
strategy |
str
|
'concat' o 'largest'. Per impostazione predefinita è il più grande |
'largest'
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
segments |
List
|
elenco delle maschere di segmento |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.convert_torch2numpy_batch(batch)
Converte un gruppo di tensori FP32 torch (0,0-1,0) in un array NumPy uint8 (0-255), passando dal layout BCHW a quello BHWC.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
batch |
Tensor
|
Input tensor batch di forma (Batch, Canali, Altezza, Larghezza) e dtype torch.float32. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
ndarray
|
Output NumPy array batch di forma (Batch, Height, Width, Channels) e dtype uint8. |
Codice sorgente in ultralytics/utils/ops.py
ultralytics.utils.ops.clean_str(s)
Pulisce una stringa sostituendo i caratteri speciali con il carattere di sottolineatura _
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
s |
str
|
una stringa che deve essere sostituita con caratteri speciali |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
str
|
una stringa con caratteri speciali sostituiti da un trattino basso _ |