Ir para o conteúdo

YOLOv5 vs DAMO-YOLO: Uma Comparação Técnica Detalhada

No panorama em rápida evolução da visão por computador, a seleção da arquitetura de deteção de objectos correta é fundamental para o sucesso do projeto. Esta comparação explora dois modelos importantes: Ultralytics YOLOv5um padrão da indústria adotado globalmente, conhecido pela sua fiabilidade e velocidade, e o YOLO, um modelo focado na investigação do Grupo Alibaba que introduz novas técnicas de pesquisa de arquitetura.

Embora ambos os modelos tenham como objetivo resolver tarefas de deteção de objectos, respondem a necessidades diferentes. YOLOv5 dá prioridade à facilidade de utilização, à versatilidade de implementação e ao equilíbrio do desempenho no mundo real, enquanto o YOLO se concentra em ultrapassar os limites académicos com a Pesquisa de Arquitetura Neural (NAS) e mecanismos de fusão de caraterísticas pesadas.

Métricas de desempenho e parâmetros de referência

Compreender os compromissos entre a velocidade de inferência e a precisão da deteção é essencial para escolher um modelo para produção. Os dados seguintes destacam o desempenho destes modelos no conjunto de dadosCOCO , uma referência padrão para a deteção de objectos.

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
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

Análise dos resultados

Os dados revelam uma dicotomia distinta na filosofia de conceção. O YOLOv5n (Nano) é o campeão indiscutível em termos de velocidade e eficiência, oferecendo um incrível tempo de inferência de 1,12 ms na GPU e um desempenho CPU amplamente acessível. Isto torna-o ideal para aplicações de IA de ponta em que a baixa latência não é negociável.

Modelos YOLO , como o DAMO-YOLOl, atingir um nível ligeiramente superior precisão média médiamAP), com um pico de 50.8mas ao custo da opacidade nas métricas de desempenho CPU . A falta de velocidades CPU relatadas para o YOLO sugere que ele é otimizado principalmente para ambientes GPU de ponta, limitando sua flexibilidade para cenários de implantação mais amplos, como aplicativos móveis ou sistemas incorporados.

Ultralytics YOLOv5: O padrão versátil da indústria

Autor: Glenn Jocher
Organização:Ultralytics
Data: 2020-06-26
GitHubyolov5
Documentaçãoyolov5

Desde o seu lançamento, YOLOv5 estabeleceu-se como uma pedra angular na comunidade de visão computacional. Construído nativamente em PyTorchequilibra a complexidade com a usabilidade, fornecendo uma experiência "batteries-included". A sua arquitetura utiliza um backbone CSPDarknet e um pescoço PANet, que agrega eficientemente caraterísticas em diferentes escalas para detect objectos de vários tamanhos.

Principais pontos fortes

  • Facilidade de uso: Ultralytics dá prioridade à experiência do programador (DX). Com uma API Python simples e comandosCLI intuitivos, os utilizadores podem treinar e implementar modelos em minutos.
  • Ecossistema bem mantido: Apoiado por uma comunidade ativa e actualizações frequentes, YOLOv5 assegura a compatibilidade com as ferramentas mais recentes, incluindo o Ultralytics HUB para uma gestão de modelos sem falhas.
  • Versatilidade: Para além da deteção padrão, YOLOv5 suporta a segmentação de instâncias e a classificação de imagens, permitindo que os programadores abordem várias tarefas de visão com uma única estrutura.
  • Flexibilidade de implantação: Desde a exportação para ONNX e TensorRT até à execução em iOS e Android, YOLOv5 foi concebido para ser executado em qualquer lugar.

Saiba mais sobre o YOLOv5.

Fluxo de trabalho simplificado

YOLOv5 integra-se perfeitamente com as ferramentas populares de MLOps. Pode track as suas experiências utilizando Weights & Biases ou Comet com um único comando, garantindo que suas execuções de treinamento sejam reproduzíveis e fáceis de analisar.

YOLO: Precisão orientada para a investigação

Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang e Xiuyu Sun
Organização: Alibaba Group
Data: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444v2
GitHubYOLO

O YOLO é um método desenvolvido pela Academia DAMO da Alibaba. Introduz um conjunto de tecnologias avançadas, incluindo a Pesquisa de Arquitetura Neural (NAS) para desenhar automaticamente backbones eficientes (MAE-NAS), uma estrutura de pescoço pesada conhecida como RepGFPN (Reparameterized Generalized Feature Pyramid Network), e uma cabeça leve chamada ZeroHead.

Caraterísticas principais

  • Backbone MAE-NAS: Usa um método chamado MAE-NAS para encontrar uma estrutura de rede ideal sob restrições de latência específicas, embora isso possa tornar a arquitetura mais complexa para ser modificada manualmente.
  • Atribuição de rótulos AlignedOTA: Utiliza uma estratégia de atribuição dinâmica de etiquetas denominada AlignedOTA para resolver desalinhamentos entre as tarefas de classificação e regressão.
  • Foco na precisão: O principal objetivo do YOLO é maximizar mAP no conjunto de dados COCO , tornando-o um forte concorrente para competições ou investigação académica em que cada fração de percentagem conta.

