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 model Ultralytics YOLO mà không cần viết mã Python. CLI hỗ trợ chạy trực tiếp nhiều tác vụ từ terminal bằng lệnh yolo.
Xem: Làm chủ 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 các giá trị [detect, segment, semantic, depth, classify, pose, obb]MODE(bắt buộc) là một trong các giá trị [train, val, predict, export, track, benchmark]ARGS(tùy chọn) gồm bất kỳ số lượng cặparg=valuetùy chỉnh nào, chẳng hạnimgsz=320, dùng để ghi đè các giá trị mặc định.
Xem tất cả ARGS trong Hướng dẫn cấu hình đầy đủ hoặc bằng yolo cfg.
Trong đó:
TASK(tùy chọn) là một trong các giá trị[detect, segment, semantic, depth, classify, pose, obb]. Nếu không được chỉ định rõ, YOLO sẽ cố gắng suy luậnTASKtừ loại model.MODE(bắt buộc) là một trong các giá trị[train, val, predict, export, track, benchmark]ARGS(tùy chọn) gồm bất kỳ số lượng cặparg=valuetùy chỉnh nào, chẳng hạnimgsz=320, dùng để ghi đè các giá trị mặc định. Để xem danh sách đầy đủ cácARGShiện có, hãy tham khảo trang Cấu hình vàdefault.yaml.
Các đối số phải được truyền theo cặp arg=val, phân tách bằng dấu bằng = và ngăn cách giữa các cặp bằng dấu cách. 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 dataset COCO8 trong 100 epoch với kích thước ảnh 640. Để xem danh sách đầy đủ các đối số hiện có, hãy tham khảo 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=640Đánh giá#
Đánh giá độ chính xác của model đã huấn luyện trên dataset COCO8. Model tùy chỉnh sẽ sử dụng lại data trong quá trình huấn luyện nếu bỏ qua data; trọng số chính thức sẽ dùng giá trị mặc định coco8.yaml của task.
Đánh giá model YOLO26n chính thức:
yolo detect val model=yolo26n.pt data=coco8.yamlDự đoán#
Dùng model đã huấn luyện để chạy dự đoán trên ảnh.
Dự đoán bằng model YOLO26n chính thức:
yolo detect predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'Export#
Export model sang định dạng khác, chẳng hạn ONNX hoặc CoreML.
Export model YOLO26n chính thức sang định dạng ONNX:
yolo export model=yolo26n.pt format=onnxCác định dạng export hiện có của Ultralytics được liệt kê trong bảng bên dưới. Bạn có thể export sang bất kỳ định dạng nào bằng đối số format, ví dụ: format='onnx' hoặc format='engine'.
| Định dạng | Đối số format | Model | Metadata | Đối số |
|---|---|---|---|---|
| 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 |
| Apple Core AI | coreai | yolo26n.aimodel | ✅ | imgsz, batch, quantize |
| TF SavedModel | saved_model | yolo26n_saved_model/ | ✅ | imgsz, 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 |
| LiteRT | litert | yolo26n.tflite | ✅ | imgsz, quantize, batch, 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 |
| Hailo | hailo | yolo26n_hailo_model/ | ✅ | imgsz, name, quantize, data, fraction, simplify, conf, iou, device |
| Huawei Ascend | ascend | yolo26n_ascend_model/ | ✅ | imgsz, batch, name, quantize, opset, simplify, nms, device |
| AMD Xilinx | xilinx | yolo26n_xilinx_model/ | ✅ | imgsz, name, quantize, data, fraction, opset, simplify, device |
nms=None mặc định xuất đầu ra thô cho NMS bên ngoài. Đặt nms=False để chọn một head không dùng NMS hiện có; các định dạng không được hỗ trợ sẽ chuyển về luồng đầu ra gốc. Các mục nms ở trên xác định những định dạng có thể tích hợp NMS với nms=True.
Xem thông tin chi tiết đầy đủ về export trên trang Xuất.
Ghi đè các đối số mặc định#
Ghi đè các đối số mặc định bằng cách truyền chúng dưới dạng các cặp arg=value trong CLI.
Huấn luyện model phát hiện trong 10 epoch với learning rate 0.01:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=10 optimizer=SGD 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 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 bản sao của default.yaml trong thư mục làm việc hiện tại bằng lệnh yolo copy-cfg, lệnh này tạo tệp default_copy.yaml.
Sau đó, bạn có thể truyền tệp này dưới dạng cfg=default_copy.yaml cùng với bất kỳ đối số bổ sung nào, như imgsz=320 trong ví dụ này:
yolo copy-cfg
yolo cfg=default_copy.yaml imgsz=320Các lệnh về giải pháp#
Ultralytics cung cấp các giải pháp sẵn dùng cho những ứng dụng thị giác máy tính phổ biến thông qua CLI. Lệnh yolo solutions cung cấp các chức năng đếm đối tượng, cắt ảnh, làm mờ, theo dõi bài tập thể dục, tạo bản đồ nhiệt, phân đoạn đối tượng, VisionEye, ước tính tốc độ, quản lý hàng đợi, phân tích, suy luận bằng Streamlit, theo dõi dựa trên vùng, đếm theo khu vực, cảnh báo an ninh và quản lý bãi đỗ xe — xem trang Giải pháp để biết danh mục đầy đủ. Chạy yolo solutions help để liệt kê tất cả giải pháp được hỗ trợ cùng các đối số của chúng.
Đế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.
Câu hỏi thường gặp#
Để huấn luyện model bằng CLI, hãy chạy một lệnh trên terminal. Ví dụ: để huấn luyện model phát hiện trong 10 epoch, hãy chạy:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10Lệnh này sử dụng chế độ
trainvới các đối số cụ thể. Để xem danh sách đầy đủ các đối số hiện có, hãy tham khảo Hướng dẫn cấu hình.CLI Ultralytics YOLO hỗ trợ nhiều tác vụ, bao gồm phát hiện, phân đoạn, phân đoạn ngữ nghĩa, ước tính độ sâu, phân loại, ước tính pose và phát hiện hộp giới hạn có định hướng. Bạn cũng có thể thực hiện các thao tác như:
- Huấn luyện model: 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 model: Thực thi
yolo export model=<model.pt> format=<export_format>. - Sử dụng giải pháp: Chạy
yolo solutions <solution_name>để dùng các ứng dụng có sẵn.
Tùy chỉnh từng tác vụ bằng nhiều đối số khác nhau. Để xem cú pháp và ví dụ chi tiết, hãy tham khảo các phần tương ứng như Huấn luyện, Dự đoán và Xuất.
- Huấn luyện model: Chạy
Để đánh giá độ chính xác của model, hãy sử dụng chế độ
val. Ví dụ: để đánh giá model phát hiện đã được huấn luyện trước với batch size bằng 1 và kích thước ảnh 640, hãy chạy:yolo val model=yolo26n.pt data=coco8.yaml batch=1 imgsz=640Lệnh này đánh giá model trên dataset được chỉ định và cung cấp các chỉ số hiệu năng 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 model YOLO sang nhiều định dạng, bao gồm ONNX, TensorRT, CoreML, TensorFlow và các định dạng khác. Ví dụ: để xuất model 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 model cho các môi trường triển khai cụ thể. Để biết đầy đủ thông tin về tất cả định dạng xuất hiện có và tham số tương ứng, hãy truy cập trang Xuất.
Ultralytics cung cấp các giải pháp sẵn dùng thông qua lệnh
solutions. Ví dụ: để đếm đối tượng trong video:yolo solutions count source="path/to/video.mp4"Các giải pháp này cần rất ít cấu hình 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ả giải pháp hiện có, hãy chạy
yolo solutions help. Mỗi giải pháp có các tham số riêng để tùy chỉnh theo nhu cầu của bạn.