Bỏ để qua phần nội dung

Ultralytics YOLOv8

Tổng quan

YOLOv8 is the latest iteration in the YOLO series of real-time object detectors, offering cutting-edge performance in terms of accuracy and speed. Building upon the advancements of previous YOLO versions, YOLOv8 introduces new features and optimizations that make it an ideal choice for various object detection tasks in a wide range of applications.

Ultralytics YOLOv8



Xem: Ultralytics YOLOv8 Tổng quan về mô hình

Các tính năng chính

  • Advanced Backbone and Neck Architectures: YOLOv8 employs state-of-the-art backbone and neck architectures, resulting in improved feature extraction and object detection performance.
  • Chia tách không neo Ultralytics Đầu: YOLOv8 áp dụng phân chia không neo Ultralytics đầu, góp phần vào độ chính xác tốt hơn và quy trình phát hiện hiệu quả hơn so với các phương pháp tiếp cận dựa trên neo.
  • Tối ưu hóa sự đánh đổi độ chính xác-tốc độ: Tập trung vào việc duy trì sự cân bằng tối ưu giữa độ chính xác và tốc độ, YOLOv8 phù hợp cho các tác vụ phát hiện đối tượng theo thời gian thực trong các lĩnh vực ứng dụng đa dạng.
  • Nhiều mô hình Pre-training: YOLOv8 Cung cấp một loạt các mô hình được đào tạo trước để phục vụ cho các nhiệm vụ và yêu cầu hiệu suất khác nhau, giúp bạn dễ dàng tìm thấy mô hình phù hợp cho trường hợp sử dụng cụ thể của mình.

Các tác vụ và chế độ được hỗ trợ

The YOLOv8 series offers a diverse range of models, each specialized for specific tasks in computer vision. These models are designed to cater to various requirements, from object detection to more complex tasks like instance segmentation, pose/keypoints detection, oriented object detection, and classification.

Mỗi biến thể của YOLOv8 Series được tối ưu hóa cho nhiệm vụ tương ứng của nó, đảm bảo hiệu suất và độ chính xác cao. Ngoài ra, các mô hình này tương thích với các chế độ hoạt động khác nhau bao gồm Suy luận, Xác nhận, Đào tạoXuất, tạo điều kiện thuận lợi cho việc sử dụng chúng trong các giai đoạn triển khai và phát triển khác nhau.

Mẫu Tên tập tin Nhiệm vụ Suy luận Xác nhận Đào tạo Xuất khẩu
YOLOv8 yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt Detection
YOLOv8-Seg yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt Phân đoạn phiên bản
YOLOv8-tư thế yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt Tư thế / Điểm chính
YOLOv8-Obb yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt Phát hiện theo hướng
YOLOv8-Cls yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt Phân loại

This table provides an overview of the YOLOv8 model variants, highlighting their applicability in specific tasks and their compatibility with various operational modes such as Inference, Validation, Training, and Export. It showcases the versatility and robustness of the YOLOv8 series, making them suitable for a variety of applications in computer vision.

Chỉ số hiệu suất

Hiệu năng

Xem Tài liệu phát hiện để biết các ví dụ sử dụng với các mô hình này được đào tạo về COCO, bao gồm 80 lớp được đào tạo trước.

Mẫu kích thước
(điểm ảnh)
bản đồVal
50-95
Tốc độ
CPU ONNX
(Cô)
Tốc độ
A100 TensorRT
(Cô)
Params
(M)
Flops
(B)
YOLOv8n 640 37.3 80.4 0.99 3.2 8.7
YOLOv8s 640 44.9 128.4 1.20 11.2 28.6
YOLOv8m 640 50.2 234.7 1.83 25.9 78.9
YOLOv8l 640 52.9 375.2 2.39 43.7 165.2
YOLOv8x 640 53.9 479.1 3.53 68.2 257.8

Xem Tài liệu Phát hiện để biết các ví dụ sử dụng với các mô hình này được đào tạo trên Open Image V7, bao gồm 600 lớp được đào tạo trước.

