Ultralytics YOLO27:

YOLOv7 vs YOLOv10#

O campo da visão computacional testemunhou avanços notáveis nos últimos anos, com a família de modelos YOLO (Olha Uma Só Vez) liderando a evolução da deteção de objetos em tempo real. Escolher a arquitetura certa para os teus projetos de visão computacional exige uma compreensão profunda das opções disponíveis. Nesta comparação técnica abrangente, vamos explorar as principais diferenças entre duas arquiteturas de referência: YOLOv7 e YOLOv10.

Introdução aos modelos#

Ambos os modelos representam marcos significativos na história da inteligência artificial, mas seguem abordagens fundamentalmente diferentes para resolver os desafios da deteção de objetos.

YOLOv7: O Pioneiro da Bag of Freebies#

Lançado em 6 de julho de 2022 pelos investigadores Chien-Yao Wang, Alexey Bochkovskiy e Hong-Yuan Mark Liao do Institute of Information Science, Academia Sinica, o YOLOv7 introduziu uma mudança de paradigma na forma como as redes neuronais são otimizadas. A investigação original, detalhada no seu artigo académico e disponibilizada no seu repositório oficial do GitHub, centrou-se fortemente na reparametrização arquitetural e num "bag-of-freebies" treinável.

O YOLOv7 utiliza uma rede eficiente de agregação de camadas (E-ELAN) estendida para orientar a rede na aprendizagem de funcionalidades diversificadas sem destruir o caminho do gradiente original. Isto torna-o uma opção robusta para benchmarks de investigação académica e sistemas fortemente dependentes de GPUs topo de gama convencionais.

Saber mais sobre o YOLOv7

YOLOv10: Deteção em tempo real de ponta a ponta#

Desenvolvido por Ao Wang e pela sua equipa na Tsinghua University, o YOLOv10 foi lançado em 23 de maio de 2024. Conforme detalhado na sua publicação no arXiv e no repositório do GitHub da Tsinghua, este modelo elimina um gargalo persistente na deteção de objetos: a supressão não máxima (NMS).

O YOLOv10 introduziu atribuições duplas consistentes para treino sem NMS, alterando fundamentalmente o pipeline de pós-processamento. Ao aplicar uma estratégia holística de conceção de modelos orientada pela eficiência e pela precisão, o YOLOv10 reduz a redundância computacional. Isto resulta numa arquitetura especialmente adaptada a dispositivos de edge computing que exigem latência extremamente baixa.

Saiba mais sobre o YOLOv10

Arquitetura sem NMS

A remoção da supressão não máxima (NMS) no YOLOv10 permite exportar o modelo inteiro como um único grafo computacional. Isto simplifica significativamente a implementação com runtimes como o TensorRT ou o OpenVINO.

Comparação de desempenho e métricas#

Ao analisar o desempenho dos modelos, é crucial avaliar os compromissos entre precisão, velocidade e custo computacional. A tabela seguinte mostra como os diferentes tamanhos destes modelos se comparam entre si.

Modelotamanho
(píxeis)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

Análise dos compromissos#

As métricas acima revelam uma clara diferença geracional. Embora o YOLOv7x alcance um mAPval muito forte de 53,1%, requer 71,3M de parâmetros e 189,9B FLOPs. Em contraste, o YOLOv10l supera essa precisão (53,3% de mAP) necessitando de menos de metade dos parâmetros (29,5M) e de significativamente menos FLOPs (120,3B). Além disso, o YOLOv10n altamente otimizado proporciona uma velocidade de inferência impressionante de 1,56 ms, tornando-o ideal para análise de vídeo em tempo real e aplicações móveis.

Casos de utilização no mundo real#

As diferenças arquiteturais entre estes modelos determinam os seus casos de utilização ideais.

Quando utilizar o YOLOv7#

Graças à sua rica representação de características, o YOLOv7 destaca-se em ambientes altamente complexos. Casos de utilização como a monitorização do fluxo de trânsito em zonas urbanas densas, a análise de imagens de satélite ou a identificação de defeitos em automação industrial beneficiam da sua robusta reparametrização estrutural. Também é amplamente preferido em ambientes legados já profundamente integrados com pipelines específicos de PyTorch 1.12.

Quando utilizar o YOLOv10#

O design leve e sem NMS do YOLOv10 destaca-se em ambientes com recursos limitados. É altamente recomendado para dispositivos de edge computing, como o NVIDIA Jetson Nano ou o Raspberry Pi. O seu desempenho de baixa latência torna-o perfeito para aplicações rápidas, como análise desportiva, navegação autónoma de drones e triagem robótica de alta velocidade em tapetes transportadores.

A vantagem do ecossistema Ultralytics#

