Salta para o conteúdo

Ultralytics YOLO Perguntas frequentes (FAQ)

Esta secção de FAQ aborda questões e problemas comuns que os utilizadores podem encontrar quando trabalham com Ultralytics YOLO repositórios.

FAQ

O que é Ultralytics e o que oferece?

Ultralytics é uma empresa de IA de visão computacional especializada em modelos de deteção de objectos e segmentação de imagens de última geração, com destaque para a família YOLO (You Only Look Once). As suas ofertas incluem:

Como é que instalo o pacote Ultralytics ?

Instalar o pacote Ultralytics é simples usando pip:

pip install ultralytics

Para obter a versão de desenvolvimento mais recente, instala diretamente a partir do repositório GitHub:

pip install git+https://github.com/ultralytics/ultralytics.git

Encontra instruções de instalação pormenorizadas no guia de início rápido.

Quais são os requisitos de sistema para executar os modelos Ultralytics ?

Requerimentos mínimos:

  • Python 3.7+
  • PyTorch 1.7+
  • CUDA-compatível GPU (para aceleração GPU )

Configuração recomendada:

  • Python 3,8+
  • PyTorch 1,10+
  • NVIDIA GPU com CUDA 11.2+
  • 8 GB + RAM
  • Mais de 50 GB de espaço livre em disco (para armazenamento de conjunto de dados e treinamento de modelo)

Para a resolução de problemas comuns, visita a página YOLO Common Issues.

Como é que posso treinar um modelo YOLOv8 personalizado no meu próprio conjunto de dados?

Para treinar um costume YOLOv8 modelo:

  1. Prepare seu conjunto de dados em YOLO formato (imagens e arquivos txt de etiqueta correspondentes).
  2. Crie um arquivo YAML descrevendo a estrutura e as classes do seu conjunto de dados.
  3. Use o seguinte Python código para iniciar o treinamento:
