Ir para o conteúdo

RTDETRv2 vs. YOLOX: Uma comparação técnica para a deteção de objectos em tempo real

No panorama em rápida evolução da visão por computador, a procura do equilíbrio ideal entre velocidade e precisão continua a impulsionar a inovação. Duas abordagens distintas surgiram como pioneiras: o RTDETRv2 baseado no Transformer e o YOLOX baseado na CNN sem âncoras. Esta comparação explora as suas diferenças arquitectónicas, métricas de desempenho e casos de utilização ideais para ajudar os programadores a escolher a ferramenta certa para as suas necessidades específicas.

Visão geral dos modelos

Antes de nos debruçarmos sobre as especificidades técnicas, vamos estabelecer as origens e as filosofias fundamentais destes dois modelos influentes.

RTDETRv2

O RTDETRv2 (Real-Time DEtection TRansformer versão 2) representa um passo significativo para levar as arquitecturas Transformer a aplicações em tempo real. Desenvolvido por investigadores da Baidu, baseia-se no RT-DETR original, introduzindo um "Bag-of-Freebies" que melhora a estabilidade e o desempenho da formação sem aumentar a latência da inferência. O seu objetivo é resolver o elevado custo computacional tipicamente associado aos Transformadores de Visão (ViTs), ao mesmo tempo que supera os detectores CNN tradicionais em termos de precisão.

Saiba mais sobre o RTDETRv2.

YOLOX

A YOLOX revitalizou a família YOLO em 2021, mudando para um mecanismo sem âncoras e incorporando técnicas avançadas como cabeças desacopladas e atribuição de etiquetas SimOTA. Embora mantenha a caraterística de backbone ao estilo Darknet da série YOLO , as suas mudanças arquitectónicas resolveram muitas limitações dos detectores baseados em âncoras, resultando num modelo altamente eficiente e flexível que funciona excecionalmente bem em dispositivos de ponta.

Saiba mais sobre o YOLOX.

Análise de Desempenho

Os compromissos de desempenho entre o RTDETRv2 e o YOLOX são distintos. O RTDETRv2 dá prioridade à precisão máximamAP), aproveitando os mecanismos de atenção global dos transformadores para compreender melhor cenas complexas e objectos oclusos. No entanto, isto implica maiores exigências computacionais, particularmente no que respeita à utilização de memória GPU .

Por outro lado, o YOLOX está optimizado para ser rápido e eficiente. O seu design sem âncoras simplifica a cabeça de deteção, reduzindo o número de parâmetros de design e acelerando o pós-processamentoNMS). Os modelos YOLOX, particularmente as variantes Nano e Tiny, são muitas vezes preferidos para implementações de IA de ponta onde os recursos de hardware são limitados.

A tabela abaixo destaca essas diferenças. Note-se que, embora o RTDETRv2 atinja pontuações mAP mais elevadas, o YOLOX-s proporciona velocidades de inferência mais rápidas no TensorRT, ilustrando a sua adequação a aplicações sensíveis à latência.

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
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

Arquitetura em profundidade

A compreensão das diferenças estruturais ajuda a esclarecer por que razão estes modelos têm desempenhos diferentes.

RTDETRv2: O codificador-descodificador híbrido

O RTDETRv2 aborda os estrangulamentos computacionais dos modelos DETR padrão, introduzindo um codificador híbrido eficiente. Este componente processa caraterísticas multi-escala, dissociando a interação intra-escala (dentro da mesma camada de caraterísticas) e a fusão inter-escala (entre camadas).

  • Seleção de consultasIoU: Em vez de selecionar consultas de objectos estáticas, o RTDETRv2 seleciona um número fixo de caraterísticas de imagem para servir como consultas de objectos iniciais com base nas suas pontuações de classificação, melhorando a inicialização.
  • Descodificador flexível: O descodificador suporta o ajuste dinâmico dos números de consulta durante a inferência, permitindo que os utilizadores troquem velocidade e precisão sem necessidade de reciclagem.

YOLOX: Sem âncoras e desacoplado

O YOLOX afasta-se do paradigma baseado em âncoras utilizado no YOLOv4 e no YOLOv5.

  • Sem âncoras: Ao prever diretamente os centros e os tamanhos dos objectos, o YOLOX elimina a necessidade de conceção manual de caixas de âncoras, reduzindo a complexidade da afinação de hiperparâmetros.
  • Cabeça desacoplada: Separa as tarefas de classificação e regressão em diferentes ramos da cabeça de rede. Esta separação conduz frequentemente a uma convergência mais rápida e a uma melhor precisão.
  • SimOTA: Uma estratégia avançada de atribuição de etiquetas que vê o processo de atribuição como um problema de transporte ótimo, atribuindo dinamicamente amostras positivas a verdades fundamentais com base num custo de otimização global.

Baseado em âncora vs. Sem âncora

Os detectores tradicionais utilizam caixas pré-definidas (âncoras) para estimar a localização dos objectos. O YOLOX elimina esta dependência, simplificando a arquitetura e tornando o modelo mais robusto a formas variadas de objectos. O RTDETRv2, sendo um transformador, utiliza consultas de objectos em vez de âncoras, aprendendo a atender às regiões relevantes da imagem de forma dinâmica.