Embora ambos os modelos tenham raízes académicas sólidas, o seu verdadeiro potencial é desbloqueado quando utilizados na Ultralytics Platform unificada. Desenvolver modelos de visão computacional de raiz é notoriamente difícil, mas o ecossistema Ultralytics proporciona uma experiência incomparável para engenheiros de machine learning.

  • Facilidade de utilização: A API Python da Ultralytics fornece uma interface unificada. Podes treinar, validar e exportar modelos com apenas algumas linhas de código, evitando os complexos problemas de dependências associados aos repositórios académicos típicos.
  • Ecossistema bem mantido: A Ultralytics garante que o código subjacente está em desenvolvimento ativo. Os utilizadores beneficiam de integrações perfeitas com ferramentas populares de ML, como o Weights & Biases para registo de dados ou o Hugging Face para demonstrações web rápidas.
  • Requisitos de memória: Os detetores de objetos baseados em Transformer consomem frequentemente grandes quantidades de memória CUDA durante o treino. Em contraste, os modelos YOLO da Ultralytics requerem muito menos memória, permitindo utilizar tamanhos de batch muito maiores em hardware de consumo.
  • Versatilidade: O pipeline da Ultralytics não está limitado às bounding boxes convencionais. Suporta de forma integrada estimativa de pose, segmentação de instâncias e bounding boxes orientadas em famílias de modelos compatíveis, como YOLO11 e YOLOv8.

Exemplo de treino simplificado#

Executar um pipeline de treino com a Ultralytics é extremamente simples. Quer utilizes a robustez histórica do YOLOv7, quer a velocidade sem NMS do YOLOv10, a sintaxe mantém-se consistente:

from ultralytics import YOLO

# Load the preferred model (e.g., YOLOv10 Nano)
model = YOLO("yolov10n.pt")

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

# Run an inference prediction on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")

# Export to an edge-friendly format like ONNX
model.export(format="onnx")

Casos de uso e recomendações#

A escolha entre YOLOv7 e YOLOv10 depende dos requisitos específicos do teu projeto, das restrições de implementação e das preferências relativamente ao ecossistema.

Quando escolher o YOLOv7#

O YOLOv7 é uma opção sólida para:

  • Avaliação comparativa académica: Reproduzir resultados do estado da arte de 2022 ou estudar os efeitos do E-ELAN e das técnicas de conjunto treinável de ofertas gratuitas.
  • Investigação sobre reparametrização: Investigar convoluções reparametrizadas planeadas e estratégias de escalabilidade composta de modelos.
  • Pipelines personalizados existentes: Projetos com pipelines altamente personalizados construídos em torno da arquitetura específica do YOLOv7 que não podem ser facilmente refatorizados.

Quando escolher o YOLOv10#

O YOLOv10 é recomendado para:

  • Detecção em tempo real sem NMS: Aplicações que se beneficiam da detecção de ponta a ponta sem Supressão de Não-Máximos, reduzindo a complexidade da implantação.
  • Equilíbrio entre velocidade e precisão: Projetos que exigem um equilíbrio sólido entre velocidade de inferência e precisão de detecção em diferentes escalas de modelo.
  • Aplicações com latência consistente: Cenários de implantação nos quais tempos de inferência previsíveis são essenciais, como em robótica ou sistemas autônomos.

Quando escolher Ultralytics (YOLO26)#

Para a maioria dos projetos novos, o Ultralytics YOLO26 oferece a melhor combinação de desempenho e experiência de desenvolvimento:

  • Implantação em dispositivos de borda sem NMS: Aplicações que exigem inferência consistente e de baixa latência sem a complexidade do pós-processamento de Supressão de Não-Máximos.
  • Ambientes que usam apenas CPU: Dispositivos sem aceleração dedicada por GPU, nos quais a inferência em CPU até 43% mais rápida do YOLO26 oferece uma vantagem decisiva.
  • Detecção de objetos pequenos: Cenários desafiadores, como imagens aéreas capturadas por drones ou análise de sensores de IoT, nos quais ProgLoss e STAL aumentam significativamente a precisão em objetos minúsculos.

O futuro: apresentação do YOLO26#

Embora o YOLOv7 e o YOLOv10 sejam marcos impressionantes, a fronteira da IA está sempre a avançar. Lançado em janeiro de 2026, o Ultralytics YOLO26 é o novo padrão indiscutível de eficiência e precisão em todos os cenários de implementação na edge e na cloud.

Se estás a iniciar hoje um novo projeto de visão computacional, o YOLO26 é a arquitetura recomendada. Baseia-se no legado dos seus antecessores ao incorporar várias inovações revolucionárias:

  • Design de ponta a ponta sem NMS: Inspirado no YOLOv10, o YOLO26 elimina nativamente o pós-processamento NMS, garantindo inferência de latência ultrabaixa para robótica determinística em tempo real.
  • Até 43% mais rápido na inferência em CPU: Ao remover estrategicamente o módulo Distribution Focal Loss (DFL), o YOLO26 acelera significativamente a execução em hardware de edge computing sem GPU, tornando-se uma solução poderosa para dispositivos IoT.
  • Otimizador MuSGD: Inspirado em inovações recentes no treino de modelos de linguagem de grande escala, o YOLO26 incorpora uma combinação híbrida de SGD e Muon, estabilizando os percursos de treino e garantindo uma convergência mais rápida.
  • ProgLoss + STAL: Estas funções de perda avançadas proporcionam melhorias significativas no reconhecimento de objetos pequenos, superando uma limitação histórica das gerações anteriores do YOLO.
  • Versatilidade incomparável: O YOLO26 inclui otimizações nativas específicas para cada tarefa, como Residual Log-Likelihood Estimation (RLE) para seguimento de poses e funções de perda angular especializadas para uma deteção precisa de OBB em imagens aéreas.

Para engenheiros que procuram o equilíbrio ideal entre velocidade, precisão e simplicidade de implementação, a transição de modelos legados para o YOLO26 proporciona uma vantagem competitiva imediata e mensurável.

Contribuidores

Comentários