Saltar al contenido

Inicio rápido

Instala Ultralytics

Ultralytics proporciona varios métodos de instalación, como pip, conda y Docker. Instala YOLOv8 mediante el ultralytics pip para la última versión estable o clonando el paquete Ultralytics Repositorio GitHub para obtener la versión más actualizada. Se puede utilizar Docker para ejecutar el paquete en un contenedor aislado, evitando la instalación local.



Observa: Ultralytics YOLO Guía de inicio rápido

Instala

Instala el ultralytics mediante pip, o actualiza una instalación existente ejecutando pip install -U ultralytics. Visita el Índice de Paquetes Python (PyPI) para más detalles sobre el ultralytics paquete: https://pypi.org/project/ultralytics/.

Versión PyPI Descargas

# Install the ultralytics package from PyPI
pip install ultralytics

También puedes instalar el ultralytics directamente desde GitHub repositorio. Esto puede ser útil si quieres la última versión de desarrollo. Asegúrate de tener instalada en tu sistema la herramienta de línea de comandos Git. La página @main instala el comando main rama y puede modificarse a otra rama, es decir @my-brancho suprimirlo completamente para pasar por defecto a main rama.

# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@main

Conda es un gestor de paquetes alternativo a pip que también puede utilizarse para la instalación. Visita Anaconda para más detalles en https://anaconda.org/conda-forge/ultralytics. Ultralytics el repositorio feedstock para actualizar el paquete conda está en https://github.com/conda-forge/ultralytics-feedstock/.

Receta Conda Descargas Conda Versión Conda Plataformas Conda

# Install the ultralytics package using conda
conda install -c conda-forge ultralytics

Nota

Si estás instalando en un entorno CUDA, la mejor práctica es instalar ultralytics, pytorch y pytorch-cuda en el mismo comando para permitir que el gestor de paquetes conda resuelva cualquier conflicto, o bien para instalar pytorch-cuda último para permitirle anular la función específica de la CPU pytorch paquete si es necesario.

# Install all packages together using conda
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics

Imagen Docker Conda

Ultralytics Las imágenes Docker de Conda también están disponibles en DockerHub. Estas imágenes se basan en Miniconda3 y son una forma sencilla de empezar a utilizar ultralytics en un entorno 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

Clona el ultralytics si estás interesado en contribuir al desarrollo o deseas experimentar con el código fuente más reciente. Después de clonar, navega hasta el directorio e instala el paquete en modo editable -e utilizando 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 .

Utiliza Docker para ejecutar sin esfuerzo el ultralytics en un contenedor aislado, lo que garantiza un rendimiento uniforme y sin problemas en varios entornos. Al elegir uno de los paquetes oficiales ultralytics imágenes de Docker HubCon Docker, no sólo evitas la complejidad de la instalación local, sino que también te beneficias del acceso a un entorno de trabajo verificado. Ultralytics ofrece 5 imágenes Docker principales compatibles, cada una de ellas diseñada para proporcionar una gran compatibilidad y eficacia para diferentes plataformas y casos de uso:

Tirones de Docker

  • Dockerfile: Imagen GPU recomendada para el entrenamiento.
  • Dockerfile-arm64: Optimizado para la arquitectura ARM64, permite el despliegue en dispositivos como Raspberry Pi y otras plataformas basadas en ARM64.
  • Dockerfile-cpu: versión para CPU basada en Ubuntu, adecuada para inferencia y entornos sin GPU.
  • Dockerfile-jetson: Adaptado para dispositivos NVIDIA Jetson, integrando soporte GPU optimizado para estas plataformas.
  • Dockerfile-python: Imagen mínima con sólo Python y las dependencias necesarias, ideal para aplicaciones ligeras y desarrollo.
  • Dockerfile-conda: Basado en Miniconda3 con instalación conda del paquete ultralytics .

A continuación se indican los comandos para obtener la última imagen y ejecutarla:

# 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

