Ir para o conteúdo

YOLOv5 vs YOLOv7: Equilíbrio entre ecossistema e arquitetura

A escolha do modelo de deteção de objectos correto é uma decisão crítica para os programadores e investigadores. Na evolução da família YOLO (You Only Look Once), YOLOv5 e YOLOv7 destacam-se como arquitecturas fundamentais que moldaram o panorama da visão por computador. Enquanto YOLOv7 introduziu inovações arquitectónicas significativas para a precisão,YOLOv5 Ultralytics YOLOv5 revolucionou a experiência do programador com foco na usabilidade, implementação e um ecossistema robusto.

Este guia fornece uma comparação técnica aprofundada destes dois modelos, analisando as suas arquitecturas, métricas de desempenho no conjunto de dadosCOCO e adequação a aplicações do mundo real.

Ultralytics YOLOv5: O padrão da engenharia

Lançado em 2020, YOLOv5 redefiniu as expectativas para o software de deteção de objetos de código aberto. Ao contrário das iterações anteriores que existiam principalmente como código de pesquisa, YOLOv5 foi projetado como uma estrutura pronta para o produto. Ele priorizou a facilidade de uso, a exportabilidade e a velocidade, tornando-o a escolha certa para empresas que criam aplicativos de inferência em tempo real.

Autores: Glenn Jocher
Organização:Ultralytics
Data: 2020-06-26
GitHubyolov5
Docsyolov5

Principais vantagens do YOLOv5

  • Design centrado no utilizador: YOLOv5 introduziu uma API simplificada e um fluxo de trabalho de formação contínuo que reduziu a barreira à entrada para a formação de modelos de deteção de objectos personalizados.
  • Flexibilidade de implementação: Com suporte nativo para modos de exportação, os modelos YOLOv5 podem ser facilmente convertidos para formatos como ONNXCoreML, TFLite e TensorRT para implantação em diversos hardwares.
  • Uso eficiente de recursos: A arquitetura é otimizada para baixo consumo de memória, tornando-a ideal para dispositivos de IA de ponta, como o NVIDIA Jetson ou o Raspberry Pi.

Apoio ao ecossistema

YOLOv5 é apoiado pelo abrangente ecossistema Ultralytics . Isto inclui uma integração perfeita com ferramentas de controlo de experiências como Comet e MLflow, bem como plataformas de gestão de conjuntos de dados.

Saiba mais sobre o YOLOv5.

YOLOv7: A abordagem "saco de brindes

Lançado em 2022, YOLOv7 concentrou-se fortemente em ultrapassar os limites da precisão através da otimização da arquitetura. Os autores introduziram vários conceitos novos com o objetivo de melhorar o aprendizado de recursos sem aumentar o custo de inferência, uma estratégia que eles chamaram de "saco de brindes treinável".

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
Docsultralytics

Inovações arquitectónicas

YOLOv7 incorpora Redes de Agregação de Camadas Eficientes Alargadas (E-ELAN) para melhorar a capacidade de aprendizagem da rede. Também utiliza técnicas de escalonamento de modelos que modificam simultaneamente a profundidade e a largura da arquitetura. Embora eficazes para aumentar as pontuaçõesmAP , estas alterações complexas na arquitetura podem, por vezes, tornar o modelo mais difícil de modificar ou implementar, em comparação com o backbone CSP-Darknet mais simples encontrado no YOLOv5.

Saiba mais sobre o YOLOv7

Comparação do desempenho técnico

Quando se comparam os dois modelos, o compromisso reside geralmente entre a exatidão bruta e a velocidade de implementação prática. Os modelos YOLOv7 (especificamente as variantes maiores) atingem geralmente um mAP mais elevado no conjunto de dados COCO val2017. No entanto, o Ultralytics YOLOv5 mantém uma posição dominante na velocidade de inferência e na eficiência dos parâmetros, particularmente com as suas variantes mais pequenas (Nano e Small), que são cruciais para a implantação móvel.

A tabela abaixo destaca as métricas de desempenho. Note-se a velocidade excecional do YOLOv5n, que continua a ser uma das opções mais rápidas para ambientes com recursos extremamente limitados.

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Análise de métricas

  • Velocidade vs. Precisão: O YOLOv7x atinge um mAP superior de 53,1%, o que o torna adequado para segurança de ponta ou análises médicas em que cada pixel conta. No entanto, para aplicações como a análise de vídeo ou a navegação autónoma, o tempo de inferência de 1,12 ms do YOLOv5n no TensorRT oferece uma capacidade de taxa de fotogramas que os modelos mais pesados não conseguem igualar.
  • Eficiência de treinamento: Ultralytics YOLOv5 utiliza estratégias "AutoAnchor" e evolução avançada de hiperparâmetros, o que frequentemente resulta numa convergência mais rápida durante o treino, em comparação com os complexos esquemas de re-parametrização exigidos pelo YOLOv7.
  • Espaço de memória: O treino de transformadores ou arquitecturas complexas como o YOLOv7 requer frequentemente GPUs topo de gama (por exemplo, A100s). Em contraste, o design eficiente do YOLOv5 permite o treinamento em hardware de nível de consumidor, democratizando o acesso ao desenvolvimento de IA.

Implementação do código

Um dos argumentos mais fortes a favor do Ultralytics YOLOv5 é a simplicidade da sua API Python . Carregar um modelo pré-treinado e executar a inferência requer apenas algumas linhas de código, uma prova da maturidade da estrutura.

import torch

# Load the YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Define an image (url, local path, or numpy array)
img = "https://ultralytics.com/images/zidane.jpg"

# Run inference
results = model(img)

# Print results and show the image with bounding boxes
results.print()
results.show()

Este nível de abstração permite que os programadores se concentrem na criação das suas soluções empresariais em vez de depurar arquitecturas de modelos.

Casos de Uso Ideais

Quando escolher YOLOv7

YOLOv7 é uma excelente escolha para investigação académica e cenários em que as restrições de hardware são secundárias em relação ao desempenho de deteção bruto.

  • Investigação académica: Para aferir as técnicas de deteção mais avançadas.
  • Inspeção de alta precisão: Tal como o controlo de qualidade do fabrico, em que a deteção de defeitos mínimos é crítica e a latência é menos preocupante.

Quando escolher o Ultralytics YOLOv5

YOLOv5 continua a ser a norma da indústria para o desenvolvimento rápido e a implementação da produção.

Conclusão: O caminho moderno a seguir

Enquanto YOLOv7 demonstrou o poder da afinação da arquitetura, Ultralytics YOLOv5 continua a ser a escolha superior para os programadores que necessitam de uma solução fiável, bem documentada e fácil de implementar. O seu equilíbrio entre velocidade, precisão e suporte do ecossistema garante que continua a ser relevante em ambientes de produção em todo o mundo.

No entanto, o domínio da visão por computador evolui rapidamente. Para quem procura o melhor desempenho absoluto, YOLO11 representa a mais recente evolução da Ultralytics. YOLO11 baseia-se na facilidade de utilização do YOLOv5 , mas incorpora módulos de ponta baseados em transformadores e designs sem âncoras, ultrapassando o YOLOv5 e YOLOv7 em termos de precisão e eficiência.

Para uma solução preparada para o futuro que suporte a deteção de objectos, a estimativa de pose e as caixas delimitadoras orientadas (OBB), recomenda-se vivamente a migração para a estrutura Ultralytics YOLO11 .

Descubra mais comparações

Explore a comparação de outros modelos com a família Ultralytics YOLO :


Comentários