You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

6.5 KiB

comments description keywords
true Obtén una descripción general de YOLOv3, YOLOv3-Ultralytics y YOLOv3u. Aprende sobre sus características clave, uso y tareas admitidas para la detección de objetos. YOLOv3, YOLOv3-Ultralytics, YOLOv3u, Detección de objetos, Inferencia, Entrenamiento, Ultralytics

YOLOv3, YOLOv3-Ultralytics y YOLOv3u

Descripción general

Este documento presenta una descripción general de tres modelos de detección de objetos estrechamente relacionados, conocidos como YOLOv3, YOLOv3-Ultralytics y YOLOv3u.

  1. YOLOv3: Esta es la tercera versión del algoritmo de detección de objetos You Only Look Once (YOLO). Originalmente desarrollado por Joseph Redmon, YOLOv3 mejoró a sus predecesores al introducir características como predicciones multiescala y tres tamaños diferentes de núcleos de detección.

  2. YOLOv3-Ultralytics: Esta es la implementación de YOLOv3 realizada por Ultralytics. Reproduce la arquitectura original de YOLOv3 y ofrece funcionalidades adicionales, como soporte para más modelos pre-entrenados y opciones de personalización más fáciles.

  3. YOLOv3u: Esta es una versión actualizada de YOLOv3-Ultralytics que incorpora la cabeza dividida sin anclaje y sin objeto utilizada en los modelos YOLOv8. YOLOv3u mantiene la misma arquitectura de columna vertebral y cuello que YOLOv3, pero con la cabeza de detección actualizada de YOLOv8.

Ultralytics YOLOv3

Características clave

  • YOLOv3: Introdujo el uso de tres escalas diferentes para la detección, aprovechando tres tamaños diferentes de núcleos de detección: 13x13, 26x26 y 52x52. Esto mejoró significativamente la precisión de detección para objetos de diferentes tamaños. Además, YOLOv3 añadió características como predicciones con múltiples etiquetas para cada cuadro delimitador y una mejor red extractora de características.

  • YOLOv3-Ultralytics: La implementación de Ultralytics de YOLOv3 proporciona el mismo rendimiento que el modelo original, pero cuenta con soporte adicional para más modelos pre-entrenados, métodos de entrenamiento adicionales y opciones de personalización más fáciles. Esto lo hace más versátil y fácil de usar para aplicaciones prácticas.

  • YOLOv3u: Este modelo actualizado incorpora la cabeza dividida sin anclaje y sin objeto de YOLOv8. Al eliminar la necesidad de cajas de anclaje predefinidas y puntuaciones de objeto, este diseño de cabeza de detección puede mejorar la capacidad del modelo para detectar objetos de diferentes tamaños y formas. Esto hace que YOLOv3u sea más robusto y preciso para tareas de detección de objetos.

Tareas y modos admitidos

La serie YOLOv3, que incluye YOLOv3, YOLOv3-Ultralytics y YOLOv3u, está diseñada específicamente para tareas de detección de objetos. Estos modelos son reconocidos por su eficacia en diversos escenarios del mundo real, equilibrando precisión y velocidad. Cada variante ofrece características y optimizaciones únicas, lo que los hace adecuados para una variedad de aplicaciones.

Los tres modelos admiten un conjunto completo de modos, asegurando versatilidad en diversas etapas del despliegue y desarrollo del modelo. Estos modos incluyen Inferencia, Validación, Entrenamiento y Exportación, proporcionando a los usuarios un conjunto completo de herramientas para una detección de objetos efectiva.

Tipo de modelo Tareas admitidas Inferencia Validación Entrenamiento Exportación
YOLOv3 Detección de objetos
YOLOv3-Ultralytics Detección de objetos
YOLOv3u Detección de objetos

Esta tabla proporciona una visión rápida de las capacidades de cada variante de YOLOv3, destacando su versatilidad y aptitud para diversas tareas y modos operativos en flujos de trabajo de detección de objetos.

Ejemplos de uso

Este ejemplo proporciona ejemplos sencillos de entrenamiento e inferencia de YOLOv3. Para obtener documentación completa sobre estos y otros modos, consulta las páginas de documentación de Predict, Train, Val y Export.

!!! Example "Ejemplo"

=== "Python"

    Los modelos pre-entrenados de PyTorch en archivos `*.pt`, así como los archivos de configuración `*.yaml`, se pueden pasar a la clase `YOLO()` para crear una instancia del modelo en Python:

    ```python
    from ultralytics import YOLO

    # Cargar un modelo YOLOv3n pre-entrenado en COCO
    model = YOLO('yolov3n.pt')

    # Mostrar información del modelo (opcional)
    model.info()

    # Entrenar el modelo en el conjunto de datos de ejemplo COCO8 durante 100 épocas
    results = model.train(data='coco8.yaml', epochs=100, imgsz=640)

    # Ejecutar inferencia con el modelo YOLOv3n en la imagen 'bus.jpg'
    results = model('path/to/bus.jpg')
    ```

=== "CLI"

    Hay comandos de CLI disponibles para ejecutar directamente los modelos:

    ```bash
    # Cargar un modelo YOLOv3n pre-entrenado en COCO y entrenarlo en el conjunto de datos de ejemplo COCO8 durante 100 épocas
    yolo train model=yolov3n.pt data=coco8.yaml epochs=100 imgsz=640

    # Cargar un modelo YOLOv3n pre-entrenado en COCO y ejecutar inferencia en la imagen 'bus.jpg'
    yolo predict model=yolov3n.pt source=path/to/bus.jpg
    ```

Citaciones y agradecimientos

Si utilizas YOLOv3 en tu investigación, por favor, cita los artículos originales de YOLO y el repositorio de YOLOv3 de Ultralytics:

!!! Quote ""

=== "BibTeX"

    ```bibtex
    @article{redmon2018yolov3,
      title={YOLOv3: An Incremental Improvement},
      author={Redmon, Joseph and Farhadi, Ali},
      journal={arXiv preprint arXiv:1804.02767},
      year={2018}
    }
    ```

Gracias a Joseph Redmon y Ali Farhadi por desarrollar YOLOv3 original.