Ir para o conteúdo

RTDETRv2 vs. YOLOv6.0: Transformadores de alta precisão que cumprem a velocidade industrial

A seleção da arquitetura ideal para a deteção de objectos implica muitas vezes navegar no compromisso entre a precisão absoluta e a latência da inferência. Essa comparação técnica explora o RTDETRv2, um modelo baseado no Vision Transformer projetado para tarefas de alta precisão, e YOLOv6.0, um detetor baseado em CNN projetado especificamente para velocidade e eficiência industrial. Ao analisar as suas arquitecturas, métricas de desempenho e caraterísticas de implementação, ajudamo-lo a identificar a melhor solução para as suas aplicações de visão por computador.

RTDETRv2: Ultrapassar os limites com transformadores de visão

O RTDETRv2 (Real-Time Detection Transformer v2) representa uma evolução significativa na deteção de objectos, tirando partido do poder dos transformadores para captar o contexto global das imagens. Ao contrário das CNNs tradicionais que processam caraterísticas locais, o RTDETRv2 utiliza mecanismos de auto-atenção para compreender as relações entre objectos distantes, tornando-o altamente eficaz para cenas complexas.

Autores: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, and Yi Liu
Organização:Baidu
Data: 2023-04-17 (Inicial), 2024-07-24 (v2)
Arxiv:RT-DETR: DETRs Beat YOLOs on Real-time Object Detection
GitHub:RT-DETR Repository
Docs:RTDETRv2 Documentation

Saiba mais sobre o RTDETRv2.

Inovações arquitectónicas

A arquitetura do RTDETRv2 é uma conceção híbrida. Utiliza um backbone CNN padrão (normalmente ResNet ou HGNet) para extração inicial de caraterísticas, seguido de um codificador-descodificador transformador. Esta estrutura permite que o modelo processe eficazmente caraterísticas de várias escalas, eliminando a necessidade de componentes criados manualmente, como caixas de ancoragem e supressão não máxima (NMS).

Vantagem do transformador

Os componentes Vision Transformer (ViT) do RTDETRv2 são excelentes na resolução de ambiguidades em cenas com muita gente. Ao analisar simultaneamente todo o contexto da imagem, o modelo reduz os falsos positivos causados por oclusão ou desordem de fundo.

Forças e Fraquezas

Forças:

  • Precisão superior: Geralmente alcança uma maior precisão média (mAP) em conjuntos de dados como COCO em comparação com CNNs de tamanho semelhante.
  • Design sem âncoras: Simplifica o pipeline de deteção através da remoção de caixas de ancoragem, reduzindo a afinação de hiperparâmetros.
  • Contexto global: Excelente na deteção de objectos em ambientes densos ou confusos, onde as caraterísticas locais são insuficientes.

Fraquezas:

  • Custo computacional: Requer FLOPs e memória GPU significativamente mais elevados, particularmente durante a formação.
  • Latência: Embora seja "em tempo real", geralmente fica atrás de CNNs optimizadas como YOLOv6 em termos de velocidade de inferência bruta em hardware equivalente.
  • Fome de dados: Os modelos transformadores requerem frequentemente conjuntos de dados de treino maiores e calendários de treino mais longos para convergir.

YOLOv6.0: O acelerador industrial

YOLOv6.0, desenvolvido pela Meituan, foca-se diretamente nas necessidades das aplicações industriais: baixa latência e alto rendimento. Ele refina o paradigma clássico do detetor de objetos de um estágio para maximizar a eficiência em hardware que varia de dispositivos de borda a GPUs.

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:YOLOv6 v3.0: A Full-Scale Reloading
GitHub:YOLOv6 Repository
Docs:Ultralytics YOLOv6 Docs

Saiba mais sobre o YOLOv6.0

Optimizado para eficiência

YOLOv6.0 incorpora uma filosofia de design "consciente do hardware". Utiliza um eficiente Backbone de Reparametrização (estilo RepVGG) que simplifica a rede numa simples pilha de convoluções 3x3 durante a inferência, eliminando a complexidade de múltiplas ramificações. Além disso, emprega técnicas de auto-destilação durante o treinamento para aumentar a precisão sem aumentar o custo de inferência.

Forças e Fraquezas

Forças:

  • Velocidade excecional: Proporciona uma latência muito baixa, tornando-o ideal para linhas de fabrico de alta velocidade e robótica.
  • Fácil de implementar: A estrutura reparametrizada é fácil de exportar para formatos como ONNX e TensorRT para obter o máximo desempenho.
  • Eficiência de hardware: Optimizado para utilizar totalmente as unidades de computação GPU , minimizando o tempo de inatividade.

