Salta para o conte√ļdo

YOLOv7: Saco de brindes trein√°vel

O YOLOv7 √© um detetor de objectos em tempo real de √ļltima gera√ß√£o que ultrapassa todos os detectores de objectos conhecidos, tanto em termos de velocidade como de precis√£o, na gama de 5 FPS a 160 FPS. Tem a maior precis√£o (56,8% AP) entre todos os detectores de objectos em tempo real conhecidos com 30 FPS ou mais na GPU V100. Al√©m disso, o YOLOv7 supera outros detectores de objectos como o YOLOR, YOLOX, Scaled-YOLOv4, YOLOv5, e muitos outros em termos de velocidade e precis√£o. O modelo √© treinado no conjunto de dados MS COCO a partir do zero, sem utilizar quaisquer outros conjuntos de dados ou pesos pr√©-treinados. O c√≥digo-fonte do YOLOv7 est√° dispon√≠vel no GitHub.

Compara√ß√£o do YOLOv7 com os detectores de objectos SOTA Compara√ß√£o dos detectores de objectos mais avan√ßados. A partir dos resultados da Tabela 2, sabemos que o m√©todo proposto tem a melhor rela√ß√£o velocidade-precis√£o de forma abrangente. Se compararmos o YOLOv7-tiny-SiLU com o YOLOv5-N (r6.1), o nosso m√©todo √© 127 fps mais r√°pido e 10,7% mais preciso no AP. Al√©m disso, o YOLOv7 tem 51,4% de AP com uma taxa de fotogramas de 161 fps, enquanto o PPYOLOE-L com o mesmo AP tem apenas 78 fps de taxa de fotogramas. Em termos de utiliza√ß√£o de par√Ęmetros, o YOLOv7 √© 41% inferior ao PPYOLOE-L. Se compararmos o YOLOv7-X com uma velocidade de infer√™ncia de 114 fps com o YOLOv5-L (r6.1) com uma velocidade de infer√™ncia de 99 fps, o YOLOv7-X pode melhorar o PA em 3,9%. Se o YOLOv7-X for comparado com YOLOv5-X (r6.1) de escala semelhante, a velocidade de infer√™ncia do YOLOv7-X √© 31 fps mais r√°pida. Al√©m disso, em termos de quantidade de par√Ęmetros e de computa√ß√£o, o YOLOv7-X reduz 22% dos par√Ęmetros e 8% da computa√ß√£o em compara√ß√£o com o YOLOv5-X (r6.1), mas melhora o PA em 2,2% (Fonte).

Vis√£o geral

A dete√ß√£o de objectos em tempo real √© um componente importante em muitos sistemas de vis√£o por computador, incluindo o seguimento de v√°rios objectos, a condu√ß√£o aut√≥noma, a rob√≥tica e a an√°lise de imagens m√©dicas. Nos √ļltimos anos, o desenvolvimento da dete√ß√£o de objectos em tempo real tem-se centrado na conce√ß√£o de arquitecturas eficientes e na melhoria da velocidade de infer√™ncia de v√°rios CPUs, GPUs e unidades de processamento neural (NPUs). O YOLOv7 suporta GPU m√≥vel e dispositivos GPU, desde a borda at√© a nuvem.

Ao contrário dos detectores de objectos tradicionais em tempo real, que se concentram na otimização da arquitetura, o YOLOv7 concentra-se na otimização do processo de formação. Isto inclui módulos e métodos de otimização concebidos para melhorar a precisão da deteção de objectos sem aumentar o custo de inferência, um conceito conhecido como "trainable bag-of-freebies".

Características principais