Saiba mais sobre o DAMO-YOLO.

Diferenças arquitectónicas e operacionais

A divergência entre YOLOv5 e o YOLO vai para além das simples métricas, abrangendo as suas filosofias de conceção e requisitos operacionais fundamentais.

Arquitetura: Simplicidade vs. Complexidade

YOLOv5 utiliza uma arquitetura artesanal e intuitiva. A sua abordagem baseada em âncoras é bem compreendida e fácil de depurar. Em contraste, o YOLO baseia-se na re-parametrização pesada e na pesquisa automatizada (NAS). Embora a NAS possa produzir estruturas eficientes, resulta frequentemente em modelos "caixa negra" que são difíceis de personalizar ou interpretar para os programadores. Além disso, o pescoço pesado (RepGFPN) no YOLO aumenta a carga computacional durante o treinamento, exigindo mais memóriaGPU em comparação com o design eficiente do CSP do YOLOv5.

Eficiência de treino e memória

Os modelos Ultralytics são conhecidos pela sua eficiência de treino. YOLOv5 normalmente requer menos memória CUDA , permitindo que seja treinado em GPUs de nível de consumidor. O YOLO, com os seus complexos processos de re-parametrização e destilação, exige frequentemente hardware topo de gama para ser treinado eficazmente. Além disso, Ultralytics fornece uma vasta biblioteca de pesos pré-treinados e ajuste automatizado de hiperparâmetros para acelerar o caminho para a convergência.

Ecossistema e facilidade de utilização

Talvez a diferença mais significativa esteja no ecossistema. YOLOv5 não é apenas um modelo; faz parte de um conjunto abrangente de ferramentas.

  • Documentação: Ultralytics mantém uma documentação extensa e multilingue que orienta os utilizadores desde a recolha de dados até à implementação.
  • Comunidade: Uma enorme comunidade global garante que os problemas sejam resolvidos rapidamente e que os tutoriais estejam prontamente disponíveis.
  • Integrações: Suporte nativo para Roboflow e destinos de implantação como o NVIDIA Jetson simplifica todo o pipeline.

O YOLO, essencialmente um repositório de investigação, não tem este nível de apoio polido, o que torna a integração em produtos comerciais significativamente mais difícil.

Casos de Uso no Mundo Real

A escolha entre estes modelos depende frequentemente do ambiente de implantação específico.

Onde YOLOv5 se destaca

  • Agricultura inteligente: Os seus baixos requisitos de recursos tornam-no perfeito para funcionar em drones ou tractores autónomos para a deteção de doenças nas culturas.
  • Fabrico: Na automação industrial, a alta velocidade do YOLOv5 permite a deteção de defeitos em tempo real em correias transportadoras de movimento rápido.
  • Análise de retalho: Para contagem de objectos e gestão de filas, o desempenho da CPU do YOLOv5 permite uma implementação rentável no hardware existente da loja.

Onde a YOLO se destaca

  • Investigação académica: Os investigadores que estudam a eficácia do RepGFPN ou das técnicas NAS encontrarão no YOLO uma base de referência valiosa.
  • Vigilância de ponta: Em cenários com GPUs dedicadas de nível de servidor em que a precisão tem prioridade sobre a latência, a YOLO pode fornecer uma deteção precisa em cenas complexas.

Exemplo de código: Começar a utilizar o YOLOv5

A execução YOLOv5 é simples graças ao pacote Ultralytics Python . O exemplo a seguir demonstra como carregar um modelo pré-treinado e executar a inferência em uma imagem.

import torch

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

# Define an image URL or local path
img = "https://ultralytics.com/images/zidane.jpg"

# Run inference
results = model(img)

# Print results to the console
results.print()

# Show the image with bounding boxes
results.show()

Conclusão

Tanto YOLOv5 como o YOLO contribuem significativamente para o campo da deteção de objectos. O YOLO demonstra o potencial da Pesquisa de Arquitetura Neural e da fusão avançada de caraterísticas para alcançar padrões de referência de elevada precisão.

No entanto, para a grande maioria dos programadores, engenheiros e empresas, Ultralytics YOLOv5 continua a ser a escolha superior. A sua incomparável facilidade de utilização, o robusto equilíbrio de desempenho e a segurança de um ecossistema bem mantido garantem que os projectos passam do protótipo à produção com o mínimo de atrito. A capacidade de implantação eficiente em CPUs e GPUs, combinada com requisitos de memória mais baixos para treinamento, torna YOLOv5 uma solução altamente prática para aplicações do mundo real.

Para aqueles que procuram tirar partido da mais recente tecnologia de visão por computador, Ultralytics continuou a inovar com o YOLOv8 e com o inovador YOLO11. Estes modelos mais recentes assentam na base sólida do YOLOv5, oferecendo ainda maior velocidade, precisão e versatilidade de tarefas.

Explore Outras Comparações

Para compreender melhor como estes modelos se enquadram no ecossistema mais vasto, explore estas comparações pormenorizadas:


Comentários