YOLOv10 .YOLO: Evolução das arquiteturas de detecção de objetos em tempo real
No cenário em rápida evolução da visão computacional, a busca pelo equilíbrio ideal entre latência e precisão impulsiona a inovação constante. Dois marcos significativos nessa jornada são YOLOv10, conhecido pelo seu treinamento inovador NMS, e YOLO, que aproveitou a Pesquisa de Arquitetura Neural (NAS) para ampliar os limites de eficiência. Esta comparação explora as diferenças arquitetónicas, as métricas de desempenho e a adequação para aplicações modernas de IA.
Análise de Métricas de Desempenho
A tabela a seguir apresenta uma comparação detalhada dos principais indicadores de desempenho. YOLOv10 demonstra eficiência superior na utilização de parâmetros e velocidade de inferência em GPUs modernas, particularmente nas variantes de modelos maiores.
| Modelo | tamanho (pixels) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
YOLOv10: O Pioneiro Ponta a Ponta
Lançado em maio de 2024 por investigadores da Universidade de Tsinghua, YOLOv10 introduziu uma mudança de paradigma ao eliminar a necessidade da supressão não máxima (NMS). Essa arquitetura aborda a variação de latência frequentemente causada pelas etapas de pós-processamento em detectores tradicionais.
Principais Características Arquitetônicas
- TreinamentoNMS: Utiliza atribuições duplas consistentes para treinamento NMS, permitindo que o modelo preveja diretamente uma única caixa delimitadora por objeto. Isso é crucial para aplicações que exigem latência previsível, como veículos autónomos ou robótica industrial.
- Design holístico de eficiência e precisão: Os autores, Ao Wang et al., otimizaram vários componentes, incluindo a espinha dorsal e a cabeça, para reduzir a redundância computacional.
- Cabeça de classificação leve: reduz a sobrecarga do ramo de classificação, que muitas vezes é um gargalo em detectores sem âncora.
Você pode executar YOLOv10 através daPython Ultralytics , aproveitando os benefícios da interface padronizada.
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Train the model on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
results[0].show()
YOLO: Pesquisa de arquitetura neural em escala
YOLO, desenvolvido pelo Alibaba Group e lançado em novembro de 2022, concentra-se na descoberta automatizada de arquiteturas eficientes. Ao empregar a Pesquisa de Arquitetura Neural (NAS), a equipa teve como objetivo encontrar a profundidade e largura ideais para backbones de detecção sob orçamentos computacionais restritos.
Principais Características Arquitetônicas
- MAE-NAS Backbone: Utiliza uma pesquisa evolutiva multiobjetiva para encontrar backbones que equilibram a precisão da detecção e a velocidade de inferência.
- RepGFPN eficiente: um design pesado que melhora a fusão de recursos, essencial para detectar objetos em várias escalas, como na análise de imagens aéreas.
- ZeroHead: Um cabeçalho de detecção simplificado que reduz a complexidade das camadas de predição final.
EmboraYOLO um desempenho robusto, a sua dependência de processos NAS complexos pode dificultar o retreinamento ou a modificação da arquitetura para conjuntos de dados personalizados por desenvolvedores comuns, em comparação com a configuração intuitiva dos Ultralytics .
A Vantagem Ultralytics: Apresentando o YOLO26
Embora YOLOv10 YOLO avanços significativos, o campo continuou a evoluir. Ultralytics baseia-se no legado NMS do YOLOv10 integra-o num ecossistema mais robusto e pronto para produção.
Por que escolher Ultralytics?
Ultralytics um ecossistema bem mantido que garante que os seus modelos não funcionem apenas hoje, mas continuem a funcionar à medida que as bibliotecas de hardware e software evoluem. Ao contrário de muitos repositórios académicos, Ultralytics atualizações consistentes, documentação extensa e integração perfeita com ferramentas de implementação como o TensorRT e OpenVINO.
Inovações do YOLO26
Para os programadores que procuram o melhor em velocidade e precisão, o YOLO26 apresenta várias melhorias importantes em relação aos seus antecessores:
- NMS de ponta a ponta: Assim como YOLOv10, o YOLO26 é nativamente de ponta a ponta. No entanto, ele refina ainda mais isso removendo a perda focal de distribuição (DFL), o que simplifica o gráfico do modelo para melhor compatibilidade com dispositivos de ponta e chips de baixa potência.
- Otimizador MuSGD: Inspirado nas inovações no treinamento de LLM (especificamente o Kimi K2 da Moonshot AI), o YOLO26 utiliza o otimizador MuSGD. Esse híbrido de SGD Muon traz uma estabilidade sem precedentes ao treinamento, permitindo uma convergência mais rápida e reduzindo GPU .
- CPU : O YOLO26 é especificamente otimizado para computação de ponta, proporcionando uma inferência até 43% mais rápida nas CPUs. Isso o torna a escolha ideal para aplicações de IoT onde as GPUs não estão disponíveis.
- Funções de perda aprimoradas: a introdução do ProgLoss e do STAL (Self-Taught Anchor Learning) melhora significativamente o desempenho em objetos pequenos e fundos desafiadores.
Casos de Uso Comparativos
A seleção do modelo certo depende muito das suas restrições específicas de implementação e dos requisitos do fluxo de trabalho.
Quando usar o DAMO-YOLO
YOLO um forte candidato para cenários de investigação envolvendo Neural Architecture Search (NAS). Se o seu projeto requer investigar como as estratégias de pesquisa automatizadas afetam a extração de características, ou se está profundamente integrado no ecossistema Alibaba, este modelo fornece informações valiosas. O seu módulo RepGFPN também é uma excelente referência para estudos de fusão de características.
Quando usar o YOLOv10
YOLOv10 excelente para aplicações em que a baixa variação de latência é fundamental. O seu design NMS garante que o tempo de inferência permaneça estável, independentemente do número de objetos detetados, o que é vital para sistemas de segurança em tempo real.
- Vigilância em tempo real: taxas de fotogramas consistentes para cenas com muita gente.
- Robótica: Tempo previsível para loops de controlo.
Por que o YOLO26 é a escolha superior
Para a maioria dos programadores e aplicações comerciais, Ultralytics oferece o pacote mais atraente. Ele combina os benefícios NMS do YOLOv10 eficiência de treinamento superior e amplo suporte de hardware.
- Facilidade de uso: treine, valide e implemente com uma única Python .
- Versatilidade: Ao contrárioYOLO, o YOLO26 suporta um conjunto completo de tarefas, incluindo segmentação de instâncias, estimativa de poses, classificação e caixas delimitadoras orientadas (OBB).
- Eficiência de memória: o YOLO26 requer significativamente menos CUDA durante o treinamento em comparação com modelos híbridos de transformador, permitindo o treinamento em GPUs de nível consumidor.
- Integração da plataforma: Exporte facilmente para ONNX, CoreML e TFLite da Ultralytics , simplificando o caminho do protótipo à produção.
Exemplo de código: Fluxo de trabalho YOLO26
A transição para a tecnologia mais recente é fácil com Ultralytics. O trecho de código a seguir demonstra como carregar o modelo YOLO26 de última geração, executar a inferência e exportá-lo para implementação.
from ultralytics import YOLO
# Load the YOLO26s model (Small version)
model = YOLO("yolo26s.pt")
# Train on COCO8 dataset
model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for simplified deployment
model.export(format="onnx", opset=13)
Conclusão
Tanto YOLOv10 YOLO inovações valiosas para o campo da visão computacional. YOLOv10 provou a viabilidade da deteção NMS, enquanto YOLO demonstrou o poder do NAS. No entanto, Ultralytics sintetiza esses avanços numa ferramenta abrangente, fácil de usar e de alto desempenho. Com sua velocidade superior, versatilidade de tarefas e o apoio de um ecossistema robusto, o YOLO26 se destaca como a solução recomendada para desenvolvedores que estão a construir a próxima geração de aplicações de IA.
Para uma exploração mais aprofundada, considere consultar a YOLO11 ou o RT-DETR baseado em transformador. RT-DETR para abordagens arquitetónicas alternativas.