Mẫu kích thước
(điểm ảnh)
bản đồVal
50-95
Tốc độ
CPU ONNX
(Cô)
Tốc độ
A100 TensorRT
(Cô)
Params
(M)
Flops
(B)
YOLOv8n 640 18.4 142.4 1.21 3.5 10.5
YOLOv8s 640 27.7 183.1 1.40 11.4 29.7
YOLOv8m 640 33.6 408.5 2.26 26.2 80.6
YOLOv8l 640 34.9 596.9 2.43 44.1 167.4
YOLOv8x 640 36.3 860.6 3.56 68.7 260.6

Xem Tài liệu phân đoạn để biết các ví dụ sử dụng với các mô hình này được đào tạo về COCO, bao gồm 80 lớp được đào tạo trước.

Mẫu kích thước
(điểm ảnh)
bản đồhộp
50-95
bản đồmặt nạ
50-95
Tốc độ
CPU ONNX
(Cô)
Tốc độ
A100 TensorRT
(Cô)
Params
(M)
Flops
(B)
YOLOv8n-Seg 640 36.7 30.5 96.1 1.21 3.4 12.6
YOLOv8s-Seg 640 44.6 36.8 155.7 1.47 11.8 42.6
YOLOv8m-Seg 640 49.9 40.8 317.0 2.18 27.3 110.2
YOLOv8l-Seg 640 52.3 42.6 572.4 2.79 46.0 220.5
YOLOv8x-Seg 640 53.4 43.4 712.1 4.02 71.8 344.1

Xem Tài liệu phân loại để biết các ví dụ sử dụng với các mô hình này được đào tạo trên ImageNet, bao gồm 1000 lớp được đào tạo trước.

Mẫu kích thước
(điểm ảnh)
Acc
Top 1
Acc
Top 5
Tốc độ
CPU ONNX
(Cô)
Tốc độ
A100 TensorRT
(Cô)
Params
(M)
Flops
(B) tại 640
YOLOv8n-Cls 224 69.0 88.3 12.9 0.31 2.7 4.3
YOLOv8s-Cls 224 73.8 91.7 23.4 0.35 6.4 13.5
YOLOv8m-Cls 224 76.8 93.5 85.4 0.62 17.0 42.7
YOLOv8l-Cls 224 76.8 93.5 163.0 0.87 37.5 99.7
YOLOv8x-Cls 224 79.0 94.6 232.0 1.01 57.4 154.8

Xem Tài liệu ước tính tư thế để biết các ví dụ sử dụng với các mô hình này được đào tạo về COCO, bao gồm 1 lớp được đào tạo trước, 'người'.

Mẫu kích thước
(điểm ảnh)
bản đồtư thế
50-95
bản đồtư thế
50
Tốc độ
CPU ONNX
(Cô)
Tốc độ
A100 TensorRT
(Cô)
Params
(M)
Flops
(B)
YOLOv8n-tư thế 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-tư thế 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-tư thế 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-tư thế 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-tư thế 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-Tư thế-P6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4

Xem Tài liệu phát hiện theo hướng để biết các ví dụ sử dụng với các mô hình này được đào tạo trên DOTAv1, bao gồm 15 lớp được đào tạo trước.

Mẫu kích thước
(điểm ảnh)
bản đồkiểm tra
50
Tốc độ
CPU ONNX
(Cô)
Tốc độ
A100 TensorRT
(Cô)
Params
(M)
Flops
(B)
YOLOv8n-Obb 1024 78.0 204.77 3.57 3.1 23.3
YOLOv8s-Obb 1024 79.5 424.88 4.07 11.4 76.3
YOLOv8m-Obb 1024 80.5 763.48 7.61 26.4 208.6
YOLOv8l-Obb 1024 80.7 1278.42 11.83 44.5 433.8
YOLOv8x-Obb 1024 81.36 1759.10 13.23 69.5 676.7

Ví dụ sử dụng

Ví dụ này cung cấp đơn giản YOLOv8 Ví dụ đào tạo và suy luận. Để biết tài liệu đầy đủ về các chế độ này và các chế độ khác, hãy xem các trang tài liệu Dự đoán, Đào tạo, ValXuất .

Lưu ý ví dụ dưới đây dành cho YOLOv8 Phát hiện các mô hình để phát hiện đối tượng. Để biết thêm các tác vụ được hỗ trợ, hãy xem tài liệu Phân đoạn, Phân loại, OBB và Tư thế .

