Ultralytics YOLO27:

YOLOv8 vs DAMO-YOLO#

O panorama da visão computacional está em constante evolução, com novas arquiteturas a ultrapassarem os limites do que é possível em dispositivos de edge e em grandes clusters na cloud. Nesta análise técnica aprofundada, comparamos dois modelos proeminentes de deteção de objetos em tempo real: YOLOv8 e DAMO-YOLO. Ao examinarem as suas arquiteturas, métricas de desempenho e metodologias de treino, os engenheiros de ML podem tomar decisões informadas para os seus pipelines de implementação.

Contexto e origens dos modelos#

Ambos os modelos foram introduzidos aproximadamente ao mesmo tempo, mas resultam de filosofias de design e objetivos de investigação diferentes.

Detalhes do YOLOv8#

Detalhes do DAMO-YOLO#

Learn more about DAMO-YOLO

Inovações arquiteturais#

YOLOv8: Design versátil sem âncoras#

Ultralytics YOLOv8 introduziu melhorias significativas em relação aos seus predecessores, consolidando o seu estatuto como um modelo de vanguarda altamente fiável. Inclui uma cabeça de deteção sem âncoras, que reduz o número de previsões de caixas e acelera a inferência. A arquitetura utiliza uma cabeça desacoplada, separando as tarefas de objetividade, classificação e regressão, o que conduz a previsões mais precisas das caixas delimitadoras.

Além disso, o YOLOv8 implementa a Distribution Focal Loss (DFL) juntamente com a loss CIoU, melhorando a capacidade do modelo para localizar com precisão os limites dos objetos, especialmente no caso de alvos mais pequenos ou ocluídos. O seu backbone simplificado está altamente otimizado para execução tanto em GPU como em CPU.

DAMO-YOLO: Orientado pela pesquisa de arquiteturas#

O DAMO-YOLO adota uma abordagem diferente, baseando-se fortemente na Pesquisa de Arquiteturas Neuronais (NAS) para conceber automaticamente o seu backbone. A equipa da Alibaba introduziu o "MAE-NAS" para encontrar estruturas que ofereçam compromissos ideais entre latência e precisão, especificamente sob aceleração TensorRT.

O modelo incorpora uma RepGFPN (Rede Generalizada de Pirâmide de Funcionalidades Reparametrizada) para uma fusão eficiente de funcionalidades e um design "ZeroHead" para minimizar a carga computacional da cabeça de deteção. Durante o treino, utiliza o AlignedOTA para a atribuição de etiquetas e depende fortemente de um processo complexo de destilação de conhecimento, que requer um modelo professor maior para supervisionar o modelo aluno alvo.

Complexidade do treino

Embora o DAMO-YOLO alcance métricas de latência impressionantes através de NAS e destilação, isso requer significativamente mais memória CUDA e tempo de computação durante o treino, em comparação com o pipeline de treino de fase única altamente otimizado do YOLOv8.

Desempenho e métricas#

Ao implementar modelos de visão computacional em produção, é fundamental equilibrar a precisão (mAP) com a velocidade de inferência. A tabela abaixo ilustra o desempenho de ambos os modelos em vários tamanhos.

Modelotamanho
(píxeis)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

O YOLOv8 demonstra um equilíbrio de desempenho excecional. O modelo YOLOv8n (nano) requer apenas 3,2 milhões de parâmetros, em comparação com os 8,5 milhões do DAMO-YOLOt, tornando-o muito superior para dispositivos móveis ou ambientes com requisitos rigorosos de memória. Além disso, o YOLOv8 oferece uma gama mais ampla de tamanhos, escalando até ao YOLOv8x altamente preciso para cargas de trabalho baseadas na cloud.

Experiência do programador e ecossistema#

Facilidade de utilização e eficiência de treino#

Um dos maiores fatores de diferenciação é a experiência do utilizador. O ecossistema Ultralytics foi concebido para aumentar a velocidade de desenvolvimento. O treino de um modelo YOLOv8 personalizado requer muito pouca memória e pode ser executado através de uma API Python unificada ou de uma interface de linha de comandos.

Por outro lado, reproduzir o treino do DAMO-YOLO melhorado por destilação exige frequentemente navegar por ficheiros de configuração complexos e gerir o acompanhamento de experiências professor-aluno em várias fases.

Eis um exemplo de como é simples treinar, validar e exportar o YOLOv8 utilizando Python:

from ultralytics import YOLO

# Load a pre-trained YOLOv8 nano model
model = YOLO("yolov8n.pt")

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

# Export the trained model to ONNX format
path = model.export(format="onnx")

Versatilidade em tarefas de visão#

O DAMO-YOLO foi desenvolvido estritamente para a deteção de objetos através de caixas delimitadoras. Em contrapartida, a arquitetura YOLOv8 suporta nativamente várias tarefas. Trocando simplesmente os pesos do modelo, os programadores podem realizar Segmentação de instâncias, Classificação de imagens e Estimativa de pose sem alterar a base de código de implementação subjacente. Esta versatilidade torna os modelos Ultralytics muito mais práticos para aplicações complexas.

