YOLOv5 vs. YOLOv9: Uma Comparação Técnica Abrangente
A evolução da detecção de objetos em tempo real tem sido marcada por rápidos avanços em precisão e eficiência. Dois marcos significativos nesta jornada são o Ultralytics YOLOv5, um modelo que estabeleceu o padrão da indústria para usabilidade e implantação, e o YOLOv9, uma arquitetura focada em pesquisa que ultrapassa os limites da teoria do aprendizado profundo.
Esta comparação técnica analisa suas arquiteturas, métricas de desempenho e casos de uso ideais para ajudar desenvolvedores e pesquisadores a selecionar a ferramenta certa para seus projetos de visão computacional.
Ultralytics YOLOv5: O Padrão da Indústria para Versatilidade
Desde o seu lançamento, o YOLOv5 tornou-se um dos modelos de IA de visão mais populares globalmente. Desenvolvido pela Ultralytics, prioriza a excelência em engenharia, a facilidade de uso e o desempenho no mundo real. Equilibra velocidade e precisão, proporcionando uma experiência de utilizador perfeita através de um ecossistema robusto.
Detalhes Técnicos:
- Autores: Glenn Jocher
- Organização:Ultralytics
- Data: 2020-06-26
- GitHub:https://github.com/ultralytics/yolov5
- Documentação:https://docs.ultralytics.com/models/yolov5/
Arquitetura e Design
YOLOv5 utiliza um backbone CSPDarknet combinado com um PANet neck para extração e agregação eficiente de características. A sua head de deteção baseada em âncoras é altamente otimizada para velocidade, tornando-o adequado para uma vasta gama de hardware. Ao contrário dos modelos puramente académicos, o YOLOv5 foi concebido tendo em mente a implementação, oferecendo suporte nativo para iOS, Android e dispositivos edge.
Principais Pontos Fortes
- Ecossistema Bem Mantido: YOLOv5 se beneficia de anos de desenvolvimento ativo, resultando em documentação extensa, suporte da comunidade e integrações com ferramentas como Ultralytics HUB.
- Eficiência do Treinamento: É conhecido pelos tempos de treinamento rápidos e menores requisitos de memória em comparação com arquiteturas baseadas em transformer, tornando-o acessível em GPUs de consumidor padrão.
- Versatilidade: Além da detect, o YOLOv5 suporta nativamente segmentação de instâncias e classificação de imagens, permitindo que os desenvolvedores abordem várias tarefas de visão com uma única estrutura.
- Pronto para Implantação: Com recursos de exportação integrados para ONNX, TensorRT, CoreML e TFLite, a transição da pesquisa para a produção é simplificada.
YOLOv9: Inovação Arquitetural para Máxima Precisão
Lançado em 2024, o YOLOv9 se concentra em resolver problemas de perda de informações em redes profundas. Ele introduz novos conceitos para melhorar a forma como os dados se propagam através do modelo, alcançando resultados de última geração em benchmarks como COCO.
Detalhes Técnicos:
- Autores: Chien-Yao Wang, Hong-Yuan Mark Liao
- Organização:Institute of Information Science, Academia Sinica, Taiwan
- Data: 2024-02-21
- Arxiv:https://arxiv.org/abs/2402.13616
- GitHub:https://github.com/WongKinYiu/yolov9
- Documentação:https://docs.ultralytics.com/models/yolov9/
Arquitetura e Inovações
O YOLOv9 introduz dois avanços arquitetónicos primários:
- Informação de Gradiente Programável (PGI): Uma técnica projetada para mitigar o problema do gargalo de informação, garantindo que a informação de entrada completa esteja disponível para o cálculo da função de perda.
- Generalized Efficient Layer Aggregation Network (GELAN): Uma arquitetura de rede leve que otimiza a eficiência dos parâmetros, permitindo que o modelo alcance maior precisão com menos parâmetros do que alguns predecessores.
Principais Pontos Fortes
- Alta Precisão: YOLOv9 estabelece benchmarks impressionantes para precisão de detecção de objetos, particularmente em suas configurações maiores (YOLOv9-E).
- Eficiência de Parâmetros: A arquitetura GELAN garante que o modelo use os parâmetros de forma eficaz, proporcionando uma forte relação precisão-peso.
- Avanço Teórico: Aborda questões fundamentais na aprendizagem profunda relativamente à preservação de informação em camadas profundas.
Comparação de Desempenho
Ao comparar esses dois modelos, a compensação normalmente reside entre velocidade e precisão absoluta. O YOLOv9 alcança pontuações mAPval mais altas no conjunto de dados COCO, demonstrando a eficácia do PGI e do GELAN. No entanto, o Ultralytics YOLOv5 continua sendo um concorrente formidável em velocidade de inferência, principalmente em CPUs e dispositivos de borda, onde sua arquitetura otimizada se destaca.
Equilíbrio de Desempenho
Embora o YOLOv9 lidere os gráficos de precisão, o YOLOv5 geralmente oferece um equilíbrio mais prático para aplicações em tempo real, oferecendo velocidades de inferência significativamente mais rápidas (ms) em hardware padrão, mantendo recursos robustos de detecção.
| Modelo | tamanho (pixels) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
Treino e Recursos
Para desenvolvedores, a eficiência do treinamento é frequentemente tão crítica quanto a velocidade de inferência. Ultralytics YOLOv5 é conhecido por sua simplicidade de "treinar e usar". Ele normalmente requer menos memória durante o treinamento em comparação com arquiteturas mais novas e complexas, especialmente modelos baseados em transformadores (como RT-DETR). Essa barreira de entrada mais baixa permite que os usuários treinem modelos personalizados em configurações de hardware modestas.
O YOLOv9, embora eficiente em parâmetros, pode ser mais intensivo em recursos para treinar devido à complexidade das ramificações auxiliares usadas para PGI, que são removidas durante a inferência, mas adicionam sobrecarga durante o treinamento.
Exemplo de Código: Interface Unificada
Uma das maiores vantagens do ecossistema Ultralytics é a API Python unificada. Você pode alternar entre YOLOv5 e YOLOv9 com uma única linha de código, tornando incrivelmente fácil comparar ambos em seu conjunto de dados específico.
from ultralytics import YOLO
# Load an Ultralytics YOLOv5 model (pre-trained on COCO)
model_v5 = YOLO("yolov5su.pt")
# Train the model on your custom data
results_v5 = model_v5.train(data="coco8.yaml", epochs=100, imgsz=640)
# Load a YOLOv9 model for comparison
model_v9 = YOLO("yolov9c.pt")
# Train YOLOv9 using the exact same API
results_v9 = model_v9.train(data="coco8.yaml", epochs=100, imgsz=640)
Casos de Uso Ideais
A escolha entre esses modelos depende das prioridades do seu projeto:
Quando escolher o Ultralytics YOLOv5
- Implementação de Borda: Idealmente adequado para Raspberry Pi, aplicativos móveis e sistemas embarcados onde cada milissegundo de latência conta.
- Protótipagem Rápida: A facilidade de uso, os tutoriais extensivos e o suporte da comunidade permitem ciclos de desenvolvimento incrivelmente rápidos.
- Requisitos Multi-Tarefa: Se o seu projeto requer segmentação ou classificação juntamente com a detecção, o YOLOv5 fornece uma solução unificada.
- Restrições de recursos: Projetos com memória GPU limitada para treinamento se beneficiarão da eficiência do YOLOv5.
Quando escolher o YOLOv9
- Precisão Máxima: Crítica para aplicações como imagens médicas ou inspeção industrial de alta precisão, onde perder uma detecção é dispendioso.
- Investigação Académica: Excelente para investigadores que exploram o que há de mais recente no fluxo de informação de gradiente e no design de arquitetura de rede.
- Hardware Poderoso: Melhor utilizado quando recursos computacionais amplos estão disponíveis para treinamento e inferência, a fim de aproveitar todo o seu potencial.
Conclusão
Ambos os modelos representam a excelência no campo da visão computacional. Ultralytics YOLOv5 continua sendo a escolha pragmática para a maioria dos desenvolvedores, oferecendo uma combinação imbatível de velocidade, confiabilidade e suporte ao ecossistema. É um cavalo de batalha testado em batalha para implantação no mundo real. YOLOv9, por outro lado, oferece um vislumbre do futuro da eficiência arquitetônica, fornecendo precisão de alto nível para aqueles que precisam.
Para aqueles que procuram o que há de mais recente em desempenho e versatilidade, também recomendamos explorar o YOLO11, que se baseia nos pontos fortes do YOLOv5 e do YOLOv8 para fornecer resultados de última geração em todas as métricas.
Explore Outros Modelos
Se você tem interesse em explorar mais, confira estes modelos relacionados no ecossistema Ultralytics:
- YOLO11: O mais recente modelo SOTA, oferecendo desempenho e versatilidade superiores.
- YOLOv8: Um modelo poderoso sem âncoras que suporta detecção, segmentação, pose e OBB.
- RT-DETR: Um detector em tempo real baseado em transformer para aplicações de alta precisão.