Instalar Ultralytics
Ultralytics oferece uma variedade de métodos de instalação, incluindo pip, conda e Docker. Você pode instalar YOLO através do ultralytics
pip para a última versão estável, ou clonando o pacote Ultralytics Repositório GitHub para obter a versão mais atual. O Docker é também uma opção para executar o pacote num contentor isolado, o que evita a instalação local.
Ver: Ultralytics YOLO Guia de início rápido
Instalar
Instalar ou atualizar o ultralytics
utilizando o pip, executando pip install -U ultralytics
. Para mais pormenores sobre o ultralytics
pacote, visite a página Índice de Pacotes Python (PyPI).
# Install the ultralytics package from PyPI
pip install ultralytics
Também é possível instalar ultralytics
diretamente do Ultralytics Repositório GitHub. Isso pode ser útil se você quiser a versão de desenvolvimento mais recente. Certifique-se de que tem a ferramenta de linha de comandos Git instalada e, em seguida, execute:
# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@main
O Conda pode ser usado como um gerenciador de pacotes alternativo ao pip. Para obter mais detalhes, visite Anaconda. O repositório de matéria-prima Ultralytics para atualizar o pacote conda está disponível no GitHub.
# Install the ultralytics package using conda
conda install -c conda-forge ultralytics
Nota
Se estiver instalando em um ambiente CUDA , é uma prática recomendada instalar ultralytics
, pytorch
e pytorch-cuda
no mesmo comando. Isto permite que o gestor de pacotes conda resolva quaisquer conflitos. Alternativamente, instale pytorch-cuda
último para substituir o pytorch
pacote, se necessário.
# Install all packages together using conda
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics
Imagem do Docker Conda
Ultralytics As imagens do Conda Docker também estão disponíveis em DockerHub. Estas imagens são baseadas em Miniconda3 e fornecem uma forma direta de começar a utilizar ultralytics
num ambiente Conda.
# Set image name as a variable
t=ultralytics/ultralytics:latest-conda
# Pull the latest ultralytics image from Docker Hub
sudo docker pull $t
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --gpus all $t # all GPUs
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # specify GPUs
Clonar o Ultralytics Repositório GitHub se estiver interessado em contribuir para o desenvolvimento ou quiser experimentar o código-fonte mais recente. Após a clonagem, navegue para o diretório e instale o pacote em modo editável -e
utilizando o pip.
# Clone the ultralytics repository
git clone https://github.com/ultralytics/ultralytics
# Navigate to the cloned directory
cd ultralytics
# Install the package in editable mode for development
pip install -e .
Use o Docker para executar o ultralytics
num contentor isolado, garantindo um desempenho consistente em vários ambientes. Ao selecionar um dos pacotes ultralytics
imagens de Centro de DockerCom o Ultralytics, evita a complexidade da instalação local e obtém acesso a um ambiente de trabalho verificado. Ultralytics oferece cinco imagens Docker principais suportadas, cada uma concebida para uma elevada compatibilidade e eficiência:
- Dockerfile: GPU imagem recomendada para a formação.
- Dockerfile-arm64: Optimizado para a arquitetura ARM64, adequado para implementação em dispositivos como o Raspberry Pi e outras plataformas baseadas em ARM64.
- cpu: Versão baseada no Ubuntu CPU para CPU, adequada para inferência e ambientes sem GPUs.
- Dockerfile-jetson: Adaptado para dispositivos NVIDIA Jetson, integrando suporte a GPU otimizado para essas plataformas.
- Dockerfile-python: Imagem mínima com apenas Python e as dependências necessárias, ideal para aplicações leves e desenvolvimento.
- Dockerfile-conda: Baseado no Miniconda3 com uma instalação conda do
ultralytics
pacote.
Aqui estão os comandos para obter a imagem mais recente e executá-la:
# Set image name as a variable
t=ultralytics/ultralytics:latest
# Pull the latest ultralytics image from Docker Hub
sudo docker pull $t
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --gpus all $t # all GPUs
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # specify GPUs
O comando acima inicializa um contentor Docker com a última versão do ultralytics
imagem. A -it
atribuem um pseudo-TTY e mantêm o stdin aberto, permitindo a interação com o contentor. As --ipc=host
define o espaço de nomes IPC (Inter-Process Communication) para o host, o que é essencial para a partilha de memória entre processos. A flag --gpus all
permite o acesso a todas as GPUs disponíveis dentro do contentor, crucial para tarefas que requerem computação GPU .
Nota: Para trabalhar com ficheiros no seu computador local dentro do contentor, utilize os volumes do Docker para montar um diretório local no contentor:
# Mount local directory to a directory inside the container
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t
Substituir /path/on/host
com o caminho do diretório na sua máquina local, e /path/in/container
com o caminho desejado dentro do contentor Docker.
Para uso avançado do Docker, explore o Guia do Docker doUltralytics .
Ver o ultralytics
pyproject.toml para uma lista de dependências. Note que todos os exemplos acima instalam todas as dependências necessárias.
Dica
PyTorch variam de acordo com o sistema operativo e os requisitos CUDA , por isso instale primeiro PyTorch seguindo as instruções em PyTorch.
Métodos de instalação personalizados
Embora os métodos de instalação padrão cubram a maioria dos casos de uso, você pode precisar de uma configuração mais personalizada. Isso pode envolver a instalação de versões específicas de pacotes, a omissão de dependências opcionais ou a substituição de pacotes como a substituição de opencv-python
com o programa sem GUI opencv-python-headless
para ambientes de servidor.
Métodos personalizados
É possível instalar o ultralytics
sem quaisquer dependências usando o comando --no-deps
flag. Para isso, é necessário instalar manualmente todas as dependências necessárias posteriormente.
-
Instalar
ultralytics
núcleo:pip install ultralytics --no-deps
-
Instalar manualmente as dependências: É necessário instalar todos os pacotes necessários listados no
pyproject.toml
substituindo ou modificando as versões conforme necessário. Para o exemplo do OpenCV sem cabeça:# Install other core dependencies pip install torch torchvision numpy matplotlib pandas pyyaml pillow psutil requests tqdm scipy seaborn ultralytics-thop # Install headless OpenCV instead of the default pip install opencv-python-headless
Gestão de dependências
Este método permite um controlo total, mas requer uma gestão cuidadosa das dependências. Assegure-se de que todos os pacotes necessários estão instalados com versões compatíveis, referenciando o ultralytics
pyproject.toml
ficheiro.
Se precisar de modificações personalizadas persistentes (como utilizar sempre opencv-python-headless
), pode bifurcar o repositório Ultralytics , fazer alterações no pyproject.toml
ou outro código, e instalar a partir da sua bifurcação.
- Transfira o repositório GitHub doUltralytics para a sua própria conta GitHub.
- Clone o seu garfo localmente:
git clone https://github.com/YOUR_USERNAME/ultralytics.git cd ultralytics
- Criar um novo ramo para as suas alterações:
git checkout -b custom-opencv
- Modificar
pyproject.toml
: Abertopyproject.toml
num editor de texto e substitua a linha que contém"opencv-python>=4.6.0"
com"opencv-python-headless>=4.6.0"
(ajustar a versão conforme necessário). - Confirmar e enviar as suas alterações:
git add pyproject.toml git commit -m "Switch to opencv-python-headless" git push origin custom-opencv
- Instalar utilizando o pip com o
git+https
apontando para o seu ramo:pip install git+https://github.com/YOUR_USERNAME/ultralytics.git@custom-opencv
Este método garante que o seu conjunto de dependências personalizado é utilizado sempre que instala a partir deste URL específico. Veja o Método 4 para usar isso em um requirements.txt
ficheiro.
Semelhante ao método padrão "Git Clone" para desenvolvimento, pode clonar o repositório localmente, modificar os ficheiros de dependência antes da instalação e, em seguida, instalar em modo editável.
- Clone o repositório Ultralytics :
git clone https://github.com/ultralytics/ultralytics cd ultralytics
- Modificar
pyproject.toml
: Edite o ficheiro para fazer as alterações desejadas. Por exemplo, utilizesed
(em Linux/macOS) ou um editor de texto para substituiropencv-python
comopencv-python-headless
. Utilizarsed
(verificar a linha exacta empyproject.toml
primeiro):Ou editar manualmente# Example: Replace the line starting with "opencv-python..." # Adapt the pattern carefully based on the current file content sed -i'' -e 's/^\s*"opencv-python>=.*",/"opencv-python-headless>=4.8.0",/' pyproject.toml
pyproject.toml
para mudar"opencv-python>=...
para"opencv-python-headless>=..."
. - Instalar o pacote em modo editável (
-e
). O Pip irá agora usar o seupyproject.toml
para resolver e instalar dependências:pip install -e .
Esta abordagem é útil para testar alterações locais a dependências ou configurações de compilação antes de as confirmar ou para configurar ambientes de desenvolvimento específicos.
Se você gerencia as dependências do seu projeto usando um requirements.txt
pode especificar a sua bifurcação personalizada Ultralytics diretamente no mesmo. Isso garante que qualquer pessoa que configure o projeto receba sua versão específica com suas dependências modificadas (como opencv-python-headless
).
- Criar ou editar
requirements.txt
: Adicione uma linha que aponte para a sua bifurcação e ramo personalizados (conforme preparado no Método 2).requisitos.txtNota: Não é necessário listar as dependências já exigidas pelo seu# Core dependencies numpy matplotlib pandas pyyaml Pillow psutil requests>=2.23.0 tqdm torch>=1.8.0 # Or specific version/variant torchvision>=0.9.0 # Or specific version/variant # Install ultralytics from a specific git commit or branch # Replace YOUR_USERNAME and custom-branch with your details git+https://github.com/YOUR_USERNAME/ultralytics.git@custom-branch # Other project dependencies flask # ... etc
ultralytics
garfo (comoopencv-python-headless
) aqui, pois o pip irá instalá-los com base no forkpyproject.toml
. - Instalar dependências do ficheiro:
pip install -r requirements.txt
Este método integra-se perfeitamente nos fluxos de trabalho padrão de gestão de dependências de projectos Python , permitindo-lhe fixar ultralytics
para a sua fonte Git personalizada.
Utilizar Ultralytics com CLI
A interface de linha de comandoCLI) Ultralytics permite comandos simples de linha única sem a necessidade de um ambiente Python . CLI não requer personalização ou código Python ; execute todas as tarefas a partir do terminal com o comando yolo
comando. Para mais informações sobre a utilização YOLO a partir da linha de comandos, consulte a secção CLI Guia.
Exemplo
Ultralytics yolo
utilizam a seguinte sintaxe:
yolo TASK MODE ARGS
TASK
(opcional) é um dos (detetar, segmento, classificar, pose, obb)
- MODE
(obrigatório) é um dos (comboio, val, prever, exportação, pista, referência)
- ARGS
(opcional) são arg=value
pares como imgsz=640
que se sobrepõem às predefinições.
Ver tudo ARGS
na íntegra Guia de configuração ou com o yolo cfg
CLI comando.
Treinar um modelo de deteção para 10 épocas com uma taxa de aprendizagem inicial de 0,01:
yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01
Prever um vídeo do YouTube utilizando um modelo de segmentação pré-treinado no tamanho de imagem 320:
yolo predict model=yolo11n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320
Validar um modelo de deteção pré-treinado com um tamanho de lote de 1 e um tamanho de imagem de 640:
yolo val model=yolo11n.pt data=coco8.yaml batch=1 imgsz=640
Exportar um modelo de classificação YOLOv11n para o formato ONNX com um tamanho de imagem de 224x128 (não é necessário TASK):
yolo export model=yolo11n-cls.pt format=onnx imgsz=224,128
Contar objectos num vídeo ou numa transmissão em direto utilizando o YOLO11:
yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file path
Monitorize os exercícios de treino utilizando um modelo de pose YOLO11 :
yolo solutions workout show=True
yolo solutions workout source="path/to/video.mp4" # specify video file path
# Use keypoints for ab-workouts
yolo solutions workout kpts="[5, 11, 13]" # left side
yolo solutions workout kpts="[6, 12, 14]" # right side
Utilize YOLO11 para contar objectos numa fila ou região designada:
yolo solutions queue show=True
yolo solutions queue source="path/to/video.mp4" # specify video file path
yolo solutions queue region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]" # configure queue coordinates
Efectue a deteção de objectos, a segmentação de instâncias ou a estimativa de pose num navegador Web utilizando o Streamlit:
yolo solutions inference
yolo solutions inference model="path/to/model.pt" # use model fine-tuned with Ultralytics Python package
Execute comandos especiais para ver a versão, ver definições, executar verificações e muito mais:
yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg
yolo solutions help
Aviso
Os argumentos devem ser passados como arg=value
pares, divididos por um sinal de igual =
e delimitado por espaços. Não utilizar --
prefixos de argumentos ou vírgulas ,
entre argumentos.
yolo predict model=yolo11n.pt imgsz=640 conf=0.25
✅yolo predict model yolo11n.pt imgsz 640 conf 0.25
❌ (em falta=
)yolo predict model=yolo11n.pt, imgsz=640, conf=0.25
❌ (não utilizar,
)yolo predict --model yolo11n.pt --imgsz 640 --conf 0.25
❌ (não utilizar--
)yolo solution model=yolo11n.pt imgsz=640 conf=0.25
❌ (utilizarsolutions
, nãosolution
)
Utilizar Ultralytics com Python
A interfacePython Ultralytics YOLO oferece uma integração perfeita em projectos Python , facilitando o carregamento, a execução e o processamento de resultados de modelos. Concebida para ser simples, a interface Python permite aos utilizadores implementar rapidamente a deteção, segmentação e classificação de objectos. Isso torna a interface YOLO Python uma ferramenta inestimável para incorporar essas funcionalidades em projetos Python .
Por exemplo, os utilizadores podem carregar um modelo, treiná-lo, avaliar o seu desempenho e exportá-lo para o formato ONNX com apenas algumas linhas de código. Explore o GuiaPython para saber mais sobre a utilização do YOLO nos seus projectos Python .
Exemplo
from ultralytics import YOLO
# Create a new YOLO model from scratch
model = YOLO("yolo11n.yaml")
# Load a pretrained YOLO model (recommended for training)
model = YOLO("yolo11n.pt")
# Train the model using the 'coco8.yaml' dataset for 3 epochs
results = model.train(data="coco8.yaml", epochs=3)
# Evaluate the model's performance on the validation set
results = model.val()
# Perform object detection on an image using the model
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to ONNX format
success = model.export(format="onnx")
Ultralytics Definições
A biblioteca Ultralytics inclui um SettingsManager
para um controlo refinado das experiências, permitindo aos utilizadores aceder e modificar facilmente as definições. Armazenadas num ficheiro JSON no diretório de configuração do utilizador do ambiente, estas definições podem ser visualizadas ou modificadas no ambiente Python ou através da interface da linha de comandosCLI).
Inspeção de definições
Para ver a configuração atual das suas definições:
Ver definições
Utilize Python para visualizar as suas definições importando o settings
objeto do ultralytics
módulo. Imprimir e devolver definições com estes comandos:
from ultralytics import settings
# View all settings
print(settings)
# Return a specific setting
value = settings["runs_dir"]
A interface de linha de comandos permite-lhe verificar as suas definições com:
yolo settings
Modificar definições
Ultralytics facilita a modificação das definições das seguintes formas:
Atualizar definições
Em Python, utilize a opção update
no método settings
objeto:
from ultralytics import settings
# Update a setting
settings.update({"runs_dir": "/path/to/runs"})
# Update multiple settings
settings.update({"runs_dir": "/path/to/runs", "tensorboard": False})
# Reset settings to default values
settings.reset()
Para modificar as definições utilizando a interface da linha de comandos:
# Update a setting
yolo settings runs_dir='/path/to/runs'
# Update multiple settings
yolo settings runs_dir='/path/to/runs' tensorboard=False
# Reset settings to default values
yolo settings reset
Compreender as definições
A tabela abaixo apresenta uma visão geral das definições ajustáveis no Ultralytics, incluindo exemplos de valores, tipos de dados e descrições.
Nome | Exemplo de valor | Tipo de dados | Descrição |
---|---|---|---|
settings_version |
'0.0.4' |
str |
Versãodas definições Ultralytics (distinta da versão Ultralytics pip ) |
datasets_dir |
'/path/to/datasets' |
str |
Diretório onde são armazenados os conjuntos de dados |
weights_dir |
'/path/to/weights' |
str |
Diretório onde são armazenados os pesos do modelo |
runs_dir |
'/path/to/runs' |
str |
Diretório onde são armazenadas as execuções de experiências |
uuid |
'a1b2c3d4' |
str |
Identificador único para as definições actuais |
sync |
True |
bool |
Opção para sincronizar análises e falhas com o Ultralytics HUB |
api_key |
'' |
str |
Chave da API do HUB doUltralytics |
clearml |
True |
bool |
Opção para utilizar o ClearML registo |
comet |
True |
bool |
Opção para utilizar Comet ML para rastreio e visualização de experiências |
dvc |
True |
bool |
Opção de utilização do DVC para acompanhamento de experiências e controlo de versões |
hub |
True |
bool |
Opção para utilizar a integração doUltralytics HUB |
mlflow |
True |
bool |
Opção para utilizar o MLFlow para rastreio de experiências |
neptune |
True |
bool |
Opção de utilização do Neptune para rastreio de experiências |
raytune |
True |
bool |
Opção para utilizar o Ray Tune para afinação de hiperparâmetros |
tensorboard |
True |
bool |
Opção para utilizar o TensorBoard para visualização |
wandb |
True |
bool |
Opção de utilização Weights & Biases registo |
vscode_msg |
True |
bool |
Quando é detectado um terminal VS Code, ativa um pedido de transferência da extensão Ultralytics. |
Reveja estas definições à medida que avança nos projectos ou experiências para garantir a configuração ideal.
FAQ
Como instalo o Ultralytics usando o pip?
Instale Ultralytics com pip usando:
pip install ultralytics
Isto instala a última versão estável do ultralytics
pacote de PyPI. Para instalar a versão de desenvolvimento diretamente do GitHub:
pip install git+https://github.com/ultralytics/ultralytics.git
Certifique-se de que a ferramenta de linha de comandos Git está instalada no seu sistema.
Posso instalar Ultralytics YOLO utilizando conda?
Sim, instale Ultralytics YOLO utilizando o conda com:
conda install -c conda-forge ultralytics
Esse método é uma ótima alternativa ao pip, garantindo a compatibilidade com outros pacotes. Para ambientes CUDA , instale o ultralytics
, pytorch
e pytorch-cuda
em conjunto para resolver conflitos:
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics
Para obter mais instruções, consulte o guia de início rápido do Conda.
Quais são as vantagens de utilizar o Docker para executar Ultralytics YOLO ?
O Docker fornece um ambiente isolado e consistente para o Ultralytics YOLO, garantindo um desempenho suave em todos os sistemas e evitando complexidades de instalação local. As imagens oficiais do Docker estão disponíveis no Docker Hub, com variantes para GPU, CPU, ARM64, NVIDIA Jetson e Conda. Para obter e executar a imagem mais recente:
# Pull the latest ultralytics image from Docker Hub
sudo docker pull ultralytics/ultralytics:latest
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --gpus all ultralytics/ultralytics:latest
Para obter instruções detalhadas sobre o Docker, consulte o guia de início rápido do Docker.
Como é que clono o repositório Ultralytics para desenvolvimento?
Clone o repositório do Ultralytics e configure um ambiente de desenvolvimento com:
# Clone the ultralytics repository
git clone https://github.com/ultralytics/ultralytics
# Navigate to the cloned directory
cd ultralytics
# Install the package in editable mode for development
pip install -e .
Isto permite contribuições para o projeto ou a experimentação com o código-fonte mais recente. Para mais informações, visite o repositório GitHub doUltralytics .
Por que razão devo utilizar Ultralytics YOLO CLI ?
O Ultralytics YOLO CLI simplifica a execução de tarefas de deteção de objectos sem código Python , permitindo comandos de linha única para formação, validação e previsão diretamente a partir do seu terminal. A sintaxe básica é:
yolo TASK MODE ARGS
Por exemplo, para treinar um modelo de deteção:
yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01
Explore mais comandos e exemplos de utilização no GuiaCLI completo.