Ir para o conteúdo

YOLOv9 . YOLOX: Evolução arquitetónica e comparação técnica

Esta análise detalhada compara YOLOv9, conhecido pela sua inovadora Programmable Gradient Information (PGI), com o YOLOX, um detetor de objetos pioneiro sem âncora. Exploramos as suas diferenças arquitetónicas, métricas de desempenho e cenários de implementação ideais para o ajudar a escolher o modelo certo para os seus projetos de visão computacional.

Comparação de Métricas de Desempenho

A tabela a seguir compara os principais indicadores de desempenho. YOLOv9 demonstra, em geral, relações precisão-computação superiores, particularmente nas suas variantes menores, que são cruciais para a implementação de ponta.

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

YOLOv9: Informação de Gradiente Programável

YOLOv9, lançado em fevereiro de 2024 por investigadores da Academia Sinica, apresenta inovações arquitetónicas significativas destinadas a resolver o problema do «gargalo de informação» nas redes neurais profundas.

Saiba mais sobre o YOLOv9

Principais Inovações Arquitetônicas

  • Informação de gradiente programável (PGI): PGI é uma estrutura de supervisão auxiliar que gera gradientes confiáveis para atualizar os parâmetros da rede. Ela garante que informações semânticas críticas não sejam perdidas à medida que os dados passam por camadas profundas, um problema comum em modelos leves.
  • Arquitetura GELAN: A Rede Generalizada de Agregação de Camadas Eficientes (GELAN) combina os melhores aspectos da CSPNet e da ELAN. Ela prioriza a eficiência dos parâmetros e a velocidade de inferência, permitindo YOLOv9 alcance maior precisão com menos FLOPs em comparação com seus antecessores.
  • Versatilidade: Ao contrário das versões anteriores, limitadas à deteção, YOLOv9 suporta YOLOv9 a segmentação de instâncias e a segmentação panóptica, tornando-o uma escolha versátil para tarefas complexas de visão.

Formação simplificada com Ultralytics

YOLOv9 totalmente integrado ao Ultralytics . Você pode treinar um modelo com dados personalizados com configuração mínima, aproveitando recursos avançados como precisão mista automática eGPU .

from ultralytics import YOLO

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

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

YOLOX: O Pioneiro Sem Anchor

O YOLOX, lançado em 2021 pela Megvii, foi um modelo transformador que mudou o YOLO para um design sem âncora. Ele simplificou o pipeline de treinamento e melhorou o desempenho ao desacoplar o cabeçote de detecção.

Saiba mais sobre o YOLOX.

Principais Características Arquitetônicas

  • Mecanismo sem âncora: Ao remover as caixas de âncora predefinidas, o YOLOX elimina a necessidade de ajuste manual da âncora (agrupamento) e reduz a complexidade do cabeçote de detecção.
  • Cabeça desacoplada: O YOLOX separa as tarefas de classificação e regressão em diferentes ramos. Esse desacoplamento resolve o conflito entre essas duas tarefas, levando a uma convergência mais rápida e melhor precisão.
  • Atribuição de rótulos SimOTA: O YOLOX utiliza o SimOTA (Simplified Optimal Transport Assignment), uma estratégia dinâmica de atribuição de rótulos que combina automaticamente objetos reais com previsões com base numa perspetiva de otimização global.

Análise Comparativa

Facilidade de Uso e Ecossistema

Um dos diferenciais mais importantes é o ecossistema. YOLOv9, como parte da Ultralytics , oferece uma experiência unificada e fácil de usar. Os desenvolvedores se beneficiam de:

  • API consistente: quer esteja a utilizar YOLOv9, YOLO11 ou o YOLO26, os comandos para treino, validação e inferência permanecem idênticos.
  • Documentação abrangente: Ultralytics guias completos sobre ajuste de hiperparâmetros, exportação de modelos e estratégias de implementação.
  • Manutenção ativa: atualizações frequentes garantem compatibilidade com as versões mais recentes PyTorch e CUDA .

