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.
| Modelo | tamanho (pixels) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.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.
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.
Autores e links
- Autores: Chien-Yao Wang, Hong-Yuan Mark Liao
- Organização:Institute of Information Science, Academia Sinica
- Data: 2024-02-21
- Arxiv:2402.13616
- GitHub:WongKinYiu/yolov9
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.
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.
Autores e links
- Autores: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun
- Organização:Megvii
- Data: 2021-07-18
- Arxiv:2107.08430
- GitHub:Megvii-BaseDetection/YOLOX
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.
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.