Ir al contenido

PP-YOLOE+ frente a YOLOv9: una comparación exhaustiva de las arquitecturas de detección de objetos

La detección de objetos en tiempo real sigue evolucionando rápidamente, con investigadores que amplían constantemente los límites de la precisión, la latencia y la eficiencia de los parámetros. Dos hitos importantes en este viaje son PP-YOLOE+, desarrollado por el PaddlePaddle de Baidu, y YOLOv9, creado por los YOLOv7 originales YOLOv7 . Esta comparación explora las innovaciones arquitectónicas, las métricas de rendimiento y las realidades de implementación de estos dos potentes modelos.

Metadatos del modelo

PP-YOLOE+
Autores: PaddlePaddle
Organización: Baidu
Fecha: 02/04/2022
Arxiv: https://arxiv.org/abs/2203.16250
GitHub: Repositorio PaddleDetection
Documentación: PaddleDocs oficial

YOLOv9
Autores: Chien-Yao Wang y Hong-Yuan Mark Liao
Organización: Instituto de Ciencias de la Información, Academia Sinica, Taiwán
Fecha: 21/02/2024
Arxiv: https://arxiv.org/abs/2402.13616
GitHub: YOLOv9
Documentación: YOLOv9 de Ultralytics YOLOv9

Más información sobre YOLOv9

Análisis de rendimiento

Al comparar estos modelos, los desarrolladores suelen tener en cuenta la relación entre mAP (precisión media) y la velocidad de inferencia. La tabla siguiente destaca que, mientras que PP-YOLOE+ era un detector sin anclajes de última generación en 2022, YOLOv9 2024) utiliza principios arquitectónicos más novedosos para lograr una eficiencia de parámetros superior.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Entre las conclusiones más destacadas se incluyen:

  • Eficiencia de los parámetros: YOLOv9t alcanza una precisión competitiva con menos de la mitad de los parámetros de PP-YOLOE+t (2,0 millones frente a 4,85 millones), lo que lo hace mucho más adecuado para dispositivos periféricos con limitaciones de memoria.
  • Precisión a gran escala: en modelos más grandes, YOLOv9e supera a PP-YOLOE+x en mAP 55,6 % frente a 54,7 %) y utiliza muchos menos parámetros (57,3 millones frente a 98,42 millones).
  • Velocidad: YOLOv9 velocidades de inferencia extremadamente competitivas en las GPU NVIDIA , especialmente en las variantes más pequeñas.

Diferencias Arquitectónicas

PP-YOLOE+: Detección Refinada Sin Anclajes

PP-YOLOE+ es una evolución de PP-YOLOv2, que hace hincapié en un paradigma sin anclajes. Emplea una columna vertebral CSPResNet y un cuello CSPPAN simplificado. Las características clave incluyen:

  • Aprendizaje por alineación de tareas (TAL): estrategia de asignación de etiquetas que selecciona dinámicamente muestras positivas basándose en una combinación de puntuaciones de clasificación y localización.
  • ET-Head: un cabezal eficiente y adaptado a las tareas, diseñado para equilibrar velocidad y precisión.
  • Emparejamiento dinámico: mejora la velocidad de convergencia durante el entrenamiento en comparación con la asignación de anclajes estáticos.

YOLOv9: Información de Gradiente Programable

YOLOv9 cambios fundamentales en la forma en que las redes profundas gestionan el flujo de datos. Aborda el problema del «cuello de botella de la información», por el que se pierden datos al pasar por capas profundas.

  • Arquitectura GELAN: La red de agregación de capas eficiente generalizada combina lo mejor de CSPNet y ELAN para maximizar la utilización de parámetros.
  • PGI (Información de gradiente programable): este novedoso concepto utiliza una rama reversible auxiliar para generar gradientes fiables para la rama principal, lo que garantiza que las características profundas conserven la información crítica sobre la imagen de entrada.
  • Supervisión auxiliar: al igual que las técnicas observadas en los modelos de segmentación, YOLOv9 cabezales auxiliares durante el entrenamiento para mejorar el rendimiento sin afectar a la velocidad de inferencia (ya que estos cabezales se eliminan durante la implementación).

¿Por qué es importante la información sobre gradientes?

En redes neuronales muy profundas, los datos de entrada originales pueden «olvidarse» cuando las características llegan a las capas finales. El PGI YOLOv9 garantiza que el modelo conserve una comprensión completa del objeto, lo que resulta especialmente útil para detectar objetos pequeños u ocultos en escenas complejas.

Ecosistema y facilidad de uso

La diferencia más significativa para los desarrolladores radica en el ecosistema y el flujo de trabajo.

La ventaja de Ultralytics

