Ir al contenido

YOLOv6-3.0 vs EfficientDet: Equilibrio entre velocidad y precisión en la detección de objetos

En el panorama de la visión artificial, que evoluciona rápidamente, seleccionar la arquitectura de detección de objetos adecuada es fundamental para el éxito de su proyecto. Esta comparación profundiza en YOLOv6-3.0 y EfficientDet, dos modelos destacados que abordan el reto del reconocimiento visual desde ángulos distintos. Mientras que EfficientDet se centra en la eficiencia y la escalabilidad de los parámetros, YOLOv6-3.0 está diseñado específicamente para aplicaciones industriales en las que la latencia de inferencia y la velocidad en tiempo real son innegociables.

Métricas de rendimiento y análisis técnico

La diferencia fundamental entre estas dos arquitecturas radica en su filosofía de diseño. EfficientDet se basa en un sofisticado mecanismo de fusión de características conocido como BiFPN, que mejora la precisión, pero a menudo a costa de la velocidad computacional en las GPU. Por el contrario, YOLOv6-3.0 adopta un diseño consciente del hardware, utilizando la reparametrización para optimizar las operaciones durante la inferencia, lo que resulta en un FPS (fotogramas por segundo) significativamente mayor.

La siguiente tabla ilustra esta compensación. Si bien EfficientDet-d7 alcanza un alto mAP, su latencia es sustancial. En contraste, YOLOv6-3.0l ofrece una precisión comparable con tiempos de inferencia drásticamente reducidos, lo que lo hace mucho más adecuado para escenarios de inferencia en tiempo real.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

Optimización del rendimiento

Para implementaciones industriales, la combinación de YOLOv6-3.0 con TensorRT puede generar mejoras masivas en la velocidad. La simplicidad arquitectónica de YOLOv6 le permite mapear de manera muy eficiente las instrucciones de hardware de la GPU en comparación con las complejas redes de pirámide de características que se encuentran en los modelos más antiguos.

YOLOv6.0: Creado para la industria

YOLOv6-3.0 es un detector de objetos de una sola etapa diseñado para cerrar la brecha entre la investigación académica y los requisitos industriales. Prioriza la velocidad sin sacrificar la precisión necesaria para tareas como la inspección de calidad.

Autores: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
Organización:Meituan
Fecha: 2023-01-13
Arxiv:YOLOv6 v3.0: A Full-Scale Reloading
GitHub:meituan/YOLOv6
Docs:Documentación de YOLOv6

Arquitectura y puntos fuertes

El núcleo de YOLOv6-3.0 es su eficiente backbone y el diseño "RepOpt". Al utilizar la reparametrización, el modelo desacopla las estructuras multibifurcadas en tiempo de entrenamiento de las estructuras unifurcadas en tiempo de inferencia. Esto da como resultado un modelo que es fácil de entrenar con gradientes enriquecidos pero extremadamente rápido de ejecutar.

  • Autodestilación: La estrategia de entrenamiento emplea la autodestilación, donde la predicción del propio modelo actúa como una etiqueta suave para guiar el aprendizaje, mejorando la precisión sin datos adicionales.
  • Soporte para la Cuantización: Está diseñado teniendo en cuenta la cuantización de modelos, minimizando las pérdidas de precisión al convertir a INT8 para su implementación en el borde.
  • Enfoque industrial: Ideal para la IA en la fabricación y la robótica donde la latencia de milisegundos cuenta.

Más información sobre YOLOv6-3.0

EfficientDet: Precisión Escalable

EfficientDet revolucionó el campo al introducir el concepto de escalado compuesto a la detección de objetos. Optimiza la profundidad, el ancho y la resolución de la red simultáneamente para lograr un excelente rendimiento por parámetro.

Autores: Mingxing Tan, Ruoming Pang y Quoc V. Le
Organización:Google
Fecha: 2019-11-20
Arxiv:EfficientDet: Detección de objetos escalable y eficiente
GitHub:google/automl/efficientdet

Arquitectura y puntos fuertes

EfficientDet se basa en la estructura EfficientNet e introduce la Red Piramidal de Características Bidireccional (BiFPN). Esta compleja estructura de cuello de botella permite una fusión de características multiescala fácil y rápida.

  • BiFPN: A diferencia de las FPN tradicionales, BiFPN permite que la información fluya tanto de arriba hacia abajo como de abajo hacia arriba, aplicando pesos a diferentes características de entrada para enfatizar su importancia.
  • Escalado Compuesto: Un simple coeficiente $\phi$ permite a los usuarios escalar el modelo (de d0 a d7) dependiendo de los recursos disponibles, proporcionando una curva predecible de precisión-cálculo.
  • Eficiencia de parámetros: Las variantes más pequeñas (d0-d2) son extremadamente ligeras en términos de tamaño de disco y FLOPs, lo que las hace útiles para entornos con restricciones de almacenamiento.

