Ir para o conteúdo

PP-YOLOE+ vs. YOLOv9: Uma comparação técnica

A seleção da arquitetura ideal para projectos de visão por computador requer a navegação num cenário de modelos em rápida evolução. Esta página apresenta uma comparação técnica pormenorizada entre o PP-YOLOE+ da Baidu e o YOLOv9da Baidu, dois sofisticados detectores de objectos de fase única. Analisamos as suas inovações arquitectónicas, métricas de desempenho e integração no ecossistema para o ajudar a tomar uma decisão informada. Embora ambos os modelos demonstrem altas capacidades, eles representam filosofias de design e dependências de estrutura distintas.

PP-YOLOE+: Alta Precisão Dentro do Ecossistema PaddlePaddle

O PP-YOLOE+ é uma versão evoluída do PP-YOLOE, desenvolvida pela Baidu como parte do conjunto PaddleDetection. Foi concebida para proporcionar um equilíbrio entre a precisão e a velocidade de inferência, especificamente optimizada para o PaddlePaddle especificamente optimizado para a estrutura de aprendizagem profunda do PaddlePaddle.

Autores: PaddlePaddle Authors
Organization:Baidu
Date: 2022-04-02
Arxiv:https://arxiv.org/abs/2203.16250
GitHubPaddlePaddle
Docs:PaddleDetection PP-YOLOE+ README

Arquitetura e Principais Características

O PP-YOLOE+ funciona como um detetor de fase única, sem âncoras. Baseia-se na espinha dorsal do CSPRepResNet e utiliza uma estratégia de Aprendizagem de Alinhamento de Tarefas (TAL) para melhorar o alinhamento entre as tarefas de classificação e localização. Uma caraterística fundamental é a Cabeça Alinhada por Tarefas Eficiente (ET-Head), que reduz a sobrecarga computacional, mantendo a precisão. O modelo utiliza uma função de perda varifocal para lidar com o desequilíbrio de classes durante o treino.

Forças e Fraquezas

A principal força do PP-YOLOE+ reside na sua otimização para a pilha de hardware e software da Baidu. Oferece modelos escaláveis (s, m, l, x) que têm um bom desempenho em benchmarks de deteção de objectos padrão.

No entanto, a sua forte dependência do ecossistema PaddlePaddle representa um obstáculo significativo para a comunidade de IA mais alargada, que favorece largamente o PyTorch. A migração de fluxos de trabalho existentes PyTorch para o PaddlePaddle pode consumir muitos recursos. Além disso, em comparação com as arquitecturas mais recentes, o PP-YOLOE+ requer mais parâmetros para atingir uma precisão semelhante, afectando o armazenamento e a memória em dispositivos limitados.

Saiba mais sobre o PP-YOLOE+.

YOLOv9: Informação de gradiente programável para uma aprendizagem melhorada

Ultralytics YOLOv9 introduz uma mudança de paradigma na deteção de objectos em tempo real ao resolver o problema do "estrangulamento da informação" inerente às redes neurais profundas.

Autores: Chien-Yao Wang e Hong-Yuan Mark Liao
Organização:Institute of Information Science, Academia Sinica, Taiwan
Data: 2024-02-21
Arxiv:https://arxiv.org/abs/2402.13616
GitHub:https://github.com/WongKinYiu/yolov9
Documentaçãoultralytics

Arquitetura e Principais Características

YOLOv9 integra dois conceitos inovadores: Programmable Gradient Information (PGI) e a Generalized Efficient Layer Aggregation Network (GELAN).

  • PGI: À medida que as redes se aprofundam, as informações dos dados de entrada são frequentemente perdidas durante o processo de alimentação. O PGI fornece um ramo de supervisão auxiliar que assegura a geração fiável de gradientes, permitindo que o modelo se "lembre" de caraterísticas cruciais para tarefas de rastreio e deteção de objectos sem adicionar custos de inferência.
  • GELAN: Esta conceção arquitetónica optimiza a eficiência dos parâmetros, permitindo que o modelo atinja uma maior precisão com menos recursos computacionais (FLOPs) em comparação com os backbones convencionais que utilizam a convolução em profundidade.

Sabia que?

A técnica PGI do YOLOv9 resolve o problema do estrangulamento da informação que anteriormente exigia métodos pesados de supervisão profunda. Isto resulta em modelos que são simultaneamente mais leves e mais precisos, melhorando significativamente o equilíbrio do desempenho.

