Instala Ultralytics
Ultralytics ofrece varios métodos de instalación, incluyendo pip, conda y Docker. Puedes instalar YOLO a través del paquete pip ultralytics para obtener la última versión estable, o clonando el repositorio de GitHub de Ultralytics para la versión más actual. Docker es también una opción para ejecutar el paquete en un contenedor aislado, lo que evita la instalación local.
Watch: Ultralytics YOLO Quick Start Guide
Instala o actualiza el paquete ultralytics usando pip ejecutando pip install -U ultralytics. Para más detalles sobre el paquete ultralytics, visita el Python Package Index (PyPI).
# Install or upgrade the ultralytics package from PyPI
pip install -U ultralyticsTambién puedes instalar ultralytics directamente desde el repositorio de GitHub de Ultralytics. Esto puede ser útil si quieres la última versión de desarrollo. Asegúrate de tener instalada la herramienta de línea de comandos Git y luego ejecuta:
# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@mainConsulta el archivo ultralytics pyproject.toml para ver una lista de dependencias. Ten en cuenta que todos los ejemplos anteriores instalan todas las dependencias requeridas.
Instalación en servidor headless
Para entornos de servidor sin pantalla (por ejemplo, VMs en la nube, contenedores Docker, pipelines CI/CD), usa el paquete ultralytics-opencv-headless. Este es idéntico al paquete ultralytics estándar, pero depende de opencv-python-headless en lugar de opencv-python, evitando dependencias innecesarias de GUI y posibles errores de libGL.
pip install ultralytics-opencv-headlessAmbos paquetes proporcionan la misma funcionalidad y API. La variante headless simplemente excluye los componentes GUI de OpenCV que requieren librerías de visualización.
Instalación avanzada
Aunque los métodos de instalación estándar cubren la mayoría de los casos de uso, podrías necesitar una configuración más a medida para desarrollo o configuraciones personalizadas.
Si necesitas modificaciones personalizadas persistentes, puedes hacer un fork del repositorio de Ultralytics, realizar cambios en pyproject.toml u otro código, e instalar desde tu fork.
- Haz un fork del repositorio de GitHub de Ultralytics a tu propia cuenta de GitHub.
- Clona tu fork localmente:
git clone https://github.com/YOUR_USERNAME/ultralytics.git cd ultralytics - Crea una nueva rama para tus cambios:
git checkout -b my-custom-branch - Realiza tus modificaciones en
pyproject.tomlu otros archivos según sea necesario. - Confirma (commit) y envía (push) tus cambios:
git add . git commit -m "My custom changes" git push origin my-custom-branch - Instala usando pip con la sintaxis
git+https, apuntando a tu rama:pip install git+https://github.com/YOUR_USERNAME/ultralytics.git@my-custom-branch
Usar Ultralytics con CLI
La interfaz de línea de comandos (CLI) de Ultralytics permite comandos simples de una sola línea sin necesidad de un entorno Python. CLI no requiere personalización ni código Python; ejecuta todas las tareas desde la terminal con el comando yolo. Para más información sobre el uso de YOLO desde la línea de comandos, consulta la Guía de CLI.
Los comandos yolo de Ultralytics utilizan la siguiente sintaxis:
yolo TASK MODE ARGSTASK(opcional) es uno de (detect, segment, classify, pose, obb)MODE(obligatorio) es uno de (train, val, predict, export, track, benchmark)ARGS(opcional) son pares dearg=valuecomoimgsz=640que sobrescriben los valores predeterminados.
Consulta todos los ARGS en la Guía de configuración completa o con el comando CLI yolo cfg.
Los argumentos deben pasarse como pares arg=value, separados por un signo igual = y delimitados por espacios. No utilices prefijos de argumento -- ni comas , entre argumentos.
yolo predict model=yolo26n.pt imgsz=640 conf=0.25✅yolo predict model yolo26n.pt imgsz 640 conf 0.25❌ (falta el=)yolo predict model=yolo26n.pt, imgsz=640, conf=0.25❌ (no uses,)yolo predict --model yolo26n.pt --imgsz 640 --conf 0.25❌ (no uses--)yolo solution model=yolo26n.pt imgsz=640 conf=0.25❌ (usasolutions, nosolution)
Usar Ultralytics con Python
La interfaz de Python de YOLO de Ultralytics ofrece una integración perfecta en proyectos de Python, facilitando la carga, ejecución y procesamiento de las salidas del modelo. Diseñada para la simplicidad, la interfaz de Python permite a los usuarios implementar rápidamente detección de objetos, segmentación y clasificación. Esto convierte a la interfaz de Python de YOLO en una herramienta invaluable para incorporar estas funcionalidades en proyectos de Python.
Por ejemplo, los usuarios pueden cargar un modelo, entrenarlo, evaluar su rendimiento y exportarlo al formato ONNX con solo unas pocas líneas de código. Explora la Guía de Python para aprender más sobre el uso de YOLO dentro de tus proyectos de Python.
from ultralytics import YOLO
# Create a new YOLO model from scratch
model = YOLO("yolo26n.yaml")
# Load a pretrained YOLO model (recommended for training)
model = YOLO("yolo26n.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")Ajustes de Ultralytics
La librería Ultralytics incluye un SettingsManager para un control detallado sobre los experimentos, permitiendo a los usuarios acceder y modificar los ajustes fácilmente. Almacenados en un archivo JSON dentro del directorio de configuración de usuario del entorno, estos ajustes pueden verse o modificarse en el entorno de Python o mediante la Interfaz de Línea de Comandos (CLI).
Inspeccionar los ajustes
Para ver la configuración actual de tus ajustes:
Usa Python para ver tus ajustes importando el objeto settings del módulo ultralytics. Imprime y devuelve los ajustes con estos comandos:
from ultralytics import settings
# View all settings
print(settings)
# Return a specific setting
value = settings["runs_dir"]Modificación de ajustes
Ultralytics facilita la modificación de ajustes de las siguientes maneras:
En Python, usa el método update en el objeto settings:
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()Entender los ajustes
La siguiente tabla ofrece una visión general de los ajustes configurables dentro de Ultralytics, incluyendo valores de ejemplo, tipos de datos y descripciones.
| Nombre | Valor de ejemplo | Tipo de dato | Descripción |
|---|---|---|---|
settings_version | '0.0.4' | str | Ultralytics settings version (distinct from the Ultralytics pip version) |
datasets_dir | '/path/to/datasets' | str | Directorio donde se almacenan los datasets |
weights_dir | '/path/to/weights' | str | Directorio donde se almacenan los pesos del modelo |
runs_dir | '/path/to/runs' | str | Directorio donde se almacenan las ejecuciones de experimentos |
uuid | 'a1b2c3d4' | str | Identificador único para los ajustes actuales |
sync | True | bool | Option to sync analytics and crashes to Ultralytics Platform |
api_key | '' | str | Ultralytics Platform API Key |
clearml | True | bool | Option to use ClearML logging |
comet | True | bool | Option to use Comet ML for experiment tracking and visualization |
dvc | True | bool | Option to use DVC for experiment tracking and version control |
hub | True | bool | Option to use Ultralytics Platform integration |
mlflow | True | bool | Option to use MLFlow for experiment tracking |
neptune | True | bool | Option to use Neptune for experiment tracking |
raytune | True | bool | Option to use Ray Tune for hyperparameter tuning |
tensorboard | True | bool | Option to use TensorBoard for visualization |
wandb | True | bool | Option to use Weights & Biases logging |
vscode_msg | True | bool | When a VS Code terminal is detected, enables a prompt to download the Ultralytics-Snippets extension. |
Revisa estos ajustes a medida que avances en tus proyectos o experimentos para asegurar una configuración óptima.
Preguntas frecuentes
¿Cómo instalo Ultralytics usando pip?
Instala Ultralytics con pip usando:
pip install -U ultralyticsEsto instala la última versión estable del paquete ultralytics desde PyPI. Para instalar la versión de desarrollo directamente desde GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitAsegúrate de que la herramienta de línea de comandos Git esté instalada en tu sistema.
¿Puedo instalar Ultralytics YOLO usando conda?
Sí, instala Ultralytics YOLO usando conda con:
conda install -c conda-forge ultralyticsEste método es una gran alternativa a pip, asegurando la compatibilidad con otros paquetes. Para entornos CUDA, instala ultralytics, pytorch y pytorch-cuda juntos para resolver conflictos:
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralyticsPara más instrucciones, consulta la Conda quickstart guide.
¿Cuáles son las ventajas de usar Docker para ejecutar Ultralytics YOLO?
Docker proporciona un entorno aislado y consistente para Ultralytics YOLO, asegurando un rendimiento fluido entre sistemas y evitando complejidades de instalación local. Las imágenes oficiales de Docker están disponibles en Docker Hub, con variantes para GPU, CPU, ARM64, NVIDIA Jetson y Conda. Para descargar y ejecutar la última imagen:
# 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 --runtime=nvidia --gpus all ultralytics/ultralytics:latestPara instrucciones detalladas sobre Docker, consulta la Docker quickstart guide.
¿Cómo clono el repositorio de Ultralytics para desarrollo?
Clona el repositorio de Ultralytics y prepara un entorno de desarrollo con:
# 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 .Esto permite realizar contribuciones al proyecto o experimentar con el código fuente más reciente. Para más detalles, visita el Ultralytics GitHub repository.
¿Por qué debería usar la CLI de Ultralytics YOLO?
La CLI de Ultralytics YOLO simplifica la ejecución de tareas de detección de objetos sin necesidad de código Python, permitiendo comandos de una sola línea para entrenamiento, validación y predicción directamente desde tu terminal. La sintaxis básica es:
yolo TASK MODE ARGSPor ejemplo, para entrenar un modelo de detección:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01Explora más comandos y ejemplos de uso en la CLI Guide completa.