Em contrapartida, o YOLOX normalmente requer uma configuração mais manual, envolvendo a clonagem do repositório e o gerenciamento de dependências específicas, o que pode ser uma barreira para a prototipagem rápida.

Desempenho e Eficiência

  • Precisão: YOLOv9 supera o YOLOX em mAP tamanhos de modelo comparáveis. Por exemplo, o YOLOv9m atinge 51,4% mAP em comparação com os 46,9% do YOLOX-m, apesar de ter menos parâmetros (20,0 milhões contra 25,3 milhões).
  • Velocidade de inferência: Embora o YOLOX tenha representado um avanço em termos de velocidade em 2021, arquiteturas modernas como o GELAN no YOLOv9 ainda mais a eficiência. O YOLOv9t funciona a 2,3 ms numa GPU T4, tornando-o altamente adequado para aplicações em tempo real.
  • Eficiência de memória: Ultralytics são otimizados para reduzir o uso GPU durante o treinamento. Isso permite que os pesquisadores treinem lotes maiores ou modelos mais complexos em hardware de nível consumidor em comparação com arquiteturas mais antigas ou modelos baseados em transformadores, como RT-DETR.

Casos de Uso

  • Escolha YOLOv9 : precisar de precisão de última geração, precisar de suporte para segmentação ou quiser o pipeline de implementação mais simples possível através da Ultralytics . Ele se destaca em inspeção industrial e sistemas autónomos.
  • Escolha o YOLOX se: estiver a manter sistemas legados construídos na base de código do YOLOX ou precisar do comportamento específico da sua cabeça sem âncora para comparações de pesquisa.

Olhando para o Futuro: O Poder do YOLO26

Embora YOLOv9 uma excelente escolha, o campo da visão computacional evolui rapidamente. O recém-lançado YOLO26 aproveita os pontos fortes de seus antecessores para oferecer a solução definitiva com prioridade para a borda.

Saiba mais sobre YOLO26

O YOLO26 apresenta várias funcionalidades revolucionárias:

  • NMS de ponta a ponta: Ao eliminar a supressão não máxima (NMS), o YOLO26 simplifica a implementação e reduz a variabilidade da latência, um conceito pioneiro no YOLOv10.
  • Otimizador MuSGD: Inspirado no treinamento LLM, este otimizador híbrido garante uma convergência estável e é robusto em vários tamanhos de lote.
  • ProgLoss + STAL: Estas funções de perda avançadas melhoram significativamente a deteção de pequenos objetos, tornando o YOLO26 ideal para imagens aéreas e aplicações com drones.
  • CPU 43% mais rápida: com a remoção da Distribution Focal Loss (DFL), o YOLO26 foi otimizado especificamente para dispositivos de ponta CPU, como o Raspberry Pi.

Executando o YOLO26 em Python

Experimente a velocidade da última geração com apenas algumas linhas de código:

from ultralytics import YOLO

# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")

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

Conclusão

Tanto YOLOv9 o YOLOX contribuíram significativamente para a detecção de objetos. O YOLOX popularizou a detecção sem âncoras, simplificando o espaço de design para modelos futuros. No entanto, YOLOv9 aproveita os avanços arquitetónicos modernos, como PGI e GELAN, para oferecer precisão e eficiência superiores.

Para desenvolvedores que buscam o melhor equilíbrio entre desempenho, facilidade de uso e preparação para o futuro, Ultralytics como o YOLOv9 e o inovador YOLO26 são as opções recomendadas. Eles oferecem uma plataforma robusta para enfrentar diversos desafios, desde imagens médicas até monitoramento de cidades inteligentes.

Modelos relevantes

Se está a explorar arquiteturas de deteção de objetos, também pode estar interessado em:

  • YOLO11: Um poderoso predecessor do YOLO26, conhecido pela sua robustez.
  • RT-DETR: Um detetor baseado em transformador que oferece alta precisão, mas com maiores exigências de recursos.
  • YOLOv8: Um modelo muito popular que introduziu uma estrutura unificada para deteção, segmentação e pose.

Comentários