명령줄 인터페이스#
Ultralytics 명령줄 인터페이스(CLI)는 Python 코드를 작성하지 않고도 Ultralytics YOLO 모델을 간편하게 사용할 수 있는 방법을 제공합니다. CLI는 yolo 명령을 사용해 터미널에서 바로 다양한 작업을 실행할 수 있도록 지원합니다.
시청: Ultralytics YOLO 마스터하기: CLI
Ultralytics yolo 명령어는 다음 구문을 사용합니다.
yolo TASK MODE ARGS항목은 다음과 같습니다.
TASK(선택 사항)은 [detect, segment, semantic, depth, classify, pose, obb] 중 하나입니다.MODE(필수)은 [train, val, predict, export, track, benchmark] 중 하나입니다.ARGS(선택 사항)은 기본값을 재정의하는imgsz=320와 같은 사용자 지정arg=value쌍을 원하는 개수만큼 지정할 수 있습니다.
전체 구성 가이드 또는 yolo cfg에서 모든 ARGS를 확인하세요.
항목은 다음과 같습니다.
TASK(선택 사항)은[detect, segment, semantic, depth, classify, pose, obb]중 하나입니다. 명시적으로 전달하지 않으면 YOLO가 모델 유형을 바탕으로TASK를 추론합니다.MODE(필수)은[train, val, predict, export, track, benchmark]중 하나입니다.ARGS(선택 사항)은 기본값을 재정의하는imgsz=320와 같은 사용자 지정arg=value쌍을 원하는 개수만큼 지정할 수 있습니다. 사용 가능한ARGS의 전체 목록은 구성 페이지와default.yaml를 참조하세요.
인수는 arg=val 쌍으로 전달해야 합니다. 각 쌍의 인수는 등호 =로 구분하고, 쌍 사이에는 공백을 사용합니다. 인수 앞에 -- 접두사를 붙이거나 인수 사이에 쉼표 ,를 사용하지 마세요.
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❌
학습#
COCO8 데이터셋에서 YOLO를 100에폭 동안 이미지 크기 640으로 학습합니다. 사용 가능한 인수의 전체 목록은 구성 페이지를 참조하세요.
COCO8에서 YOLO26n을 100에폭 동안 이미지 크기 640으로 학습합니다.
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=100 imgsz=640검증#
COCO8 데이터셋에서 학습된 모델의 정확도를 검증합니다. data를 생략하면 사용자 지정 모델은 학습에 사용된 data을 재사용하고, 공식 가중치는 태스크 기본값인 coco8.yaml으로 대체됩니다.
공식 YOLO26n 모델을 검증합니다.
yolo detect val model=yolo26n.pt data=coco8.yaml예측#
학습된 모델을 사용하여 이미지에서 예측을 실행합니다.
공식 YOLO26n 모델로 예측합니다.
yolo detect predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'내보내기#
모델을 ONNX 또는 CoreML과 같은 다른 형식으로 내보냅니다.
공식 YOLO26n 모델을 ONNX 형식으로 내보냅니다.
yolo export model=yolo26n.pt format=onnx사용 가능한 Ultralytics 내보내기 형식은 아래 표에 나와 있습니다. format 인수(예: format='onnx' 또는 format='engine')를 사용하면 원하는 형식으로 내보낼 수 있습니다.
| 형식 | format 인수 | 모델 | 메타데이터 | 인수 |
|---|---|---|---|---|
| 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은 외부 NMS를 위한 원시 출력을 기본값으로 사용합니다. 사용 가능한 NMS-free head를 선택하려면 nms=False을 설정합니다. 지원되지 않는 형식은 해당 형식의 기본 출력 경로로 대체됩니다. 위의 nms 항목은 nms=True을 사용해 NMS를 포함할 수 있는 형식을 나타냅니다.
Export 페이지에서 전체 export 세부 정보를 확인하세요.
기본 인수 재정의#
CLI에서 arg=value 쌍으로 인수를 전달하여 기본 인수를 재정의합니다.
학습률 0.01로 10 epoch 동안 detection 모델을 학습합니다:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=10 optimizer=SGD lr0=0.01기본 설정 파일 재정의#
cfg 인수와 함께 새 파일(예: cfg=custom.yaml)을 전달하여 default.yaml 설정 파일 전체를 재정의합니다.
먼저 yolo copy-cfg 명령을 사용해 현재 작업 디렉터리에 default.yaml의 복사본을 만듭니다. 이 명령은 default_copy.yaml 파일을 생성합니다.
그런 다음 이 파일을 cfg=default_copy.yaml으로 전달하고, 이 예시의 imgsz=320과 같은 추가 인수를 함께 지정할 수 있습니다:
yolo copy-cfg
yolo cfg=default_copy.yaml imgsz=320Solutions 명령#
Ultralytics는 CLI를 통해 일반적인 컴퓨터 비전 애플리케이션에 바로 사용할 수 있는 솔루션을 제공합니다. yolo solutions 명령을 사용하면 객체 계수, 자르기, 블러 처리, 운동 모니터링, 히트맵, 인스턴스 세그멘테이션, VisionEye, 속도 추정, 대기열 관리, 분석, Streamlit 추론, 영역 기반 추적, 구역 계수, 보안 알람, 주차 관리를 사용할 수 있습니다. 전체 목록은 Solutions 페이지를 참조하세요. 지원되는 모든 솔루션과 인수를 확인하려면 yolo solutions help를 실행합니다.
비디오 또는 라이브 스트림에서 객체를 계수합니다:
yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file pathUltralytics 솔루션에 관한 자세한 내용은 Solutions 페이지를 참조하세요.
자주 묻는 질문#
CLI를 사용해 모델을 학습하려면 터미널에서 한 줄 명령을 실행합니다. 예를 들어 detection 모델을 10 epoch 동안 학습하려면 다음을 실행합니다:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10이 명령은 특정 인수를 사용하여
train모드로 실행됩니다. 사용 가능한 인수 전체 목록은 Configuration Guide를 참조하세요.Ultralytics YOLO CLI는 detection, segmentation, semantic segmentation, depth estimation, classification, pose estimation, oriented bounding box detection 등 다양한 작업을 지원합니다. 다음과 같은 작업도 수행할 수 있습니다:
- 모델 학습:
yolo train data=<data.yaml> model=<model.pt> epochs=<num>을 실행합니다. - 예측 실행:
yolo predict model=<model.pt> source=<data_source> imgsz=<image_size>을 사용합니다. - 모델 내보내기:
yolo export model=<model.pt> format=<export_format>을 실행합니다. - 솔루션 사용: 바로 사용할 수 있는 애플리케이션을 위해
yolo solutions <solution_name>을 실행합니다.
다양한 인수로 각 작업을 사용자 지정할 수 있습니다. 자세한 구문과 예시는 Train, Predict, Export 등의 해당 섹션을 참조하세요.
- 모델 학습:
YOLO 모델은 ONNX, TensorRT, CoreML, TensorFlow 등 다양한 형식으로 내보낼 수 있습니다. 예를 들어 모델을 ONNX 형식으로 내보내려면 다음을 실행합니다:
yolo export model=yolo26n.pt format=onnx내보내기 명령은 특정 배포 환경에 맞게 모델을 최적화하는 다양한 옵션을 지원합니다. 사용 가능한 모든 내보내기 형식과 각 형식의 매개변수에 관한 자세한 내용은 Export 페이지를 참조하세요.
Ultralytics는
solutions명령을 통해 바로 사용할 수 있는 솔루션을 제공합니다. 예를 들어 비디오에서 객체를 계수하려면 다음을 실행합니다:yolo solutions count source="path/to/video.mp4"이 솔루션은 최소한의 설정만으로 일반적인 컴퓨터 비전 작업을 즉시 수행할 수 있습니다. 사용 가능한 모든 솔루션을 확인하려면
yolo solutions help을 실행합니다. 각 솔루션에는 필요에 맞게 사용자 지정할 수 있는 특정 매개변수가 있습니다.