YOLOv7 vs YOLOv5: Uma Comparação Técnica Detalhada
Escolher a arquitetura de detecção de objetos certa é uma decisão crítica que afeta a velocidade, a precisão e a viabilidade de implementação de seus projetos de visão computacional. Esta página fornece uma comparação técnica abrangente entre o YOLOv7 e o Ultralytics YOLOv5, dois modelos influentes na linhagem YOLO. Analisamos suas inovações arquitetônicas, benchmarks de desempenho e casos de uso ideais para ajudá-lo a selecionar a melhor opção para sua aplicação.
Embora YOLOv7 tenha introduzido avanços acadêmicos significativos em 2022, o Ultralytics YOLOv5 continua sendo uma força dominante no setor devido à sua facilidade de uso, robustez e flexibilidade de implementação incomparáveis. Para aqueles que buscam o que há de mais recente em desempenho, também exploramos como esses modelos abrem caminho para o Ultralytics YOLO11 de ponta.
Comparação de Métricas de Desempenho
A tabela a seguir destaca as vantagens e desvantagens de desempenho entre as duas arquiteturas. Enquanto o YOLOv7 busca uma Precisão Média Média (mAP) mais alta, o YOLOv5 oferece vantagens distintas em velocidade de inferência e menor contagem de parâmetros para tamanhos de modelo específicos.
| Modelo | tamanho (pixels) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
YOLOv7: Ultrapassando os Limites da Precisão
Lançado em julho de 2022, o YOLOv7 foi projetado para estabelecer um novo estado da arte para detectores de objetos em tempo real. Ele se concentra fortemente na otimização arquitetônica para melhorar a precisão sem aumentar significativamente o custo de inferência.
Autores: Chien-Yao Wang, Alexey Bochkovskiy e Hong-Yuan Mark Liao
Organização:Instituto de Ciência da Informação, Academia Sinica, Taiwan
Data: 2022-07-06
Arxiv:https://arxiv.org/abs/2207.02696
GitHub:https://github.com/WongKinYiu/yolov7
Documentação:https://docs.ultralytics.com/models/yolov7/
Arquitetura e Inovações Chave
YOLOv7 introduz várias mudanças arquitetônicas complexas destinadas a melhorar o aprendizado de recursos:
- E-ELAN (Extended Efficient Layer Aggregation Network - Rede de Agregação de Camadas Eficiente Estendida): Uma estrutura de backbone avançada que aprimora a capacidade de aprendizado da rede controlando os caminhos de gradiente mais curtos e mais longos. Isso permite que o modelo aprenda recursos mais diversos.
- Escalonamento de Modelo para Modelos Baseados em Concatenação: Ao contrário do escalonamento padrão, o YOLOv7 escala a profundidade e a largura simultaneamente para arquiteturas baseadas em concatenação, garantindo a utilização ideal de recursos.
- Bag-of-Freebies Treinável: Isso inclui a convolução reparametrizada planejada (RepConv) e o treinamento do cabeçalho auxiliar. Os cabeçalhos auxiliares geram rótulos hierárquicos do geral para o específico, que ajudam a orientar o processo de aprendizagem durante o treinamento, mas são removidos durante a inferência para manter a velocidade.
O que é um 'Bag of Freebies'?
"Bag of Freebies" refere-se a uma coleção de métodos de treinamento e técnicas de aumento de dados que melhoram a precisão de um modelo de detecção de objetos sem aumentar o custo de inferência. No YOLOv7, isso inclui estratégias sofisticadas como a Atribuição de Rótulo Guiada Coarse-to-Fine Lead.
Casos de Uso Ideais para YOLOv7
Devido ao seu foco em alta precisão, o YOLOv7 é particularmente adequado para:
- Investigação Académica: Benchmarking em relação aos modelos SOTA onde cada fração de mAP é importante.
- Implementação de GPU de Alto Nível: Aplicações onde hardware poderoso (como NVIDIA A100s) está disponível para lidar com os tamanhos de modelo maiores e os requisitos de memória.
- Análise Estática: Cenários onde a latência em tempo real é menos crítica do que a precisão, como a análise de imagens de satélite de alta resolução ou exames médicos.
Ultralytics YOLOv5: O Padrão da Indústria
Ultralytics YOLOv5 é amplamente considerado um dos modelos de detecção de objetos mais práticos e fáceis de usar disponíveis. Desde o seu lançamento em 2020, tornou-se a espinha dorsal de inúmeras aplicações comerciais devido ao seu equilíbrio entre velocidade, precisão e excelência em engenharia.
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 Benefícios do Ecossistema
YOLOv5 utiliza um backbone CSP-Darknet53 com um PANet neck e uma head YOLOv3, otimizado para diversos alvos de implementação. No entanto, a sua verdadeira força reside no ecossistema Ultralytics:
- Facilidade de Uso: Conhecido por sua filosofia de "instalar e executar", o YOLOv5 permite que os desenvolvedores comecem a treinar em conjuntos de dados personalizados em minutos. A API é intuitiva e a documentação é exaustiva.
- Eficiência no Treinamento: O YOLOv5 normalmente requer menos memória CUDA durante o treinamento em comparação com arquiteturas mais novas e complexas, tornando-o acessível a desenvolvedores com GPUs de gama média.
- Flexibilidade de Implantação: Suporta exportação com um clique para ONNX, TensorRT, CoreML, TFLite e muito mais, facilitando a implantação em tudo, desde servidores em nuvem até telefones celulares.
- Ecossistema Bem Mantido: Com atualizações frequentes, correções de bugs e uma comunidade enorme, a Ultralytics garante que o modelo permaneça estável e seguro para ambientes de produção.
Casos de Uso Ideais para YOLOv5
YOLOv5 se destaca em cenários do mundo real que exigem confiabilidade e velocidade:
- IA de Ponta: Executando em dispositivos como o NVIDIA Jetson ou Raspberry Pi devido ao Nano leve (
yolov5n) e Small (yolov5s) variantes. - Aplicações Móveis: Integração em aplicações iOS e Android via CoreML e TFLite para inferência no dispositivo.
- Protótipagem Rápida: Startups e desenvolvedores que precisam passar do conceito ao MVP rapidamente se beneficiam do fluxo de trabalho simplificado.
- Automação Industrial: Detecção confiável para linhas de manufatura onde latência e estabilidade são fundamentais.
Análise Comparativa Detalhada
Ao decidir entre YOLOv7 e YOLOv5, vários fatores técnicos entram em jogo, além da pontuação de mAP.
1. Relação Velocidade vs. Precisão
O YOLOv7 alcança maior precisão de pico no conjunto de dados COCO. Por exemplo, o YOLOv7x atinge 53,1% de mAP em comparação com os 50,7% do YOLOv5x. No entanto, isso tem um custo de complexidade. O YOLOv5 oferece um gradiente mais suave de modelos; o modelo YOLOv5n (Nano) é incrivelmente rápido (velocidade de 73,6 ms na CPU) e leve (2,6 milhões de parâmetros), criando um nicho para ambientes com recursos ultrabaixos que o YOLOv7 não visa explicitamente com a mesma granularidade.
2. Arquitetura e Complexidade
O YOLOv7 emprega uma arquitetura baseada em concatenação com E-ELAN, o que aumenta a largura de banda da memória necessária durante o treinamento. Isso pode torná-lo mais lento para treinar e mais faminto por memória do que o YOLOv5. Em contraste, o Ultralytics YOLOv5 usa uma arquitetura simplificada que é altamente otimizada para eficiência de treinamento, permitindo uma convergência mais rápida e menor uso de memória, o que é uma vantagem significativa para engenheiros com orçamentos computacionais limitados.
3. Usabilidade e Experiência do Desenvolvedor
É aqui que o Ultralytics YOLOv5 realmente brilha. O framework Ultralytics proporciona uma experiência unificada com ferramentas robustas para aumento de dados, evolução de hiperparâmetros e track de experimentos.
import torch
# Example: Loading YOLOv5s from PyTorch Hub for inference
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")
# Print results
results.print()
Embora YOLOv7 tenha um repositório, ele carece dos pipelines de CI/CD refinados e prontos para produção, dos extensos guias de integração e do suporte da comunidade que apoiam o ecossistema Ultralytics.
4. Versatilidade
Embora ambos os modelos sejam principalmente arquiteturas de detecção de objetos, o ecossistema Ultralytics em torno do YOLOv5 evoluiu para suportar segmentação de instâncias e classificação de imagens perfeitamente. O YOLOv7 também oferece suporte a essas tarefas, mas geralmente requer diferentes branches ou forks do código, enquanto o Ultralytics oferece uma abordagem mais unificada.
Implementação Facilitada
Os modelos Ultralytics suportam uma ampla gama de formatos de exportação prontos para uso. Você pode converter facilmente seu modelo treinado para TFLite para Android, CoreML para iOS ou TensorRT para inferência de GPU otimizada usando um simples comando CLI ou script Python.
Conclusão: Qual Modelo Você Deve Escolher?
A escolha entre YOLOv7 e YOLOv5 depende das prioridades do seu projeto:
- Escolha YOLOv7 se sua principal restrição for a máxima precisão e você estiver operando em um ambiente de pesquisa ou em hardware de ponta onde a velocidade de inferência e a necessidade de memória são preocupações secundárias.
- Escolha Ultralytics YOLOv5 se você precisa de uma solução confiável e pronta para produção. Sua facilidade de uso, treinamento eficiente, baixa latência em dispositivos de borda e ecossistema de suporte massivo o tornam a escolha superior para a maioria das aplicações comerciais e desenvolvedores que estão começando sua jornada de visão computacional.
Olhando para o Futuro: YOLO11
Embora o YOLOv5 e o YOLOv7 sejam excelentes modelos, o campo da visão computacional evolui rapidamente. Para desenvolvedores que buscam o melhor dos dois mundos —superando a precisão do YOLOv7 e a velocidade/usabilidade do YOLOv5—, recomendamos fortemente explorar o Ultralytics YOLO11.
O YOLO11 representa a evolução mais recente, apresentando uma arquitetura sem âncoras que simplifica o pipeline de treinamento e melhora o desempenho em todas as tarefas, incluindo detecção, segmentação, estimativa de pose e caixas delimitadoras orientadas (OBB).
Explore Outros Modelos
Se você está interessado em comparar outros modelos da família YOLO, confira estas páginas relacionadas: