Các mô hình được Ultralytics hỗ trợ
Chào mừng đến với tài liệu về mô hình của Ultralytics! Chúng tôi hỗ trợ nhiều loại mô hình, mỗi mô hình được điều chỉnh cho các tác vụ cụ thể như phát hiện đối tượng, phân đoạn thể hiện, phân loại hình ảnh, ước tính tư thế và theo dõi đa đối tượng. Nếu bạn quan tâm đến việc đóng góp kiến trúc mô hình của mình cho Ultralytics, hãy xem Hướng dẫn đóng góp của chúng tôi.
Các mô hình nổi bật
Dưới đây là một số mô hình chính được hỗ trợ:
- YOLOv3: Phiên bản thứ ba của dòng mô hình YOLO, ban đầu được phát triển bởi Joseph Redmon, nổi tiếng với khả năng phát hiện đối tượng theo thời gian thực hiệu quả.
- YOLOv4: Bản cập nhật gốc darknet cho YOLOv3, được phát hành bởi Alexey Bochkovskiy vào năm 2020.
- YOLOv5: Một phiên bản cải tiến của kiến trúc YOLO bởi Ultralytics, cung cấp hiệu suất và tốc độ tốt hơn so với các phiên bản trước.
- YOLOv6: Được phát hành bởi Meituan vào năm 2022 và được sử dụng trong nhiều robot giao hàng tự động của công ty.
- YOLOv7: Các mô hình YOLO được cập nhật do các tác giả của YOLOv4 phát hành vào năm 2022. Chỉ hỗ trợ suy luận.
- YOLOv8: Một mô hình đa năng với các khả năng nâng cao như phân vùng thể hiện (instance segmentation), ước tính tư thế/điểm chính và phân loại.
- YOLOv9: Một mô hình thử nghiệm được huấn luyện trên codebase YOLOv5 Ultralytics, triển khai Programmable Gradient Information (PGI).
- YOLOv10: Được phát triển bởi Đại học Thanh Hoa, nổi bật với huấn luyện không NMS và kiến trúc hướng đến hiệu quả-độ chính xác, mang lại hiệu suất và độ trễ hàng đầu.
- YOLO11 🚀 MỚI: Các mô hình YOLO mới nhất của Ultralytics mang lại hiệu suất hiện đại (SOTA) trên nhiều tác vụ bao gồm phát hiện, phân đoạn, ước tính tư thế, theo dõi và phân loại.
- Segment Anything Model (SAM): Segment Anything Model (SAM) gốc của Meta.
- Segment Anything Model 2 (SAM2): Thế hệ tiếp theo của Segment Anything Model (SAM) từ Meta dành cho video và hình ảnh.
- Mobile Segment Anything Model (MobileSAM): MobileSAM cho các ứng dụng di động, được phát triển bởi Đại học Kyung Hee.
- Fast Segment Anything Model (FastSAM): FastSAM được phát triển bởi Nhóm Phân tích Hình ảnh & Video, Viện Tự động hóa, Học viện Khoa học Trung Quốc.
- YOLO-NAS: Các Mô Hình YOLO Tìm Kiếm Kiến Trúc Mạng Nơ-ron (NAS).
- Realtime Detection Transformers (RT-DETR): Các mô hình PaddlePaddle Realtime Detection Transformer (RT-DETR) của Baidu.
- YOLO-World: Mô hình phát hiện đối tượng từ vựng mở theo thời gian thực từ Tencent AI Lab.
- YOLOE: Một trình phát hiện đối tượng từ vựng mở được cải tiến, duy trì hiệu suất thời gian thực của YOLO đồng thời phát hiện các lớp tùy ý vượt ra ngoài dữ liệu huấn luyện của nó.
Xem: Chạy các mô hình Ultralytics YOLO chỉ với một vài dòng code.
Bắt đầu: Ví dụ sử dụng
Ví dụ này cung cấp các ví dụ đơn giản về huấn luyện và suy luận YOLO. Để có đầy đủ tài liệu 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 dành cho các mô hình Detect YOLOv8 để 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 và Pose.
Ví dụ
PyTorch đã được huấn luyện trước *.pt
các mô hình cũng như cấu hình *.yaml
các tệp có thể được chuyển đến YOLO()
, SAM()
, NAS()
và RTDETR()
các class để 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")
Các lệnh CLI 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
Đóng góp các mô hình mới
Bạn muốn đóng góp mô hình của mình cho Ultralytics? Tuyệt vời! Chúng tôi luôn sẵn sàng mở rộng danh mục mô hình của mình.
-
Rẽ nhánh Kho lưu trữ: Bắt đầu bằng cách rẽ nhánh kho lưu trữ Ultralytics GitHub.
-
Sao chép Bản rẽ nhánh của Bạn: Sao chép bản rẽ nhánh của bạn vào máy cục bộ và tạo một nhánh mới để làm việc.
-
Triển khai Mô hình Của Bạn: Thêm mô hình của bạn theo các tiêu chuẩn và hướng dẫn mã hóa được cung cấp trong Hướng dẫn Đóng góp của chúng tôi.
-
Kiểm tra Kỹ lưỡng: Đảm bảo kiểm tra mô hình của bạn một cách nghiêm ngặt, cả độc lập và như một phần của pipeline.
-
Tạo Yêu cầu Kéo: Sau khi bạn hài lòng với mô hình của mình, hãy tạo một yêu cầu kéo đến kho lưu trữ chính để xem xét.
-
Kiểm tra & Hợp nhất mã: Sau khi được xem xét, nếu mô hình của bạn đáp ứng các tiêu chí của chúng tôi, nó sẽ được hợp nhất vào kho lưu trữ chính.
Để biết các bước chi tiết, hãy tham khảo Hướng dẫn đóng góp của chúng tôi.
Câu hỏi thường gặp
Những ưu điểm chính của việc sử dụng Ultralytics YOLO11 để phát hiện đối tượng là gì?
Ultralytics YOLO11 cung cấp các khả năng nâng cao như phát hiện đối tượng theo thời gian thực, phân đoạn thể hiện, ước tính tư thế và phân loại. Kiến trúc được tối ưu hóa của nó đảm bảo hiệu suất tốc độ cao mà không làm giảm độ chính xác, làm cho nó trở nên lý tưởng cho nhiều ứng dụng khác nhau trong các lĩnh vực AI đa dạng. YOLO11 được xây dựng dựa trên các phiên bản trước với hiệu suất được cải thiện và các tính năng bổ sung, như được trình bày chi tiết trên trang tài liệu YOLO11.
Làm cách nào để huấn luyện mô hình YOLO trên dữ liệu tùy chỉnh?
Việc huấn luyện mô hình YOLO trên dữ liệu tùy chỉnh có thể dễ dàng thực hiện bằng các thư viện của Ultralytics. Dưới đây là một ví dụ nhanh:
Ví dụ
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo11n.pt") # or any other YOLO model
# Train the model on custom dataset
results = model.train(data="custom_data.yaml", epochs=100, imgsz=640)
yolo train model=yolo11n.pt data='custom_data.yaml' epochs=100 imgsz=640
Để biết hướng dẫn chi tiết hơn, hãy truy cập trang tài liệu Huấn luyện.
Những phiên bản YOLO nào được Ultralytics hỗ trợ?
Ultralytics hỗ trợ một loạt các phiên bản YOLO (You Only Look Once) toàn diện từ YOLOv3 đến YOLO11, cùng với các mô hình như YOLO-NAS, SAM và RT-DETR. Mỗi phiên bản được tối ưu hóa cho các tác vụ khác nhau như phát hiện, phân đoạn và phân loại. Để biết thông tin chi tiết về từng mô hình, hãy tham khảo tài liệu Các Mô hình được Ultralytics Hỗ trợ.
Tại sao tôi nên sử dụng Ultralytics HUB cho các dự án máy học?
Ultralytics HUB cung cấp một nền tảng end-to-end, không cần code để huấn luyện, triển khai và quản lý các mô hình YOLO. Nó đơn giản hóa các quy trình làm việc phức tạp, cho phép người dùng tập trung vào hiệu suất và ứng dụng của mô hình. HUB cũng cung cấp khả năng huấn luyện trên cloud, quản lý bộ dữ liệu toàn diện và giao diện thân thiện với người dùng cho cả người mới bắt đầu và các nhà phát triển có kinh nghiệm.
YOLO11 có thể thực hiện những loại tác vụ nào và nó so sánh như thế nào với các phiên bản YOLO khác?
YOLO11 là một mô hình linh hoạt có khả năng thực hiện các tác vụ bao gồm phát hiện đối tượng, phân đoạn thể hiện, phân loại và ước tính tư thế. So với các phiên bản trước, YOLO11 cung cấp những cải tiến đáng kể về tốc độ và độ chính xác do kiến trúc được tối ưu hóa và thiết kế không neo. Để so sánh sâu hơn, hãy tham khảo tài liệu YOLO11 và các trang Tác vụ để biết thêm chi tiết về các tác vụ cụ thể.