El comando anterior inicializa un contenedor Docker con la última versión de ultralytics imagen. En -it asigna un pseudo-TTY y mantiene stdin abierto, lo que te permite interactuar con el contenedor. La opción --ipc=host establece el espacio de nombres IPC (comunicación entre procesos) en el host, que es esencial para compartir memoria entre procesos. La dirección --gpus all flag permite acceder a todas las GPUs disponibles dentro del contenedor, lo que es crucial para tareas que requieren computación en la GPU.

Nota: Para trabajar con archivos de tu máquina local dentro del contenedor, utiliza volúmenes Docker para montar un directorio local en el contenedor:

# 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

Alter /path/on/host con la ruta del directorio en tu máquina local, y /path/in/container con la ruta deseada dentro del contenedor Docker para que sea accesible.

Para un uso avanzado de Docker, no dudes en explorar la Guía Docker de Ultralytics .

Ver el ultralytics requisitos.txt para obtener una lista de dependencias. Ten en cuenta que todos los ejemplos anteriores instalan todas las dependencias necesarias.

Consejo

PyTorch Los requisitos varían según el sistema operativo y los requisitos de CUDA, por lo que se recomienda instalar primero PyTorch siguiendo las instrucciones de https://pytorch.org/get-started/locally.

PyTorch Instrucciones de instalación

Utiliza Ultralytics con CLI

La interfaz de línea de comandos Ultralytics (CLI) permite ejecutar comandos sencillos de una sola línea sin necesidad de un entorno Python . CLI no requiere personalización ni código Python . Puedes simplemente ejecutar todas las tareas desde el terminal con el comando yolo mando. Echa un vistazo a CLI Guía para saber más sobre cómo utilizar YOLOv8 desde la línea de comandos.

Ejemplo

Ultralytics yolo utilizan la siguiente sintaxis:

yolo TASK MODE ARGS

Ver todo ARGS en el pleno Guía de configuración o con el yolo cfg CLI mando.

Entrena un modelo de detección durante 10 épocas con una tasa_de_aprendizaje inicial de 0,01

yolo train data=coco128.yaml model=yolov8n.pt epochs=10 lr0=0.01

Predecir un vídeo de YouTube utilizando un modelo de segmentación preentrenado a tamaño de imagen 320:

yolo predict model=yolov8n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

Val un modelo de detección preentrenado a tamaño de lote 1 y tamaño de imagen 640:

yolo val model=yolov8n.pt data=coco128.yaml batch=1 imgsz=640

Exporta un modelo de clasificación YOLOv8n al formato ONNX con un tamaño de imagen de 224 por 128 (no requiere TASK).

yolo export model=yolov8n-cls.pt format=onnx imgsz=224,128

Ejecuta comandos especiales para ver la versión, ver la configuración, ejecutar comprobaciones y mucho más:

yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg

Advertencia

Los argumentos deben pasarse como arg=val pares, divididos por una igualdad = y delimitado por espacios entre pares. No utilices -- prefijos de argumento o comas , entre argumentos.

  • yolo predict model=yolov8n.pt imgsz=640 conf=0.25 ✅
  • yolo predict model yolov8n.pt imgsz 640 conf 0.25 ❌ (falta =)
  • yolo predict model=yolov8n.pt, imgsz=640, conf=0.25 ❌ (no utilices ,)
  • yolo predict --model yolov8n.pt --imgsz 640 --conf 0.25 ❌ (no utilices --)

CLI Guía

Utiliza Ultralytics con Python

YOLOv8La interfaz de Python permite una integración perfecta en tus proyectos de Python , facilitando la carga, ejecución y procesamiento de los resultados del modelo. Diseñada pensando en la sencillez y la facilidad de uso, la interfaz Python permite a los usuarios implementar rápidamente la detección, segmentación y clasificación de objetos en sus proyectos. Esto hace que la interfaz Python de YOLOv8 sea una herramienta inestimable para cualquiera que desee incorporar estas funcionalidades a sus proyectos Python .

