YOLOv5 vs. PP-YOLOE+: Uma comparação técnica para a deteção de objectos
A seleção do modelo de deteção de objectos ideal é uma decisão fundamental que tem impacto na eficiência, precisão e escalabilidade dos projectos de visão por computador. Este guia abrangente compara Ultralytics YOLOv5um modelo lendário conhecido pela sua usabilidade e velocidade, contra o PP-YOLOE+, um modelo de alta precisão do ecossistema PaddlePaddle da Baidu. Ao analisar as suas arquitecturas, métricas de desempenho e fluxos de trabalho de implementação, pretendemos ajudar os programadores e investigadores a escolher a melhor solução para as suas necessidades específicas.
Ultralytics YOLOv5: O padrão de usabilidade e velocidade
YOLOv5, lançado pela Ultralytics em 2020, mudou fundamentalmente o cenário da IA de visão, tornando a deteção de objetos de última geração acessível a todos. Ao contrário de seus antecessores, foi o primeiro modelo YOLO implementado nativamente no PyTorchsimplificando o processo de treinamento e implantação para a comunidade global de ciência de dados. A sua filosofia de conceção dá prioridade a um equilíbrio entre a velocidade de inferência em tempo real e a elevada precisão, num ecossistema incrivelmente fácil de utilizar.
Autores: Glenn Jocher
Organização:Ultralytics
Data: 2020-06-26
GitHubyolov5
Docsyolov5
Principais pontos fortes
- Facilidade de utilização: YOLOv5 é conhecido pela sua experiência "out-of-the-box". Com uma APIPython simplificada e comandosCLI intuitivos, os programadores podem começar a treinar em conjuntos de dados personalizados em minutos.
- Ecossistema bem mantido: Apoiado pela Ultralytics, beneficia de actualizações frequentes e de uma comunidade maciça e ativa. Isto garante um suporte a longo prazo e uma riqueza de conhecimentos partilhados em plataformas como o GitHub Issues.
- Equilíbrio de desempenho: Proporciona velocidades de inferência em tempo real excepcionais, particularmente em dispositivos de ponta como o Raspberry Pi, sem sacrificar uma precisão significativa.
- Versatilidade: Para além da deteção padrão, YOLOv5 suporta a segmentação de instâncias e a classificação de imagens, tornando-o uma ferramenta flexível para diversas tarefas de visão.
PP-YOLOE+: Elevada precisão no ecossistema de pás
O PP-YOLOE+ é uma evolução da série YOLO , desenvolvida por investigadores da Baidu. Lançado em 2022, serve como um modelo emblemático dentro do kit de ferramentas PaddleDetection. Ele adota uma arquitetura sem âncoras e estratégias de treinamento avançadas para ultrapassar os limites da precisão em conjuntos de dados de referência como COCO.
Autores: PaddlePaddle Autores
Organização:Baidu
Data: 2022-04-02
ArXiv:https://arxiv.org/abs/2203.16250
GitHubPaddlePaddle
DocsPaddlePaddle
Arquitetura e Funcionalidades
O PP-YOLOE+ utiliza um backbone CSPRepResNet e uma cabeça de deteção sem protótipos única. Sendo um detetor sem âncoras, reduz a complexidade da afinação de hiperparâmetros relacionada com caixas de âncoras. É excelente em cenários em que a maximização da precisão média (mAP) é o objetivo principal, obtendo frequentemente pontuações ligeiramente superiores às de modelos comparáveis baseados em âncoras, à custa de uma maior complexidade computacional. No entanto, a sua dependência da estrutura PaddlePaddle pode apresentar uma curva de aprendizagem para equipas padronizadas em PyTorch ou TensorFlow.
Análise de desempenho: Métricas e eficiência
Quando se compara YOLOv5 e o PP-YOLOE+, o compromisso reside normalmente entre a precisão bruta e a eficiência operacional (velocidade e facilidade de implementação).
Velocidade vs. Precisão
Os modelos PP-YOLOE+ apresentam, em geral, um valor mais elevado mAPval no conjunto de dados COCO , demonstrando a sua força na capacidade de deteção pura. Por exemplo, o PP-YOLOE+l atinge um valor notável de 52,9 mAP. No entanto, este resultado é frequentemente acompanhado de uma latência mais elevada em hardware padrão, em comparação com o YOLOv5.
YOLOv5 Ultralytics YOLOv5 brilha em velocidade de inferência. O YOLOv5n (Nano) é incrivelmente leve, atingindo 28,0 mAP com um tempo de inferência extremamente rápido de 1,12 ms numa GPU T4 utilizando TensorRT. Isto faz do YOLOv5 a melhor escolha para aplicações de IA de ponta onde a latência de milissegundos é crítica.
Eficiência computacional
Os modelos YOLOv5 são concebidos tendo em conta as restrições de memória. Normalmente, eles exigem menos memória CUDA durante o treinamento e a inferência em comparação com arquiteturas complexas sem âncoras ou modelos baseados em transformadores. Essa eficiência facilita a implantação mais suave em hardware com recursos limitados, como os módulos NVIDIA Jetson, sem grandes esforços de otimização.
| Modelo | tamanho (pixels) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
Ecossistema de formação e usabilidade
As métricas "suaves" da experiência do programador determinam frequentemente o sucesso de um projeto. Aqui, a diferença entre os dois modelos é mais acentuada.
Ecossistema Ultralytics
YOLOv5 beneficia do ecossistemaUltralytics integrado, que simplifica todo o pipeline de MLOps.
- PyTorch Nativo: O facto de ser construído em PyTorch garante a compatibilidade com a grande maioria das ferramentas e bibliotecas de código aberto.
- Integrações perfeitas: Suporte integrado para Weights & Biases, Comete ClearML facilita o controlo das experiências.
- Eficiência de treinamento: Os pesos pré-treinados estão prontamente disponíveis e são descarregados automaticamente, permitindo uma rápida transferência de aprendizagem.
- Implementação: O modo de exportação suporta a conversão com um clique para ONNX, CoreML, TFLitee muito mais.
Simplificando o fluxo de trabalho com o Ultralytics HUB
É possível treinar, pré-visualizar e implantar modelos YOLOv5 sem escrever uma única linha de código usando o Ultralytics HUB. Esta plataforma baseada na Web gere os conjuntos de dados e as execuções de treino, tornando a IA de visão acessível a equipas de todos os níveis de competências.
Ecossistema PaddlePaddle
O PP-YOLOE+ baseia-se no PaddlePaddle, a estrutura de aprendizagem profunda do Baidu. Embora poderoso e popular na Ásia, tem uma pegada mais pequena na comunidade de investigação ocidental em comparação com o PyTorch. A adoção do PP-YOLOE+ requer frequentemente a criação de um ambiente separado e a aprendizagem da sintaxe específica do Paddle (paddle.io, paddle.nn). Enquanto o documentação é abrangente, o ecossistema de ferramentas de terceiros e o apoio da comunidade são menos extensos do que os do YOLOv5.
Exemplo de código: Simplicidade do YOLOv5
O código Python a seguir demonstra como é fácil carregar um modelo YOLOv5 pré-treinado e realizar a inferência usando o PyTorch Hub.
import torch
# Load a YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Define an image source
img = "https://ultralytics.com/images/zidane.jpg"
# Run inference
results = model(img)
# Print results to console
results.print()
# Show the image with bounding boxes
results.show()
Casos de Uso no Mundo Real
Onde YOLOv5 se destaca
- Automação industrial: A sua elevada velocidade permite a deteção de defeitos em tempo real em linhas de montagem de movimento rápido.
- Robótica autónoma: O baixo consumo de memória torna-o ideal para robôs com computação integrada limitada, como os utilizados em logística.
- Aplicações para cidades inteligentes: O desempenho eficiente CPU permite uma implementação em larga escala para monitorização do tráfego na infraestrutura existente.
Onde o PP-YOLOE+ se encaixa
- Investigação de alta precisão: Projectos académicos em que a obtenção do último 1% de mAP é mais importante do que a velocidade de inferência.
- Ambientes centrados no remo: Ambientes empresariais que já investiram fortemente na infraestrutura do ecossistema Baidu.
Conclusão: Qual Modelo é o Ideal Para Você?
Para a grande maioria dos programadores e aplicações comerciais, Ultralytics YOLOv5 continua a ser a escolha recomendada. A sua incomparável facilidade de utilização, o sólido suporte da comunidade e a flexibilidade de implementação fazem dele uma solução de baixo risco e elevada recompensa. A capacidade de ser implantado em praticamente qualquer plataforma - de telefones celulares a servidores em nuvem - com o mínimo de atrito dá a ele uma vantagem decisiva em ambientes de produção.
O PP-YOLOE+ é uma alternativa potente para os utilizadores que necessitam especificamente de uma arquitetura sem âncoras ou para os que já estão integrados no fluxo de trabalho PaddlePaddle . A sua elevada precisão é louvável, mas a fragmentação do ecossistema pode atrasar o desenvolvimento para quem está habituado aos fluxos de trabalho PyTorch padrão.
Explore Outros Modelos
A visão computacional evolui rapidamente. Embora a comparação destes modelos estabelecidos seja valiosa, encorajamo-lo a explorar os mais recentes avanços na família Ultralytics YOLO , que oferecem um desempenho e funcionalidades ainda maiores.
- YOLO11: O mais recente modelo topo de gama que oferece uma precisão e eficiência superiores para deteção, segmentação e estimativa de pose.
- YOLOv8: Uma estrutura unificada muito popular que suporta tarefas de classificação e OBB.
- RT-DETR: Um detetor baseado em transformador optimizado para desempenho em tempo real.
Para uma visão mais ampla, consulte a nossa página principal de comparação de modelos para comparar diferentes arquitecturas com os seus requisitos específicos.