Modelos suportados por Ultralytics
Bem-vindo à documentação do modelo Ultralytics'! Oferecemos suporte para uma ampla gama de modelos, cada um adaptado a tarefas específicas, como deteção de objetos, segmentação de instâncias, classificação de imagens, estimativa de pose e rastreamento de vários objetos. Se estiver interessado em contribuir com a arquitetura do seu modelo para Ultralytics, consulte o nosso Guia de Contribuição.
Modelos em destaque
Eis alguns dos principais modelos suportados:
- YOLOv3: A terceira iteração da família de modelos YOLO , originalmente criada por Joseph Redmon, conhecida pelas suas capacidades eficientes de deteção de objectos em tempo real.
- YOLOv4: Uma atualização nativa da darknet para o YOLOv3, lançada por Alexey Bochkovskiy em 2020.
- YOLOv5: Uma versão melhorada da arquitetura YOLO da Ultralytics, que oferece um melhor desempenho e uma melhor velocidade em comparação com as versões anteriores.
- YOLOv6: Lançado pela Meituan em 2022 e utilizado em muitos dos robôs de entrega autónomos da empresa.
- YOLOv7: Modelos YOLO atualizados, lançados em 2022 pelos autores do YOLOv4. Apenas a inferência é suportada.
- YOLOv8: Um modelo versátil com recursos aprimorados, como segmentação de instâncias, estimativa de pose/pontos-chave e classificação.
- YOLOv9: Um modelo experimental treinado na base de código Ultralytics YOLOv5 base de código que implementa a Informação de Gradiente Programável (PGI).
- YOLOv10: Da Universidade de Tsinghua, com formação sem NMS e uma arquitetura orientada para a eficiência e a precisão, proporcionando um desempenho e uma latência de última geração.
- YOLO11 🚀 NOVO: Os modelos YOLO mais recentes da Ultralytics oferecem desempenho de última geração (SOTA) em várias tarefas, incluindo detecção, segmentação, estimativa de pose, rastreamento e classificação.
- Segmento Qualquer Modelo (SAM): Modelo de Segmento de Qualquer Coisa original da Meta (SAM).
- Segmento Qualquer Modelo 2 (SAM2): A próxima geração do Segment Anything Model da Meta (SAM) para vídeos e imagens.
- Modelo de qualquer segmento móvel (MobileSAM): MobileSAM para aplicações móveis, pela Universidade Kyung Hee.
- Modelo rápido de qualquer segmento (FastSAM): FastSAM pelo Grupo de Análise de Imagem e Vídeo, Instituto de Automação, Academia Chinesa de Ciências.
- YOLO-NAS: Modelos YOLO Neural Architecture Search (NAS).
- Transformadores de deteção em tempo real (RT-DETR): Modelos do Baidu PaddlePaddle Realtime Detection Transformer (RT-DETR).
- YOLO-Mundo: Modelos de deteção de objectos de vocabulário aberto em tempo real do Laboratório de IA da Tencent.
- YOLOE: Um detector de objetos de vocabulário aberto aprimorado que mantém o desempenho em tempo real do YOLO enquanto deteta classes arbitrárias além dos seus dados de treino.
Ver: Execute Ultralytics YOLO modelos em apenas algumas linhas de código.
Introdução: Exemplos de utilização
Este exemplo fornece exemplos simples de treinamento e inferência em YOLO . Para obter documentação completa sobre estes e outros modos, consulte as páginas de documentação Prever, Treinar, Val e Exportar.
Note que o exemplo abaixo é para YOLOv8 Detetar modelos para deteção de objectos. Para outras tarefas suportadas, consulte os documentos Segmentar, Classificar e Posicionar.
Exemplo
PyTorch pré-treinado *.pt
modelos, bem como a configuração *.yaml
podem ser passados para os ficheiros YOLO()
, SAM()
, NAS()
e RTDETR()
para criar uma instância de modelo em Python:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
CLI estão disponíveis para executar diretamente os modelos:
# Load a COCO-pretrained YOLOv8n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640
# Load a COCO-pretrained YOLOv8n model and run inference on the 'bus.jpg' image
yolo predict model=yolov8n.pt source=path/to/bus.jpg
Contribuição de novos modelos
Interessado em contribuir com o seu modelo para Ultralytics? Ótimo! Estamos sempre abertos a expandir a nossa carteira de modelos.
-
Bifurcar o repositório: Comece por bifurcar o repositórioUltralytics do GitHub.
-
Clone Your Fork: Clone seu fork para sua máquina local e crie um novo branch para trabalhar.
-
Implemente seu modelo: Adicione o seu modelo seguindo as normas de codificação e as diretrizes fornecidas no nosso Guia de Contribuição.
-
Teste exaustivamente: Certifique-se de que testa rigorosamente o seu modelo, tanto isoladamente como como parte do pipeline.
-
Criar um pull request: Quando estiver satisfeito com o seu modelo, crie um pull request para o repositório principal para revisão.
-
Revisão e fusão do código: Após a revisão, se o seu modelo cumprir os nossos critérios, será integrado no repositório principal.
Para obter etapas detalhadas, consulte o nosso Guia de Contribuição.
FAQ
Quais são as principais vantagens de usar o Ultralytics YOLO11 para detecção de objetos?
Ultralytics YOLO11 oferece recursos aprimorados, como detecção de objetos em tempo real, segmentação de instâncias, estimativa de pose e classificação. Sua arquitetura otimizada garante desempenho de alta velocidade sem sacrificar a precisão, tornando-o ideal para uma variedade de aplicações em diversos domínios de IA. YOLO11 se baseia em versões anteriores com desempenho aprimorado e recursos adicionais, conforme detalhado na página de documentação do YOLO11.
Como posso treinar um modelo YOLO em dados personalizados?
Treinar um modelo YOLO em dados personalizados pode ser facilmente realizado usando as bibliotecas da Ultralytics. Aqui está um exemplo rápido:
Exemplo
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo11n.pt") # or any other YOLO model
# Train the model on custom dataset
results = model.train(data="custom_data.yaml", epochs=100, imgsz=640)
yolo train model=yolo11n.pt data='custom_data.yaml' epochs=100 imgsz=640
Para obter instruções mais detalhadas, visite a página de documentação do Train.
Que versões de YOLO são suportadas por Ultralytics?
A Ultralytics suporta uma gama abrangente de versões YOLO (You Only Look Once) do YOLOv3 ao YOLO11, juntamente com modelos como YOLO-NAS, SAM e RT-DETR. Cada versão é otimizada para várias tarefas, como detecção, segmentação e classificação. Para obter informações detalhadas sobre cada modelo, consulte a documentação Modelos Suportados pela Ultralytics.
Por que razão devo utilizar o Ultralytics HUB para projectos de aprendizagem automática?
Ultralytics HUB fornece uma plataforma completa e sem código para treinar, implementar e gerenciar modelos YOLO. Ele simplifica fluxos de trabalho complexos, permitindo que os usuários se concentrem no desempenho e na aplicação do modelo. O HUB também oferece capacidades de treinamento na nuvem, gerenciamento abrangente de conjuntos de dados e interfaces amigáveis para iniciantes e desenvolvedores experientes.
Que tipos de tarefas o YOLO11 pode realizar e como se compara a outras versões do YOLO?
O YOLO11 é um modelo versátil capaz de realizar tarefas, incluindo detecção de objetos, segmentação de instâncias, classificação e estimativa de pose. Comparado com as versões anteriores, o YOLO11 oferece melhorias significativas em velocidade e precisão devido à sua arquitetura otimizada e design sem âncoras. Para uma comparação mais aprofundada, consulte a documentação do YOLO11 e as páginas de Tarefas para obter mais detalhes sobre tarefas específicas.