Casos de utilização no mundo real#

Quando utilizar o YOLOv8#

A combinação de velocidade, precisão e facilidade de implementação do YOLOv8 torna-o ideal para:

  • Análise inteligente do retalho: Realizar rastreamento de objetos para monitorizar o comportamento dos clientes ou automatizar verificações de inventário.
  • Robótica agrícola: Tirar partido do seu forte desempenho em hardware variado para identificar culturas ou pragas em tempo real.
  • Diagnóstico na área da saúde: Utilizar a segmentação de instâncias para mapear anomalias em imagens médicas de forma rápida e precisa.
  • Implementações em edge: A integração perfeita com formatos de exportação como OpenVINO e CoreML permite que o YOLOv8 se destaque em dispositivos com recursos limitados.

Quando utilizar o DAMO-YOLO#

O DAMO-YOLO pode ser útil em cenários específicos, nomeadamente:

  • Pesquisa Acadêmica em NAS: Para equipes que estudam reparametrização ou metodologias de design de arquitetura automatizada.
  • Pipelines estritamente limitados pela GPU: Aplicações executadas exclusivamente em hardware NVIDIA específico, nas quais as estruturas NAS foram fortemente otimizadas para os limites de execução do TensorRT.

Casos de uso e recomendações#

A escolha entre YOLOv8 e DAMO-YOLO depende dos requisitos específicos do teu projeto, das restrições de implementação e das tuas preferências de ecossistema.

Quando escolher o YOLOv8#

O YOLOv8 é uma escolha sólida para:

  • Implementação versátil multitarefa: Projetos que exigem um modelo comprovado para deteção, segmentação, classificação e estimativa de pose no ecossistema Ultralytics.
  • Sistemas de produção consolidados: Ambientes de produção existentes já desenvolvidos com base na arquitetura YOLOv8, com pipelines de implementação estáveis e exaustivamente testados.
  • Amplo suporte da comunidade e do ecossistema: Aplicações que beneficiam dos extensos tutoriais do YOLOv8, de integrações de terceiros e de recursos ativos da comunidade.

Quando escolher o DAMO-YOLO#

O DAMO-YOLO é recomendado para:

  • Análise de vídeo de elevado débito: Processamento de streams de vídeo com FPS elevado em infraestruturas GPU NVIDIA fixas, nas quais o débito com batch-1 é a principal métrica.
  • Linhas de fabrico industrial: Cenários com restrições rigorosas de latência GPU em hardware dedicado, como a inspeção de qualidade em tempo real em linhas de montagem.
  • Investigação sobre pesquisa de arquitetura neural: Estudo dos efeitos da pesquisa automatizada de arquiteturas (MAE-NAS) e de backbones eficientemente reparametrizados no desempenho da deteção.

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: modelos Ultralytics mais recentes#

Embora o YOLOv8 continue a ser um modelo de trabalho altamente fiável, o campo da visão computacional evolui rapidamente. Os utilizadores também devem considerar explorar gerações mais recentes:

YOLO26: A geração mais recente, o Ultralytics YOLO26, representa uma mudança de paradigma. Introduz um Design nativamente End-to-End sem NMS, eliminando completamente os estrangulamentos de latência associados ao pós-processamento de Supressão Não Máxima. Alimentado pelo novo Otimizador MuSGD (um híbrido de SGD e Muon) e pelas funções de loss especializadas ProgLoss + STAL, o YOLO26 alcança um treino extraordinariamente estável e uma melhoria significativa no reconhecimento de objetos pequenos. Com a Remoção de DFL (Distribution Focal Loss removida para simplificar a exportação e melhorar a compatibilidade com dispositivos de edge e de baixo consumo), os ajustes arquiteturais proporcionam uma Inferência em CPU até 43% mais rápida em comparação com as gerações anteriores, tornando-o a escolha definitiva para a computação de edge moderna.

YOLO11: Outra excelente alternativa, o Ultralytics YOLO11 oferece melhorias arquiteturais incrementais em relação ao YOLOv8 e continua a ser um modelo robusto e amplamente adotado pela comunidade.

Simplifica o teu fluxo de trabalho

Queres levar os teus modelos do protótipo à produção? Utiliza a Plataforma Ultralytics para anotar conjuntos de dados automaticamente, acompanhar experiências e implementar modelos de forma simples na cloud ou em dispositivos de edge.

Em conclusão, embora o DAMO-YOLO ofereça perspetivas académicas interessantes sobre a pesquisa de arquiteturas, os modelos Ultralytics proporcionam um ecossistema significativamente mais maduro, versátil e orientado para programadores. Quer optes pela estabilidade comprovada do YOLOv8, quer atualizes para a arquitetura sem NMS extremamente rápida do YOLO26, o conjunto Ultralytics continua a ser a escolha de referência para IA de visão em tempo real.

Comentários