Giao diện Dòng lệnh#
Giao diện dòng lệnh (CLI) của Ultralytics cung cấp cách đơn giản để sử dụng các mô hình YOLO của Ultralytics mà không cần môi trường Python. Giao diện dòng lệnh hỗ trợ chạy các tác vụ khác nhau trực tiếp từ terminal bằng lệnh yolo, không yêu cầu tùy chỉnh hay mã Python.
Watch: Mastering Ultralytics YOLO: CLI
Các lệnh yolo của Ultralytics sử dụng cú pháp sau:
yolo TASK MODE ARGSTrong đó:
TASK(tùy chọn) là một trong [detect, segment, semantic, depth, classify, pose, obb]MODE(bắt buộc) là một trong [train, val, predict, export, track, benchmark]ARGS(tùy chọn) là bất kỳ số lượng cặp tùy chỉnharg=valuenào nhưimgsz=320để ghi đè các giá trị mặc định.
Xem tất cả các tham số ARGS trong Hướng dẫn Cấu hình đầy đủ hoặc với yolo cfg.
Trong đó:
TASK(tùy chọn) là một trong[detect, segment, semantic, depth, classify, pose, obb]. Nếu không được truyền rõ ràng, YOLO sẽ cố gắng suy raTASKtừ loại mô hình.MODE(bắt buộc) là một trong[train, val, predict, export, track, benchmark]ARGS(tùy chọn) là bất kỳ số lượng cặp tùy chỉnharg=valuenào nhưimgsz=320để ghi đè các giá trị mặc định. Để có danh sách đầy đủ cácARGSkhả dụng, hãy xem trang Cấu hình vàdefault.yaml.
Các đối số phải được truyền dưới dạng các cặp arg=val, được phân tách bằng dấu bằng = và ngăn cách bằng khoảng trắng giữa các cặp. Không sử dụng tiền tố đối số -- hoặc dấu phẩy , giữa các đối số.
yolo predict model=yolo26n.pt imgsz=640 conf=0.25✅yolo predict model yolo26n.pt imgsz 640 conf 0.25❌yolo predict --model yolo26n.pt --imgsz 640 --conf 0.25❌
Huấn luyện#
Huấn luyện YOLO trên tập dữ liệu COCO8 trong 100 epoch với kích thước ảnh 640. Để có danh sách đầy đủ các đối số khả dụng, hãy xem trang Cấu hình.
Bắt đầu huấn luyện YOLO26n trên COCO8 trong 100 epoch với kích thước ảnh 640:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=100 imgsz=640Val#
Đánh giá độ chính xác của mô hình đã huấn luyện trên tập dữ liệu COCO8. Không cần đối số nào vì model vẫn giữ lại data và các đối số huấn luyện của mô hình dưới dạng các thuộc tính của mô hình.
Đánh giá một mô hình YOLO26n chính thức:
yolo detect val model=yolo26n.ptPredict#
Sử dụng một mô hình đã huấn luyện để chạy dự đoán trên hình ảnh.
Dự đoán với một mô hình YOLO26n chính thức:
yolo detect predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'Export#
Xuất mô hình sang định dạng khác như ONNX hoặc CoreML.
Xuất một mô hình YOLO26n chính thức sang định dạng ONNX:
yolo export model=yolo26n.pt format=onnxCác định dạng xuất khả dụng của Ultralytics nằm trong bảng dưới đây. Bạn có thể xuất sang bất kỳ định dạng nào bằng cách sử dụng đối số format, ví dụ: format='onnx' hoặc format='engine'.
| Định dạng | Argument format | Model | Metadata | Arguments |
|---|---|---|---|---|
| PyTorch | - | yolo26n.pt | ✅ | - |
| TorchScript | torchscript | yolo26n.torchscript | ✅ | imgsz, quantize, dynamic, nms, batch, device |
| ONNX | onnx | yolo26n.onnx | ✅ | imgsz, quantize, dynamic, simplify, opset, nms, batch, data, fraction, device |
| OpenVINO | openvino | yolo26n_openvino_model/ | ✅ | imgsz, quantize, dynamic, nms, batch, data, fraction, device |
| TensorRT | engine | yolo26n.engine | ✅ | imgsz, quantize, dynamic, simplify, opset, workspace, nms, batch, data, fraction, device |
| CoreML | coreml | yolo26n.mlpackage | ✅ | imgsz, dynamic, quantize, nms, batch, device |
| TF SavedModel | saved_model | yolo26n_saved_model/ | ✅ | imgsz, keras, quantize, opset, nms, batch, data, fraction, device |
| TF GraphDef | pb | yolo26n.pb | ❌ | imgsz, opset, batch, device |
| TF Edge TPU | edgetpu | yolo26n_edgetpu.tflite | ✅ | imgsz, quantize, opset, data, fraction, device |
| PaddlePaddle | paddle | yolo26n_paddle_model/ | ✅ | imgsz, batch, device |
| MNN | mnn | yolo26n.mnn | ✅ | imgsz, batch, dynamic, quantize, simplify, opset, nms, device |
| NCNN | ncnn | yolo26n_ncnn_model/ | ✅ | imgsz, quantize, batch, device |
| IMX500 | imx | yolo26n_imx_model/ | ✅ | imgsz, quantize, data, fraction, nms, device |
| RKNN | rknn | yolo26n_rknn_model/ | ✅ | imgsz, batch, name, quantize, simplify, opset, data, fraction, device |
| ExecuTorch | executorch | yolo26n_executorch_model/ | ✅ | imgsz, batch, device |
| Axelera | axelera | yolo26n_axelera_model/ | ✅ | imgsz, batch, quantize, data, fraction, device |
| DEEPX | deepx | yolo26n_deepx_model/ | ✅ | imgsz, quantize, simplify, opset, data, optimize, device |
| Qualcomm QNN | qnn | yolo26n_qnn.onnx | ✅ | imgsz, batch, name, quantize, simplify, opset, data, fraction, device |
| LiteRT | litert | yolo26n.tflite | ✅ | imgsz, quantize, batch, data, fraction, device |
| Hailo | hailo | yolo26n_hailo_model/ | ✅ | imgsz, name, quantize, data, fraction, simplify, conf, iou |
| Huawei Ascend | ascend | yolo26n_ascend_model/ | ✅ | imgsz, batch, name, quantize, opset, simplify, nms |
| Apple Core AI | coreai | yolo26n.aimodel | ✅ | imgsz, batch, quantize |
nms=None mặc định sử dụng đầu ra thô cho NMS bên ngoài. Thiết lập nms=False để chọn phần đầu không có NMS khả dụng; các định dạng không được hỗ trợ sẽ quay lại đường dẫn đầu ra gốc của chúng. Các mục nms ở trên xác định các định dạng có thể nhúng NMS bằng nms=True.
Xem chi tiết export đầy đủ trên trang Xuất.
Ghi đè Đối số Mặc định#
Ghi đè các đối số mặc định bằng cách truyền chúng vào giao diện dòng lệnh dưới dạng các cặp arg=value.
Huấn luyện một mô hình phát hiện trong 10 epoch với tốc độ học 0.01:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01Ghi đè Tệp Cấu hình Mặc định#
Ghi đè hoàn toàn tệp cấu hình default.yaml bằng cách truyền một tệp mới với đối số cfg, chẳng hạn như cfg=custom.yaml.
Để thực hiện việc này, trước tiên hãy tạo một bản sao của default.yaml trong thư mục làm việc hiện tại của bạn bằng lệnh yolo copy-cfg, lệnh này tạo ra tệp default_copy.yaml.
Sau đó, bạn có thể truyền tệp này làm cfg=default_copy.yaml cùng với bất kỳ đối số bổ sung nào, giống như imgsz=320 trong ví dụ này:
yolo copy-cfg
yolo cfg=default_copy.yaml imgsz=320Lệnh Giải pháp#
Ultralytics cung cấp các giải pháp sẵn sàng sử dụng cho các ứng dụng thị giác máy tính phổ biến thông qua giao diện dòng lệnh. Lệnh yolo solutions cung cấp tính năng đếm đối tượng, cắt ảnh, làm mờ, giám sát tập luyện, bản đồ nhiệt, phân đoạn thực thể, VisionEye, ước tính tốc độ, quản lý hàng đợi, phân tích, suy luận Streamlit và theo dõi dựa trên vùng — hãy xem trang Giải pháp để biết danh mục đầy đủ. Chạy yolo solutions help để liệt kê mọi giải pháp được hỗ trợ và các đối số của giải pháp đó.
Đếm đối tượng trong video hoặc luồng trực tiếp:
yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file pathĐể biết thêm thông tin về các giải pháp của Ultralytics, hãy truy cập trang Giải pháp.
FAQ#
Để huấn luyện mô hình bằng giao diện dòng lệnh, hãy thực thi một lệnh một dòng trong terminal. Ví dụ: để huấn luyện một mô hình phát hiện trong 10 epoch với tốc độ học là 0.01, hãy chạy:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01Lệnh này sử dụng chế độ
trainvới các đối số cụ thể. Để có danh sách đầy đủ các đối số khả dụng, hãy tham khảo Hướng dẫn Cấu hình.Giao diện dòng lệnh YOLO của Ultralytics hỗ trợ nhiều tác vụ khác nhau, bao gồm phát hiện, phân đoạn, phân đoạn ngữ nghĩa, ước tính chiều sâu, phân loại, ước tính tư thế, và phát hiện hộp bao định hướng. Bạn cũng có thể thực hiện các hoạt động như:
- Huấn luyện Mô hình: Chạy
yolo train data=<data.yaml> model=<model.pt> epochs=<num>. - Chạy Dự đoán: Sử dụng
yolo predict model=<model.pt> source=<data_source> imgsz=<image_size>. - Xuất Mô hình: Thực thi
yolo export model=<model.pt> format=<export_format>. - Sử dụng Giải pháp: Chạy
yolo solutions <solution_name>cho các ứng dụng có sẵn.
Tùy chỉnh từng tác vụ với nhiều đối số khác nhau. Để biết cú pháp chi tiết và ví dụ, hãy xem các phần tương ứng như Train, Predict, và Export.
- Huấn luyện Mô hình: Chạy
Để đánh giá độ chính xác của mô hình, hãy sử dụng chế độ
val. Ví dụ: để đánh giá một mô hình phát hiện được huấn luyện sẵn với kích thước lô bằng 1 và kích thước ảnh là 640, hãy chạy:yolo val model=yolo26n.pt data=coco8.yaml batch=1 imgsz=640Lệnh này đánh giá mô hình trên tập dữ liệu được chỉ định và cung cấp các chỉ số hiệu suất như mAP, precision, và recall. Để biết thêm chi tiết, hãy tham khảo phần Val.
Bạn có thể xuất các mô hình YOLO sang nhiều định dạng khác nhau bao gồm ONNX, TensorRT, CoreML, TensorFlow và nhiều định dạng khác. Ví dụ: để xuất mô hình sang định dạng ONNX, hãy chạy:
yolo export model=yolo26n.pt format=onnxLệnh xuất hỗ trợ nhiều tùy chọn để tối ưu hóa mô hình của bạn cho các môi trường triển khai cụ thể. Để biết đầy đủ chi tiết về tất cả các định dạng xuất có sẵn và các tham số cụ thể của chúng, hãy truy cập trang Xuất.
Ultralytics cung cấp các giải pháp sẵn sàng sử dụng thông qua lệnh
solutions. Ví dụ: để đếm đối tượng trong video:yolo solutions count source="path/to/video.mp4"Những giải pháp này yêu cầu cấu hình tối thiểu và cung cấp chức năng tức thì cho các tác vụ thị giác máy tính phổ biến. Để xem tất cả các giải pháp có sẵn, hãy chạy
yolo solutions help. Mỗi giải pháp có các tham số cụ thể có thể được tùy chỉnh để phù hợp với nhu cầu của bạn.