Ir para o conteúdo

YOLOX vs. YOLOv6.0: Uma comparação técnica

Selecionar a arquitetura de deteção de objectos correta é uma decisão crítica para os programadores e investigadores que pretendem equilibrar o desempenho, a velocidade e a eficiência computacional. Esta comparação abrangente explora as distinções técnicas entre o YOLOX, um detetor sem âncoras de alto desempenho da Megvii, e YOLOv6.0, uma estrutura de nível industrial desenvolvida pela Meituan. Ao analisar as suas arquitecturas, referências e metodologias de formação, pretendemos orientá-lo para o melhor modelo para as suas aplicações específicas de visão por computador.

YOLOX: Ligar a investigação à indústria

Autores: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, e Jian Sun
Organização:Megvii
Data: 2021-07-18
Arxiv:https://arxiv.org/abs/2107.08430
GitHub:https://github.com/Megvii-BaseDetection/YOLOX
Docs:https://yolox.readthedocs.io/en/latest/

Lançado em 2021, o YOLOX representou uma mudança significativa na linhagem YOLO , adotando um mecanismo sem âncoras e integrando técnicas avançadas de deteção anteriormente reservadas à investigação académica. Ao remover a dependência de caixas de ancoragem predefinidas, o YOLOX simplificou o processo de treinamento e melhorou a generalização em várias formas de objetos.

Arquitetura e Principais Características

O YOLOX distingue-se por uma arquitetura de "cabeça desacoplada". Ao contrário dos modelos YOLO tradicionais, que juntavam as tarefas de classificação e localização num único ramo, o YOLOX separa-as, o que melhora significativamente a velocidade de convergência e a precisão. Utiliza uma estratégia de atribuição de etiquetas SimOTA (Simplified Optimal Transport Assignment), que atribui dinamicamente amostras positivas a objectos de verdade, reduzindo a instabilidade do treino.

Design sem âncoras

O YOLOX elimina a necessidade de agrupamento manual de caixas de ancoragem, um passo comum nas versões anteriores YOLO . Isto reduz o número de hiperparâmetros heurísticos e as escolhas de design envolvidas no treino, tornando o modelo mais robusto para conjuntos de dados variados sem afinação extensiva.

Forças e Fraquezas

Forças:

  • Elevada precisão: O cabeçote desacoplado e a atribuição avançada de rótulos permitem que a YOLOX atinja pontuações competitivas de precisão média (mAP), particularmente no conjunto de dadosCOCO .
  • Flexibilidade de investigação: A sua conceção simplificada torna-o uma excelente base de referência para os investigadores que experimentam novas cabeças de deteção ou estratégias de atribuição.
  • Deteção de pequenos objectos: A abordagem sem âncoras pode, por vezes, oferecer um melhor desempenho em objectos pequenos, em comparação com os sistemas baseados em âncoras rígidas.

Fraquezas:

  • Latência de inferência: Embora exacta, a cabeça desacoplada introduz uma ligeira sobrecarga computacional, resultando frequentemente em velocidades de inferência mais lentas em comparação com modelos industriais totalmente optimizados como o YOLOv6.
  • Maturidade do ecossistema: Embora o código seja de código aberto, o ecossistema de ferramentas de terceiros, guias de implantação e suporte da comunidade é menor do que o do Ultralytics YOLOv8 ou YOLOv5.

Casos de Uso Ideais

O YOLOX é particularmente adequado para investigação académica e cenários em que a precisão tem prioridade sobre a velocidade de inferência bruta.

  • Imagiologia médica: Análise de estruturas complexas na análise de imagens médicas, onde a precisão é fundamental.
  • Deteção de defeitos: identificação de anomalias subtis no fabrico em que as detecções falhadas são dispendiosas.
  • Experimentação académica: Servindo como uma linha de base limpa e sem âncoras para o desenvolvimento de novos algoritmos de visão computacional.

Saiba mais sobre o YOLOX.

YOLOv6.0: Concebido para a velocidade 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
GitHubYOLOv6
Docsultralytics

YOLOv6.0 é um detetor de objectos concebido para aplicações industriais do mundo real. A atualização "3.0", conhecida como "Full-Scale Reloading", introduziu refinamentos arquitectónicos significativos para maximizar o rendimento em hardware como as GPUs NVIDIA .

Arquitetura e Principais Características

O núcleo do YOLOv6.0 é a forte utilização da reparametrização. O modelo utiliza uma espinha dorsal EfficientRep e um pescoço Rep-PAN, que permitem que a rede tenha estruturas complexas e com várias ramificações durante o treino, mas que colapsam em estruturas simples e de caminho único durante a inferência. Esta abordagem "estilo RepVGG" garante uma elevada capacidade de extração de caraterísticas sem a penalização de latência em tempo de execução de ramificações complexas.

Além disso, YOLOv6.0 utiliza o treino assistido por âncora (AAT), combinando as vantagens dos paradigmas com e sem âncora para estabilizar o treino e acelerar a convergência.

Forças e Fraquezas