Ví dụ

PyTorch pretrained *.pt Mô hình cũng như cấu hình *.yaml Các tập tin có thể được chuyển đến YOLO() lớp để tạo một thể hiện mô hình trong python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

CLI Các lệnh có sẵn để chạy trực tiếp các mô hình:

# Load a COCO-pretrained YOLOv8n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLOv8n model and run inference on the 'bus.jpg' image
yolo predict model=yolov8n.pt source=path/to/bus.jpg

Trích dẫn và xác nhận

Nếu bạn sử dụng YOLOv8 Mô hình hoặc bất kỳ phần mềm nào khác từ kho lưu trữ này trong công việc của bạn, vui lòng trích dẫn nó bằng định dạng sau:

@software{yolov8_ultralytics,
  author = {Glenn Jocher and Ayush Chaurasia and Jing Qiu},
  title = {Ultralytics YOLOv8},
  version = {8.0.0},
  year = {2023},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0002-7603-6750, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

Xin lưu ý rằng DOI đang chờ xử lý và sẽ được thêm vào trích dẫn khi có sẵn. YOLOv8 Các mô hình được cung cấp theo AGPL-3.0 và Giấy phép doanh nghiệp .

FAQ

Là gì YOLOv8 và nó khác với trước đây như thế nào YOLO Phiên bản?

YOLOv8 is the latest iteration in the Ultralytics YOLO series, designed to improve real-time object detection performance with advanced features. Unlike earlier versions, YOLOv8 incorporates an anchor-free split Ultralytics head, state-of-the-art backbone and neck architectures, and offers optimized accuracy-speed tradeoff, making it ideal for diverse applications. For more details, check the Overview and Key Features sections.

Tôi có thể sử dụng như thế nào YOLOv8 cho các tác vụ thị giác máy tính khác nhau?

YOLOv8 Hỗ trợ một loạt các tác vụ thị giác máy tính, bao gồm phát hiện đối tượng, phân đoạn phiên bản, phát hiện tư thế / điểm chính, phát hiện đối tượng định hướng và phân loại. Mỗi biến thể mô hình được tối ưu hóa cho nhiệm vụ cụ thể của nó và tương thích với các chế độ hoạt động khác nhau như Suy luận, Xác thực, Đào tạoXuất. Tham khảo phần Tác vụ và Chế độ được Hỗ trợ để biết thêm thông tin.

Các chỉ số hiệu suất để làm gì YOLOv8 Mô hình?

YOLOv8 Các mô hình đạt được hiệu suất hiện đại trên các bộ dữ liệu đo điểm chuẩn khác nhau. Ví dụ, các YOLOv8n mô hình đạt được mAP (Độ chính xác trung bình trung bình) là 37,3 trên tập dữ liệu COCO và tốc độ 0,99 ms trên A100 TensorRT. Bạn có thể tìm thấy số liệu hiệu suất chi tiết cho từng biến thể mô hình trên các tác vụ và bộ dữ liệu khác nhau trong phần Chỉ số hiệu suất .

Làm cách nào để đào tạo một YOLOv8 mẫu?

Training a YOLOv8 model can be done using either Python or CLI. Below are examples for training a model using a COCO-pretrained YOLOv8 model on the COCO8 dataset for 100 epochs:

Ví dụ

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640

Để biết thêm chi tiết, hãy truy cập tài liệu Đào tạo .

Tôi có thể điểm chuẩn không YOLOv8 Mô hình cho hiệu suất?

Có YOLOv8 Các mô hình có thể được đánh giá chuẩn về hiệu suất về tốc độ và độ chính xác trên các định dạng xuất khác nhau. Bạn có thể sử dụng PyTorch, ONNX, TensorRTvà hơn thế nữa để đo điểm chuẩn. Dưới đây là các lệnh ví dụ để đo điểm chuẩn bằng cách sử dụng Python và CLI:

Ví dụ

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolov8n.pt data='coco8.yaml' imgsz=640 half=False device=0

Để biết thêm thông tin, hãy kiểm tra phần Chỉ số hiệu suất .


📅 Created 11 months ago ✏️ Updated 10 days ago

Ý kiến