Ultralytics YOLOv5
Tổng quan
YOLOv5u đại diện cho sự tiến bộ trong phương pháp phát hiện đối tượng . Xuất phát từ kiến trúc nền tảng của mô hình YOLOv5 được phát triển bởi Ultralytics , YOLOv5u tích hợp đầu tách không có neo, không có đối tượng, một tính năng đã được giới thiệu trước đó trong các mô hình YOLOv8 . Sự điều chỉnh này tinh chỉnh kiến trúc của mô hình, dẫn đến sự đánh đổi giữa độ chính xác và tốc độ được cải thiện trong các tác vụ phát hiện đối tượng. Với các kết quả thực nghiệm và các tính năng có nguồn gốc của nó, YOLOv5u cung cấp một giải pháp thay thế hiệu quả cho những người tìm kiếm các giải pháp mạnh mẽ trong cả nghiên cứu và ứng dụng thực tế.
Các tính năng chính
Chia tách không neo Ultralytics Head: Các mô hình phát hiện đối tượng truyền thống dựa vào các hộp neo được xác định trước để dự đoán vị trí đối tượng. Tuy nhiên, YOLOv5u hiện đại hóa cách tiếp cận này. Bằng cách áp dụng phân chia không neo Ultralytics Đầu tiên, nó đảm bảo một cơ chế phát hiện linh hoạt và thích ứng hơn, do đó nâng cao hiệu suất trong các tình huống đa dạng.
Tối ưu hóa sự đánh đổi độ chính xác-tốc độ: Tốc độ và độ chính xác thường kéo theo hướng ngược nhau. Nhưng YOLOv5u thách thức sự đánh đổi này. Nó cung cấp một sự cân bằng hiệu chuẩn, đảm bảo phát hiện thời gian thực mà không ảnh hưởng đến độ chính xác. Tính năng này đặc biệt vô giá đối với các ứng dụng yêu cầu phản hồi nhanh, chẳng hạn như xe tự hành, robot và phân tích video thời gian thực.
Nhiều mô hình Pre-training: Hiểu rằng các nhiệm vụ khác nhau đòi hỏi các bộ công cụ khác nhau, YOLOv5u cung cấp rất nhiều mô hình được đào tạo trước. Cho dù bạn đang tập trung vào Suy luận, Xác thực hay Đào tạo, có một mô hình được thiết kế riêng đang chờ bạn. Sự đa dạng này đảm bảo bạn không chỉ sử dụng giải pháp một kích thước phù hợp với tất cả, mà còn là một mô hình được tinh chỉnh đặc biệt cho thử thách độc đáo của bạn.
Các tác vụ và chế độ được hỗ trợ
Các mô hình YOLOv5u, với nhiều trọng lượng được đào tạo trước khác nhau, vượt trội trong các nhiệm vụ Phát hiện đối tượng . Chúng hỗ trợ một loạt các chế độ, làm cho chúng phù hợp với các ứng dụng đa dạng, từ phát triển đến triển khai.
Loại mô hình | Trọng lượng được đào tạo trước | Nhiệm vụ | Suy luận | Xác nhận | Đào tạo | Xuất khẩu |
---|---|---|---|---|---|---|
YOLOv5u | yolov5nu , yolov5su , yolov5mu , yolov5lu , yolov5xu , yolov5n6u , yolov5s6u , yolov5m6u , yolov5l6u , yolov5x6u | Phát hiện đối tượng | ✅ | ✅ | ✅ | ✅ |
Bảng này cung cấp tổng quan chi tiết về các biến thể mô hình YOLOv5u, nêu bật khả năng ứng dụng của chúng trong các tác vụ phát hiện đối tượng và hỗ trợ các chế độ hoạt động khác nhau như Suy luận, Xác thực, Đào tạo và Xuất. Sự hỗ trợ toàn diện này đảm bảo rằng người dùng có thể tận dụng tối đa khả năng của các mô hình YOLOv5u trong một loạt các tình huống phát hiện đối tượng.
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 | YAML | kích thước (điểm ảnh) | bản đồVal 50-95 | Tốc độ CPU ONNX (Cô) | Tốc độ A100 TensorRT (Cô) | Params (M) | Thất bại (B) |
---|---|---|---|---|---|---|---|
yolov5nu.pt | yolov5n.yaml | 640 | 34.3 | 73.6 | 1.06 | 2.6 | 7.7 |
yolov5su.pt | yolov5s.yaml | 640 | 43.0 | 120.7 | 1.27 | 9.1 | 24.0 |
yolov5mu.pt | yolov5m.yaml | 640 | 49.0 | 233.9 | 1.86 | 25.1 | 64.2 |
yolov5lu.pt | yolov5l.yaml | 640 | 52.2 | 408.4 | 2.50 | 53.2 | 135.0 |
yolov5xu.pt | yolov5x.yaml | 640 | 53.2 | 763.2 | 3.81 | 97.2 | 246.4 |
yolov5n6u.pt | yolov5n6.yaml | 1280 | 42.1 | 211.0 | 1.83 | 4.3 | 7.8 |
yolov5s6u.pt | yolov5s6.yaml | 1280 | 48.6 | 422.6 | 2.34 | 15.3 | 24.6 |
yolov5m6u.pt | yolov5m6.yaml | 1280 | 53.6 | 810.9 | 4.36 | 41.2 | 65.7 |
yolov5l6u.pt | yolov5l6.yaml | 1280 | 55.7 | 1470.9 | 5.47 | 86.1 | 137.4 |
yolov5x6u.pt | yolov5x6.yaml | 1280 | 56.8 | 2436.5 | 8.98 | 155.4 | 250.7 |
Ví dụ sử dụng
Ví dụ này cung cấp đơn giản YOLOv5 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, Val và Xuất .
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 YOLOv5n model
model = YOLO("yolov5n.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 YOLOv5n 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à xác nhận
Ultralytics YOLOv5 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 YOLOv5 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 YOLOv5 hoặc YOLOv5u trong nghiên cứu của bạn, vui lòng trích dẫn Ultralytics YOLOv5 kho lưu trữ như sau:
Xin lưu ý rằng YOLOv5 Các mô hình được cung cấp theo AGPL-3.0 và Giấy phép doanh nghiệp .
FAQ
Là gì Ultralytics YOLOv5u và nó khác với như thế nào YOLOv5?
Ultralytics YOLOv5u là phiên bản nâng cao của YOLOv5 , tích hợp đầu tách không có neo, không có đối tượng giúp tăng cường sự cân bằng giữa độ chính xác và tốc độ cho các nhiệm vụ phát hiện đối tượng theo thời gian thực. Không giống như truyền thống YOLOv5 , YOLOv5u áp dụng cơ chế phát hiện không neo, giúp nó linh hoạt và thích ứng hơn trong nhiều tình huống khác nhau. Để biết thông tin chi tiết hơn về các tính năng của nó, bạn có thể tham khảo Tổng quan về YOLOv5 .
Làm thế nào để neo miễn phí Ultralytics đầu cải thiện hiệu suất phát hiện đối tượng trong YOLOv5u?
Không có neo Ultralytics đầu trong YOLOv5u cải thiện hiệu suất phát hiện đối tượng bằng cách loại bỏ sự phụ thuộc vào các hộp neo được xác định trước. Điều này dẫn đến một cơ chế phát hiện linh hoạt và thích ứng hơn có thể xử lý các kích thước và hình dạng đối tượng khác nhau với hiệu quả cao hơn. Cải tiến này trực tiếp góp phần vào sự cân bằng giữa độ chính xác và tốc độ, làm cho YOLOv5u phù hợp với các ứng dụng thời gian thực. Tìm hiểu thêm về kiến trúc của nó trong phần Tính năng chính .
Tôi có thể sử dụng các mô hình YOLOv5u được đào tạo trước cho các tác vụ và chế độ khác nhau không?
Có, bạn có thể sử dụng các mô hình YOLOv5u được đào tạo trước cho các tác vụ khác nhau như Phát hiện đối tượng. Các mô hình này hỗ trợ nhiều chế độ, bao gồm Suy luận, Xác thực, Đào tạo và Xuất. Tính linh hoạt này cho phép người dùng tận dụng khả năng của các mô hình YOLOv5u trên các yêu cầu hoạt động khác nhau. Để biết tổng quan chi tiết, hãy kiểm tra phần Tác vụ và Chế độ được hỗ trợ .
Làm thế nào để so sánh các chỉ số hiệu suất của các mô hình YOLOv5u trên các nền tảng khác nhau?
Các chỉ số hiệu suất của các mô hình YOLOv5u khác nhau tùy thuộc vào nền tảng và phần cứng được sử dụng. Ví dụ: mô hình YOLOv5nu đạt được 34.3 mAP trên tập dữ liệu COCO với tốc độ 73.6 ms trên CPU (ONNX) và 1,06 ms trên A100 TensorRT. Các chỉ số hiệu suất chi tiết cho các kiểu máy YOLOv5u khác nhau có thể được tìm thấy trong phần Chỉ số hiệu suất , cung cấp so sánh toàn diện trên các thiết bị khác nhau.
Làm cách nào để đào tạo mô hình YOLOv5u bằng cách sử dụng Ultralytics Python API?
Bạn có thể huấn luyện mô hình YOLOv5u bằng cách tải mô hình được đào tạo trước và chạy lệnh đào tạo với tập dữ liệu của bạn. Dưới đây là một ví dụ nhanh:
Ví dụ
Để biết hướng dẫn chi tiết hơn, hãy truy cập phần Ví dụ sử dụng .