Salta para o conte√ļdo

Utilização da interface de linha de comandos

A interface de linha de comando YOLO (CLI) permite comandos simples de linha √ļnica sem a necessidade de um ambiente Python . CLI n√£o requer personaliza√ß√£o ou c√≥digo Python . Podes simplesmente executar todas as tarefas a partir do terminal com o comando yolo comanda.



Observa: Domina Ultralytics YOLOv8 : CLI

Exemplo

Ultralytics yolo utiliza a seguinte sintaxe:

yolo TASK MODE ARGS

Where   TASK (optional) is one of [detect, segment, classify]
        MODE (required) is one of [train, val, predict, export, track]
        ARGS (optional) are any number of custom 'arg=value' pairs like 'imgsz=320' that override defaults.
Vê todos os ARGS na íntegra Guia de configuração ou com yolo cfg

Treina um modelo de deteção para 10 épocas com uma learning_rate inicial de 0,01

yolo train data=coco128.yaml model=yolov8n.pt epochs=10 lr0=0.01

Prevê um vídeo do YouTube utilizando um modelo de segmentação pré-treinado no tamanho de imagem 320:

yolo predict model=yolov8n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

Valida um modelo de deteção pré-treinado com tamanho de lote 1 e tamanho de imagem 640:

yolo val model=yolov8n.pt data=coco128.yaml batch=1 imgsz=640

Exporta um modelo de classificação YOLOv8n para o formato ONNX com o tamanho de imagem 224 por 128 (não é necessária nenhuma TASK)

yolo export model=yolov8n-cls.pt format=onnx imgsz=224,128

Executa comandos especiais para ver a vers√£o, ver as defini√ß√Ķes, executar verifica√ß√Ķes e muito mais:

yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg

Onde:

  • TASK (opcional) √© um dos [detect, segment, classify]. Se n√£o for passado explicitamente, YOLOv8 tentar√° adivinhar o TASK do tipo de modelo.
  • MODE (obrigat√≥rio) √© um dos [train, val, predict, export, track]
  • ARGS (opcional) s√£o qualquer n√ļmero de arg=value pares como imgsz=320 que substituem as predefini√ß√Ķes. Para obteres uma lista completa dos ARGS v√™ o Configura√ß√£o p√°gina e defaults.yaml GitHub fonte.

Aviso

Os argumentos devem ser passados como arg=val divididos por um sinal de igual = sinal e delimitado por espaços entre pares. Não utilizes -- prefixos de argumentos ou vírgulas , entre argumentos.

  • yolo predict model=yolov8n.pt imgsz=640 conf=0.25 ¬† ‚úÖ
  • yolo predict model yolov8n.pt imgsz 640 conf 0.25 ¬† ‚ĚĆ
  • yolo predict --model yolov8n.pt --imgsz 640 --conf 0.25 ¬† ‚ĚĆ

Comboio

Treina YOLOv8n no conjunto de dados COCO128 para 100 épocas com o tamanho de imagem 640. Para obter uma lista completa dos argumentos disponíveis, consulta a página Configuração.

Exemplo

Começa a treinar YOLOv8n no COCO128 durante 100 épocas com o tamanho de imagem 640.

yolo detect train data=coco128.yaml model=yolov8n.pt epochs=100 imgsz=640

Retoma uma formação interrompida.

yolo detect train resume model=last.pt

Val

Valida a precisão do modelo YOLOv8n treinado no conjunto de dados COCO128. Não precisas de passar nenhum argumento, pois o model mantém a sua formação data e argumentos como atributos do modelo.

Exemplo

Valida um modelo oficial YOLOv8n .

yolo detect val model=yolov8n.pt

Valida um modelo personalizado treinado.

yolo detect val model=path/to/best.pt

Prevê

Utiliza um modelo YOLOv8n treinado para executar previs√Ķes em imagens.

Exemplo

Faz a previs√£o com um modelo oficial YOLOv8n .

yolo detect predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

Prevê com um modelo personalizado.

yolo detect predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'

Exportação

Exporta um modelo YOLOv8n para um formato diferente, como ONNX, CoreML, etc.

Exemplo

Exporta um modelo oficial YOLOv8n para o formato ONNX .

yolo export model=yolov8n.pt format=onnx

Exporta um modelo treinado de forma personalizada para o formato ONNX .

yolo export model=path/to/best.pt format=onnx

Os formatos de exportação disponíveis em YOLOv8 encontram-se na tabela abaixo. Podes exportar para qualquer formato utilizando o botão format argumento, ou seja format='onnx' ou format='engine'.

Formato format Argumenta Modelo Metadados Argumentos
PyTorch - yolov8n.pt ‚úÖ -
TorchScript torchscript yolov8n.torchscript ‚úÖ imgsz, optimize
ONNX onnx yolov8n.onnx ‚úÖ imgsz, half, dynamic, simplify, opset
OpenVINO openvino yolov8n_openvino_model/ ‚úÖ imgsz, half, int8
TensorRT engine yolov8n.engine ‚úÖ imgsz, half, dynamic, simplify, workspace
CoreML coreml yolov8n.mlpackage ‚úÖ imgsz, half, int8, nms
TF SavedModel saved_model yolov8n_saved_model/ ‚úÖ imgsz, keras, int8
TF GraphDef pb yolov8n.pb ‚ĚĆ imgsz
TF Leve tflite yolov8n.tflite ‚úÖ imgsz, half, int8
TF Borda TPU edgetpu yolov8n_edgetpu.tflite ‚úÖ imgsz
TF.js tfjs yolov8n_web_model/ ‚úÖ imgsz, half, int8
PaddlePaddle paddle yolov8n_paddle_model/ ‚úÖ imgsz
ncnn ncnn yolov8n_ncnn_model/ ‚úÖ imgsz, half

Substituir argumentos predefinidos

Os argumentos padrão podem ser substituídos simplesmente passando-os como argumentos no CLI em arg=value pares.

Treina um modelo de deteção para 10 epochs com learning_rate de 0.01

yolo detect train data=coco128.yaml model=yolov8n.pt epochs=10 lr0=0.01

Prevê um vídeo do YouTube utilizando um modelo de segmentação pré-treinado no tamanho de imagem 320:

yolo segment predict model=yolov8n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

Valida um modelo de deteção pré-treinado com tamanho de lote 1 e tamanho de imagem 640:

yolo detect val model=yolov8n.pt data=coco128.yaml batch=1 imgsz=640

Substituir o ficheiro de configuração predefinido

Podes substituir o default.yaml inteiramente, passando um novo ficheiro com o par√Ęmetro cfg argumentos, ou seja cfg=custom.yaml.

Para o fazer, cria primeiro uma cópia de default.yaml no teu diretório de trabalho atual com o yolo copy-cfg comanda.

Isto ir√° criar default_copy.yaml, que podes ent√£o passar como cfg=default_copy.yaml juntamente com quaisquer argumentos adicionais, como imgsz=320 neste exemplo:

Exemplo

yolo copy-cfg
yolo cfg=default_copy.yaml imgsz=320


Criado em 2023-11-12, Atualizado em 2024-02-03
Autores: glenn-jocher (11), chr043416@gmail.com (1), AyushExel (1), Laughing-q (1), shuizhuyuanluo@126.com (1)

Coment√°rios