Ultralytics YOLOv8
Tổng quan
YOLOv8 là phiên bản mới nhất trong YOLO loạt các máy dò vật thể thời gian thực, cung cấp hiệu suất tiên tiến về độ chính xác và tốc độ. Xây dựng dựa trên những tiến bộ của trước đây YOLO phiên bản, YOLOv8 giới thiệu các tính năng và tối ưu hóa mới giúp sản phẩm trở thành lựa chọn lý tưởng cho nhiều tác vụ phát hiện đối tượng trong nhiều ứng dụng khác nhau.
Đồng hồ: Ultralytics YOLOv8 Tổng quan về mô hình
Các tính năng chính
- Kiến trúc xương sống và cổ tiên tiến: YOLOv8 sử dụng kiến trúc xương sống và cổ hiện đại, mang lại hiệu suất trích xuất tính năng và phát hiện đối tượng được cải thiện.
- Đầu Split Ultralytics không cần neo: YOLOv8 áp dụng một sự chia tách không có neo Ultralytics đầu, góp phần nâng cao độ chính xác và quá trình phát hiện hiệu quả hơn so với các phương pháp dựa trên mỏ neo.
- Sự cân bằng tối ưu giữa độ chính xác và 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 nhiệm vụ phát hiện đối tượng theo thời gian thực trong nhiều lĩnh vực ứng dụng khác nhau.
- Nhiều mô hình được đào tạo trước: YOLOv8 cung cấp nhiều mô hình được đào tạo sẵn để đáp ứng nhiều nhiệm vụ và yêu cầu về hiệu suất khác nhau, giúp bạn dễ dàng tìm được mô hình phù hợp cho trường hợp sử dụng cụ thể của mình.
Nhiệm vụ và chế độ được hỗ trợ
Các YOLOv8 series cung cấp nhiều mô hình đa dạng, mỗi mô hình chuyên biệt cho các tác vụ cụ thể trong thị giác máy tính. Các mô hình này được thiết kế để đáp ứng nhiều yêu cầu khác nhau, từ phát hiện đối tượng đến các tác vụ phức tạp hơn như phân đoạn thể hiện , phát hiện tư thế/điểm chính, phát hiện đối tượng theo hướng và phân loại.
Mỗi biến thể của YOLOv8 series được tối ưu hóa cho nhiệm vụ tương ứng, đả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 nhiều chế độ hoạt động khác nhau bao gồm Suy luận , Xác thực , Đào tạo và Xuấ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.
Người mẫu | Tên tập tin | Nhiệm vụ | Suy luận | Xác thực | Đào tạo | Xuất khẩu |
---|---|---|---|---|---|---|
YOLOv8 | yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt |
Phát hiện | ✅ | ✅ | ✅ | ✅ |
YOLOv8 -phân đoạn | yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt |
Phân đoạn trường hợp | ✅ | ✅ | ✅ | ✅ |
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 định hướng | ✅ | ✅ | ✅ | ✅ |
YOLOv8 -cls | yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt |
Phân loại | ✅ | ✅ | ✅ | ✅ |
Bảng này cung cấp tổng quan về YOLOv8 các biến thể mô hình, làm nổi bật khả năng ứng dụng của chúng trong các nhiệm vụ cụ thể và khả năng tương thích của chúng với nhiều chế độ hoạt động khác nhau như Suy luận, Xác thực, Đào tạo và Xuất. Nó thể hiện tính linh hoạt và mạnh mẽ của YOLOv8 loạt, làm cho chúng phù hợp với nhiều ứng dụng khác nhau trong thị giác máy tính .
Số liệu hiệu suất
Hiệu suất
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 được đào tạo trên COCO , bao gồm 80 lớp được đào tạo trước.
Người mẫu | kích cỡ (điểm ảnh) |
giá trị mAP 50-95 |
Tốc độ CPU ONNX (bệnh đa xơ cứng) |
Tốc độ A100 TensorRT (bệnh đa xơ cứng) |
tham số (Nam) |
Thất bại (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 được đào tạo trên Open Image V7 , bao gồm 600 lớp được đào tạo trước.
Người mẫu | kích cỡ (điểm ảnh) |
giá trị mAP 50-95 |
Tốc độ CPU ONNX (bệnh đa xơ cứng) |
Tốc độ A100 TensorRT (bệnh đa xơ cứng) |
tham số (Nam) |
Thất bại (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 Segmentation Docs để biết các ví dụ sử dụng với các mô hình được đào tạo trên COCO , bao gồm 80 lớp được đào tạo trước.
Người mẫu | kích cỡ (điểm ảnh) |
hộp mAP 50-95 |
mặt nạ mAP 50-95 |
Tốc độ CPU ONNX (bệnh đa xơ cứng) |
Tốc độ A100 TensorRT (bệnh đa xơ cứng) |
tham số (Nam) |
Thất bại (B) |
---|---|---|---|---|---|---|---|
YOLOv8n -phân đoạn | 640 | 36.7 | 30.5 | 96.1 | 1.21 | 3.4 | 12.6 |
YOLOv8s -phân đoạn | 640 | 44.6 | 36.8 | 155.7 | 1.47 | 11.8 | 42.6 |
YOLOv8m -phân đoạn | 640 | 49.9 | 40.8 | 317.0 | 2.18 | 27.3 | 110.2 |
YOLOv8l -phân đoạn | 640 | 52.3 | 42.6 | 572.4 | 2.79 | 46.0 | 220.5 |
YOLOv8x -phân đoạn | 640 | 53.4 | 43.4 | 712.1 | 4.02 | 71.8 | 344.1 |
Xem Tài liệu phân loại để biết ví dụ sử dụng với các mô hình được đào tạo trên ImageNet , bao gồm 1000 lớp được đào tạo trước.
Người mẫu | kích cỡ (điểm ảnh) |
theo đầu trang1 |
theo top5 |
Tốc độ CPU ONNX (bệnh đa xơ cứng) |
Tốc độ A100 TensorRT (bệnh đa xơ cứng) |
tham số (Nam) |
Thất bại (B) ở 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 được đào tạo trên COCO , bao gồm 1 lớp được đào tạo trước, 'người'.
Người mẫu | kích cỡ (điểm ảnh) |
tư thế mAP 50-95 |
tư thế mAP 50 |
Tốc độ CPU ONNX (bệnh đa xơ cứng) |
Tốc độ A100 TensorRT (bệnh đa xơ cứng) |
tham số (Nam) |
Thất bại (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 định hướng để biết các ví dụ sử dụng với các mô hình được đào tạo trên DOTAv1 , bao gồm 15 lớp được đào tạo trước.
Người mẫu | kích cỡ (điểm ảnh) |
kiểm tra mAP 50 |
Tốc độ CPU ONNX (bệnh đa xơ cứng) |
Tốc độ A100 TensorRT (bệnh đa xơ cứng) |
tham số (Nam) |
Thất bại (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ụ về đà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 Predict , Train , Val và Export .
Lưu ý ví dụ dưới đây là dành cho YOLOv8 Phát hiện 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 Segment , Classify , OBB và Pose .
Ví dụ
PyTorch được đào tạo trước *.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:
Trích dẫn và Lời cảm ơn
Ultralytics YOLOv8 Xuất bản
Ultralytics chưa công bố một bài báo nghiên cứu chính thức nào YOLOv8 do bản chất phát triển nhanh chóng của các mô hình. Chúng tôi tập trung vào việc cải tiến công nghệ và làm cho nó dễ sử dụng hơn, thay vì tạo ra tài liệu tĩnh. Để biết thông tin mới nhất về YOLO kiến trúc, tính năng và cách sử dụng, vui lòng tham khảo kho lưu trữ và tài liệu GitHub của chúng tôi.
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 tác phẩm của bạn, vui lòng trích dẫn theo định dạng sau:
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 giấy phép AGPL-3.0 và Enterprise .
CÂU HỎI THƯỜNG GẶP
Là gì YOLOv8 và nó khác với trước đây như thế nào YOLO phiên bản?
YOLOv8 là phiên bản mới nhất trong Ultralytics YOLO loạt, được thiết kế để cải thiện hiệu suất phát hiện đối tượng theo thời gian thực với các tính năng tiên tiến. Không giống như các phiên bản trước đó, YOLOv8 kết hợp đầu Ultralytics tách rời không có neo , kiến trúc xương sống và cổ hiện đại, và cung cấp sự cân bằng giữa độ chính xác và tốc độ được tối ưu hóa, khiến nó trở nên lý tưởng cho nhiều ứng dụng khác nhau. Để biết thêm chi tiết, hãy xem phần Tổng quan và Tính năng chính .
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ợ nhiều tác vụ thị giác máy tính, bao gồm phát hiện đối tượng, phân đoạn thể hiệ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 tác vụ cụ thể của nó và tương thích với nhiều chế độ hoạt động khác nhau như Suy luận , Xác thực , Đào tạo và Xuất . Tham khảo phần Nhiệm vụ và Chế độ được hỗ trợ để biết thêm thông tin.
Các số liệu hiệu suất cho là gì? YOLOv8 mô hình?
YOLOv8 các mô hình đạt được hiệu suất tiên tiến nhất trên nhiều tập dữ liệu chuẩn khác nhau. Ví dụ, YOLOv8n mô hình đạt được mAP (Độ chính xác trung bình) là 37,3 trên tập dữ liệu COCO và tốc độ 0,99 ms trên A100 TensorRT . 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à tập dữ liệu khác nhau trong phần Số liệu hiệu suất .
Làm thế nào để tôi đào tạo một YOLOv8 người mẫu?
Đào tạo một YOLOv8 mô hình có thể được thực hiện bằng cách sử dụng một trong hai Python hoặc CLI . Dưới đây là các ví dụ về việc đào tạo một mô hình bằng cách sử dụng COCO được đào tạo trước YOLOv8 mô hình trên tập dữ liệu COCO8 trong 100 kỷ nguyên :
Ví dụ
Để biết thêm chi tiết, hãy truy cập Tài liệu đào tạo .
Tôi có thể đánh giá chuẩn không? YOLOv8 mô hình cho hiệu suất?
Đúng, YOLOv8 các mô hình có thể được đánh giá chuẩn về hiệu suất về mặt tốc độ và độ chính xác trên nhiều định dạng xuất khác nhau. Bạn có thể sử dụng PyTorch , ONNX , TensorRT và nhiều hơn nữa để đánh giá chuẩn. Dưới đây là các lệnh ví dụ để đánh giá chuẩn bằng cách sử dụng Python Và CLI :
Ví dụ
Để biết thêm thông tin, hãy kiểm tra phần Chỉ số hiệu suất .