Ir para o conteúdo

YOLOv5 vs YOLOv8: Uma Comparação Detalhada

Comparar Ultralytics YOLOv5 e Ultralytics YOLOv8 para deteção de objetos revela avanços significativos e pontos fortes distintos em cada modelo. Ambos os modelos, desenvolvidos pela Ultralytics, são conhecidos pela sua velocidade e precisão, mas atendem a diferentes necessidades e prioridades dos utilizadores no campo da visão computacional. Esta página fornece uma comparação técnica para ajudar os utilizadores a tomar decisões informadas com base nos requisitos do seu projeto, destacando as vantagens do ecossistema Ultralytics.

YOLOv5: O Padrão Estabelecido e Versátil

Autor: Glenn Jocher
Organização: Ultralytics
Data: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
Documentação: https://docs.ultralytics.com/models/yolov5/

Ultralytics YOLOv5 rapidamente se tornou um padrão da indústria após o seu lançamento, celebrado pelo seu equilíbrio excepcional de velocidade, precisão e facilidade de uso. Construído inteiramente em PyTorch, YOLOv5 apresenta uma arquitetura robusta com um backbone CSPDarknet53 e um neck PANet para agregação eficiente de recursos. Seu cabeçalho de detecção baseado em âncoras é altamente eficaz, e o modelo está disponível em vários tamanhos (n, s, m, l, x), permitindo que os desenvolvedores selecionem a compensação ideal para suas necessidades específicas de desempenho e computacionais.

Pontos Fortes

  • Velocidade e Eficiência Excepcionais: YOLOv5 é altamente otimizado para inferência rápida, tornando-o uma excelente escolha para aplicações em tempo real em diversos hardwares, desde servidores poderosos até dispositivos de borda com recursos limitados.
  • Facilidade de Uso: Reconhecido pela sua experiência de utilizador otimizada, o YOLOv5 oferece interfaces simples de Python e CLI, suportadas por documentação extensa.
  • Ecossistema Maduro e Bem Mantido: Como um modelo de longa data, beneficia de uma comunidade grande e ativa, atualizações frequentes e integração perfeita com o ecossistema Ultralytics, incluindo ferramentas como o Ultralytics HUB para treinamento sem código.
  • Eficiência no Treinamento: O YOLOv5 oferece um processo de treinamento eficiente com pesos pré-treinados prontamente disponíveis, permitindo ciclos de desenvolvimento rápidos. Geralmente, requer menos memória para treinamento e inferência em comparação com arquiteturas mais complexas, como transformers.

Fraquezas

  • Detecção Baseada em Âncoras: Sua dependência de caixas delimitadoras (anchor boxes) predefinidas pode, às vezes, exigir ajuste manual para um desempenho ideal em conjuntos de dados com objetos de formato incomum, ao contrário dos detectores sem âncoras modernos.
  • Precisão: Embora altamente preciso, modelos mais recentes como o YOLOv8 ultrapassaram o seu desempenho em benchmarks padrão como o conjunto de dados COCO.

Casos de Uso Ideais

A velocidade e eficiência do YOLOv5 o tornam perfeito para:

  • Vídeo vigilância em tempo real e sistemas de segurança.
  • Implantação em dispositivos de borda (edge devices) como NVIDIA Jetson e Raspberry Pi.
  • Automação industrial e controle de qualidade na manufatura.
  • Prototipagem rápida para projetos de visão computacional devido à sua simplicidade e tempos de treinamento rápidos.

Saiba mais sobre o YOLOv5.

YOLOv8: A estrutura de última geração e de ponta.

Autores: Glenn Jocher, Ayush Chaurasia e Jing Qiu
Organização: Ultralytics
Data: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
Documentação: https://docs.ultralytics.com/models/yolov8/

Ultralytics YOLOv8 representa a próxima evolução na série YOLO, projetada como uma estrutura unificada que oferece suporte a um espectro completo de tarefas de IA de visão. Além da detecção de objetos, ele se destaca em segmentação de instâncias, classificação de imagens, estimativa de pose e detecção de objetos orientados. O YOLOv8 introduz melhorias arquitetônicas importantes, como um head de detecção sem âncoras e um novo módulo C2f, para oferecer desempenho de última geração.

Pontos Fortes

  • Precisão e Velocidade Melhoradas: O YOLOv8 oferece um equilíbrio superior de velocidade e precisão, alcançando pontuações de mAP mais altas do que o YOLOv5 em todos os tamanhos de modelo, mantendo velocidades de inferência competitivas.
  • Versatilidade: Seu suporte para múltiplas tarefas de visão dentro de uma estrutura única e coesa a torna uma ferramenta incrivelmente poderosa e flexível para o desenvolvimento de sistemas complexos de IA.
  • Arquitetura Moderna: O cabeçalho de detecção sem âncoras simplifica a camada de saída e melhora o desempenho, eliminando a necessidade de ajuste da caixa âncora.
  • Ecosistema Bem Mantido: Como um modelo principal, o YOLOv8 beneficia de desenvolvimento ativo, atualizações frequentes e forte apoio da comunidade. Está totalmente integrado no ecossistema Ultralytics, incluindo a plataforma Ultralytics HUB para MLOps otimizado.
  • Eficiência de Memória: Apesar de sua arquitetura avançada, o YOLOv8 é otimizado para baixo uso de memória, tornando-o acessível em uma ampla gama de hardware.

Fraquezas

  • Demanda Computacional: Os maiores modelos YOLOv8 (por exemplo, YOLOv8x) exigem recursos computacionais significativos, o que pode ser uma consideração para a implementação em ambientes altamente restritos.

Casos de Uso Ideais