Fraquezas:

  • Teto de precisão: Embora competitivo, pode ter dificuldade em igualar a precisão máxima dos modelos baseados em transformadores em cenários visuais altamente complexos.
  • Versatilidade limitada: Principalmente focado na deteção, sem suporte nativo para tarefas como a segmentação de instâncias ou a estimativa de pose encontradas em estruturas mais recentes.

Análise de desempenho: Velocidade vs. Precisão

A escolha entre o RTDETRv2 e YOLOv6.0 resume-se frequentemente aos condicionalismos específicos do ambiente de implementação. O RTDETRv2 domina em cenários que exigem a maior precisão possível, enquanto YOLOv6.0 ganha em termos de velocidade e eficiência.

A tabela seguinte compara as principais métricas. Note-se como YOLOv6.0 consegue uma latência mais baixa (velocidade mais rápida) em escalas de modelo semelhantes, enquanto o RTDETRv2 procura pontuações mAP mais elevadas à custa da intensidade computacional (FLOPs).

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
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

Necessidades de formação e recursos

Ao desenvolver modelos personalizados, a experiência de formação difere significativamente.

  • Utilização de memória: O RTDETRv2 requer VRAM de GPU substancial devido à complexidade quadrática dos mecanismos de atenção. O treino das variantes "Large" ou "X-Large" exige frequentemente GPUs empresariais topo de gama. Em contraste, os modelos Ultralytics YOLO e YOLOv6 são geralmente mais eficientes em termos de memória, permitindo o treino em hardware de nível de consumidor ou em instâncias de nuvem mais pequenas.
  • Convergência: Os modelos baseados em transformadores normalmente precisam de épocas mais longas para aprender hierarquias espaciais que as CNNs captam intuitivamente, aumentando potencialmente os custos de computação em nuvem.

Idealmente equilibrado: A vantagem da Ultralytics

Enquanto RTDETRv2 e YOLOv6.0 se destacam nos seus respectivos nichos, Ultralytics YOLO11 oferece uma solução unificada que aborda as limitações de ambos. Combina a facilidade de utilização e a velocidade das CNNs com refinamentos de arquitetura que rivalizam com a precisão dos transformadores.

Saiba mais sobre o YOLO11.

Porque é que os programadores e investigadores preferem cada vez mais os modelos Ultralytics :

  1. Versatilidade: Ao contrário do YOLOv6, que é estritamente para deteção, Ultralytics suporta a classificação de imagens, segmentação, estimativa de pose e deteção de Oriented Bounding Box (OBB) numa única API.
  2. Ecossistema bem mantido: A plataforma Ultralytics fornece actualizações frequentes, amplo suporte da comunidade e integrações perfeitas com ferramentas como MLflow, TensorBoard e Ultralytics HUB.
  3. Facilidade de utilização: Com uma filosofia "low-code", é possível treinar, validar e implementar modelos de última geração com apenas algumas linhas de comandos Python ou CLI .
  4. Equilíbrio de desempenho: YOLO11 oferece um ponto ideal de velocidade de inferência em tempo real e alta precisão, muitas vezes superando as versões mais antigas YOLO e combinando transformadores complexos em cenários práticos.

Exemplo de código

Experimente a simplicidade da API Ultralytics . O exemplo seguinte demonstra como carregar um modelo pré-treinado e executar a inferência numa imagem:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model (n=nano, s=small, m=medium, l=large, x=xlarge)
model = YOLO("yolo11n.pt")

# Run inference on a local image
results = model("path/to/image.jpg")

# Process results
for result in results:
    result.show()  # Display results on screen
    result.save(filename="result.jpg")  # Save results to disk

Conclusão

Tanto o RTDETRv2 como YOLOv6.0 são marcos impressionantes na história da visão por computador. O RTDETRv2 é uma excelente escolha para investigação e cenários em que a precisão é a prioridade absoluta, independentemente do custo computacional. YOLOv6.0 serve bem o sector industrial, oferecendo uma velocidade extrema para ambientes controlados.

No entanto, para a maioria das aplicações do mundo real que requerem uma solução robusta, versátil e fácil de implementar, Ultralytics YOLO11 destaca-se como a escolha superior. A sua combinação de desempenho de ponta, baixo consumo de memória e um ecossistema próspero permite que os programadores passem do protótipo à produção com confiança e rapidez.

Explore Outros Modelos

Descubra como as diferentes arquitecturas se comparam para encontrar a solução perfeita para o seu projeto:


Comentários