Forças e Fraquezas

RTDETRv2

  • Forças:
    • Elevada exatidão: alcança mAP topo de gama nos parâmetros de referência COCO .
    • Contexto global: Os mecanismos de atenção transformadora captam eficazmente as dependências de longo alcance.
    • Adaptabilidade: A seleção ajustável da consulta permite flexibilidade no momento da inferência.
  • Fraquezas:
    • Intensivo em termos de recursos: Requer uma memória GPU significativa para formação e inferência, em comparação com as CNNs.
    • Treinamento mais lento: Os transformadores geralmente demoram mais tempo a convergir do que as arquitecturas baseadas em CNN.

YOLOX

  • Forças:
    • Velocidade de inferência: Extremamente rápida, especialmente as variantes mais pequenas (Nano, Tiny, S).
    • Fácil de implantar: mais fácil de implantar em dispositivos de ponta e CPUS devido a menores FLOPs e contagens de parâmetros.
    • Simplicidade: A conceção sem ancoragem reduz a complexidade da engenharia.
  • Fraquezas:
    • Precisão de pico mais baixa: Tem dificuldade em igualar a precisão de topo de modelos de transformadores grandes como o RTDETRv2-x.
    • Evolução das caraterísticas: Não possui algumas das capacidades multimodais encontradas em estruturas mais recentes.

A Vantagem Ultralytics: Por que escolher YOLO11?

Embora o RTDETRv2 e o YOLOX sejam modelos formidáveis, o Ultralytics YOLO liderado pelo modelo de ponta YOLO11-oferece uma solução abrangente que muitas vezes supera as vantagens dos modelos individuais.

  • Equilíbrio de desempenho: YOLO11 foi concebido para proporcionar um equilíbrio ótimo entre velocidade e precisão. Frequentemente, iguala ou excede a precisão dos modelos baseados em transformadores, mantendo a velocidade de inferência caraterística da família YOLO .
  • Facilidade de uso: Ultralytics dá prioridade à experiência do programador. Com uma APIPython e uma CLI unificadas, é possível treinar, validar e implantar modelos com apenas algumas linhas de código.
  • Eficiência de memória: Ao contrário do RTDETRv2, que pode ser pesado na VRAM GPU , YOLO11 é altamente eficiente em termos de memória durante o treino e a inferência. Isto torna-o acessível a investigadores e programadores com hardware de nível de consumidor.
  • Ecossistema bem mantido: Os modelos Ultralytics são apoiados por actualizações frequentes, uma comunidade vibrante e documentação extensa. Recursos como o Ultralytics HUB facilitam o gerenciamento de modelos e o treinamento na nuvem.
  • Versatilidade: Para além da simples deteção de objectos, YOLO11 suporta nativamente a segmentação de instâncias, a estimativa de pose, o OBB e a classificação, enquanto o YOLOX e o RTDETRv2 se concentram principalmente na deteção.
  • Eficiência de treinamento: Com pesos pré-treinados disponíveis para várias tarefas e capacidades sofisticadas de aprendizagem por transferência, YOLO11 reduz drasticamente o tempo e a energia necessários para treinar modelos de alto desempenho.

Saiba mais sobre o YOLO11.

Exemplo de código

Ultralytics torna incrivelmente fácil a utilização destes modelos avançados. Abaixo está um exemplo de como executar a inferência utilizando o YOLO11 e, nomeadamente, Ultralytics também suporta diretamente RT-DETR , simplificando significativamente a sua utilização em comparação com o repositório original.

from ultralytics import RTDETR, YOLO

# Load the Ultralytics YOLO11 model (Recommended)
model_yolo = YOLO("yolo11n.pt")

# Run inference on an image
results_yolo = model_yolo("path/to/image.jpg")

# Load an RT-DETR model via Ultralytics API
model_rtdetr = RTDETR("rtdetr-l.pt")

# Run inference with RT-DETR
results_rtdetr = model_rtdetr("path/to/image.jpg")

Conclusão

A escolha entre RTDETRv2 e YOLOX depende, em última análise, das suas limitações específicas.

  • Escolha o RTDETRv2 se a sua aplicação exigir a mais elevada precisão absoluta, como na investigação académica ou na inspeção industrial de alta precisão, e se tiver acesso a poderosos recursos GPU .
  • Escolha YOLOX se estiver a implementar em ambientes com recursos limitados, como Raspberry Pi ou dispositivos móveis, onde cada milissegundo de latência conta.

No entanto, para a grande maioria das aplicações do mundo real, Ultralytics YOLO11 surge como a melhor escolha em todos os aspetos. Ele combina os benefícios de precisão das arquiteturas modernas com a velocidade e a eficiência das CNNs, tudo em um ecossistema fácil de usar e pronto para produção. Quer esteja a construir para a borda ou para a nuvem, YOLO11 fornece as ferramentas e o desempenho para ter sucesso.

Explore Outras Comparações

Para informar ainda mais sua decisão, considere explorar outras comparações de modelos:


Comentários