O YOLOv8 é a escolha recomendada para aplicações que exigem a mais alta precisão e flexibilidade:

  • Robótica avançada que requer compreensão complexa de cenas e interação multi-objeto.
  • Análise de imagem de alta resolução para imagens médicas ou de satélite, onde detalhes precisos são críticos.
  • Sistemas de visão multi-tarefa que precisam realizar detecção, segmentação e estimativa de pose simultaneamente.
  • Novos projetos onde começar com o modelo de última geração é uma prioridade.

Saiba mais sobre o YOLOv8.

Benchmarks de Desempenho: YOLOv5 vs. YOLOv8

A diferença de desempenho entre o YOLOv5 e o YOLOv8 é evidente ao comparar suas métricas no conjunto de dados COCO. De modo geral, os modelos YOLOv8 demonstram maior precisão (mAP) para um número comparável de parâmetros e custo computacional (FLOPs). Por exemplo, o YOLOv8n atinge um mAP de 37,3, quase igualando o YOLOv5s (37,4 mAP), mas com 68% menos parâmetros e inferência de CPU significativamente mais rápida.

No entanto, o YOLOv5 continua sendo um concorrente formidável, especialmente em cenários onde a velocidade bruta da GPU é a principal prioridade. O modelo YOLOv5n, por exemplo, possui o tempo de inferência mais rápido em uma GPU T4. Isso o torna uma excelente escolha para aplicações em tempo real executadas em hardware otimizado.

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
YOLOv8n 640 37.3 80.4 1.47 3.2 8.7
YOLOv8s 640 44.9 128.4 2.66 11.2 28.6
YOLOv8m 640 50.2 234.7 5.86 25.9 78.9
YOLOv8l 640 52.9 375.2 9.06 43.7 165.2
YOLOv8x 640 53.9 479.1 14.37 68.2 257.8

Principais Diferenças Arquitetónicas

A evolução do YOLOv5 para o YOLOv8 introduziu várias mudanças arquitetônicas significativas que contribuem para seu desempenho e flexibilidade superiores.

Backbone e Neck

O YOLOv5 usa o módulo C3 em seu backbone e neck. Em contraste, o YOLOv8 o substitui pelo módulo C2f. O módulo C2f (Cross Stage Partial BottleNeck com 2 convoluções) fornece uma fusão de recursos mais eficiente e um fluxo de gradiente mais rico, o que aumenta a precisão geral do modelo.

Cabeçalho de Detecção

Uma distinção importante reside no head de deteção. O YOLOv5 emprega um head acoplado, baseado em âncoras, o que significa que o mesmo conjunto de características é usado tanto para a classificação de objetos quanto para a regressão da caixa delimitadora. O YOLOv8 utiliza um head sem âncoras desacoplado. Esta separação de tarefas (um head para a classificação, outro para a regressão) permite que cada um se especialize, melhorando a precisão. A abordagem sem âncoras também simplifica o processo de treino e elimina a necessidade de ajustar os priors da caixa de âncoras, tornando o modelo mais adaptável a diferentes conjuntos de dados.

Metodologias de Treinamento e Ecossistema

Tanto o YOLOv5 quanto o YOLOv8 são construídos em PyTorch e aproveitam os pipelines de treinamento simplificados da Ultralytics, oferecendo uma experiência consistente e amigável.

  • Facilidade de Uso: Ambos os modelos podem ser facilmente treinados usando as interfaces CLI ou Python fornecidas com configuração mínima. A documentação abrangente (Documentos YOLOv5, Documentos YOLOv8) e as APIs simples tornam o treinamento personalizado direto.
  • Treinamento Eficiente: Scripts de treinamento otimizados e pesos pré-treinados prontamente disponíveis reduzem significativamente o tempo de treinamento e os custos computacionais.
  • Aumento de Dados: Ambos os modelos incorporam um conjunto robusto de técnicas de aumento de dados integradas para melhorar a generalização do modelo e reduzir o sobreajuste.
  • Ecossistema Ultralytics: A integração com ferramentas como o Ultralytics HUB e plataformas de registro, como TensorBoard e Comet, simplifica o rastreamento de experimentos, o gerenciamento de modelos e a implantação.

Conclusão: Qual Modelo Você Deve Escolher?

Tanto o YOLOv5 quanto o YOLOv8 são modelos poderosos de detecção de objetos desenvolvidos pela Ultralytics, oferecendo excelente desempenho e facilidade de uso. A escolha entre eles depende, em grande parte, dos requisitos específicos do seu projeto.

  • YOLOv5 continua sendo um concorrente forte e confiável, particularmente para aplicações onde maximizar a velocidade de inferência em hardware específico é fundamental. Sua maturidade significa que ele tem um vasto ecossistema e foi testado em batalha em inúmeras implantações no mundo real. É uma excelente escolha para projetos com um orçamento de recursos apertado ou aqueles que exigem implantação rápida em dispositivos de borda.

  • YOLOv8 representa a vanguarda da série YOLO, oferecendo precisão superior, versatilidade aprimorada em várias tarefas de visão e uma arquitetura mais moderna. Seu design livre de âncoras e recursos avançados o tornam a escolha ideal para novos projetos que buscam desempenho de última geração e a flexibilidade para lidar com desafios complexos e multifacetados de IA.

A Ultralytics continua a inovar, garantindo que ambos os modelos sejam bem suportados, fáceis de usar e forneçam um ótimo equilíbrio entre velocidade e precisão, adequados para diversos cenários do mundo real.

Explore outros modelos Ultralytics

Para utilizadores que exploram outras opções de última geração, a Ultralytics também oferece modelos como o YOLOv9, YOLOv10 e o mais recente YOLO11, cada um oferecendo vantagens únicas em termos de desempenho e eficiência. Mais comparações estão disponíveis na documentação Ultralytics.



📅 Criado há 1 ano ✏️ Atualizado há 1 mês

Comentários