Referans için ultralytics/utils/ops.py
Not
Bu dosya https://github.com/ultralytics/ultralytics/blob/main/ ultralytics/utils/ops .py adresinde mevcuttur. Bir sorun tespit ederseniz lütfen bir Çekme İsteği 🛠️ ile katkıda bulunarak düzeltilmesine yardımcı olun. Teşekkürler 🙏!
ultralytics.utils.ops.Profile
Üsler: ContextDecorator
YOLOv8 Profil sınıfı. Profile() ile dekoratör olarak veya 'with Profile():' ile bağlam yöneticisi olarak kullanın.
Örnek
Kaynak kodu ultralytics/utils/ops.py
__enter__()
__exit__(type, value, traceback)
__init__(t=0.0, device=None)
Profil sınıfını başlatın.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
t |
float
|
İlk zaman. Varsayılan değer 0,0'dır. |
0.0
|
device |
device
|
Model çıkarımı için kullanılan aygıtlar. Varsayılan değer Yok (cpu). |
None
|
Kaynak kodu ultralytics/utils/ops.py
__str__()
ultralytics.utils.ops.segment2box(segment, width=640, height=640)
İç görüntü kısıtlamasını uygulayarak 1 segment etiketini 1 kutu etiketine dönüştürün, yani (xy1, xy2, ...) öğesini (xyxy) öğesine dönüştürün.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
segment |
Tensor
|
segment etiketi |
gerekli |
width |
int
|
görüntünün genişliği. Varsayılan değer 640 |
640
|
height |
int
|
Görüntünün yüksekliği. Varsayılan değer 640 |
640
|
İade:
Tip | Açıklama |
---|---|
ndarray
|
segmentin minimum ve maksimum x ve y değerleri. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.scale_boxes(img1_shape, boxes, img0_shape, ratio_pad=None, padding=True, xywh=False)
Sınırlayıcı kutuları (varsayılan olarak xyxy biçiminde) orijinal olarak bulundukları görüntünün şeklinden yeniden ölçeklendirir (img1_shape) içinde belirtilen şekli farklı bir görüntünün (img0_shape) şekline dönüştürür.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
img1_shape |
tuple
|
Sınırlayıcı kutuların ait olduğu görüntünün şekli, (yükseklik, genişlik) biçiminde. |
gerekli |
boxes |
Tensor
|
görüntüdeki nesnelerin sınırlayıcı kutuları, (x1, y1, x2, y2) biçiminde |
gerekli |
img0_shape |
tuple
|
(yükseklik, genişlik) biçiminde hedef görüntünün şekli. |
gerekli |
ratio_pad |
tuple
|
kutuları ölçeklendirmek için (ratio, pad) tuple'ı. Sağlanmamışsa, oran ve ped iki görüntü arasındaki boyut farkına göre hesaplanır. |
None
|
padding |
bool
|
True ise, kutuların yolo stili ile artırılmış görüntüye dayandığını varsayar. False ise düzenli olarak yeniden ölçeklendirme. |
True
|
xywh |
bool
|
Kutu biçimi xywh olsun ya da olmasın, varsayılan=False. |
False
|
İade:
İsim | Tip | Açıklama |
---|---|---|
boxes |
Tensor
|
(x1, y1, x2, y2) biçiminde ölçeklendirilmiş sınırlayıcı kutular |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.make_divisible(x, divisor)
Verilen bölen tarafından bölünebilen en yakın sayıyı döndürür.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
int
|
Bölünebilir hale getirilecek sayı. |
gerekli |
divisor |
int | Tensor
|
Bölen. |
gerekli |
İade:
Tip | Açıklama |
---|---|
int
|
Bölen tarafından bölünebilen en yakın sayı. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.nms_rotated(boxes, scores, threshold=0.45)
Obbs için NMS, probiou ve fast-nms tarafından desteklenmektedir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
boxes |
Tensor
|
(N, 5), xywhr. |
gerekli |
scores |
Tensor
|
(N, ). |
gerekli |
threshold |
float
|
IoU eşiği. |
0.45
|
İade:
Kaynak kodu 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)
Kutu başına maske ve çoklu etiket desteği ile bir dizi kutu üzerinde maksimum olmayan bastırma (NMS) gerçekleştirin.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
prediction |
Tensor
|
A tensor of shape (batch_size, num_classes + 4 + num_masks, num_boxes) tahmin edilen kutuları, sınıfları ve maskeleri içerir. tensor formatında olmalıdır YOLO gibi bir model tarafından çıktı alınır. |
gerekli |
conf_thres |
float
|
Altındaki kutuların filtreleneceği güven eşiği. Geçerli değerler 0,0 ile 1,0 arasındadır. |
0.25
|
iou_thres |
float
|
NMS sırasında kutuların filtreleneceği IoU eşiği. Geçerli değerler 0,0 ile 1,0 arasındadır. |
0.45
|
classes |
List[int]
|
Dikkate alınacak sınıf endekslerinin bir listesi. Yok ise, tüm sınıflar dikkate alınacaktır. |
None
|
agnostic |
bool
|
True ise, model sınıf sayısından bağımsızdır ve tüm sınıflar tek bir sınıf olarak kabul edilecektir. |
False
|
multi_label |
bool
|
True ise, her kutunun birden fazla etiketi olabilir. |
False
|
labels |
List[List[Union[int, float, Tensor]]]
|
Listelerin bir listesi, burada her bir iç listesi belirli bir görüntü için apriori etiketleri içerir. Liste şu biçimde olmalıdır Her bir etiket (class_index, x1, y1, x2, y2) şeklinde bir tuple olacak şekilde bir veri yükleyici tarafından çıktı. |
()
|
max_det |
int
|
NMS'den sonra tutulacak maksimum kutu sayısı. |
300
|
nc |
int
|
Model tarafından çıkarılan sınıf sayısı. Bundan sonraki tüm indisler maske olarak kabul edilecektir. |
0
|
max_time_img |
float
|
Bir görüntünün işlenmesi için maksimum süre (saniye). |
0.05
|
max_nms |
int
|
torchvision.ops.nms() içindeki maksimum kutu sayısı. |
30000
|
max_wh |
int
|
Piksel cinsinden maksimum kutu genişliği ve yüksekliği. |
7680
|
in_place |
bool
|
True ise, giriş tahmini tensor yerinde değiştirilecektir. |
True
|
İade:
Tip | Açıklama |
---|---|
List[Tensor]
|
batch_size uzunluğunda bir liste, burada her eleman bir tensor of sütunlarla birlikte tutulan kutuları içeren şekil (num_boxes, 6 + num_masks) (x1, y1, x2, y2, güven, sınıf, maske1, maske2, ...). |
Kaynak kodu 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)
Bir sınırlayıcı kutular listesi ve bir şekil (yükseklik, genişlik) alır ve sınırlayıcı kutuları şekle kırpar.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
boxes |
Tensor
|
kırpılacak sınırlayıcı kutular |
gerekli |
shape |
tuple
|
görüntünün şekli |
gerekli |
İade:
Tip | Açıklama |
---|---|
Tensor | ndarray
|
Kırpılmış kutular |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.clip_coords(coords, shape)
Çizgi koordinatlarını görüntü sınırlarına kırpın.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
coords |
Tensor | ndarray
|
Çizgi koordinatlarının bir listesi. |
gerekli |
shape |
tuple
|
Görüntünün boyutunu (yükseklik, genişlik) biçiminde temsil eden tamsayılardan oluşan bir tuple. |
gerekli |
İade:
Tip | Açıklama |
---|---|
Tensor | ndarray
|
Kırpılmış koordinatlar |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.scale_image(masks, im0_shape, ratio_pad=None)
Bir maske alır ve orijinal görüntü boyutuna yeniden boyutlandırır.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
masks |
ndarray
|
yeniden boyutlandırılmış ve doldurulmuş maskeler/görüntüler, [h, w, num]/[h, w, 3]. |
gerekli |
im0_shape |
tuple
|
orijinal görüntü şekli |
gerekli |
ratio_pad |
tuple
|
dolgunun orijinal görüntüye oranı. |
None
|
İade:
İsim | Tip | Açıklama |
---|---|---|
masks |
Tensor
|
İade edilen maskeler. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xyxy2xywh(x)
Sınırlayıcı kutu koordinatlarını (x1, y1, x2, y2) biçiminden (x, y, genişlik, yükseklik) biçimine dönüştürün; burada (x1, y1) sol üst köşe ve (x2, y2) sağ alt köşedir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
(x1, y1, x2, y2) biçiminde giriş sınırlayıcı kutu koordinatları. |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
(x, y, genişlik, yükseklik) biçiminde sınırlayıcı kutu koordinatları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xywh2xyxy(x)
Sınırlayıcı kutu koordinatlarını (x, y, genişlik, yükseklik) biçiminden (x1, y1, x2, y2) biçimine dönüştürün; burada (x1, y1) sol üst köşe ve (x2, y2) sağ alt köşedir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
(x, y, genişlik, yükseklik) biçiminde giriş sınırlayıcı kutu koordinatları. |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
(x1, y1, x2, y2) biçiminde sınırlayıcı kutu koordinatları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xywhn2xyxy(x, w=640, h=640, padw=0, padh=0)
Normalleştirilmiş sınırlayıcı kutu koordinatlarını piksel koordinatlarına dönüştürün.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
Sınırlayıcı kutu koordinatları. |
gerekli |
w |
int
|
Görüntünün genişliği. Varsayılan değer 640 |
640
|
h |
int
|
Görüntünün yüksekliği. Varsayılan değer 640 |
640
|
padw |
int
|
Dolgu genişliği. Varsayılan değer 0 |
0
|
padh |
int
|
Dolgu yüksekliği. Varsayılan değer 0 |
0
|
Döndürür: y (np.ndarray | torch.Tensor): Sınırlayıcı kutunun [x1, y1, x2, y2] biçimindeki koordinatları, burada x1,y1 sınırlayıcı kutunun sol üst köşesi, x2,y2 ise sağ alt köşesidir.
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xyxy2xywhn(x, w=640, h=640, clip=False, eps=0.0)
Sınırlayıcı kutu koordinatlarını (x1, y1, x2, y2) biçiminden (x, y, genişlik, yükseklik, normalleştirilmiş) biçimine dönüştürün. x, y, genişlik ve yükseklik görüntü boyutlarına göre normalleştirilir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
(x1, y1, x2, y2) biçiminde giriş sınırlayıcı kutu koordinatları. |
gerekli |
w |
int
|
Görüntünün genişliği. Varsayılan değer 640 |
640
|
h |
int
|
Görüntünün yüksekliği. Varsayılan değer 640 |
640
|
clip |
bool
|
True ise, kutular görüntü sınırlarına kırpılır. Varsayılan değer False |
False
|
eps |
float
|
Kutunun genişlik ve yüksekliğinin minimum değeri. Varsayılan değer 0,0 |
0.0
|
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
(x, y, genişlik, yükseklik, normalleştirilmiş) biçiminde sınırlayıcı kutu koordinatları |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xywh2ltwh(x)
Sınırlayıcı kutu biçimini [x, y, w, h]'den [x1, y1, w, h]'ye dönüştürün; burada x1, y1 sol üst koordinatlardır.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
xywh biçiminde sınırlayıcı kutu koordinatlarıyla birlikte tensor girişi |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
xyltwh biçiminde sınırlayıcı kutu koordinatları |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xyxy2ltwh(x)
nx4 sınırlayıcı kutuları [x1, y1, x2, y2]'den [x1, y1, w, h]'ye dönüştürün; burada xy1=üst-sol, xy2=alt-sağ'dır.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
Sınırlayıcı kutu koordinatlarını xyxy biçiminde içeren tensor girişi |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
xyltwh biçiminde sınırlayıcı kutu koordinatları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.ltwh2xywh(x)
nx4 kutuları [x1, y1, w, h]'den [x, y, w, h]'ye dönüştürün; burada xy1=sol üst, xy=merkezdir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
Tensor
|
giriş tensor |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
xywh biçiminde sınırlayıcı kutu koordinatları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xyxyxyxy2xywhr(corners)
Gruplanmış Yönlendirilmiş Sınırlayıcı Kutuları (OBB) [xy1, xy2, xy3, xy4]'ten [xywh, rotation]'a dönüştürün. Rotasyon değerleri şunlardır 0'dan 90'a kadar derece olarak beklenir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
corners |
ndarray | Tensor
|
Şekil köşelerini girin (n, 8). |
gerekli |
İade:
Tip | Açıklama |
---|---|
ndarray | Tensor
|
(n, 5) şeklindeki [cx, cy, w, h, rotation] formatında dönüştürülmüş veriler. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.xywhr2xyxyxyxy(rboxes)
Taranmış Yönlendirilmiş Sınırlayıcı Kutuları (OBB) [xywh, rotation]'dan [xy1, xy2, xy3, xy4]'e dönüştürün. Rotasyon değerleri 0'dan 90'a kadar derece cinsinden olabilir.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
rboxes |
ndarray | Tensor
|
(n, 5) veya (b, n, 5) şeklinde [cx, cy, w, h, rotation] formatında kutular. |
gerekli |
İade:
Tip | Açıklama |
---|---|
ndarray | Tensor
|
(n, 4, 2) veya (b, n, 4, 2) şeklinin dönüştürülmüş köşe noktaları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.ltwh2xyxy(x)
Sınırlayıcı kutuyu [x1, y1, w, h]'den [x1, y1, x2, y2]'ye dönüştürür; burada xy1=üst-sol, xy2=alt-sağdır.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
x |
ndarray | Tensor
|
giriş görüntüsü |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
y |
ndarray | Tensor
|
sınırlayıcı kutuların xyxy koordinatları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.segments2boxes(segments)
Segment etiketlerini kutu etiketlerine dönüştürür, yani (cls, xy1, xy2, ...) (cls, xywh)
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
segments |
list
|
segmentlerin listesi, her segment noktaların listesi, her nokta x, y koordinatlarının listesi |
gerekli |
İade:
Tip | Açıklama |
---|---|
ndarray
|
sınırlayıcı kutuların xywh koordinatları. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.resample_segments(segments, n=1000)
(n,2) segmentlerinin bir listesini girer ve her biri n noktaya kadar örneklenmiş (n,2) segmentlerinin bir listesini döndürür.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
segments |
list
|
(n,2) dizilerinden oluşan bir liste, burada n segmentteki nokta sayısıdır. |
gerekli |
n |
int
|
segmenti yeniden örneklemek için nokta sayısı. Varsayılan değer 1000 |
1000
|
İade:
İsim | Tip | Açıklama |
---|---|---|
segments |
list
|
yeniden örneklenmiş segmentler. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.crop_mask(masks, boxes)
Bir maske ve bir sınırlayıcı kutu alır ve sınırlayıcı kutuya kırpılmış bir maske döndürür.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
masks |
Tensor
|
[n, h, w] tensor maskelerin |
gerekli |
boxes |
Tensor
|
[n, 4] tensor göreli nokta biçiminde bbox koordinatları |
gerekli |
İade:
Tip | Açıklama |
---|---|
Tensor
|
Maskeler sınırlayıcı kutuya göre kırpılıyor. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.process_mask_upsample(protos, masks_in, bboxes, shape)
Maske kafasının çıktısını alır ve maskeyi sınırlayıcı kutulara uygular. Bu, daha yüksek kalitede maskeler üretir ama daha yavaştır.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
protos |
Tensor
|
[maske_dim, maske_h, maske_w] |
gerekli |
masks_in |
Tensor
|
[n, mask_dim], n, nms'den sonraki maske sayısıdır |
gerekli |
bboxes |
Tensor
|
[n, 4], n, nms'den sonraki maske sayısıdır |
gerekli |
shape |
tuple
|
giriş görüntüsünün boyutu (h,w) |
gerekli |
İade:
Tip | Açıklama |
---|---|
Tensor
|
Üst örneklenmiş maskeler. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.process_mask(protos, masks_in, bboxes, shape, upsample=False)
Maske kafasının çıktısını kullanarak sınırlayıcı kutulara maskeler uygulayın.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
protos |
Tensor
|
Bir tensor şekli [mask_dim, mask_h, mask_w]. |
gerekli |
masks_in |
Tensor
|
Bir tensor şekli [n, mask_dim], burada n, NMS'den sonraki maske sayısıdır. |
gerekli |
bboxes |
Tensor
|
Bir tensor şekli [n, 4], burada n, NMS'den sonraki maske sayısıdır. |
gerekli |
shape |
tuple
|
Girdi görüntüsünün boyutunu (h, w) biçiminde temsil eden tamsayılardan oluşan bir ikili. |
gerekli |
upsample |
bool
|
Maskenin orijinal görüntü boyutuna upsample edilip edilmeyeceğini gösteren bir bayrak. Varsayılan değer False'dir. |
False
|
İade:
Tip | Açıklama |
---|---|
Tensor
|
İkili bir maske tensor [n, h, w] şeklindedir; burada n, NMS'den sonraki maske sayısıdır ve h ve w giriş görüntüsünün yüksekliği ve genişliğidir. Maske, sınırlayıcı kutulara uygulanır. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.process_mask_native(protos, masks_in, bboxes, shape)
Maske kafasının çıktısını alır ve sınırlayıcı kutulara yukarı örnekleme yaptıktan sonra kırpar.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
protos |
Tensor
|
[maske_dim, maske_h, maske_w] |
gerekli |
masks_in |
Tensor
|
[n, mask_dim], n, nms'den sonraki maske sayısıdır |
gerekli |
bboxes |
Tensor
|
[n, 4], n, nms'den sonraki maske sayısıdır |
gerekli |
shape |
tuple
|
giriş görüntüsünün boyutu (h,w) |
gerekli |
İade:
İsim | Tip | Açıklama |
---|---|---|
masks |
Tensor
|
Döndürülen maskeler [h, w, n] boyutlarındadır |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.scale_masks(masks, shape, padding=True)
Segment maskelerini şekle göre yeniden ölçeklendirin.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
masks |
Tensor
|
(N, C, H, W). |
gerekli |
shape |
tuple
|
Yükseklik ve genişlik. |
gerekli |
padding |
bool
|
True ise, kutuların yolo stili ile artırılmış görüntüye dayandığını varsayar. False ise düzenli olarak yeniden ölçeklendirme. |
True
|
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.scale_coords(img1_shape, coords, img0_shape, ratio_pad=None, normalize=False, padding=True)
Segment koordinatlarını (xy) img1_shape'den img0_shape'e yeniden ölçeklendirin.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
img1_shape |
tuple
|
Koordinatların ait olduğu görüntünün şekli. |
gerekli |
coords |
Tensor
|
n,2 şeklinin ölçeklendirilecek koordinatları. |
gerekli |
img0_shape |
tuple
|
segmentasyonun uygulandığı görüntünün şekli. |
gerekli |
ratio_pad |
tuple
|
görüntü boyutunun doldurulmuş görüntü boyutuna oranı. |
None
|
normalize |
bool
|
True ise, koordinatlar [0, 1] aralığına normalleştirilir. Varsayılan değer False'dir. |
False
|
padding |
bool
|
True ise, kutuların yolo stili ile artırılmış görüntüye dayandığını varsayar. False ise düzenli olarak yeniden ölçeklendirme. |
True
|
İade:
İsim | Tip | Açıklama |
---|---|---|
coords |
Tensor
|
Ölçeklendirilmiş koordinatlar. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.regularize_rboxes(rboxes)
Döndürülmüş kutuları [0, pi/2] aralığında düzenli hale getirin.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
rboxes |
Tensor
|
(N, 5), xywhr. |
gerekli |
İade:
Tip | Açıklama |
---|---|
Tensor
|
Düzenlenmiş kutular. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.masks2segments(masks, strategy='largest')
Maskelerin(n,h,w) bir listesini alır ve segmentlerin(n,xy) bir listesini döndürür
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
masks |
Tensor
|
modelin çıktısı, tensor şeklindedir (batch_size, 160, 160) |
gerekli |
strategy |
str
|
'concat' veya 'largest'. Varsayılan olarak en büyük |
'largest'
|
İade:
İsim | Tip | Açıklama |
---|---|---|
segments |
List
|
segment maskeleri listesi |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.convert_torch2numpy_batch(batch)
Bir grup FP32 torch tensörünü (0.0-1.0) BCHW'den BHWC düzenine değiştirerek bir NumPy uint8 dizisine (0-255) dönüştürün.
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
batch |
Tensor
|
Girdi tensor batch of shape (Batch, Channels, Height, Width) ve dtype torch.float32. |
gerekli |
İade:
Tip | Açıklama |
---|---|
ndarray
|
Şekil (Batch, Height, Width, Channels) ve dtype uint8'den oluşan NumPy dizi yığını çıktısı. |
Kaynak kodu ultralytics/utils/ops.py
ultralytics.utils.ops.clean_str(s)
Özel karakterleri alt çizgi _ ile değiştirerek bir dizeyi temizler
Parametreler:
İsim | Tip | Açıklama | Varsayılan |
---|---|---|---|
s |
str
|
özel karakterlerin değiştirilmesi gereken bir dize |
gerekli |
İade:
Tip | Açıklama |
---|---|
str
|
özel karakterlerin alt çizgi ile değiştirildiği bir dize _ |
Kaynak kodu ultralytics/utils/ops.py
Oluşturuldu 2023-11-12, Güncellendi 2024-05-08
Yazarlar: Burhan-Q (1), Laughing-q (1), glenn-jocher (4)