Perguntas frequentes sobre Ultralytics YOLO (FAQ)#
Esta seção de perguntas frequentes aborda dúvidas e problemas comuns que os usuários podem encontrar ao trabalhar com repositórios Ultralytics YOLO.
Perguntas frequentes#
A Ultralytics é uma empresa de IA especializada em visão computacional, com foco em modelos de detecção de objetos e segmentação de imagens de última geração, especialmente na família YOLO (Você só olha uma vez). Suas ofertas incluem:
- Implementações de código aberto do YOLO26 (mais recente) e do YOLO11 (geração anterior)
- Uma ampla variedade de modelos pré-treinados para diversas tarefas de visão computacional
- Um pacote Python abrangente para integrar modelos YOLO aos projetos com facilidade
- Ferramentas versáteis para treinar, testar e implantar modelos
- Documentação abrangente e uma comunidade acolhedora
É simples instalar o pacote Ultralytics usando pip:
pip install ultralyticsPara instalar a versão de desenvolvimento mais recente, instale diretamente do repositório GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitAs instruções detalhadas de instalação estão no guia de início rápido.
Requisitos mínimos:
- Python 3.8+
- PyTorch 1.8+
- GPU compatível com CUDA (para aceleração por GPU)
Configuração recomendada:
- Python 3.8+
- PyTorch 1.10+
- GPU NVIDIA com CUDA 11.2+
- 8 GB ou mais de RAM
- 50 GB ou mais de espaço livre em disco (para armazenamento de conjuntos de dados e treinamento de modelos)
Para solucionar problemas comuns, acesse a página Problemas comuns do YOLO.
Para treinar um modelo YOLO personalizado:
-
Prepare seu conjunto de dados no formato YOLO (imagens e os respectivos arquivos de rótulos .txt).
-
Crie um arquivo YAML que descreva a estrutura e as classes do seu conjunto de dados (consulte o exemplo de YAML para conjunto de dados).
-
Use o seguinte código Python para iniciar o treinamento:
from ultralytics import YOLO # Carregar um modelo model = YOLO("yolo26n.yaml") # cria um novo modelo do zero model = YOLO("yolo26n.pt") # carregue um modelo pré-treinado (recomendado para treinamento) # Treinar o modelo results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
Para um guia mais detalhado, que inclui a preparação de dados e opções avançadas de treinamento, consulte o guia de treinamento completo.
-
A Ultralytics oferece uma variedade de modelos pré-treinados para diferentes tarefas:
- Detecção de objetos: YOLO26n, YOLO26s, YOLO26m, YOLO26l, YOLO26x
- Segmentação de instâncias: YOLO26n-seg, YOLO26s-seg, YOLO26m-seg, YOLO26l-seg, YOLO26x-seg
- Segmentação semântica: YOLO26n-sem, YOLO26s-sem, YOLO26m-sem, YOLO26l-sem, YOLO26x-sem
- Estimativa de profundidade: YOLO26n-depth, YOLO26s-depth, YOLO26m-depth, YOLO26l-depth, YOLO26x-depth
- Classificação: YOLO26n-cls, YOLO26s-cls, YOLO26m-cls, YOLO26l-cls, YOLO26x-cls
- Estimativa de pose: YOLO26n-pose, YOLO26s-pose, YOLO26m-pose, YOLO26l-pose, YOLO26x-pose
- Detecção orientada (OBB): YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb
Esses modelos variam em tamanho e complexidade, oferecendo diferentes equilíbrios entre velocidade e precisão. Explore a variedade completa de modelos pré-treinados para encontrar a melhor opção para seu projeto.
Para fazer inferência com um modelo treinado:
from ultralytics import YOLO # Carregar um modelo model = YOLO("path/to/your/model.pt") # Executar inferência results = model("path/to/image.jpg") # Processa os resultados for r in results: print(r.boxes) # imprime as previsões de bbox print(r.masks) # imprime as previsões de máscara print(r.probs) # imprime as probabilidades das classesPara opções avançadas de inferência, incluindo processamento em lote e inferência de vídeo, consulte o guia detalhado de predição.
Com certeza! Os modelos Ultralytics foram projetados para implantação versátil em diversas plataformas:
- Dispositivos de borda: otimize a inferência em dispositivos como NVIDIA Jetson ou Raspberry Pi usando TensorRT, ONNX ou OpenVINO.
- Dispositivos móveis: implante em dispositivos Android ou iOS convertendo os modelos para LiteRT ou CoreML.
- Nuvem: use frameworks como TensorFlow Serving ou TorchServe para implantações escaláveis na nuvem.
- Web: implemente inferência no navegador usando ONNX Runtime Web.
A Ultralytics oferece funções de exportação para converter modelos em vários formatos para implantação. Explore a ampla variedade de opções de implantação para encontrar a melhor solução para o teu caso de uso.
As principais diferenças incluem:
- Inferência de ponta a ponta sem NMS: YOLO26 oferece inferência sem NMS com
nms=False. O caminho padrão de um para muitos usa NMS para garantir a precisão. - Remoção de DFL: YOLO26 remove o módulo Distribution Focal Loss, simplificando a exportação e melhorando a compatibilidade com dispositivos de borda e de baixo consumo.
- Otimizador MuSGD: uma combinação de SGD e Muon (inspirada no Kimi K2 da Moonshot AI) para um treinamento mais estável e uma convergência mais rápida.
- Desempenho na CPU: YOLO26n é até 43% mais rápido que YOLO11n na inferência ONNX na CPU (Intel Xeon CPU @ 2.00 GHz), sendo ideal para dispositivos sem GPU.
- Otimizações específicas para cada tarefa: segmentação aprimorada com perda semântica e protótipos multiescala, RLE para estimativa de pose precisa e decodificação OBB aprimorada com perda de ângulo.
- Tarefas: ambos os modelos são compatíveis com detecção de objetos e segmentação de instâncias, enquanto YOLO26 também adiciona segmentação semântica para previsões densas ao nível dos pixels e estimativa monocular de profundidade para profundidade por pixel. Ambos os modelos também são compatíveis com classificação, estimativa de pose e detecção de objetos orientados (OBB) numa estrutura unificada.
Para uma comparação detalhada de funcionalidades e métricas de desempenho, visita a página de documentação do YOLO26.
- Inferência de ponta a ponta sem NMS: YOLO26 oferece inferência sem NMS com
Contribuir para a Ultralytics é uma ótima forma de melhorar o projeto e desenvolver as tuas competências. Eis como podes participar:
- Cria um fork do repositório da Ultralytics no GitHub.
- Cria uma nova ramificação para a tua funcionalidade ou correção de erro.
- Faz as tuas alterações e garante que todos os testes passam.
- Envia um pull request com uma descrição clara das tuas alterações.
- Participa no processo de revisão de código.
Também podes contribuir reportando erros, sugerindo funcionalidades ou melhorando a documentação. Para veres diretrizes detalhadas e boas práticas, consulta o guia de contribuição.
O Ultralytics YOLO oferece um vasto conjunto de funcionalidades para tarefas avançadas de visão computacional:
- Detecção em tempo real: deteta e classifica objetos com eficiência em cenários de tempo real.
- Capacidades multitarefa: executa detecção de objetos, segmentação de instâncias, segmentação semântica, estimativa monocular de profundidade, classificação, estimativa de pose e detecção de objetos orientados (OBB) numa estrutura unificada.
- Modelos pré-treinados: acede a uma variedade de modelos pré-treinados que equilibram velocidade e precisão para diferentes casos de uso.
- Treinamento personalizado: ajusta facilmente os modelos a conjuntos de dados personalizados com o pipeline de treinamento flexível.
- Amplas opções de implantação: exporta modelos para vários formatos, como TensorRT, ONNX e CoreML, para implantação em diferentes plataformas.
- Documentação abrangente: aproveita a documentação completa e uma comunidade prestável para os teus fluxos de trabalho de visão computacional.
Podes melhorar o desempenho do teu modelo YOLO com várias técnicas:
- Ajuste de hiperparâmetros: experimenta diferentes hiperparâmetros usando o guia de ajuste de hiperparâmetros para otimizar o desempenho do modelo.
- Aumento de dados: aplica técnicas como inversão, redimensionamento, rotação e ajustes de cor para enriquecer o conjunto de dados de treinamento e melhorar a generalização do modelo.
- Aprendizagem por transferência: aproveita modelos pré-treinados e ajusta-os ao teu conjunto de dados específico usando o guia de treinamento.
- Exportação para formatos eficientes: converte o teu modelo para formatos otimizados, como TensorRT ou ONNX, para acelerar a inferência usando o guia de exportação.
- Benchmarking: utiliza o modo Benchmark para medir e melhorar sistematicamente a velocidade e a precisão da inferência.
A Ultralytics oferece muitos recursos para te ajudar a começar e a dominar as suas ferramentas:
- 📚 Documentação oficial: guias abrangentes, referências da API e boas práticas.
- 💻 Repositório do GitHub: código-fonte, scripts de exemplo e contribuições da comunidade.
- ✍️ Blog da Ultralytics: artigos detalhados, casos de uso e análises técnicas.
- 💬 Fóruns da comunidade: contacta outros utilizadores, faz perguntas e partilha as tuas experiências.
- 🎥 Canal do YouTube: tutoriais em vídeo, demonstrações e webinars sobre vários tópicos da Ultralytics.
Estes recursos incluem exemplos de código, casos de uso reais e guias passo a passo para várias tarefas com modelos da Ultralytics.
Se precisares de mais ajuda, consulta a documentação da Ultralytics ou contacta a comunidade através das issues do GitHub ou do fórum oficial de discussão.