Link to this sectionExplora Ultralytics YOLOv8#
Link to this sectionDescripción general#
YOLOv8 fue lanzado por Ultralytics el 10 de enero de 2023, ofreciendo un rendimiento de vanguardia en cuanto a precisión y velocidad. Construido sobre los avances de las versiones anteriores de YOLO, YOLOv8 introdujo nuevas funciones y optimizaciones que lo convierten en una opción ideal para diversas tareas de detección de objetos en una amplia gama de aplicaciones.

Watch: Ultralytics YOLOv8 Model Overview
Explora y ejecuta modelos YOLOv8 directamente en Ultralytics Platform.
Link to this sectionCaracterísticas clave de YOLOv8#
- Arquitecturas avanzadas de backbone y neck: YOLOv8 emplea arquitecturas de vanguardia para el backbone y el neck, lo que resulta en un mejor rendimiento en la extracción de características y detección de objetos.
- Cabezal de Ultralytics dividido sin anclas: YOLOv8 adopta un cabezal de Ultralytics dividido sin anclas, lo que contribuye a una mayor precisión y a un proceso de detección más eficiente en comparación con los enfoques basados en anclas.
- Compromiso optimizado entre precisión y velocidad: Con un enfoque 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 cubrir diversas tareas y requisitos de rendimiento, facilitando encontrar el modelo adecuado para tu caso de uso específico.
Link to this sectionTareas y modos soportados#
La serie YOLOv8 ofrece una diversa gama de modelos, cada uno especializado para tareas específicas en visión artificial. Estos modelos están diseñados para satisfacer diversos requisitos, desde la detección de objetos hasta tareas más complejas como la segmentación de instancias, detección de pose/puntos clave, detección de objetos orientados y clasificación.
Cada variante de la serie YOLOv8 está optimizada para su respectiva tarea, garantizando un alto rendimiento y precisión. Además, estos modelos son compatibles con diversos modos operativos, incluyendo Inferencia, Validación, Entrenamiento y Exportación, facilitando su uso en diferentes etapas de despliegue y desarrollo.
| Modelo | Nombres de archivo | Tarea | Inferencia | Validación | Entrenamiento | 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, haciéndolos adecuados para una variedad de aplicaciones en visión artificial.
Link to this sectionMétricas de rendimiento#
Consulta la Documentación de detección para ver ejemplos de uso con estos modelos entrenados en COCO, que incluyen 80 clases preentrenadas.
Link to this sectionEjemplos de uso de YOLOv8#
Este ejemplo proporciona casos sencillos de entrenamiento e inferencia con YOLOv8. Para obtener la documentación completa sobre estos y otros modos, consulta las páginas de documentación de Predict, Train, Val y Export.
Ten en cuenta que el siguiente ejemplo es para modelos de Detect de YOLOv8 para detección de objetos. Para otras tareas compatibles, consulta la documentación de Segment, Classify, OBB y Pose.
Puedes pasar modelos preentrenados de PyTorch en formato *.pt, así como archivos de configuración *.yaml, a la clase 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")Link to this sectionCitas y agradecimientos#
Ultralytics no ha publicado un artículo de investigación formal para YOLOv8 debido a la rápida evolución de estos modelos. Nos centramos en hacer avanzar la tecnología y facilitar su uso, en lugar de producir documentación estática. Para obtener la información más actualizada sobre la arquitectura, las características y el uso de YOLO, consulta nuestro repositorio de GitHub y nuestra documentación.
Si utilizas el modelo YOLOv8 o cualquier otro software de este repositorio en tu trabajo, cítalo utilizando el siguiente 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}
}Ten en cuenta que el DOI está pendiente y se añadirá a la cita una vez esté disponible. Los modelos YOLOv8 se proporcionan bajo las licencias AGPL-3.0 y Enterprise.
Link to this sectionFAQ#
Link to this section¿Qué es YOLOv8 y en qué se diferencia de versiones anteriores de YOLO?#
YOLOv8 está diseñado para mejorar el rendimiento de la detección de objetos en tiempo real con características avanzadas. A diferencia de versiones anteriores, YOLOv8 incorpora una cabecera Ultralytics sin anclas (anchor-free), arquitecturas de backbone y neck de última generación, y ofrece un equilibrio optimizado entre precisión y velocidad, lo que lo hace ideal para diversas aplicaciones. Para más detalles, consulta las secciones de Información general y Características clave.
Link to this section¿Cómo puedo usar YOLOv8 para diferentes tareas de visión artificial?#
YOLOv8 admite una amplia gama de tareas de visión artificial, que incluyen detección de objetos, segmentación de instancias, detección de poses/puntos clave, detección de objetos orientados y clasificación. Cada variante de modelo está optimizada para su tarea específica y es compatible con varios modos operativos como Inferencia, Validación, Entrenamiento y Exportación. Consulta la sección Tareas y modos admitidos para obtener más información.
Link to this section¿Cuáles son las métricas de rendimiento de los modelos YOLOv8?#
Los modelos YOLOv8 alcanzan un rendimiento de vanguardia en diversos conjuntos de datos de referencia. Por ejemplo, el modelo YOLOv8n alcanza una mAP (precisión media media) de 37.3 en el conjunto de datos COCO y una velocidad de 0.99 ms en A100 TensorRT. Las métricas de rendimiento detalladas para cada variante de modelo en diferentes tareas y conjuntos de datos se pueden encontrar en la sección Métricas de rendimiento.
Link to this section¿Cómo entreno un modelo YOLOv8?#
El entrenamiento de un modelo YOLOv8 se puede realizar utilizando Python o CLI. A continuación, tienes ejemplos para entrenar un modelo preentrenado en COCO de YOLOv8 sobre el conjunto de datos COCO8 durante 100 épocas:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Para más detalles, visita la documentación de Entrenamiento.
Link to this section¿Puedo realizar un benchmark de los modelos YOLOv8 para medir su rendimiento?#
Sí, los modelos YOLOv8 se pueden someter a benchmarks de rendimiento en cuanto a velocidad y precisión en diversos formatos de exportación. Puedes utilizar PyTorch, ONNX, TensorRT y más para realizar estos benchmarks. A continuación, se muestran ejemplos de comandos para realizar benchmarks usando Python y CLI:
from ultralytics.utils.benchmarks import benchmark
# Benchmark on GPU
benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, device=0)Para obtener información adicional, consulta la sección Métricas de rendimiento.