YOLOv8
Visión general
YOLOv8 es la última iteración de la serie YOLO de detectores de objetos en tiempo real, que ofrece un rendimiento puntero en términos de precisión y velocidad. Basándose en los avances de las versiones anteriores de YOLO , YOLOv8 introduce nuevas funciones y optimizaciones que lo convierten en la opción ideal para diversas tareas de detección de objetos en una amplia gama de aplicaciones.
Observa: Ultralytics YOLOv8 Resumen del modelo
Características principales
- Arquitecturas avanzadas de espina dorsal y cuello: YOLOv8 emplea arquitecturas de espina dorsal y cuello de última generación, lo que mejora la extracción de características y el rendimiento de la detección de objetos.
- Cabezal dividido sin anclajes Ultralytics : YOLOv8 adopta un cabezal dividido sin anclajes Ultralytics , que contribuye a una mayor precisión y a un proceso de detección más eficaz en comparación con los enfoques basados en anclajes.
- Compromiso optimizado entre precisión y velocidad: Centrado en mantener un equilibrio óptimo entre precisión y velocidad, YOLOv8 es adecuado para tareas de detección de objetos en tiempo real en diversas áreas de aplicación.
- Variedad de modelos preentrenados: YOLOv8 ofrece una gama de modelos preentrenados para atender a diversas tareas y requisitos de rendimiento, lo que facilita encontrar el modelo adecuado para tu caso de uso específico.
Tareas y modos admitidos
La serie YOLOv8 ofrece una diversa gama de modelos, cada uno especializado para tareas específicas en visión por ordenador. Estos modelos están diseñados para satisfacer distintos requisitos, desde la detección de objetos hasta tareas más complejas como la segmentación de instancias, la detección de poses/puntos clave, la detección de objetos orientados y la clasificación.
Cada variante de la serie YOLOv8 está optimizada para su tarea respectiva, lo que garantiza un alto rendimiento y precisión. Además, estos modelos son compatibles con varios modos operativos, como Inferencia, Validación, Entrenamiento y Exportación, lo que facilita su uso en distintas fases de despliegue y desarrollo.
Modelo | Nombres de archivo | Tarea | Inferencia | Validación | Formación | Exportar |
---|---|---|---|---|---|---|
YOLOv8 | yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt |
Detección | ✅ | ✅ | ✅ | ✅ |
YOLOv8-seg | yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt |
Segmentación de instancias | ✅ | ✅ | ✅ | ✅ |
YOLOv8-pose | yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt |
Pose/Puntos clave | ✅ | ✅ | ✅ | ✅ |
YOLOv8-obb | yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt |
Detección Orientada | ✅ | ✅ | ✅ | ✅ |
YOLOv8-cls | yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt |
Clasificación | ✅ | ✅ | ✅ | ✅ |
Esta tabla proporciona una visión general de las variantes del modelo YOLOv8 , destacando su aplicabilidad en tareas específicas y su compatibilidad con diversos modos operativos, como Inferencia, Validación, Entrenamiento y Exportación. Muestra la versatilidad y robustez de la serie YOLOv8 , que las hace adecuadas para una gran variedad de aplicaciones en visión por ordenador.
Métricas de rendimiento
Rendimiento
Consulta los Documentos de Detección para ver ejemplos de uso con estos modelos entrenados en COCO, que incluyen 80 clases preentrenadas.
Modelo | tamaño (píxeles) |
mAPval 50-95 |
Velocidad CPU ONNX (ms) |
Velocidad A100 TensorRT (ms) |
parámetros (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 los Documentos de Detección para ver ejemplos de uso con estos modelos entrenados en Open Image V7, que incluyen 600 clases preentrenadas.
Modelo | tamaño (píxeles) |
mAPval 50-95 |
Velocidad CPU ONNX (ms) |
Velocidad A100 TensorRT (ms) |
parámetros (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 Segmentation Docs para ver ejemplos de uso con estos modelos entrenados en COCO, que incluyen 80 clases preentrenadas.
Modelo | tamaño (píxeles) |
mAPbox 50-95 |
mAPmask 50-95 |
Velocidad CPU ONNX (ms) |
Velocidad A100 TensorRT (ms) |
parámetros (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 los Documentos de Clasificación para ver ejemplos de uso con estos modelos entrenados en ImageNet, que incluyen 1000 clases preentrenadas.
Modelo | tamaño (píxeles) |
acc top1 |
acc top5 |
Velocidad CPU ONNX (ms) |
Velocidad A100 TensorRT (ms) |
parámetros (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 la documentación sobre estimación de poses para ver ejemplos de uso con estos modelos entrenados en COCO, que incluyen 1 clase preentrenada, "persona".
Modelo | tamaño (píxeles) |
mAPpose 50-95 |
mAPpose 50 |
Velocidad CPU ONNX (ms) |
Velocidad A100 TensorRT (ms) |
parámetros (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 los Documentos de Detección Orientada para ver ejemplos de uso con estos modelos entrenados en DOTAv1, que incluyen 15 clases preentrenadas.
Modelo | tamaño (píxeles) |
mAPtest 50 |
Velocidad CPU ONNX (ms) |
Velocidad A100 TensorRT (ms) |
parámetros (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 |
Ejemplos de uso
Este ejemplo proporciona ejemplos sencillos de entrenamiento e inferencia de YOLOv8 . Para obtener documentación completa sobre estos y otros modos, consulta las páginas de documentación Predecir, Entrenar, Val y Exportar.
Ten en cuenta que el ejemplo siguiente es para los modelos YOLOv8 Detectar para la detección de objetos. Para otras tareas compatibles, consulta los documentos Segmentar, Clasificar, OBB y Pose.
Ejemplo
PyTorch preentrenado *.pt
modelos, así como la configuración *.yaml
pueden pasarse a la función YOLO()
para crear una instancia del modelo en 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 para ejecutar directamente los modelos:
Citas y agradecimientos
Si utilizas el modelo YOLOv8 o cualquier otro software de este repositorio en tu trabajo, por favor, cítalo utilizando el siguiente formato:
Ten en cuenta que el DOI está pendiente y se añadirá a la cita cuando esté disponible. Los modelos YOLOv8 se facilitan con las licencias AGPL-3.0 y Enterprise.
Creado 2023-11-12, Actualizado 2024-04-17
Autores: glenn-jocher (12), Laughing-q (2), AyushExel (1), fcakyon (1)