Salta para o conte√ļdo

YOLOv8

Vis√£o geral

YOLOv8 √© a mais recente itera√ß√£o da s√©rie YOLO de detectores de objectos em tempo real, oferecendo um desempenho de ponta em termos de precis√£o e velocidade. Com base nos avan√ßos das vers√Ķes anteriores do YOLO , o YOLOv8 introduz novas funcionalidades e optimiza√ß√Ķes que o tornam a escolha ideal para v√°rias tarefas de dete√ß√£o de objectos numa vasta gama de aplica√ß√Ķes.

Ultralytics YOLOv8



Observa: Ultralytics YOLOv8 Vis√£o geral do modelo

Características principais

  • Arquitecturas avan√ßadas de espinha dorsal e de pesco√ßo: YOLOv8 utiliza arquitecturas de espinha dorsal e de pesco√ßo de √ļltima gera√ß√£o, o que resulta num melhor desempenho da extra√ß√£o de caracter√≠sticas e da dete√ß√£o de objectos.
  • Cabe√ßa dividida Ultralytics sem √Ęncoras: YOLOv8 adopta uma cabe√ßa dividida Ultralytics sem √Ęncoras, o que contribui para uma melhor precis√£o e um processo de dete√ß√£o mais eficiente em compara√ß√£o com as abordagens baseadas em √Ęncoras.
  • Compensa√ß√£o optimizada entre precis√£o e velocidade: Com o objetivo de manter um equil√≠brio √≥timo entre precis√£o e velocidade, o YOLOv8 √© adequado para tarefas de dete√ß√£o de objectos em tempo real em diversas √°reas de aplica√ß√£o.
  • Variedade de modelos pr√©-treinados: YOLOv8 oferece uma gama de modelos pr√©-treinados para atender a v√°rias tarefas e requisitos de desempenho, tornando mais f√°cil encontrar o modelo certo para o teu caso de utiliza√ß√£o espec√≠fico.

Tarefas e modos suportados

A s√©rie YOLOv8 oferece uma gama diversificada de modelos, cada um especializado em tarefas espec√≠ficas de vis√£o computacional. Estes modelos foram concebidos para responder a v√°rios requisitos, desde a dete√ß√£o de objectos a tarefas mais complexas como a segmenta√ß√£o de inst√Ęncias, dete√ß√£o de pose/pontos-chave, dete√ß√£o de objectos orientados e classifica√ß√£o.

Cada variante da série YOLOv8 é optimizada para a sua respectiva tarefa, garantindo um elevado desempenho e precisão. Além disso, esses modelos são compatíveis com vários modos operacionais, incluindo Inferência, Validação, Treinamento e Exportação, facilitando seu uso em diferentes estágios de implantação e desenvolvimento.

Modelo Nomes de ficheiros Tarefa Inferência Validação Formação Exportação
YOLOv8 yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt Deteção ✅ ✅ ✅ ✅
YOLOv8-seg yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt Segmenta√ß√£o de inst√Ęncias ‚úÖ ‚úÖ ‚úÖ ‚úÖ
YOLOv8-pose yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt Pose/Keypoints ‚úÖ ‚úÖ ‚úÖ ‚úÖ
YOLOv8-obb yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt Deteção orientada ✅ ✅ ✅ ✅
YOLOv8-cls yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt Classificação ✅ ✅ ✅ ✅

Esta tabela fornece uma vis√£o geral das variantes do modelo YOLOv8 , destacando a sua aplicabilidade em tarefas espec√≠ficas e a sua compatibilidade com v√°rios modos operacionais, como Infer√™ncia, Valida√ß√£o, Treino e Exporta√ß√£o. Mostra a versatilidade e a robustez da s√©rie YOLOv8 , tornando-a adequada para uma variedade de aplica√ß√Ķes em vis√£o computacional.

Métricas de desempenho

Desempenho

Consulta os Documentos de deteção para obteres exemplos de utilização com estes modelos treinados em COCO, que incluem 80 classes pré-treinadas.

Modelo tamanho
(pixéis)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
A100 TensorRT
(ms)
params
(M)
FLOPs
(B)
YOLOv8n 640 37.3 80.4 0.99 3.2 8.7
YOLOv8s 640 44.9 128.4 1.20 11.2 28.6
YOLOv8m 640 50.2 234.7 1.83 25.9 78.9
YOLOv8l 640 52.9 375.2 2.39 43.7 165.2
YOLOv8x 640 53.9 479.1 3.53 68.2 257.8

Consulta os Documentos de deteção para obteres exemplos de utilização com estes modelos treinados no Open Image V7, que inclui 600 classes pré-treinadas.

