Perguntas frequentes sobre o Ultralytics YOLO (FAQ)#
Esta secção de FAQ aborda perguntas e problemas comuns que os utilizadores podem encontrar ao trabalhar com repositórios do Ultralytics YOLO.
Perguntas frequentes#
O Ultralytics é uma empresa de IA especializada em visão computacional, com foco em modelos de deteção de objetos e segmentação de imagens de última geração, centrados na família YOLO (Você Só Olha Uma Vez). As suas ofertas incluem:
- Implementações de código aberto do YOLO26 (mais recente) e do YOLO11 (geração anterior)
- Uma vasta gama de modelos pré-treinados para várias tarefas de visão computacional
- Um pacote Python abrangente para integrar modelos YOLO facilmente nos teus projetos
- Ferramentas versáteis para treinar, testar e implementar modelos
- Documentação abrangente e uma comunidade prestável
A instalação do pacote Ultralytics é simples utilizando o pip:
pip install ultralyticsPara obter a versão de desenvolvimento mais recente, instala diretamente a partir do repositório do GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitPodes encontrar instruções detalhadas de instalaçã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+ de RAM
- 50 GB+ de espaço livre em disco (para armazenamento de conjuntos de dados e treino de modelos)
Para resolver problemas comuns, visita a página Problemas comuns do YOLO.
Para treinar um modelo YOLO personalizado:
-
Prepara o teu conjunto de dados no formato YOLO (imagens e ficheiros txt de etiquetas correspondentes).
-
Cria um ficheiro YAML que descreva a estrutura e as classes do teu conjunto de dados (consulta o exemplo de YAML de um conjunto de dados).
-
Utiliza o seguinte código Python para iniciar o treino:
from ultralytics import YOLO # Load a model model = YOLO("yolo26n.yaml") # build a new model from scratch model = YOLO("yolo26n.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
Para um guia mais aprofundado, incluindo a preparação de dados e opções avançadas de treino, consulta o guia de treino abrangente.
-
O Ultralytics disponibiliza uma gama diversificada de modelos pré-treinados para várias tarefas:
- Deteçã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
- Deteção orientada (OBB): YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb
Estes modelos variam em tamanho e complexidade, oferecendo diferentes compromissos entre velocidade e precisão. Explora a gama completa de modelos pré-treinados para encontrares a opção mais adequada ao teu projeto.
Para fazer inferência com um modelo treinado:
from ultralytics import YOLO # Load a model model = YOLO("path/to/your/model.pt") # Perform inference results = model("path/to/image.jpg") # Process results for r in results: print(r.boxes) # print bbox predictions print(r.masks) # print mask predictions print(r.probs) # print class probabilitiesPara opções avançadas de inferência, incluindo processamento em lote e inferência de vídeo, consulta o guia detalhado de predição.
Sem dúvida! Os modelos Ultralytics foram concebidos para uma implementação versátil em várias plataformas:
- Dispositivos de ponta: otimiza a inferência em dispositivos como NVIDIA Jetson ou Raspberry Pi usando TensorRT, ONNX ou OpenVINO.
- Dispositivos móveis: implementa os modelos em dispositivos Android ou iOS convertendo-os para LiteRT ou Core ML.
- Nuvem: aproveita frameworks como TensorFlow Serving ou TorchServe para implantações em nuvem escaláveis.
- Web: implementa inferência no navegador usando ONNX Runtime Web.
O Ultralytics fornece funções de exportação para converter modelos em vários formatos de implementação. Explora a vasta gama de opções de implementação para encontrares a melhor solução para o teu caso de utilização.
As principais diferenças incluem:
- Inferência sem NMS de Ponta a Ponta: o YOLO26 oferece inferência sem NMS com
nms=False. Seu caminho padrão de um para muitos usa NMS para obter precisão. - Remoção de DFL: o YOLO26 remove o módulo Distribution Focal Loss, simplificando a exportação e melhorando a compatibilidade com dispositivos edge e de baixo consumo.
- Otimizador MuSGD: uma combinação híbrida de SGD e Muon (inspirada no Kimi K2 da Moonshot AI) para um treino mais estável e uma convergência mais rápida.
- Desempenho em CPU: o YOLO26n é até 43% mais rápido do que o YOLO11n na inferência ONNX em CPU (Intel Xeon CPU @ 2.00 GHz), sendo ideal para dispositivos sem GPUs.
- Otimizações específicas para tarefas: segmentação melhorada com perda semântica e protótipos multiescala, RLE para estimativa precisa de pose e descodificação OBB melhorada com perda angular.
- Tarefas: ambos os modelos suportam deteção de objetos e segmentação de instâncias, enquanto o YOLO26 também adiciona segmentação semântica para predição densa ao nível dos píxeis e estimativa monocular de profundidade para profundidade por píxel. Ambos os modelos também suportam classificação, estimativa de pose e deteção de objetos orientados (OBB) num framework unificado.
Para uma comparação aprofundada das funcionalidades e métricas de desempenho, visita a página de documentação do YOLO26.
- Inferência sem NMS de Ponta a Ponta: o YOLO26 oferece inferência sem NMS com
Contribuir para o Ultralytics é uma excelente forma de melhorar o projeto e desenvolver as tuas competências. Eis como podes participar:
- Cria um fork do repositório do Ultralytics no GitHub.
- Cria um novo branch para a tua funcionalidade ou correção de erros.
- 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 ao comunicar erros, sugerir funcionalidades ou melhorar a documentação. Para obteres orientações detalhadas e boas práticas, consulta o guia de contribuição.
O Ultralytics YOLO oferece um conjunto abrangente de funcionalidades para tarefas avançadas de visão computacional:
- Deteção em tempo real: deteta e classifica objetos de forma eficiente em cenários de tempo real.
- Funcionalidades multitarefa: executa deteção de objetos, segmentação de instâncias, segmentação semântica, estimativa monocular de profundidade, classificação, estimativa de pose e deteção de objetos orientados (OBB) com um framework unificado.
- Modelos pré-treinados: acede a uma variedade de modelos pré-treinados que equilibram velocidade e precisão para diferentes casos de utilização.
- Treino personalizado: ajusta facilmente modelos em conjuntos de dados personalizados com o pipeline de treino flexível.
- Vastas opções de implementação: exporta modelos para vários formatos, como TensorRT, ONNX e CoreML, para implementação em diferentes plataformas.
- Documentação abrangente: beneficia de documentação completa e de uma comunidade prestável para os teus fluxos de trabalho de visão computacional.
Podes melhorar o desempenho do teu modelo YOLO através de várias técnicas:
- Ajuste de hiperparâmetros: experimenta diferentes hiperparâmetros utilizando o Guia de ajuste de hiperparâmetros para otimizar o desempenho do modelo.
- Aumento de dados: implementa técnicas como inversão, escala, rotação e ajustes de cor para melhorar o teu conjunto de dados de treino e a generalização do modelo.
- Transferência de aprendizagem: utiliza modelos pré-treinados e ajusta-os ao teu conjunto de dados específico através do guia de treino.
- Exportação para formatos eficientes: converte o teu modelo para formatos otimizados, como TensorRT ou ONNX, para obteres uma inferência mais rápida utilizando o guia de exportação.
- Benchmarking: utiliza o Modo de benchmark para medir e melhorar sistematicamente a velocidade e a precisão da inferência.
O Ultralytics disponibiliza 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 aprofundados, casos de utilização e conhecimentos técnicos.
- 💬 Fóruns da comunidade: estabelece ligação com outros utilizadores, faz perguntas e partilha as tuas experiências.
- 🎥 Canal do YouTube: tutoriais em vídeo, demonstrações e webinars sobre vários temas da Ultralytics.
Estes recursos fornecem exemplos de código, casos de utilização do mundo real e guias passo a passo para várias tarefas com modelos da Ultralytics.
Se precisares de mais assistência, consulta a documentação da Ultralytics ou contacta a comunidade através dos Issues do GitHub ou do fórum de discussão oficial.