Explora Ultralytics YOLOv8#
Descripción general#
YOLOv8 fue lanzado por Ultralytics el 10 de enero de 2023 y ofrece un rendimiento puntero en términos de precisión y velocidad. Basándose en los avances de 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 variedad de aplicaciones.

Watch: Ultralytics YOLOv8 Model Overview
Explora y ejecuta modelos YOLOv8 directamente en Ultralytics Platform.
Características principales de YOLOv8#
- Arquitecturas avanzadas de backbone y neck: YOLOv8 emplea arquitecturas de backbone y neck de última generación, lo que mejora la extracción de características y el rendimiento de la detección de objetos.
- Cabezal Ultralytics dividido y sin anchors: YOLOv8 adopta un cabezal Ultralytics dividido y sin anchors, 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 anchors.
- Equilibrio optimizado entre precisión y velocidad: Al centrarse en mantener un equilibrio óptimo entre precisión y velocidad, YOLOv8 resulta adecuado para tareas de detección de objetos en tiempo real en diversos ámbitos de aplicación.
- Variedad de modelos preentrenados: YOLOv8 ofrece una amplia gama de modelos preentrenados para adaptarse a distintas tareas y requisitos de rendimiento, lo que facilita encontrar el modelo adecuado para tu caso de uso específico.
Tareas y modos compatibles#
La serie YOLOv8 ofrece una amplia variedad de modelos, cada uno especializado en tareas específicas de visión por computador. Estos modelos están diseñados para adaptarse a diversos requisitos, desde la detección de objetos hasta tareas más complejas como la segmentación de instancias, la clasificación, la detección de poses/puntos clave y la detección de objetos orientados.
Cada variante de la serie YOLOv8 está optimizada para su tarea correspondiente, 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 del desarrollo y la implementación.
| Modelo | Nombres de archivo | Tarea | Entrenamiento | Validación | Inferencia | 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-cls | yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt | Clasificación | ✅ | ✅ | ✅ | ✅ |
| 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 | ✅ | ✅ | ✅ | ✅ |
Esta tabla ofrece una visión general de las variantes de modelos YOLOv8 y destaca su aplicabilidad en tareas específicas, así como su compatibilidad con diversos modos operativos, como Inferencia, Validación, Entrenamiento y Exportación. Muestra la versatilidad y solidez de la serie YOLOv8, que resulta adecuada para una gran variedad de aplicaciones de visión por computador.
Métricas de rendimiento#
Consulta la documentación de detección para ver ejemplos de uso de estos modelos entrenados con COCO, que incluyen 80 clases preentrenadas.
Ejemplos de uso de YOLOv8#
Este ejemplo proporciona ejemplos sencillos de entrenamiento e inferencia con YOLOv8. Para consultar la documentación completa sobre estos y otros modos, visita las páginas de documentación de Predicción, Entrenamiento, Validación y Exportación.
Ten en cuenta que el ejemplo siguiente corresponde a los modelos YOLOv8 de Detección de objetos. Para consultar otras tareas compatibles, visita la documentación de Segmentación, Clasificación, Pose y OBB.
Los modelos *.pt preentrenados con PyTorch, así como los archivos de configuración *.yaml, se pueden pasar 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")Citas y agradecimientos#
Ultralytics no ha publicado un artículo de investigación formal sobre YOLOv8 debido a la naturaleza de rápida evolución de los modelos. Nos centramos en impulsar 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 funciones y el uso de YOLO, consulta nuestro repositorio de GitHub y la documentación.
Si utilizas el modelo YOLOv8 u otro software de este repositorio en tu trabajo, cítalo con el formato siguiente:
@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 cuando esté disponible. Los modelos YOLOv8 se proporcionan bajo las licencias AGPL-3.0 y Enterprise.
Preguntas frecuentes#
YOLOv8 está diseñado para mejorar el rendimiento de la detección de objetos en tiempo real mediante funciones avanzadas. A diferencia de las versiones anteriores, YOLOv8 incorpora un cabezal Ultralytics dividido y sin anchors, 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 obtener más información, consulta las secciones Descripción general y Características principales.
YOLOv8 admite una amplia variedad de tareas de visión por computador, como detección de objetos, segmentación de instancias, detección de poses/puntos clave, detección de objetos orientados y clasificación. Cada variante del 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 compatibles para obtener más información.
Los modelos YOLOv8 alcanzan un rendimiento puntero en diversos conjuntos de datos de referencia. Por ejemplo, el modelo YOLOv8n alcanza un mAP (precisión media) de 37,3 en el conjunto de datos COCO y una velocidad de 0,99 ms en A100 TensorRT. En la sección Métricas de rendimiento encontrarás métricas de rendimiento detalladas para cada variante del modelo en distintas tareas y conjuntos de datos.
Puedes entrenar un modelo YOLOv8 utilizando Python o CLI. A continuación se muestran ejemplos para entrenar un modelo YOLOv8 preentrenado con COCO en el conjunto de datos COCO8 durante 100 épocas:
Ejemplofrom 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 obtener más información, visita la documentación de Entrenamiento.
Sí, puedes evaluar el rendimiento de los modelos YOLOv8 en términos de velocidad y precisión con distintos formatos de exportación. Puedes utilizar PyTorch, ONNX, TensorRT y otras opciones para realizar estas evaluaciones. A continuación se muestran comandos de ejemplo para evaluar el rendimiento con Python y CLI:
Ejemplofrom ultralytics.utils.benchmarks import benchmark # Benchmark on GPU benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, device=0)Para obtener más información, consulta la sección Métricas de rendimiento.