Modelo tamanho
(pixéis)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
A100 TensorRT
(ms)
params
(M)
FLOPs
(B)
YOLOv8n 640 18.4 142.4 1.21 3.5 10.5
YOLOv8s 640 27.7 183.1 1.40 11.4 29.7
YOLOv8m 640 33.6 408.5 2.26 26.2 80.6
YOLOv8l 640 34.9 596.9 2.43 44.1 167.4
YOLOv8x 640 36.3 860.6 3.56 68.7 260.6

Consulta os documentos de segmentação para obteres exemplos de utilização com estes modelos treinados em COCO, que incluem 80 classes pré-treinadas.

Modelo tamanho
(pixéis)
mAPbox
50-95
mAPmask
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
A100 TensorRT
(ms)
params
(M)
FLOPs
(B)
YOLOv8n-seg 640 36.7 30.5 96.1 1.21 3.4 12.6
YOLOv8s-seg 640 44.6 36.8 155.7 1.47 11.8 42.6
YOLOv8m-seg 640 49.9 40.8 317.0 2.18 27.3 110.2
YOLOv8l-seg 640 52.3 42.6 572.4 2.79 46.0 220.5
YOLOv8x-seg 640 53.4 43.4 712.1 4.02 71.8 344.1

Consulta os documentos de classificação para obteres exemplos de utilização com estes modelos treinados no ImageNet, que incluem 1000 classes pré-treinadas.

Modelo tamanho
(pixéis)
acc
top1
acc
top5
Velocidade
CPU ONNX
(ms)
Velocidade
A100 TensorRT
(ms)
params
(M)
FLOPs
(B) a 640
YOLOv8n-cls 224 69.0 88.3 12.9 0.31 2.7 4.3
YOLOv8s-cls 224 73.8 91.7 23.4 0.35 6.4 13.5
YOLOv8m-cls 224 76.8 93.5 85.4 0.62 17.0 42.7
YOLOv8l-cls 224 76.8 93.5 163.0 0.87 37.5 99.7
YOLOv8x-cls 224 79.0 94.6 232.0 1.01 57.4 154.8

Consulta os Documentos de Estimativa de Pose para exemplos de utilização com estes modelos treinados em COCO, que incluem 1 classe pré-treinada, 'pessoa'.

Modelo tamanho
(pixéis)
mAPpose
50-95
mAPpose
50
Velocidade
CPU ONNX
(ms)
Velocidade
A100 TensorRT
(ms)
params
(M)
FLOPs
(B)
YOLOv8n-pose 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-pose 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-pose 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-pose 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-pose 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-pose-p6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4

Consulta os documentos de deteção orientada para obteres exemplos de utilização com estes modelos treinados no DOTAv1, que incluem 15 classes pré-treinadas.

Modelo tamanho
(pixéis)
mAPtest
50
Velocidade
CPU ONNX
(ms)
Velocidade
A100 TensorRT
(ms)
params
(M)
FLOPs
(B)
YOLOv8n-obb 1024 78.0 204.77 3.57 3.1 23.3
YOLOv8s-obb 1024 79.5 424.88 4.07 11.4 76.3
YOLOv8m-obb 1024 80.5 763.48 7.61 26.4 208.6
YOLOv8l-obb 1024 80.7 1278.42 11.83 44.5 433.8
YOLOv8x-obb 1024 81.36 1759.10 13.23 69.5 676.7

Exemplos de utilização

Este exemplo fornece exemplos simples de treinamento e inferência em YOLOv8 . Para obter a documentação completa sobre estes e outros modos, consulta as páginas de documentação Predict, Train, Val e Export.

Nota que o exemplo abaixo é para YOLOv8 Detetar modelos para deteção de objectos. Para outras tarefas suportadas, consulta os documentos Segmentar, Classificar, OBB e Pose.

Exemplo

PyTorch pr√©-treinado *.pt modelos, bem como a configura√ß√£o *.yaml podem ser passados para o YOLO() para criar uma inst√Ęncia de modelo em 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')

CLI estão disponíveis para executar diretamente os modelos:

# 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

Cita√ß√Ķes e agradecimentos

Se utilizares o modelo YOLOv8 ou qualquer outro software deste repositório no teu trabalho, por favor cita-o utilizando o seguinte formato:

@software{yolov8_ultralytics,
  author = {Glenn Jocher and Ayush Chaurasia and Jing Qiu},
  title = {Ultralytics YOLOv8},
  version = {8.0.0},
  year = {2023},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0002-7603-6750, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

Tenha em atenção que o DOI está pendente e será adicionado à citação assim que estiver disponível. YOLOv8 models are provided under AGPL-3.0 e licenças Enterprise.



Criado em 2023-11-12, Atualizado em 2024-04-17
Autores: glenn-jocher (12), Laughing-q (2), AyushExel (1), fcakyon (1)

Coment√°rios