Por ejemplo, los usuarios pueden cargar un modelo, entrenarlo, evaluar su rendimiento en un conjunto de validación e incluso exportarlo al formato ONNX con sólo unas líneas de código. Consulta la GuíaPython para obtener más información sobre el uso de YOLOv8 en tus proyectos Python .

Ejemplo

from ultralytics import YOLO

# Create a new YOLO model from scratch
model = YOLO('yolov8n.yaml')

# Load a pretrained YOLO model (recommended for training)
model = YOLO('yolov8n.pt')

# Train the model using the 'coco128.yaml' dataset for 3 epochs
results = model.train(data='coco128.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')

Python Guía

Ultralytics Ajustes

La biblioteca Ultralytics proporciona un potente sistema de gestión de ajustes que permite un control detallado de tus experimentos. Utilizando la función SettingsManager alojados en el ultralytics.utils los usuarios pueden acceder fácilmente a sus ajustes y modificarlos. Éstos se almacenan en un archivo YAML y pueden verse o modificarse directamente en el entorno Python o a través de la interfaz de línea de comandos (CLI).

Inspeccionar ajustes

Para conocer la configuración actual de tus ajustes, puedes verlos directamente:

Ver ajustes

Puedes utilizar Python para ver tus ajustes. Empieza importando el archivo settings del objeto ultralytics módulo. Imprime y devuelve los ajustes mediante los siguientes comandos:

from ultralytics import settings

# View all settings
print(settings)

# Return a specific setting
value = settings['runs_dir']

Alternativamente, la interfaz de línea de comandos te permite comprobar tu configuración con un simple comando:

yolo settings

Modificar ajustes

Ultralytics permite a los usuarios modificar fácilmente sus ajustes. Los cambios se pueden realizar de las siguientes formas:

Actualizar ajustes

Dentro del entorno Python , llama a la función update del método settings para cambiar tu configuración:

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()

Si prefieres utilizar la interfaz de línea de comandos, los siguientes comandos te permitirán modificar tu configuración:

# 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

Comprender los ajustes

La siguiente tabla proporciona una visión general de los ajustes disponibles en Ultralytics. Cada ajuste se describe con un valor de ejemplo, el tipo de dato y una breve descripción.

Nombre Valor de ejemplo Tipo de datos Descripción
settings_version '0.0.4' str Ultralytics versión deconfiguración (diferente de la versiónpip de Ultralytics )
datasets_dir '/path/to/datasets' str El directorio donde se almacenan los conjuntos de datos
weights_dir '/path/to/weights' str El directorio donde se almacenan los pesos del modelo
runs_dir '/path/to/runs' str El directorio donde se almacenan las ejecuciones del experimento
uuid 'a1b2c3d4' str El identificador único de la configuración actual
sync True bool Si se sincronizan los análisis y las caídas con HUB
api_key '' str Ultralytics HUB Clave API
clearml True bool Si se utiliza el registro ClearML
comet True bool Si utilizar Comet ML para el seguimiento y visualización de experimentos
dvc True bool Si utilizar DVC para el seguimiento de experimentos y el control de versiones
hub True bool Si utilizar Ultralytics HUB integración
mlflow True bool Si utilizar MLFlow para el seguimiento de experimentos
neptune True bool Si utilizar Neptune para el seguimiento de experimentos
raytune True bool Si utilizar Ray Tune para el ajuste de hiperparámetros
tensorboard True bool Si utilizar TensorBoard para la visualización
wandb True bool Si se utiliza el registro Weights & Biases

A medida que navegas por tus proyectos o experimentos, asegúrate de revisar estos ajustes para comprobar que están configurados de forma óptima para tus necesidades.



Creado 2023-11-12, Actualizado 2024-02-03
Autores: glenn-jocher (7), chr043416@gmail.com (2), Laughing-q (1), AyushExel (1)

Comentarios