Modelos suportados pela Ultralytics
Bem-vindo à documentação de modelos da Ultralytics! Oferecemos suporte para uma ampla gama de modelos, cada um adaptado a tarefas específicas como detecção de objetos, segmentação de instâncias, classificação de imagens, estimativa de pose e rastreamento de múltiplos objetos. Se você estiver interessado em contribuir com sua arquitetura de modelo para a Ultralytics, confira nosso Guia de Contribuição.
Modelos em Destaque
Aqui estão alguns dos principais modelos suportados:
- YOLOv3: A terceira iteração da família de modelos YOLO, originalmente de Joseph Redmon, conhecida por suas capacidades eficientes de detecção de objetos em tempo real.
- YOLOv4: Uma atualização nativa do darknet para YOLOv3, lançada por Alexey Bochkovskiy em 2020.
- YOLOv5: Uma versão aprimorada da arquitetura YOLO da Ultralytics, oferecendo melhores compensações de desempenho e velocidade em comparação com as versões anteriores.
- YOLOv6: Lançado pela Meituan em 2022 e em uso 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 YOLOv5 da Ultralytics, implementando Informações de Gradiente Programável (PGI).
- YOLOv10: Da Universidade de Tsinghua, apresentando treinamento sem NMS e arquitetura orientada à eficiência-precisão, oferecendo desempenho e 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.
- Segment Anything Model (SAM): Segment Anything Model (SAM) original da Meta.
- Segment Anything Model 2 (SAM2): A próxima geração do Segment Anything Model (SAM) da Meta para vídeos e imagens.
- Mobile Segment Anything Model (MobileSAM): MobileSAM para aplicações móveis, da Universidade de Kyung Hee.
- Fast Segment Anything Model (FastSAM): FastSAM do Image & Video Analysis Group, Institute of Automation, Academia Chinesa de Ciências.
- YOLO-NAS: Modelos YOLO Neural Architecture Search (NAS).
- Realtime Detection Transformers (RT-DETR): Modelos Transformer (RT-DETR) de Detecção em Tempo Real PaddlePaddle da Baidu.
- YOLO-World: Modelos de Detecção de Objetos de Vocabulário Aberto em Tempo Real do Tencent AI Lab.
- 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.
Assista: Execute modelos Ultralytics YOLO com apenas algumas linhas de código.
Começando: Exemplos de Uso
Este exemplo fornece exemplos simples de treinamento e inferência YOLO. Para obter a documentação completa sobre estes e outros modos, consulte as páginas de documentação Predict, Train, Val e Export.
Observe que o exemplo abaixo é para modelos YOLOv8 Detect para detecção de objetos. Para tarefas adicionais suportadas, consulte a documentação Segment, Classify e Pose.
Exemplo
PyTorch pré-treinados *.pt
modelos, bem como a configuração *.yaml
os arquivos podem ser passados para o YOLO()
, SAM()
, NAS()
e RTDETR()
classes 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")
Comandos da CLI estão disponíveis para executar os modelos diretamente:
# 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
Contribuindo com Novos Modelos
Tem interesse em contribuir com seu modelo para a Ultralytics? Ótimo! Estamos sempre abertos a expandir nosso portfólio de modelos.
-
Faça um Fork do Repositório: Comece fazendo um fork do repositório Ultralytics no GitHub.
-
Clone Seu Fork: Clone seu fork para sua máquina local e crie uma nova branch para trabalhar.
-
Implemente Seu Modelo: Adicione seu modelo seguindo os padrões de codificação e as diretrizes fornecidas em nosso Guia de Contribuição.
-
Teste Exaustivamente: Certifique-se de testar seu modelo rigorosamente, tanto isoladamente quanto como parte do pipeline.
-
Crie um Pull Request: Depois de estar satisfeito com seu modelo, crie um pull request para o repositório principal para revisão.
-
Revisão de Código e Fusão: Após a revisão, se o seu modelo atender aos nossos critérios, ele será incorporado ao repositório principal.
Para obter instruções detalhadas, consulte 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 Train.
Quais versões do YOLO são suportadas pela 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 devo usar o Ultralytics HUB para projetos de aprendizado de máquina?
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.