Comparação de Modelos: YOLOv5 vs YOLOv6-3.0 para Detecção de Objetos
Escolher o modelo de detecção de objetos ideal é fundamental para aplicações de visão computacional bem-sucedidas. Tanto Ultralytics YOLOv5 quanto Meituan YOLOv6-3.0 são escolhas populares conhecidas por sua eficiência e precisão. Esta página fornece uma comparação técnica para ajudá-lo a decidir qual modelo melhor se adapta às necessidades do seu projeto. Analisamos suas nuances arquitetônicas, benchmarks de desempenho, abordagens de treinamento e aplicações adequadas, destacando os pontos fortes do ecossistema Ultralytics.
Ultralytics YOLOv5: O Padrão da Indústria Estabelecido
Autores: 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 é um modelo de deteção de objectos de fase única, conhecido pela sua velocidade, facilidade de utilização e adaptabilidade. Desenvolvido pela Ultralytics, representa um passo significativo para tornar acessível a deteção de objectos de elevado desempenho. Construído inteiramente em PyTorchYOLOv5 apresenta um backbone CSPDarknet53 e um pescoço PANet para extração e fusão eficientes de caraterísticas. A sua arquitetura é altamente modular, permitindo um escalonamento fácil através de diferentes tamanhos de modelos (n, s, m, l, x) para satisfazer diversos requisitos de desempenho.
Forças do YOLOv5
- Velocidade e Eficiência: O YOLOv5 se destaca na velocidade de inferência, tornando-o ideal para aplicações em tempo real e implantação em dispositivos de borda com recursos limitados. Como pode ser visto na tabela de desempenho, o modelo YOLOv5n oferece os tempos de inferência de CPU e GPU mais rápidos entre os modelos menores.
- Facilidade de Uso: Conhecido por sua simplicidade, o YOLOv5 oferece uma experiência de usuário otimizada com uma API simples, documentação extensa e inúmeros tutoriais.
- Ecossistema Bem Mantido: Beneficia do ecossistema Ultralytics integrado, incluindo desenvolvimento ativo, forte apoio da comunidade via Discord, atualizações frequentes e integração perfeita com o Ultralytics HUB para MLOps.
- Versatilidade: Suporta múltiplas tarefas, incluindo detecção de objetos, segmentação de instâncias e classificação de imagens, fornecendo uma solução mais abrangente do que os modelos de tarefa única.
- Eficiência no Treinamento: Oferece processos de treinamento eficientes, pesos pré-treinados prontamente disponíveis e requisitos de memória mais baixos em comparação com muitas outras arquiteturas, especialmente modelos baseados em transformer.
Fraquezas do YOLOv5
- Precisão: Embora altamente preciso e eficiente, modelos mais recentes como o YOLOv6-3.0 ou Ultralytics YOLOv8 podem oferecer um mAP ligeiramente superior em certos benchmarks, particularmente variantes de modelos maiores.
- Detecção Baseada em Âncoras: Baseia-se em caixas delimitadoras de âncora, que podem exigir ajuste para um desempenho ideal em diversos conjuntos de dados, em comparação com detectores sem âncoras modernos.
Meituan YOLOv6-3.0: Um Competidor 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: https://github.com/meituan/YOLOv6
Documentação: https://docs.ultralytics.com/models/yolov6/
O YOLOv6-3.0, desenvolvido pela Meituan, é um framework de detecção de objetos projetado principalmente para aplicações industriais. Lançado no início de 2023, visava fornecer um equilíbrio entre velocidade e precisão adequado para cenários de implantação no mundo real. O YOLOv6 introduziu modificações arquitetônicas, como um backbone e um design de neck eficientes. A versão 3.0 refinou ainda mais esses elementos e incorporou técnicas como a autodilatação durante o treinamento para aumentar o desempenho. Ele também oferece modelos específicos otimizados para implantação móvel (YOLOv6Lite).
Forças do YOLOv6-3.0
- Boa Relação Velocidade-Precisão: Oferece desempenho competitivo, particularmente para tarefas industriais de detecção de objetos onde o objetivo é maximizar o mAP em uma GPU.
- Suporte à Quantização: Fornece ferramentas e tutoriais para quantização de modelos, benéficos para a implementação em hardware com recursos limitados.
- Otimização para Dispositivos Móveis: Inclui variantes YOLOv6Lite projetadas especificamente para inferência em dispositivos móveis ou baseados em CPU.
Fraquezas do YOLOv6-3.0
- Versatilidade Limitada de Tarefas: Focado principalmente na detecção de objetos, sem o suporte nativo para segmentação, classificação ou estimativa de pose encontrado em modelos Ultralytics como YOLOv5 e YOLOv8.
- Ecossistema e Manutenção: Embora seja de código aberto, o ecossistema não é tão abrangente ou ativamente mantido quanto a plataforma Ultralytics, o que pode levar a atualizações mais lentas e menos suporte da comunidade.
- Maior Uso de Recursos: Modelos YOLOv6 maiores podem ter significativamente mais parâmetros e FLOPs em comparação com os equivalentes YOLOv5 para mAP semelhante, potencialmente exigindo mais recursos computacionais.
Comparação Direta de Desempenho
A tabela abaixo fornece uma comparação direta das métricas de desempenho entre os modelos YOLOv5 e YOLOv6-3.0 no conjunto de dados COCO. O Ultralytics YOLOv5 demonstra velocidade superior tanto na CPU quanto na GPU para modelos menores, tornando-o uma excelente escolha para aplicações de borda em tempo real. Embora os modelos YOLOv6-3.0 maiores possam alcançar um mAP de pico mais alto, o YOLOv5 oferece um desempenho mais equilibrado e eficiente em geral, especialmente ao considerar as suas contagens mais baixas de parâmetros e FLOP.
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 |
YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
Metodologia de Treino
Ambos os modelos aproveitam técnicas padrão de aprendizado profundo para treinamento em grandes conjuntos de dados como o COCO. No entanto, o Ultralytics YOLOv5 se beneficia significativamente do ecossistema Ultralytics, oferecendo fluxos de trabalho de treinamento simplificados, guias extensos, otimização AutoAnchor e integração com ferramentas como Weights & Biases e ClearML para rastreamento de experimentos. Essa abordagem integrada simplifica o ciclo de desenvolvimento e acelera o tempo de implantação. O treinamento do YOLOv6-3.0 segue os procedimentos descritos em seu repositório oficial.
Casos de Uso Ideais
- Ultralytics YOLOv5: Altamente recomendado para aplicações que exigem desempenho em tempo real e facilidade de implementação, especialmente em CPU ou dispositivos de borda. Sua versatilidade, amplo suporte e uso eficiente de recursos o tornam ideal para prototipagem rápida, aplicações móveis, vigilância por vídeo (visão computacional para prevenção de roubos) e projetos que se beneficiam de um ecossistema maduro e bem documentado.
- Meituan YOLOv6-3.0: Um forte candidato quando o objetivo principal é maximizar a precisão na GPU, enquanto ainda requer inferência rápida. É adequado para aplicações industriais onde as ligeiras melhorias no mAP em relação ao YOLOv5 justificam uma complexidade potencialmente maior ou menor suporte do ecossistema.
Conclusão
Ultralytics YOLOv5 continua sendo uma excelente escolha, particularmente valorizada por sua velocidade excepcional, facilidade de uso e ecossistema robusto. Ele fornece um excelente equilíbrio de desempenho e eficiência, apoiado por extensa documentação e suporte da comunidade, tornando-o altamente acessível para desenvolvedores e pesquisadores.
O YOLOv6-3.0 oferece desempenho competitivo, particularmente em termos de mAP de pico para modelos maiores em GPU. Ele serve como uma alternativa viável para usuários que priorizam a maior precisão possível dentro de uma estrutura YOLO para tarefas industriais especializadas.
Para aqueles que procuram os mais recentes avanços, considerem explorar modelos Ultralytics mais recentes, como o YOLOv8, YOLOv9, YOLOv10 e YOLO11, que oferecem melhorias adicionais em termos de desempenho, versatilidade e eficiência. Modelos especializados como o RT-DETR também oferecem vantagens únicas para casos de uso específicos.
Explore a gama completa de opções na Documentação de Modelos Ultralytics.