Saltar al contenido

YOLOv5

Visi贸n general

YOLOv5u representa un avance en las metodolog铆as de detecci贸n de objetos. Partiendo de la arquitectura fundacional del YOLOv5 modelo desarrollado por Ultralytics, YOLOv5u integra la cabeza dividida sin anclajes ni objetos, una caracter铆stica introducida anteriormente en los YOLOv8 modelos. Esta adaptaci贸n perfecciona la arquitectura del modelo, lo que permite mejorar la relaci贸n precisi贸n-velocidad en las tareas de detecci贸n de objetos. Dados los resultados emp铆ricos y sus caracter铆sticas derivadas, YOLOv5u proporciona una alternativa eficaz para quienes buscan soluciones robustas tanto en investigaci贸n como en aplicaciones pr谩cticas.

Ultralytics YOLOv5

Caracter铆sticas principales

  • Cabeza dividida sin anclajes Ultralytics : Los modelos tradicionales de detecci贸n de objetos se basan en cajas de anclaje predefinidas para predecir la ubicaci贸n de los objetos. Sin embargo, YOLOv5u moderniza este enfoque. Al adoptar un cabezal dividido Ultralytics sin anclajes, garantiza un mecanismo de detecci贸n m谩s flexible y adaptable, lo que mejora el rendimiento en diversos escenarios.

  • Compromiso Optimizado Precisi贸n-Velocidad: La velocidad y la precisi贸n suelen ir en direcciones opuestas. Pero YOLOv5u desaf铆a este compromiso. Ofrece un equilibrio calibrado, garantizando detecciones en tiempo real sin comprometer la precisi贸n. Esta caracter铆stica es especialmente valiosa para aplicaciones que exigen respuestas r谩pidas, como veh铆culos aut贸nomos, rob贸tica y an谩lisis de v铆deo en tiempo real.

  • Variedad de modelos preentrenados: Entendiendo que diferentes tareas requieren diferentes conjuntos de herramientas, YOLOv5u proporciona una pl茅tora de modelos preentrenados. Tanto si te centras en la Inferencia, la Validaci贸n o el Entrenamiento, hay un modelo a tu medida esper谩ndote. Esta variedad garantiza que no utilices una soluci贸n 煤nica para todos, sino un modelo ajustado espec铆ficamente a tu reto particular.

Tareas y modos admitidos

Los modelos YOLOv5u, con varios pesos preentrenados, destacan en las tareas de Detecci贸n de Objetos. Admiten una amplia gama de modos, lo que los hace adecuados para diversas aplicaciones, desde el desarrollo hasta el despliegue.

Tipo de modelo Pesos preentrenados Tarea Inferencia Validaci贸n Formaci贸n Exportar
YOLOv5u yolov5nu, yolov5su, yolov5mu, yolov5lu, yolov5xu, yolov5n6u, yolov5s6u, yolov5m6u, yolov5l6u, yolov5x6u Detecci贸n de objetos

Esta tabla proporciona una visi贸n detallada de las variantes del modelo YOLOv5u, destacando su aplicabilidad en tareas de detecci贸n de objetos y su compatibilidad con diversos modos operativos, como Inferencia, Validaci贸n, Entrenamiento y Exportaci贸n. Este completo soporte garantiza que los usuarios puedan aprovechar plenamente las capacidades de los modelos YOLOv5u en una amplia gama de escenarios de detecci贸n de objetos.

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 YAML tama帽o
(p铆xeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
A100 TensorRT
(ms)
par谩metros
(M)
FLOPs
(B)
yolov5nu.pt yolov5n.yaml 640 34.3 73.6 1.06 2.6 7.7
yolov5su.pt yolov5s.yaml 640 43.0 120.7 1.27 9.1 24.0
yolov5mu.pt yolov5m.yaml 640 49.0 233.9 1.86 25.1 64.2
yolov5lu.pt yolov5l.yaml 640 52.2 408.4 2.50 53.2 135.0
yolov5xu.pt yolov5x.yaml 640 53.2 763.2 3.81 97.2 246.4
yolov5n6u.pt yolov5n6.yaml 1280 42.1 211.0 1.83 4.3 7.8
yolov5s6u.pt yolov5s6.yaml 1280 48.6 422.6 2.34 15.3 24.6
yolov5m6u.pt yolov5m6.yaml 1280 53.6 810.9 4.36 41.2 65.7
yolov5l6u.pt yolov5l6.yaml 1280 55.7 1470.9 5.47 86.1 137.4
yolov5x6u.pt yolov5x6.yaml 1280 56.8 2436.5 8.98 155.4 250.7

Ejemplos de uso

Este ejemplo proporciona ejemplos sencillos de entrenamiento e inferencia de YOLOv5 . Para obtener documentaci贸n completa sobre estos y otros modos, consulta las p谩ginas de documentaci贸n Predecir, Entrenar, Val y Exportar.

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 YOLOv5n model
model = YOLO('yolov5n.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 YOLOv5n model on the 'bus.jpg' image
results = model('path/to/bus.jpg')

CLI para ejecutar directamente los modelos:

# Load a COCO-pretrained YOLOv5n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov5n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLOv5n model and run inference on the 'bus.jpg' image
yolo predict model=yolov5n.pt source=path/to/bus.jpg

Citas y agradecimientos

Si utilizas YOLOv5 o YOLOv5u en tu investigaci贸n, cita el repositorio Ultralytics YOLOv5 de la siguiente manera:

@software{yolov5,
  title = {Ultralytics YOLOv5},
  author = {Glenn Jocher},
  year = {2020},
  version = {7.0},
  license = {AGPL-3.0},
  url = {https://github.com/ultralytics/yolov5},
  doi = {10.5281/zenodo.3908559},
  orcid = {0000-0001-5950-6979}
}

Ten en cuenta que los modelos YOLOv5 se proporcionan bajo AGPL-3.0 y Enterprise.



Creado 2023-11-12, Actualizado 2024-01-15
Autores: glenn-jocher (8)

Comentarios