YOLOv9 totalmente integrado en el Ultralytics . Esto significa que puede entrenar, validar e implementar el modelo utilizando la misma API sencilla que se utiliza para YOLO11 y YOLO26.

Ventajas principales:

  • API unificada: Cambie entre tareas como la detección de objetos y la estimación de posturas simplemente cambiando el archivo de peso del modelo.
  • MLOps automatizado: la integración perfecta con la Ultralytics permite el entrenamiento en la nube, la gestión de conjuntos de datos y la implementación de modelos con un solo clic.
  • Eficiencia de memoria: los bucles Ultralytics están altamente optimizados y suelen requerir menos VRAM que los marcos de trabajo de la competencia. Esta es una ventaja crucial frente a muchos modelos basados en transformadores, que requieren enormes recursos informáticos.
  • Versatilidad de exportación: Compatibilidad nativa para exportar a ONNX, OpenVINO, CoreML y TensorRT su modelo se ejecute en cualquier lugar.
from ultralytics import YOLO

# Load a pretrained YOLOv9c model
model = YOLO("yolov9c.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Export to TensorRT for maximum GPU speed
model.export(format="engine")

Flujo de trabajo de PP-YOLOE+

PP-YOLOE+ se basa en el PaddlePaddle . Aunque es potente, requiere adoptar un ecosistema específico que difiere del flujo de trabajo PyTorch que prefieren muchos investigadores. Su configuración suele implicar la clonación del PaddleDetection repositorio y gestionar los archivos de configuración manualmente, lo que puede suponer una curva de aprendizaje más pronunciada en comparación con el pip install ultralytics experiencia.

Casos de Uso y Recomendaciones

Cuándo seguir con PP-YOLOE+

  • Integración heredada: si su entorno de producción ya está construido sobre PaddlePaddle de Baidu.
  • Hardware específico: si está realizando la implementación en hardware que cuenta con optimización especializada exclusivamente para Paddle Lite.

Cuándo elegirYOLO Ultralytics

Para la gran mayoría de los nuevos proyectos, YOLOv9 o el más reciente YOLO26 son las opciones recomendadas.

  • Investigación y desarrollo: La arquitectura PGI de YOLOv9 un amplio campo de pruebas para los investigadores que estudian el flujo de gradiente.
  • Implementación comercial: Las sólidas opciones de exportación del Ultralytics facilitan el paso de un PyTorch a una aplicación de producción C++ utilizando TensorRT o OpenVINO.
  • Computación periférica: con una eficiencia de parámetros superior (mAP FLOP), Ultralytics son ideales para dispositivos alimentados por batería, como drones o cámaras inteligentes.

Perspectivas Futuras: El Poder de YOLO26

Aunque YOLOv9 un modelo excelente, el campo ha avanzado aún más con el lanzamiento de YOLO26. Si hoy en día se inicia un nuevo proyecto, YOLO26 ofrece varias ventajas fundamentales con respecto a PP-YOLOE+ y YOLOv9.

Más información sobre YOLO26

YOLO26 representa la vanguardia de la eficiencia en visión artificial:

  1. NMS de extremo a extremo: a diferencia de PP-YOLOE+ y YOLOv9 requieren un posprocesamiento de supresión no máxima (NMS), YOLO26 NMS necesita NMS de forma nativa. Esto reduce la variabilidad de la latencia y simplifica considerablemente los procesos de implementación.
  2. Optimizador MuSGD: Inspirado en las innovaciones en el entrenamiento de LLM (como Kimi K2 de Moonshot AI), YOLO26 utiliza el optimizador MuSGD para una convergencia más rápida y ejecuciones de entrenamiento más estables.
  3. Detección mejorada de objetos pequeños: con ProgLoss + STAL, YOLO26 destaca en la detección de objetos pequeños, un punto débil tradicional para muchos detectores en tiempo real.
  4. CPU : con la eliminación de la pérdida focal de distribución (DFL) y otras optimizaciones, YOLO26 alcanza CPU hasta un 43 % más rápida, lo que lo convierte en la mejor opción para entornos sin servidor o dispositivos periféricos sin NPU dedicadas.

Resumen

Tanto PP-YOLOE+ como YOLOv9 hitos en la historia de la detección de objetos. PP-YOLOE+ perfeccionó el enfoque sin anclajes, mientras que YOLOv9 conceptos de supervisión profunda a través de PGI. Sin embargo, para los desarrolladores que buscan el mejor equilibrio entre precisión, facilidad de uso e implementación preparada para el futuro, el Ultralytics , encabezado por YOLOv9 y el revolucionario YOLO26— ofrece la solución más sólida.

Explorar Más

¿Te interesan otras arquitecturas? Echa un vistazo a nuestras comparativas de RT-DETR (basada en transformadores) o YOLO11 para encontrar la que mejor se adapte a tu aplicación.


Comentarios