YOLOv6.0 vs YOLOv5: Uma comparação técnica para a deteção de objectos
Selecionar a arquitetura certa para o seu projeto de visão computacional é uma decisão fundamental que tem impacto no desempenho, na facilidade de implementação e na manutenção a longo prazo. Dois concorrentes proeminentes no campo da deteção de objectos em tempo real são YOLOv6.0 da Ultralytics e o YOLOv5. Este guia fornece uma comparação técnica detalhada para ajudar os programadores e investigadores a escolherem o modelo que melhor se alinha com os seus requisitos específicos, quer dêem prioridade ao rendimento bruto GPU ou a um ecossistema versátil e fácil de utilizar.
Análise de métricas de desempenho
A tabela abaixo apresenta uma comparação direta das métricas de desempenho no conjunto de dadosCOCO . Enquanto YOLOv6.0 ultrapassa os limites da precisão máxima em dispositivos GPU , Ultralytics YOLOv5 mantém uma reputação de eficiência excecional, particularmente na CPU, e uma complexidade de modelo significativamente mais baixa (parâmetros e FLOPs) para as suas variantes leves.
| Modelo | tamanho (pixels) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| 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 |
Análise: Os dados destacam que o modelo YOLOv5n (Nano) é um destaque para ambientes com recursos limitados, apresentando a menor contagem de parâmetros (2,6M) e FLOPs (7,7B), o que se traduz em velocidades de inferência CPU superiores. Isto torna-o altamente adequado para aplicações de IA de ponta em que a memória e a energia são escassas. Por outro lado, YOLOv6.0 tem como objetivo um maior mAPval à custa do aumento do tamanho do modelo, o que o torna um forte candidato para configurações industriais com hardware GPU dedicado.
Meituan YOLOv6.0: Precisão industrial
Autores: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, e Xiangxiang Chu
Organização: Meituan
Data: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: YOLOv6
Docs: https:ultralytics
Desenvolvido pela Meituan, YOLOv6.0 é uma estrutura de deteção de objectos concebida para aplicações industriais. Centra-se na obtenção de um compromisso favorável entre a velocidade de inferência e a precisão, optimizando especificamente o desempenho com reconhecimento de hardware em GPUs.
Arquitetura e Principais Características
YOLOv6 incorpora uma conceção eficiente da espinha dorsal e uma estrutura reparametrizável (estilo RepVGG) que simplifica o modelo durante a inferência, mantendo capacidades complexas de extração de caraterísticas durante o treino. A versão 3.0 introduziu técnicas como a auto-destilação e uma estratégia de formação assistida por âncoras para aumentar ainda mais o desempenho.
Forças e Fraquezas
- Elevada precisão de GPU : Fornece pontuações mAP competitivas no conjunto de dadosCOCO , tornando-o adequado para tarefas de controlo de qualidade no fabrico.
- Suporte à quantização: Oferece suporte específico para quantização de modelos para acelerar a implantação.
- Versatilidade limitada: Concebido principalmente para a deteção de objectos, não tem suporte nativo para tarefas mais amplas, como a segmentação de instâncias ou a estimativa de pose, que se encontram noutras estruturas.
- Maior sobrecarga de recursos: As variantes maiores requerem mais memória e potência computacional em comparação com os modelos YOLOv5 leves equivalentes.
Ultralytics YOLOv5: O padrão do ecossistema
Autores: Glenn Jocher
Organização: Ultralytics
Data: 2020-06-26
GitHub: yolov5
Docs: https:yolov5
Ultralytics YOLOv5 é um modelo lendário no espaço da visão computacional, celebrado pelo seu design centrado no utilizador, fiabilidade e pelo ecossistema abrangente que o rodeia. Continua a ser um dos modelos mais utilizados a nível mundial devido ao seu equilíbrio entre velocidade, precisão e facilidade de utilização.
Arquitetura e Principais Características
YOLOv5 utiliza um backbone CSPDarknet acoplado a um pescoço PANet para uma fusão robusta de caraterísticas. Utiliza um mecanismo de deteção baseado em âncoras, que provou ser altamente estável em conjuntos de dados variados. A arquitetura é altamente modular, oferecendo cinco escalas (n, s, m, l, x) para se adaptar a tudo, desde dispositivos incorporados a servidores na nuvem.
Porquê escolher YOLOv5?
- Facilidade de uso: Ultralytics dá prioridade à experiência do programador com uma API Python simples, configuração automática do ambiente e documentação extensa.
- Versatilidade: Ao contrário de muitos concorrentes, YOLOv5 suporta a classificação de imagens e a segmentação de instâncias de forma imediata.
- Eficiência de treinamento: Conhecido pela rápida convergência e baixa utilização de memória durante o treinamento, economizando custos em recursos de computação.
- Flexibilidade de implantação: Exportação sem problemas para formatos como ONNX, TensorRTCoreML e TFLite para integração diversificada de hardware.
Ecossistema integrado
Uma das maiores vantagens da utilização do YOLOv5 é o ecossistema Ultralytics . A integração com ferramentas como o Ultralytics HUB permite o treinamento e a visualização de modelos sem código, enquanto o suporte integrado para rastreamento de experimentos via Comet e MLflow simplifica o fluxo de trabalho do MLOps.
Comparação pormenorizada
Filosofia da arquitetura e do design
YOLOv6.0 baseia-se fortemente na pesquisa e reparametrização da arquitetura neural sensível ao hardware para maximizar o rendimento em arquitecturas GPU específicas (como a Tesla T4). Em contraste, YOLOv5 concentra-se em um design universal que funciona de forma confiável em CPUs, GPUs e NPUs. O detetor baseado em âncora do YOLOv5 é geralmente mais fácil de ajustar para conjuntos de dados personalizados com objetos pequenos em comparação com algumas abordagens sem âncora.
Metodologia de usabilidade e formação
Os modelos Ultralytics são concebidos para estarem "prontos a treinar". Com o YOLOv5, funcionalidades como o AutoAnchor ajustam automaticamente as caixas de ancoragem às etiquetas do conjunto de dados e a evolução inteligente dos hiperparâmetros ajuda a encontrar as definições de treino ideais. YOLOv6 requer uma configuração mais manual, caraterística dos repositórios de investigação tradicionais, que pode apresentar uma curva de aprendizagem mais acentuada para os novos utilizadores.
Casos de Uso no Mundo Real
- Ultralytics YOLOv5: ideal para prototipagem rápida e implantações diversas. O seu modelo leve "Nano" é perfeito para monitorização baseada em drones ou aplicações móveis que requerem inferência em tempo real na CPU. O seu suporte para segmentação também o torna valioso para tarefas de imagiologia médica, como a segmentação de células.
- YOLOv6.0: Mais adequado para ambientes industriais fixos onde estão disponíveis GPUs topo de gama e a métrica principal é o mAP. Os exemplos incluem a inspeção ótica automatizada (AOI) no fabrico de produtos electrónicos.
Exemplo de código: Executando YOLOv5
A simplicidade do YOLOv5 é melhor demonstrada pela sua capacidade de executar a inferência com apenas algumas linhas de código utilizando PyTorch Hub. Isso elimina etapas complexas de instalação e permite que os desenvolvedores testem o modelo imediatamente.
import torch
# Load the YOLOv5s model from the official Ultralytics Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Define an image URL (or local path)
img = "https://ultralytics.com/images/zidane.jpg"
# Perform inference
results = model(img)
# Display results
results.show()
# Print detailed results regarding detected objects
results.print()
Esta facilidade de acesso é uma marca registada da filosofia Ultralytics , permitindo que os profissionais de visão computacional se concentrem na resolução de problemas em vez de se debruçarem sobre questões ambientais.
Conclusão
Ambas as arquitecturas desempenham papéis importantes no panorama da visão moderna. O Meituan YOLOv6.0 oferece uma opção atraente para utilizadores estritamente focados em maximizar a precisão da deteção em hardware GPU .
No entanto, Ultralytics YOLOv5 continua a ser a escolha superior para a maioria dos programadores devido à sua versatilidade inigualável, eficiência de formação e ecossistema robusto. A capacidade de implantar facilmente em dispositivos de borda, juntamente com o suporte para segmentação e classificação, torna YOLOv5 uma solução abrangente para desafios de IA do mundo real.
Para aqueles que procuram o que há de mais moderno em termos de desempenho, recomendamos que explorem Ultralytics YOLO11. YOLO11 baseia-se no legado do YOLOv5 com ainda maior precisão, velocidade e capacidades ricas em funcionalidades, representando o futuro da IA de visão. Outros modelos especializados, como o RT-DETR também estão disponíveis para aplicações baseadas em transformadores.
Explore a gama completa de ferramentas e modelos na Documentação de ModelosUltralytics .