Complejidad Arquitectónica

Si bien la BiFPN es muy eficaz para la precisión, sus patrones irregulares de acceso a la memoria pueden hacerla más lenta en las GPU en comparación con los bloques de convolución densos y regulares utilizados en las arquitecturas YOLO. Esta es la razón por la que EfficientDet a menudo se compara con una mayor latencia de inferencia a pesar de tener menos parámetros.

Más información sobre EfficientDet

Casos de uso en el mundo real

La elección entre estos modelos a menudo depende de las limitaciones específicas del entorno de implementación.

Escenarios Ideales para YOLOv6-3.0

  • Fabricación de alta velocidad: Detectar defectos en cintas transportadoras de movimiento rápido donde se requiere un alto FPS para trackear cada artículo.
  • Navegación autónoma: Permite a la robótica navegar por entornos dinámicos procesando transmisiones de video en tiempo real.
  • Edge Computing: Implementación en dispositivos como NVIDIA Jetson donde los recursos de la GPU deben maximizarse para el rendimiento.

Escenarios Ideales para EfficientDet

  • Análisis médico: analizar imágenes estáticas de alta resolución, como la detección de tumores en radiografías, donde el tiempo de procesamiento es menos crítico que la precisión.
  • Teledetección: Procesamiento imágenes de satélite sin conexión para identificar cambios ambientales o desarrollo urbano.
  • IoT de bajo almacenamiento: Dispositivos con una capacidad de almacenamiento extremadamente limitada que requieren un tamaño de archivo de modelo pequeño (como EfficientDet-d0).

La ventaja de Ultralytics: ¿Por qué elegir YOLO11?

Si bien YOLOv6-3.0 y EfficientDet son modelos capaces, el Ultralytics YOLO11 representa la vanguardia de la tecnología de visión artificial. YOLO11 refina los mejores atributos de las generaciones anteriores de YOLO y los integra en un ecosistema perfecto y fácil de usar.

Ventajas clave de YOLO11

  1. Facilidad de uso: Ultralytics prioriza la experiencia del desarrollador. Con una API de python, puede entrenar, validar e implementar modelos en tan solo unas pocas líneas de código, a diferencia de los archivos de configuración complejos que a menudo se requieren para EfficientDet.
  2. Versatilidad: A diferencia de YOLOv6 y EfficientDet, que son principalmente modelos de detección de objetos, YOLO11 admite de forma nativa múltiples tareas, incluyendo la segmentación de instancias, la estimación de pose, los bounding boxes orientados (OBB) y la clasificación.
  3. Equilibrio de rendimiento: YOLO11 logra un equilibrio de última generación entre velocidad y precisión. Supera constantemente a las arquitecturas más antiguas en el conjunto de datos COCO, manteniendo una baja latencia.
  4. Ecosistema bien mantenido: Los modelos de Ultralytics están respaldados por una comunidad activa y actualizaciones frecuentes. Obtiene acceso a una extensa documentación, tutoriales e integraciones perfectas con herramientas como Ultralytics HUB para el entrenamiento en la nube y la gestión de conjuntos de datos.
  5. Eficiencia en el entrenamiento: YOLO11 está diseñado para ser eficiente en cuanto a recursos durante el entrenamiento, a menudo convergiendo más rápido y requiriendo menos memoria de la GPU que los modelos complejos basados en transformadores o arquitecturas más antiguas.
from ultralytics import YOLO

# Load the YOLO11 model (recommended over older versions)
model = YOLO("yolo11n.pt")

# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Display results
results[0].show()

Más información sobre YOLO11

Explorar Otros Modelos

Si está evaluando opciones para su pipeline de visión artificial, considere explorar otros modelos en el catálogo de Ultralytics. YOLOv8 ofrece un rendimiento robusto para una amplia gama de tareas, mientras que RT-DETR, basado en transformadores, proporciona una alternativa para escenarios que requieren conocimiento del contexto global. Para aplicaciones específicas para móviles, también vale la pena investigar YOLOv10. La comparación de estos con EfficientDet puede ayudar a afinar su selección para sus requisitos específicos de hardware y precisión.


Comentarios