from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.yaml")  # build a new model from scratch
model = YOLO("yolov8n.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 de formação avançada, consulta o guia de formação abrangente.

Que modelos pré-treinados estão disponíveis em Ultralytics?

Ultralytics oferece uma gama diversificada de modelos YOLOv8 pré-treinados para várias tarefas:

  • Detecção de objetos: YOLOv8n , YOLOv8s , YOLOv8m , YOLOv8l , YOLOv8x
  • Segmentação de instância: YOLOv8n -seg, YOLOv8s -seg, YOLOv8m -seg, YOLOv8l -seg, YOLOv8x -seg
  • Classificação: YOLOv8n -cls, YOLOv8s -cls, YOLOv8m -cls, YOLOv8l -cls, YOLOv8x -cls

Estes modelos variam em tamanho e complexidade, oferecendo diferentes soluções de compromisso entre velocidade e precisão. Explora a gama completa de modelos pré-treinados para encontrar a melhor opção para o teu projeto.

Como é que faço a inferência utilizando um modelo Ultralytics treinado?

Para realizar 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 probabilities

Para opções de inferência avançadas, incluindo processamento em lote e inferência de vídeo, consulta o guia de previsão detalhado.

Os modelos Ultralytics podem ser implementados em dispositivos periféricos ou em ambientes de produção?

Absolutamente! Os modelos Ultralytics foram concebidos para uma utilização versátil em várias plataformas:

  • Dispositivos de ponta: Optimiza a inferência em dispositivos como NVIDIA Jetson ou Intel Neural Compute Stick utilizando TensorRT, ONNX, ou OpenVINO.
  • Móvel: Implementa em dispositivos Android ou iOS convertendo modelos para TFLite ou Core ML.
  • Nuvem: Aproveita estruturas como TensorFlow Serving ou PyTorch Serve para implantações de nuvem escalonáveis.
  • Web: Implementa a inferência no browser utilizando ONNX.js ou TensorFlow.js.

Ultralytics fornece funções de exportação para converter modelos em vários formatos para implantação. Explora a vasta gama de opções de implementação para encontrar a melhor solução para o teu caso de utilização.

Qual é a diferença entre YOLOv5 e YOLOv8?

As principais distinções incluem:

  • Arquitetura: YOLOv8 apresenta um design melhorado da espinha dorsal e da cabeça para um melhor desempenho.
  • Desempenho: YOLOv8 oferece geralmente uma precisão e velocidade superiores às de YOLOv5.
  • Tarefas: YOLOv8 suporta nativamente a deteção de objectos, a segmentação de instâncias e a classificação numa estrutura unificada.
  • Base de código: YOLOv8 é implementado com uma arquitetura mais modular e extensível, facilitando a personalização e a extensão.
  • Formação: YOLOv8 incorpora técnicas de formação avançadas, como a formação em vários conjuntos de dados e a evolução de hiperparâmetros para obter melhores resultados.

Para uma comparação aprofundada de funcionalidades e métricas de desempenho, visita a página de comparação YOLOv5 vs YOLOv8.

Como posso contribuir para o projeto de código aberto Ultralytics ?

Contribuir para Ultralytics é uma excelente forma de melhorar o projeto e expandir as tuas competências. Eis como podes participar:

  1. Garfo o Ultralytics repositório no GitHub.
  2. Crie um novo branch para seu recurso ou correção de bug.
  3. Faça suas alterações e garanta que todos os testes sejam aprovados.
  4. Envie uma solicitação pull com uma descrição clara de suas alterações.
  5. Participe do processo de revisão de código.

Também podes contribuir reportando erros, sugerindo funcionalidades ou melhorando a documentação. Para obter orientações detalhadas e melhores práticas, consulta o guia de contribuição.

Como é que instalo o pacote Ultralytics em Python?

Instalar o pacote Ultralytics em Python é simples. Utiliza o pip executando o seguinte comando no teu terminal ou na prompt de comando:

pip install ultralytics

Para obter a versão de desenvolvimento de ponta, instala diretamente a partir do repositório GitHub:

pip install git+https://github.com/ultralytics/ultralytics.git

Para obter instruções de instalação específicas do ambiente e dicas de resolução de problemas, consulta o guia de início rápido abrangente.

Quais são as principais características do Ultralytics YOLO ?

Ultralytics YOLO possui um conjunto rico de funcionalidades para deteção avançada de objectos e segmentação de imagens:

  • Deteção em tempo real: Detecta e classifica eficazmente objectos em cenários em tempo real.
  • Modelos pré-treinados: Acede a uma variedade de modelos pré-treinados que equilibram velocidade e precisão para diferentes casos de utilização.
  • Treinamento personalizado: Afina facilmente os modelos em conjuntos de dados personalizados com o pipeline de treino 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 extensa: Beneficia de documentação abrangente e de uma comunidade de apoio para te guiar no teu percurso de visão computacional.

Explora a página dos modelosYOLO para obteres uma visão aprofundada das capacidades e arquitecturas das diferentes versões do YOLO .

Como posso melhorar o desempenho do meu modelo YOLO ?

A melhoria do desempenho do teu modelo YOLO pode ser conseguida através de várias técnicas:

  1. Ajuste de hiperparâmetros: Experimenta diferentes hiperparâmetros utilizando o Guia de Afinação de Hiperparâmetros para otimizar o desempenho do modelo.
  2. Aumento de dados: Implementa técnicas como inverter, escalar, rodar e ajustes de cor para melhorar o teu conjunto de dados de treino e melhorar a generalização do modelo.
  3. Transferir aprendizagem: Aproveita os modelos pré-treinados e afina-os no teu conjunto de dados específico utilizando o guia Train YOLOv8.
  4. Exportar para formatos eficientes: Converte o teu modelo para formatos optimizados como TensorRT ou ONNX para uma inferência mais rápida utilizando o guia Exportar.
  5. Comparação de desempenho: Utiliza o Modo de Referência para medir e melhorar sistematicamente a velocidade e a precisão da inferência.

Posso implementar Ultralytics YOLO modelos em dispositivos móveis e periféricos?

Sim, os modelos Ultralytics YOLO foram concebidos para uma implementação versátil, incluindo dispositivos móveis e periféricos:

  • Móvel: Converte modelos para TFLite ou CoreML para uma integração perfeita nas aplicações Android ou iOS . Consulta o Guia de Integração TFLite e o Guia de IntegraçãoCoreML para obteres instruções específicas da plataforma.
  • Dispositivos de borda: Otimiza a inferência em dispositivos como NVIDIA Jetson ou outro hardware de borda usando TensorRT ou ONNX. O Guia de Integração do Edge TPU fornece etapas detalhadas para a implantação de borda.

Para obter uma visão geral abrangente das estratégias de implantação em várias plataformas, consulta o guia de opções de implantação.

Como é que posso efetuar inferências utilizando um modelo Ultralytics YOLO treinado?

A inferência com um modelo Ultralytics YOLO treinado é simples:

  1. Carrega o modelo:
from ultralytics import YOLO

model = YOLO("path/to/your/model.pt")
  1. Executa a inferência:
results = model("path/to/image.jpg")

for r in results:
    print(r.boxes)  # print bounding box predictions
    print(r.masks)  # print mask predictions
    print(r.probs)  # print class probabilities

Para técnicas de inferência avançadas, incluindo processamento em lote, inferência de vídeo e pré-processamento personalizado, consulta o guia de previsão detalhado.

Onde posso encontrar exemplos e tutoriais para utilizar Ultralytics?

Ultralytics fornece uma grande quantidade de recursos para te ajudar a começar e a dominar as suas ferramentas:

  • 📚 Documentação oficial: Guias abrangentes, referências de API e melhores práticas.
  • 💻 Repositório GitHub: Código-fonte, scripts de exemplo e contribuições da comunidade.
  • ✍️ Ultralytics blogue: Artigos aprofundados, casos de utilização e informações técnicas.
  • 💬 Fóruns da comunidade: Liga-te a 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 de Ultralytics .

Estes recursos fornecem exemplos de código, casos de utilização reais e guias passo-a-passo para várias tarefas utilizando os modelos Ultralytics .

Se precisares de mais assistência, não hesites em consultar a documentação Ultralytics ou contactar a comunidade através do GitHub Issues ou do fórum de discussão oficial.



Criado em 2023-11-12, Atualizado em 2024-07-05
Autores: glenn-jocher (5)

Comentários