Ir para o conteúdo

YOLO vs. YOLOv7: Uma comparação técnica pormenorizada

A seleção da arquitetura ideal para a deteção de objectos é uma decisão fundamental no desenvolvimento da visão por computador. A escolha necessita frequentemente de equilibrar a latência da inferência com a precisão da deteção, tendo em conta as restrições de hardware de implementação. Esta comparação técnica examina o YOLO e YOLOv7, dois modelos influentes lançados em 2022 que ultrapassaram os limites da deteção em tempo real. Analisamos suas inovações arquitetônicas, desempenho de benchmark e cenários de aplicativos ideais para ajudá-lo a navegar em seu processo de seleção de modelo.

YOLO: Pesquisa de Arquitetura Neural para Eficiência de Borda

O YOLO foi desenvolvido pelo Grupo Alibaba com o objetivo específico de maximizar o desempenho das aplicações industriais. Distingue-se por incorporar a Pesquisa de Arquitetura Neural (NAS) para automatizar a conceção da sua espinha dorsal, garantindo uma eficiência óptima.

Inovações arquitectónicas

A YOLO introduz várias tecnologias de ponta com o objetivo de reduzir a sobrecarga computacional, mantendo uma elevada precisão:

  1. Backbone MAE-NAS (GiraffeNet): Ao contrário dos backbones tradicionais concebidos manualmente, o YOLO utiliza uma abordagem NAS de Eficiência Consciente do Método (MAE). O resultado é uma série de backbones denominada GiraffeNet, que oferece uma relação superior entre operações de ponto flutuante (FLOPs) e latência sob várias restrições de hardware.
  2. RepGFPN eficiente: O modelo apresenta uma Rede de Pirâmide de Caraterísticas Generalizadas (GFPN) optimizada com re-parametrização. Esta "RepGFPN" permite uma fusão eficiente de caraterísticas em várias escalas, essencial para a deteção de objectos de diferentes tamanhos sem o elevado custo computacional associado às FPNs padrão.
  3. ZeroHead: Um novo design "ZeroHead" simplifica significativamente a cabeça de deteção. Ao dissociar as tarefas de classificação e regressão e ao remover a camada específica complexa, reduz a contagem de parâmetros da cabeça a zero durante a inferência, poupando memória e aumentando a velocidade.
  4. AlignedOTA: Para melhorar a estabilidade e a precisão do treino, o YOLO utiliza o AlignedOTA, uma estratégia dinâmica de atribuição de etiquetas que resolve o problema do desalinhamento entre a confiança da classificação e a precisão da regressão.

Pontos fortes e casos de utilização

O YOLO destaca-se em ambientes onde a latência é crítica. As suas variantes mais pequenas (Tiny/Small) são particularmente eficazes para implementações de IA de ponta.

  • Automação industrial: Ideal para linhas de montagem de alta velocidade onde os milissegundos contam.
  • Aplicações móveis: A baixa contagem de parâmetros torna-o adequado para ser executado em smartphones com potência de computação limitada.

Saiba mais sobre o DAMO-YOLO.

YOLOv7: otimizar a precisão em tempo real

YOLOv7, lançado pouco antes do YOLO, estabeleceu uma nova referência para o desempenho topo de gama na gama de 5 FPS a 160 FPS. Concentrou-se fortemente na otimização do processo de formação e do fluxo de gradiente para alcançar uma maior precisão sem aumentar os custos de inferência.

Inovações arquitectónicas

YOLOv7 introduziu métodos "bag-of-freebies" que melhoram a precisão durante o treino sem afetar a estrutura do modelo de inferência:

  1. E-ELAN (Extended Efficient Layer Aggregation Network): Esta arquitetura controla os caminhos gradientes mais curtos e mais longos, permitindo que a rede aprenda caraterísticas mais diversas. Melhora a capacidade de aprendizagem da "cardinalidade" sem destruir o estado original do caminho do gradiente.
  2. Escalonamento de modelos para modelos baseados em concatenação: YOLOv7 propõe um método de dimensionamento composto que dimensiona a profundidade e a largura simultaneamente para arquitecturas baseadas em concatenação, assegurando uma utilização óptima dos parâmetros.
  3. Saco de brindes treinável: São utilizadas técnicas como a re-parametrização planeada e a supervisão auxiliar da cabeça (grosseira a fina). Estas melhoram a robustez e a precisão do modelo durante o treino, mas são fundidas ou eliminadas durante a inferência, mantendo o modelo rápido.

Pontos fortes e casos de utilização