O YOLOv7 apresenta v√°rias funcionalidades importantes:

  1. Re-parametriza√ß√£o do modelo: O YOLOv7 prop√Ķe um modelo re-parametrizado planeado, que √© uma estrat√©gia aplic√°vel a camadas em diferentes redes com o conceito de caminho de propaga√ß√£o de gradiente.

  2. Atribui√ß√£o din√Ęmica de etiquetas: O treino do modelo com v√°rias camadas de sa√≠da apresenta uma nova quest√£o: "Como atribuir alvos din√Ęmicos para as sa√≠das de diferentes ramos?" Para resolver este problema, o YOLOv7 introduz um novo m√©todo de atribui√ß√£o de r√≥tulos chamado atribui√ß√£o de r√≥tulos guiada por chumbo grosso a fino.

  3. Escala estendida e composta: O YOLOv7 prop√Ķe m√©todos de "extens√£o" e "escala composta" para o detetor de objectos em tempo real que podem utilizar eficazmente os par√Ęmetros e a computa√ß√£o.

  4. Efici√™ncia: O m√©todo proposto pelo YOLOv7 pode efetivamente reduzir cerca de 40% dos par√Ęmetros e 50% da computa√ß√£o do detetor de objectos em tempo real mais avan√ßado, e tem uma velocidade de infer√™ncia mais r√°pida e uma maior precis√£o de dete√ß√£o.

Exemplos de utilização

No momento em que este artigo foi escrito, Ultralytics n√£o suporta atualmente os modelos YOLOv7. Por conseguinte, qualquer utilizador interessado em utilizar o YOLOv7 ter√° de consultar diretamente o reposit√≥rio GitHub do YOLOv7 para obter instru√ß√Ķes de instala√ß√£o e utiliza√ß√£o.

Segue-se uma breve descrição dos passos típicos que poderás seguir para utilizar o YOLOv7:

  1. Visita o repositório GitHub do YOLOv7: https://github.com/WongKinYiu/yolov7.

  2. Segue as instru√ß√Ķes fornecidas no ficheiro README para a instala√ß√£o. Normalmente, isso envolve a clonagem do reposit√≥rio, a instala√ß√£o das depend√™ncias necess√°rias e a configura√ß√£o de quaisquer vari√°veis de ambiente necess√°rias.

  3. Quando a instala√ß√£o estiver conclu√≠da, podes treinar e utilizar o modelo de acordo com as instru√ß√Ķes de utiliza√ß√£o fornecidas no reposit√≥rio. Normalmente, isto envolve a prepara√ß√£o do conjunto de dados, a configura√ß√£o dos par√Ęmetros do modelo, o treino do modelo e, em seguida, a utiliza√ß√£o do modelo treinado para efetuar a dete√ß√£o de objectos.

Tem em aten√ß√£o que os passos espec√≠ficos podem variar consoante o teu caso de utiliza√ß√£o espec√≠fico e o estado atual do reposit√≥rio YOLOv7. Por isso, recomenda-se vivamente que consultes diretamente as instru√ß√Ķes fornecidas no reposit√≥rio GitHub do YOLOv7.

Lamentamos qualquer inconveniente que isto possa causar e esforçar-nos-emos por atualizar este documento com exemplos de utilização para Ultralytics assim que o suporte para YOLOv7 for implementado.

Cita√ß√Ķes e agradecimentos

Gostar√≠amos de agradecer aos autores do YOLOv7 pelas suas contribui√ß√Ķes significativas no dom√≠nio da dete√ß√£o de objectos em tempo real:

@article{wang2022yolov7,
  title={{YOLOv7}: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors},
  author={Wang, Chien-Yao and Bochkovskiy, Alexey and Liao, Hong-Yuan Mark},
  journal={arXiv preprint arXiv:2207.02696},
  year={2022}
}

O artigo original do YOLOv7 pode ser encontrado no arXiv. Os autores tornaram o seu trabalho publicamente disponível e a base de código pode ser acedida no GitHub. Agradecemos os seus esforços para fazer avançar o campo e tornar o seu trabalho acessível à comunidade em geral.



Criado em 2023-11-12, Atualizado em 2024-01-07
Autores: glenn-jocher (5), sergiuwaxmann (1)

Coment√°rios