Forças e Fraquezas

YOLOv9 destaca-se pela eficiência do treino e pela utilização de parâmetros. Obtém resultados topo de gama no conjunto de dadosCOCO , ultrapassando as iterações anteriores em termos de precisão, mantendo a velocidade em tempo real. A sua integração no ecossistema Ultralytics significa que beneficia de um ecossistema bem mantido, incluindo uma implementação simples através de modos de exportação para formatos como ONNX e TensorRT.

Uma consideração potencial é que as maiores variantesYOLOv9) requerem recursos significativos GPU para treinamento. No entanto, a pegada da memória de inferência mantém-se competitiva, evitando os elevados custos associados aos modelos baseados em transformadores.

Saiba mais sobre o YOLOv9

Análise comparativa do desempenho

Numa comparação direta, YOLOv9 demonstra uma eficiência superior. Por exemplo, o modelo YOLOv9 atinge um mAP mais elevado (53,0%) do que o PP-YOLOE+l (52,9%), utilizando aproximadamente metade dos parâmetros (25,3M vs 52,2M). Esta redução drástica do tamanho do modelo sem comprometer a precisão realça a eficácia da arquitetura GELAN.

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

A tabela ilustra que, para objectivos de precisão semelhantes, YOLOv9 requer consistentemente menos recursos computacionais. O modelo YOLOv9 vai mais longe, alcançando 55,6% de mAP, uma clara vantagem sobre a maior variante PP-YOLOE+.

A vantagem Ultralytics

Embora o PP-YOLOE+ seja um detetor capaz, a escolha do YOLOv9 através da estrutura Ultralytics oferece vantagens distintas em termos de facilidade de utilização e versatilidade.

Experiência do utilizador simplificada

Ultralytics prioriza uma experiência amigável ao desenvolvedor. Ao contrário dos complexos ficheiros de configuração frequentemente exigidos pelo PaddleDetection, os modelos Ultralytics podem ser carregados, treinados e implementados com apenas algumas linhas de código Python . Isso reduz significativamente a barreira de entrada para engenheiros e pesquisadores.

Versatilidade e ecossistema

Ultralytics suporta uma vasta gama de tarefas para além da simples deteção, incluindo a segmentação de instâncias, a estimativa de pose e a deteção de caixas delimitadoras orientadas (OBB). Essa versatilidade permite que os desenvolvedores enfrentem diversos desafios usando uma API única e unificada. Além disso, a comunidade ativa e as actualizações frequentes garantem que os utilizadores têm acesso às mais recentes optimizações e integrações com ferramentas como o TensorBoard e o MLflow.

Exemplo de código: Utilização do YOLOv9

O exemplo seguinte demonstra a facilidade com que pode efetuar inferência com o YOLOv9 utilizando a APIPython Ultralytics . Esta simplicidade contrasta com a configuração mais detalhada frequentemente necessária para o PP-YOLOE+.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

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

# Display results
results[0].show()

Casos de Uso Ideais

  • PP-YOLOE+: Mais adequado para equipas já profundamente integradas no ecossistema PaddlePaddle , ou para aplicações industriais antigas específicas em regiões onde o suporte de hardware PaddlePaddle é dominante.
  • YOLOv9: Ideal para aplicações que exigem a mais elevada relação precisão/eficiência, tais como veículos autónomos, análise de vídeo em tempo real e implantação de extremidades, em que os requisitos de memória e armazenamento são limitados.

Conclusão e Recomendações

Para a maioria dos programadores e organizações, YOLOv9 representa a escolha superior devido à sua arquitetura moderna (GELAN/PGI), à eficiência superior dos parâmetros e ao suporte robusto do ecossistema Ultralytics . Ele oferece uma solução preparada para o futuro com pesos pré-treinados prontamente disponíveis e recursos de exportação contínuos.

Se procura ainda mais versatilidade e rapidez, recomendamos que explore o YOLO11a mais recente iteração da série YOLO . YOLO11 aperfeiçoa ainda mais o equilíbrio entre desempenho e latência, oferecendo capacidades topo de gama para tarefas de deteção, segmentação e classificação num pacote compacto.

Para os interessados numa máquina de trabalho comprovada, YOLOv8 continua a ser uma opção altamente fiável com vastos recursos da comunidade e integrações de terceiros.


Comentários