YOLOv7 é uma potência para a deteção de objectos de uso geral, oferecendo uma excelente precisão média (mAP) em conjuntos de dados padrão como o MS COCO.

  • Vigilância de cidades inteligentes: A sua elevada precisão torna-o fiável para a deteção de peões e veículos em ambientes urbanos complexos.
  • Sistemas autónomos: Adequado para robótica e drones que requerem uma deteção fiável a distâncias mais longas, onde as entradas de maior resolução são benéficas.

Saiba mais sobre o YOLOv7

Comparação de Desempenho

A tabela seguinte compara o desempenho do YOLO e do YOLOv7. Enquanto o YOLO consegue frequentemente uma latência mais baixa (maior velocidade) para o seu tamanho, YOLOv7 mantém geralmente uma forte reputação de exatidão, particularmente nas suas configurações maiores.

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
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
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Os dados ilustram que, para ambientes muito limitados, o YOLO oferece uma solução muito leve (8,5 milhões de parâmetros para a versão pequena). No entanto, YOLOv7 ultrapassa os limites da precisão com a sua variante X a atingir 53,1% de mAP, embora com custos computacionais mais elevados.

Soluções alternativas de arquitetura

Enquanto o backbone baseado em NAS do YOLO optimiza especificamente a latência, a conceção manual da arquitetura do YOLOv7 centra-se na eficiência do fluxo de gradiente. Os utilizadores devem comparar ambos no seu hardware específico, uma vez que os FLOPs teóricos nem sempre se correlacionam perfeitamente com a velocidade de inferência no mundo real.

A vantagem Ultralytics : Porquê atualizar?

Embora tanto o YOLO como YOLOv7 representem realizações significativas na história da visão por computador, o campo evolui rapidamente. Para os programadores que procuram as soluções mais robustas, versáteis e fáceis de utilizar, Ultralytics YOLO11 e YOLOv8 são as escolhas recomendadas.

Os modelos Ultralytics são concebidos não apenas como artefactos de investigação, mas como ferramentas de produção abrangentes. Abordam os problemas do "último quilómetro" na implementação da IA - utilização, integração e manutenção.

Principais vantagens dos modelos Ultralytics

  • Facilidade de uso: Com uma APIPython e CLI unificadas, pode treinar um modelo de última geração em poucas linhas de código. Não há necessidade de ajustar manualmente ficheiros de configuração complexos ou de se debater com dependências.
  • Ecossistema bem mantido: Ultralytics fornece um ecossistema próspero com actualizações frequentes, identificando e corrigindo bugs rapidamente. O suporte está prontamente disponível através de documentação extensa e canais activos da comunidade.
  • Equilíbrio de desempenho: Modelos como YOLO11 utilizam cabeças de deteção avançadas sem âncoras e espinhas dorsais optimizadas para alcançar rácios de precisão/velocidade superiores em comparação com o YOLOv7 e o YOLO.
  • Versatilidade: Ao contrário dos modelos mais antigos, muitas vezes limitados à deteção, Ultralytics YOLO suporta a segmentação de instâncias, a estimativa de pose, a deteção orientada de objectos (OBB) e a classificação imediata.
  • Eficiência de treinamento: Os pesos pré-treinados e os carregadores de dados optimizados garantem uma convergência mais rápida, poupando horas de GPU e energia.
from ultralytics import YOLO

# Load the latest YOLO11 model
model = YOLO("yolo11n.pt")

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

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

Saiba mais sobre o YOLO11.

Conclusão

O YOLO e YOLOv7 têm méritos distintos. O YOLO é um forte candidato para projectos em que a velocidade de inferência de extremidades é a principal restrição, tirando partido do NAS para reduzir os milissegundos. YOLOv7 continua a ser uma escolha sólida para investigadores que procuram uma deteção de elevada precisão com uma linhagem arquitetónica comprovada.

No entanto, para a maioria das aplicações comerciais e de investigação actuais, o Ultralytics YOLO oferece uma experiência superior. Ao combinar desempenho de última geração com facilidade de uso e versatilidade incomparáveis, os modelos Ultralytics permitem que os desenvolvedores se concentrem na criação de valor em vez de depurar código. Quer esteja a implementar num servidor cloud ou num dispositivo edge como o NVIDIA Jetson, Ultralytics fornece o caminho mais simplificado para a produção.

Outros Modelos

Se estiver a explorar arquitecturas de deteção de objectos, poderá também estar interessado nestes modelos:

  • Ultralytics YOLOv8: Um modelo altamente versátil que suporta tarefas de deteção, segmentação e pose.
  • Ultralytics YOLO11: A última evolução da série YOLO , oferecendo uma eficiência de ponta.
  • RT-DETR: Um detetor em tempo real baseado em transformador que evita atrasos NMS .
  • YOLOv9: Inclui informação de gradiente programável (PGI) para uma melhor aprendizagem.
  • YOLOv10: centra-se na formação de ponta a ponta NMS para reduzir a latência.

Comentários