Forças:

  • Velocidade excecional: Optimizado para o TensorRTYOLOv6.0 oferece latência extremamente baixa, o que o torna ideal para aplicações de alta taxa de quadros.
  • Pronto para implantação: Recursos como suporte à quantização de modelos facilitam a implantação em dispositivos de borda e servidores.
  • Eficiência: A técnica de reparametrização fornece um excelente equilíbrio entre FLOPs e precisão.

Fraquezas:

  • Intensidade dos recursos de treinamento: A arquitetura complexa do tempo de treino (antes da reparametrização) pode exigir uma memóriaGPU significativa em comparação com modelos mais simples.
  • Âmbito limitado da tarefa: YOLOv6 concentra-se principalmente na deteção. Não possui suporte nativo e integrado para outras tarefas, como estimativa de pose ou Oriented Bounding Boxes (OBB), dentro da mesma API contínua encontrada nas ofertas Ultralytics .

Casos de Uso Ideais

YOLOv6.0 destaca-se em ambientes onde a velocidade de inferência em tempo real é um requisito rigoroso.

  • Robótica autónoma: Permitir que os robôs naveguem e reajam instantaneamente a ambientes dinâmicos.
  • Inspeção da linha de produção: Inspeção de qualidade a alta velocidade em correias de fabrico onde o rendimento não pode ser comprometido.
  • Análise de vídeo: Processamento de vários fluxos de vídeo em simultâneo para sistemas de alarme de segurança.

Saiba mais sobre o YOLOv6

Comparação Direta de Desempenho

A comparação das métricas de desempenho no conjunto de dadosCOCO revela filosofias de conceção distintas. O YOLOX oferece uma arquitetura simplificada com uma precisão respeitável, enquanto YOLOv6.0 ultrapassa os limites da velocidade de inferência através da otimização estrutural.

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7

Os dados destacam que YOLOv6.0n é significativamente mais rápido em hardware GPU (1,17 ms contra 2,56 ms do YOLOX), mantendo também um forte mAP. Para dispositivos com recursos limitados, em que cada megabyte conta, o YOLOXnano continua a ser uma opção interessante com parâmetros inferiores a 1M, embora a sua precisão seja inferior. No extremo superior, YOLOv6.0l supera o YOLOXx tanto em precisão (52,8 vs 51,1 mAP) como em eficiência, utilizando cerca de 40% menos parâmetros.

Metodologias de Treinamento e Ecossistema

A experiência do utilizador para treinar estes modelos difere significativamente.

O YOLOX baseia-se em fortes técnicas de aumento de dados, como o Mosaic e o MixUp , para alcançar os seus resultados sem pesos pré-treinados. O seu pipeline de formação é orientado para a investigação, oferecendo flexibilidade para aqueles que estão profundamente familiarizados com as configurações PyTorch .

YOLOv6.0 utiliza a auto-destilação, em que um modelo maior do professor orienta o modelo do aluno durante o treino, aumentando a precisão dos modelos mais pequenos sem aumentar o custo de inferência. Esta metodologia é poderosa, mas acrescenta complexidade à configuração do treino.

No entanto, os programadores que dão prioridade a um fluxo de trabalho simplificado consideram frequentemente o ecossistemaUltralytics superior. Ao contrário das ferramentas fragmentadas frequentemente encontradas em modelos de pesquisa independentes, Ultralytics fornece uma plataforma unificada.

  • Facilidade de utilização: Uma simples API Python permite a formação, validação e inferência em apenas algumas linhas de código.
  • Ecossistema bem mantido: Atualizações frequentes garantem a compatibilidade com as versões mais recentes do PyTorch, CUDA e formatos de exportação como ONNX e OpenVINO.
  • Eficiência de treinamento: Os modelos Ultralytics são optimizados para uma utilização eficiente da memória, sendo frequentemente treinados mais rapidamente e com menos memória GPU do que as arquitecturas comparáveis baseadas em transformadores.

Facilidade de utilização Ultralytics

Treinar um modelo de última geração com o Ultralytics é tão simples como:

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

Conclusão: A vantagem Ultralytics

Enquanto o YOLOX oferece um design inovador sem âncoras adequado para investigação, YOLOv6.0 oferece uma velocidade impressionante para hardware industrial específico, Ultralytics YOLO11 representa o auge da atual tecnologia de visão por computador.

YOLO11 e o estabelecido YOLOv8 oferecem um equilíbrio de desempenho superior, alcançando pontuações mAP de última geração com velocidades de inferência notáveis tanto na CPU como na GPU . Ao contrário dos concorrentes limitados principalmente à deteção, os modelos Ultralytics oferecem uma versatilidade inigualável, suportando nativamente:

Para os programadores que procuram uma solução preparada para o futuro, apoiada por um desenvolvimento ativo, documentação abrangente e uma comunidade próspera, Ultralytics continua a ser a escolha recomendada para levar os projectos do conceito à produção.

Para explorar outras comparações, considere ler sobre YOLOv5 vs YOLOv6 ou YOLO11 vs RT-DETR.


Comentários