Tài liệu tham khảo cho ultralytics/engine/results.py
Ghi
Tệp này có sẵn tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/động cơ/results.py. Nếu bạn phát hiện ra một vấn đề, vui lòng giúp khắc phục nó bằng cách đóng góp Yêu cầu 🛠️ kéo. Cảm ơn bạn 🙏 !
ultralytics.engine.results.BaseTensor
Căn cứ: SimpleClass
Căn cứ tensor lớp với các phương pháp bổ sung để dễ dàng thao tác và xử lý thiết bị.
Mã nguồn trong ultralytics/engine/results.py
shape
property
Trả về hình dạng của dữ liệu tensor.
__getitem__(idx)
__init__(data, orig_shape)
Khởi tạo BaseTensor với dữ liệu và hình dạng ban đầu.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
data |
Tensor | ndarray
|
Dự đoán, chẳng hạn như hộp thư rác, mặt nạ và điểm chính. |
bắt buộc |
orig_shape |
tuple
|
Hình dạng ban đầu của hình ảnh. |
bắt buộc |
Mã nguồn trong ultralytics/engine/results.py
__len__()
cpu()
cuda()
numpy()
to(*args, **kwargs)
Trả về bản sao của tensor Với thiết bị được chỉ định và DTYPE.
ultralytics.engine.results.Results
Căn cứ: SimpleClass
Một lớp để lưu trữ và thao tác kết quả suy luận.
Thuộc tính:
Tên | Kiểu | Sự miêu tả |
---|---|---|
orig_img |
ndarray
|
Hình ảnh gốc dưới dạng mảng numpy. |
orig_shape |
tuple
|
Hình dạng hình ảnh gốc ở định dạng (chiều cao, chiều rộng). |
boxes |
Boxes
|
Đối tượng chứa các hộp giới hạn phát hiện. |
masks |
Masks
|
Đối tượng chứa mặt nạ phát hiện. |
probs |
Probs
|
Đối tượng chứa xác suất lớp cho các nhiệm vụ phân loại. |
keypoints |
Keypoints
|
Đối tượng chứa các điểm chính được phát hiện cho từng đối tượng. |
speed |
dict
|
Từ điển tiền xử lý, suy luận và tốc độ hậu xử lý (ms / hình ảnh). |
names |
dict
|
Từ điển tên lớp. |
path |
str
|
Đường dẫn đến tệp hình ảnh. |
Phương pháp:
Tên | Sự miêu tả |
---|---|
update |
Cập nhật các thuộc tính đối tượng với kết quả phát hiện mới. |
cpu |
Trả về một bản sao của đối tượng Kết quả với tất cả các tensor trên bộ nhớ CPU. |
numpy |
Trả về một bản sao của đối tượng Kết quả với tất cả các tensor dưới dạng mảng numpy. |
cuda |
Trả về một bản sao của đối tượng Kết quả với tất cả các tensor trên bộ nhớ GPU. |
to |
Trả về một bản sao của đối tượng Kết quả với tensor trên một thiết bị đã xác định và dtype. |
new |
Trả về một đối tượng Kết quả mới có cùng hình ảnh, đường dẫn và tên. |
plot |
Biểu đồ kết quả phát hiện trên hình ảnh đầu vào, trả về hình ảnh có chú thích. |
show |
Hiển thị kết quả có chú thích để sàng lọc. |
save |
Lưu kết quả có chú thích vào tệp. |
verbose |
Trả về chuỗi nhật ký cho mỗi tác vụ, nêu chi tiết các phát hiện và phân loại. |
save_txt |
Lưu kết quả phát hiện vào tệp văn bản. |
save_crop |
Lưu hình ảnh phát hiện đã cắt. |
tojson |
Chuyển đổi kết quả phát hiện sang định dạng JSON. |
Mã nguồn trong ultralytics/engine/results.py
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 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 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 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 |
|
__getitem__(idx)
__init__(orig_img, path, names, boxes=None, masks=None, probs=None, keypoints=None, obb=None)
Khởi tạo lớp Results.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
orig_img |
ndarray
|
Hình ảnh gốc dưới dạng một mảng numpy. |
bắt buộc |
path |
str
|
Đường dẫn đến tệp hình ảnh. |
bắt buộc |
names |
dict
|
Một từ điển tên lớp. |
bắt buộc |
boxes |
tensor
|
Một 2D tensor của tọa độ hộp giới hạn cho mỗi lần phát hiện. |
None
|
masks |
tensor
|
Một 3D tensor của mặt nạ phát hiện, trong đó mỗi mặt nạ là một hình ảnh nhị phân. |
None
|
probs |
tensor
|
Một 1D tensor xác suất của từng lớp để phân loại nhiệm vụ. |
None
|
keypoints |
tensor
|
Một 2D tensor của tọa độ điểm chính cho mỗi lần phát hiện. |
None
|
obb |
tensor
|
Một 2D tensor của tọa độ hộp giới hạn định hướng cho mỗi lần phát hiện. |
None
|
Mã nguồn trong ultralytics/engine/results.py
__len__()
cpu()
cuda()
new()
numpy()
plot(conf=True, line_width=None, font_size=None, font='Arial.ttf', pil=False, img=None, im_gpu=None, kpt_radius=5, kpt_line=True, labels=True, boxes=True, masks=True, probs=True, show=False, save=False, filename=None)
Biểu thị kết quả phát hiện trên hình ảnh RGB đầu vào. Chấp nhận mảng numpy (cv2) hoặc Hình ảnh PIL.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
conf |
bool
|
Có nên vẽ điểm tin cậy phát hiện hay không. |
True
|
line_width |
float
|
Chiều rộng đường của các hộp giới hạn. Nếu Không, nó được thu nhỏ theo kích thước hình ảnh. |
None
|
font_size |
float
|
Kích thước phông chữ của văn bản. Nếu Không, nó được thu nhỏ theo kích thước hình ảnh. |
None
|
font |
str
|
Phông chữ để sử dụng cho văn bản. |
'Arial.ttf'
|
pil |
bool
|
Có trả lại hình ảnh dưới dạng Hình ảnh PIL hay không. |
False
|
img |
ndarray
|
Vẽ đến một hình ảnh khác. Nếu không, hãy vẽ lên hình ảnh gốc. |
None
|
im_gpu |
Tensor
|
Hình ảnh chuẩn hóa trong gpu với hình dạng (1, 3, 640, 640), để vẽ mặt nạ nhanh hơn. |
None
|
kpt_radius |
int
|
Bán kính của các điểm chính được vẽ. Mặc định là 5. |
5
|
kpt_line |
bool
|
Có nên vẽ các đường nối các điểm chính hay không. |
True
|
labels |
bool
|
Có nên vẽ nhãn của các hộp giới hạn hay không. |
True
|
boxes |
bool
|
Có nên vẽ các hộp giới hạn hay không. |
True
|
masks |
bool
|
Có nên vẽ mặt nạ hay không. |
True
|
probs |
bool
|
Có nên vẽ xác suất phân loại hay không |
True
|
show |
bool
|
Có hiển thị trực tiếp hình ảnh được chú thích hay không. |
False
|
save |
bool
|
Có lưu hình ảnh được chú thích vào hay không |
False
|
filename |
str
|
Tên tệp để lưu hình ảnh vào nếu lưu là True. |
None
|
Trở lại:
Kiểu | Sự miêu tả |
---|---|
ndarray
|
Một mảng tê liệt của hình ảnh được chú thích. |
Ví dụ
from PIL import Image
from ultralytics import YOLO
model = YOLO('yolov8n.pt')
results = model('bus.jpg') # results list
for r in results:
im_array = r.plot() # plot a BGR numpy array of predictions
im = Image.fromarray(im_array[..., ::-1]) # RGB PIL image
im.show() # show image
im.save('results.jpg') # save image
Mã nguồn trong ultralytics/engine/results.py
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 |
|
save(filename=None, *args, **kwargs)
Lưu hình ảnh kết quả được chú thích.
save_crop(save_dir, file_name=Path('im.jpg'))
Lưu dự đoán đã xén vào save_dir/cls/file_name.jpg
.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
save_dir |
str | Path
|
Lưu đường dẫn. |
bắt buộc |
file_name |
str | Path
|
Tên tập tin. |
Path('im.jpg')
|
Mã nguồn trong ultralytics/engine/results.py
save_txt(txt_file, save_conf=False)
Lưu dự đoán vào tệp txt.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
txt_file |
str
|
Đường dẫn tệp TXT. |
bắt buộc |
save_conf |
bool
|
Lưu điểm tin cậy hay không. |
False
|
Mã nguồn trong ultralytics/engine/results.py
show(*args, **kwargs)
summary(normalize=False, decimals=5)
Chuyển đổi kết quả sang định dạng tóm tắt.
Mã nguồn trong ultralytics/engine/results.py
to(*args, **kwargs)
Trả về một bản sao của đối tượng Kết quả với tensor trên thiết bị được chỉ định và dtype.
tojson(normalize=False, decimals=5)
update(boxes=None, masks=None, probs=None, obb=None)
Cập nhật các thuộc tính hộp, mặt nạ và probs của đối tượng Kết quả.
Mã nguồn trong ultralytics/engine/results.py
verbose()
Trả về chuỗi nhật ký cho mỗi tác vụ.
Mã nguồn trong ultralytics/engine/results.py
ultralytics.engine.results.Boxes
Căn cứ: BaseTensor
Quản lý các hộp phát hiện, cung cấp dễ dàng truy cập và thao tác tọa độ hộp, điểm tin cậy, lớp học số nhận dạng và ID theo dõi tùy chọn. Hỗ trợ nhiều định dạng cho tọa độ hộp, bao gồm cả tuyệt đối và hình thức chuẩn hóa.
Thuộc tính:
Tên | Kiểu | Sự miêu tả |
---|---|---|
data |
Tensor
|
Nguyên liệu tensor chứa các hộp phát hiện và dữ liệu liên quan của chúng. |
orig_shape |
tuple
|
Kích thước hình ảnh gốc dưới dạng bộ (chiều cao, chiều rộng), được sử dụng để chuẩn hóa. |
is_track |
bool
|
Cho biết ID theo dõi có được bao gồm trong dữ liệu thùng hàng hay không. |
Thuộc tính
xyxy (torch.Tensor | numpy.ndarray): Hộp ở định dạng [x1, y1, x2, y2]. conf (torch.Tensor | numpy.ndarray): Điểm tin cậy cho mỗi hộp. CLS (torch.Tensor | numpy.ndarray): Nhãn lớp cho mỗi hộp. mã nhận dạng (torch.Tensor | numpy.ndarray, tùy chọn): ID theo dõi cho mỗi hộp, nếu có. XYWH (torch.Tensor | numpy.ndarray): Các hộp ở định dạng [x, y, chiều rộng, chiều cao], được tính theo yêu cầu. xyxyn (torch.Tensor | numpy.ndarray): Các hộp chuẩn hóa [x1, y1, x2, y2], liên quan đến orig_shape
. XYWHN (torch.Tensor | numpy.ndarray): Các hộp chuẩn hóa [x, y, chiều rộng, chiều cao], liên quan đến orig_shape
.
Phương pháp:
Tên | Sự miêu tả |
---|---|
cpu |
Di chuyển các hộp vào bộ nhớ CPU. |
numpy |
Chuyển đổi các hộp sang định dạng mảng numpy. |
cuda |
Di chuyển các hộp vào bộ nhớ CUDA (GPU). |
to |
Di chuyển các hộp đến thiết bị được chỉ định. |
Mã nguồn trong ultralytics/engine/results.py
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 |
|
cls
property
Trả về giá trị lớp của các hộp.
conf
property
Trả về giá trị tin cậy của các hộp.
id
property
Trả về ID theo dõi của các hộp (nếu có).
xywh
cached
property
Trả lại các hộp ở định dạng xywh.
xywhn
cached
property
Trả lại các hộp ở định dạng xywh được chuẩn hóa theo kích thước hình ảnh gốc.
xyxy
property
Trả lại các hộp ở định dạng xyxy.
xyxyn
cached
property
Trả về các hộp ở định dạng xyxy được chuẩn hóa theo kích thước hình ảnh gốc.
__init__(boxes, orig_shape)
Khởi tạo lớp Box.
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
boxes |
Tensor | ndarray
|
Một tensor hoặc mảng numpy chứa các hộp phát hiện, với hình dạng (num_boxes, 6) hoặc (num_boxes, 7). Hai cột cuối cùng chứa các giá trị tin cậy và lớp. Nếu có, cột cuối cùng thứ ba chứa ID theo dõi. |
bắt buộc |
orig_shape |
tuple
|
Kích thước hình ảnh gốc, ở định dạng (chiều cao, chiều rộng). |
bắt buộc |
Mã nguồn trong ultralytics/engine/results.py
ultralytics.engine.results.Masks
Căn cứ: BaseTensor
Một lớp để lưu trữ và thao tác mặt nạ phát hiện.
Thuộc tính:
Tên | Kiểu | Sự miêu tả |
---|---|---|
xy |
list
|
Danh sách các phân đoạn trong tọa độ pixel. |
xyn |
list
|
Danh sách các phân đoạn chuẩn hóa. |
Phương pháp:
Tên | Sự miêu tả |
---|---|
cpu |
Trả về mặt nạ tensor trên bộ nhớ CPU. |
numpy |
Trả về mặt nạ tensor như một mảng numpy. |
cuda |
Trả về mặt nạ tensor trên bộ nhớ GPU. |
to |
Trả về mặt nạ tensor Với thiết bị được chỉ định và DTYPE. |
Mã nguồn trong ultralytics/engine/results.py
xy
cached
property
Trả về phân đoạn theo tọa độ pixel.
xyn
cached
property
Trả về các phân đoạn chuẩn hóa.
__init__(masks, orig_shape)
Khởi tạo lớp Masks với các mặt nạ đã cho tensor và hình dạng hình ảnh gốc.
ultralytics.engine.results.Keypoints
Căn cứ: BaseTensor
Một lớp để lưu trữ và thao tác các điểm chính phát hiện.
Thuộc tính:
Tên | Kiểu | Sự miêu tả |
---|---|---|
xy |
Tensor
|
Một tập hợp các điểm chính chứa tọa độ x, y cho mỗi lần phát hiện. |
xyn |
Tensor
|
Một phiên bản chuẩn hóa của xy với tọa độ trong phạm vi [0, 1]. |
conf |
Tensor
|
Giá trị tin cậy được liên kết với các điểm chính nếu có, nếu không thì Không có. |
Phương pháp:
Tên | Sự miêu tả |
---|---|
cpu |
Trả về bản sao của các điểm chính tensor trên bộ nhớ CPU. |
numpy |
Trả về bản sao của các điểm chính tensor như một mảng numpy. |
cuda |
Trả về bản sao của các điểm chính tensor trên bộ nhớ GPU. |
to |
Trả về bản sao của các điểm chính tensor Với thiết bị được chỉ định và DTYPE. |
Mã nguồn trong ultralytics/engine/results.py
conf
cached
property
Trả về giá trị tin cậy của các điểm chính nếu có, nếu không thì Không có.
xy
cached
property
Trả về tọa độ x, y của các điểm chính.
xyn
cached
property
Trả về tọa độ x, y chuẩn hóa của các điểm chính.
__init__(keypoints, orig_shape)
Khởi tạo đối tượng Keypoints với các điểm chính phát hiện và kích thước hình ảnh gốc.
Mã nguồn trong ultralytics/engine/results.py
ultralytics.engine.results.Probs
Căn cứ: BaseTensor
Một lớp để lưu trữ và thao tác các dự đoán phân loại.
Thuộc tính:
Tên | Kiểu | Sự miêu tả |
---|---|---|
top1 |
int
|
Chỉ số của lớp 1 hàng đầu. |
top5 |
list[int]
|
Chỉ số của 5 lớp hàng đầu. |
top1conf |
Tensor
|
Sự tự tin của lớp top 1. |
top5conf |
Tensor
|
Sự tự tin của 5 lớp hàng đầu. |
Phương pháp:
Tên | Sự miêu tả |
---|---|
cpu |
Trả về một bản sao của prob tensor trên bộ nhớ CPU. |
numpy |
Trả về một bản sao của prob tensor như một mảng numpy. |
cuda |
Trả về một bản sao của prob tensor trên bộ nhớ GPU. |
to |
Trả về một bản sao của prob tensor Với thiết bị được chỉ định và DTYPE. |
Mã nguồn trong ultralytics/engine/results.py
top1
cached
property
Trả về chỉ số của top 1.
top1conf
cached
property
Trả lại sự tự tin của top 1.
top5
cached
property
Trả về các chỉ số của top 5.
top5conf
cached
property
Trả lại sự tự tin của top 5.
__init__(probs, orig_shape=None)
Khởi tạo lớp Probs với xác suất phân loại và hình dạng ban đầu tùy chọn của hình ảnh.
ultralytics.engine.results.OBB
Căn cứ: BaseTensor
Một lớp để lưu trữ và thao tác Oriented Bounding Boxes (OBB).
Thông số:
Tên | Kiểu | Sự miêu tả | Mặc định |
---|---|---|---|
boxes |
Tensor | ndarray
|
Một tensor hoặc mảng numpy chứa các hộp phát hiện, với hình dạng (num_boxes, 7) hoặc (num_boxes, 8). Hai cột cuối cùng chứa các giá trị tin cậy và lớp. Nếu có, cột cuối cùng thứ ba chứa ID theo dõi và cột thứ năm từ bên trái chứa xoay. |
bắt buộc |
orig_shape |
tuple
|
Kích thước hình ảnh gốc, ở định dạng (chiều cao, chiều rộng). |
bắt buộc |
Thuộc tính:
Tên | Kiểu | Sự miêu tả |
---|---|---|
xywhr |
Tensor | ndarray
|
Các hộp ở định dạng [x_center, y_center, chiều rộng, chiều cao, xoay]. |
conf |
Tensor | ndarray
|
Các giá trị tin cậy của các hộp. |
cls |
Tensor | ndarray
|
Các giá trị lớp của các hộp. |
id |
Tensor | ndarray
|
ID theo dõi của các hộp (nếu có). |
xyxyxyxyn |
Tensor | ndarray
|
Các hộp xoay ở định dạng xyxyxyxyxy được chuẩn hóa theo kích thước hình ảnh orig. |
xyxyxyxy |
Tensor | ndarray
|
Các hộp xoay ở định dạng xyxyxyxy. |
xyxy |
Tensor | ndarray
|
Các hộp ngang ở định dạng xyxyxyxy. |
data |
Tensor
|
OBB thô tensor (bí danh cho |
Phương pháp:
Tên | Sự miêu tả |
---|---|
cpu |
Di chuyển đối tượng vào bộ nhớ CPU. |
numpy |
Chuyển đổi đối tượng thành một mảng numpy. |
cuda |
Di chuyển đối tượng vào bộ nhớ CUDA. |
to |
Di chuyển đối tượng đến thiết bị được chỉ định. |
Mã nguồn trong ultralytics/engine/results.py
cls
property
Trả về giá trị lớp của các hộp.
conf
property
Trả về giá trị tin cậy của các hộp.
id
property
Trả về ID theo dõi của các hộp (nếu có).
xywhr
property
Trả về các hộp đã xoay ở định dạng xywhr.
xyxy
cached
property
Trả về các hộp ngang ở định dạng xyxy, (N, 4).
Chấp nhận cả hai torch và hộp numpy.
xyxyxyxy
cached
property
Trả về các hộp ở định dạng xyxyxyxy, (N, 4, 2).
xyxyxyxyn
cached
property
Trả về các hộp ở định dạng xyxyxyxy, (N, 4, 2).
__init__(boxes, orig_shape)
Khởi tạo lớp Box.