Meet YOLO26: next-gen vision AI.

Link to this sectionPreguntas frecuentes (FAQ) sobre Ultralytics YOLO#

Esta sección de preguntas frecuentes aborda dudas y problemas habituales que los usuarios pueden encontrar al trabajar con los repositorios de Ultralytics YOLO.

Link to this sectionFAQ#

Link to this section¿Qué es Ultralytics y qué ofrece?#

Ultralytics es una empresa de IA dedicada a la visión artificial que se especializa en modelos de vanguardia para detección de objetos y segmentación de imágenes, con un enfoque especial en la familia YOLO (You Only Look Once). Sus ofertas incluyen:

Link to this section¿Cómo instalo el paquete de Ultralytics?#

Instalar el paquete de Ultralytics es sencillo mediante pip:

pip install ultralytics

Para obtener la última versión de desarrollo, instálalo directamente desde el repositorio de GitHub:

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

Puedes encontrar instrucciones de instalación detalladas en la guía de inicio rápido.

Link to this section¿Cuáles son los requisitos del sistema para ejecutar modelos de Ultralytics?#

Requisitos mínimos:

  • Python 3.8 o superior
  • PyTorch 1.8 o superior
  • GPU compatible con CUDA (para aceleración por GPU)

Configuración recomendada:

  • Python 3.8 o superior
  • PyTorch 1.10 o superior
  • GPU NVIDIA con CUDA 11.2 o superior
  • 8 GB o más de RAM
  • 50 GB o más de espacio libre en disco (para almacenamiento de datasets y entrenamiento de modelos)

Para solucionar problemas comunes, visita la página de Problemas Comunes de YOLO.

Link to this section¿Cómo puedo entrenar un modelo YOLO personalizado con mi propio dataset?#

Para entrenar un modelo YOLO personalizado:

  1. Prepara tu dataset en formato YOLO (imágenes y archivos txt de etiquetas correspondientes).

  2. Crea un archivo YAML que describa la estructura de tu dataset y las clases (consulta el ejemplo de YAML de dataset).

  3. Usa el siguiente código de Python para iniciar el entrenamiento:

    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 una guía más profunda, que incluye la preparación de datos y opciones de entrenamiento avanzadas, consulta la guía de entrenamiento completa.

Link to this section¿Qué modelos preentrenados están disponibles en Ultralytics?#

Ultralytics ofrece una amplia variedad de modelos preentrenados para diversas tareas:

  • Detección de objetos: YOLO26n, YOLO26s, YOLO26m, YOLO26l, YOLO26x
  • Segmentación de instancias: YOLO26n-seg, YOLO26s-seg, YOLO26m-seg, YOLO26l-seg, YOLO26x-seg
  • Segmentación semántica: YOLO26n-sem, YOLO26s-sem, YOLO26m-sem, YOLO26l-sem, YOLO26x-sem
  • Clasificación: YOLO26n-cls, YOLO26s-cls, YOLO26m-cls, YOLO26l-cls, YOLO26x-cls
  • Estimación de pose: YOLO26n-pose, YOLO26s-pose, YOLO26m-pose, YOLO26l-pose, YOLO26x-pose
  • Detección orientada (OBB): YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb

Estos modelos varían en tamaño y complejidad, ofreciendo diferentes compromisos entre velocidad y precisión. Explora la gama completa de modelos preentrenados para encontrar el que mejor se adapte a tu proyecto.

Link to this section¿Cómo realizo la inferencia usando un modelo de Ultralytics entrenado?#

Para realizar la inferencia con un modelo entrenado:

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 opciones de inferencia avanzadas, incluyendo procesamiento por lotes e inferencia de video, consulta la guía de predicción detallada.

Link to this section¿Se pueden desplegar los modelos de Ultralytics en dispositivos Edge o en entornos de producción?#

¡Por supuesto! Los modelos de Ultralytics están diseñados para un despliegue versátil en diversas plataformas:

  • Dispositivos Edge: Optimiza la inferencia en dispositivos como NVIDIA Jetson o Intel Neural Compute Stick usando TensorRT, ONNX o OpenVINO.
  • Móvil: Despliega en dispositivos Android o iOS convirtiendo los modelos a TFLite o Core ML.
  • Nube: Aprovecha marcos de trabajo como TensorFlow Serving o PyTorch Serve para despliegues en la nube escalables.
  • Web: Implementa la inferencia en el navegador usando ONNX.js o TensorFlow.js.

Ultralytics proporciona funciones de exportación para convertir modelos a varios formatos para su despliegue. Explora la amplia gama de opciones de despliegue para encontrar la mejor solución para tu caso de uso.

Link to this section¿Cuál es la diferencia entre YOLO11 y YOLO26?#

Las diferencias principales incluyen:

  • Inferencia integral sin NMS (End-to-End NMS-Free): YOLO26 es nativamente integral, generando predicciones directamente sin supresión de no máximos (NMS), lo que reduce la latencia y simplifica el despliegue.
  • Eliminación de DFL: YOLO26 elimina el módulo de Distribution Focal Loss (DFL), lo que simplifica la exportación y mejora la compatibilidad con dispositivos Edge y de baja potencia.
  • Optimizador MuSGD: Un híbrido de SGD y Muon (inspirado en Kimi K2 de Moonshot AI) para un entrenamiento más estable y una convergencia más rápida.
  • Rendimiento en CPU: YOLO26 ofrece una inferencia en CPU hasta un 43 % más rápida, lo que lo hace ideal para dispositivos sin GPU.
  • Optimizaciones específicas para cada tarea: Segmentación mejorada con pérdida semántica y protos multiescala, RLE para una estimación de pose precisa y decodificación OBB mejorada con pérdida de ángulo.
  • Tareas: Ambos modelos admiten detección de objetos y segmentación de instancias, mientras que YOLO26 también añade segmentación semántica para predicciones densas a nivel de píxel. Ambos modelos también admiten clasificación, estimación de pose y detección de objetos orientados (OBB) en un marco de trabajo unificado.

Para una comparación detallada de las características y las métricas de rendimiento, visita la página de documentación de YOLO26.

Link to this section¿Cómo puedo contribuir al proyecto de código abierto de Ultralytics?#

Contribuir a Ultralytics es una excelente manera de mejorar el proyecto y ampliar tus habilidades. Aquí te explicamos cómo participar:

  1. Haz un fork del repositorio de Ultralytics en GitHub.
  2. Crea una nueva rama para tu funcionalidad o corrección de error.
  3. Realiza tus cambios y asegúrate de que todas las pruebas pasen.
  4. Envía una pull request con una descripción clara de tus cambios.
  5. Participa en el proceso de revisión de código.

También puedes contribuir informando sobre errores, sugiriendo características o mejorando la documentación. Para conocer las directrices detalladas y las mejores prácticas, consulta la guía de contribución.

Link to this section¿Cómo instalo el paquete de Ultralytics en Python?#

Instalar el paquete de Ultralytics en Python es sencillo. Usa pip ejecutando el siguiente comando en tu terminal o símbolo del sistema:

pip install ultralytics

Para obtener la versión de desarrollo de vanguardia, instálalo directamente desde el repositorio de GitHub:

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

Para obtener instrucciones de instalación específicas para cada entorno y consejos de solución de problemas, consulta la guía de inicio rápido completa.

Link to this section¿Cuáles son las características principales de Ultralytics YOLO?#

Ultralytics YOLO cuenta con un amplio conjunto de funciones para tareas avanzadas de visión artificial:

  • Detección en tiempo real: Detecta y clasifica objetos de forma eficiente en escenarios de tiempo real.
  • Capacidades multitarea: Realiza detección de objetos, segmentación de instancias, segmentación semántica, clasificación, estimación de pose y detección de objetos orientados (OBB) con un marco de trabajo unificado.
  • Modelos preentrenados: Accede a una variedad de modelos preentrenados que equilibran la velocidad y la precisión para diferentes casos de uso.
  • Entrenamiento personalizado: Ajusta fácilmente los modelos en conjuntos de datos personalizados con el pipeline de entrenamiento flexible.
  • Amplias Opciones de Despliegue: Exporta modelos a varios formatos como TensorRT, ONNX y CoreML para su despliegue en diferentes plataformas.
  • Documentación extensa: Benefíciate de una documentación integral y de una comunidad de apoyo para tus flujos de trabajo de visión artificial.

Link to this section¿Cómo puedo mejorar el rendimiento de mi modelo YOLO?#

Puedes mejorar el rendimiento de tu modelo YOLO mediante varias técnicas:

  1. Ajuste de Hiperparámetros: Experimenta con diferentes hiperparámetros usando la Guía de Ajuste de Hiperparámetros para optimizar el rendimiento del modelo.
  2. Aumento de datos: Implementa técnicas como volteo, cambio de escala, rotación y ajustes de color para mejorar tu dataset de entrenamiento y mejorar la generalización del modelo.
  3. Aprendizaje por transferencia: Aprovecha los modelos preentrenados y ajústalos a tu dataset específico usando la Guía de entrenamiento.
  4. Exportación a formatos eficientes: Convierte tu modelo a formatos optimizados como TensorRT u ONNX para una inferencia más rápida usando la Guía de exportación.
  5. Evaluación comparativa (Benchmarking): Utiliza el Modo de Benchmarking para medir y mejorar la velocidad y precisión de la inferencia de forma sistemática.

Link to this section¿Puedo desplegar los modelos de Ultralytics YOLO en dispositivos móviles y Edge?#

Sí, los modelos de Ultralytics YOLO están diseñados para un despliegue versátil, incluyendo dispositivos móviles y Edge:

  • Móvil: Convierte modelos a TFLite o CoreML para una integración perfecta en aplicaciones de Android o iOS. Consulta la Guía de Integración de TFLite y la Guía de Integración de CoreML para obtener instrucciones específicas de la plataforma.
  • Dispositivos de borde (Edge): Optimiza la inferencia en dispositivos como NVIDIA Jetson u otro hardware de borde utilizando TensorRT u ONNX. La Guía de Integración de Edge TPU proporciona pasos detallados para el despliegue en el borde.

Para una visión general integral de las estrategias de despliegue en varias plataformas, consulta la guía de opciones de despliegue.

Link to this section¿Cómo puedo realizar la inferencia usando un modelo de Ultralytics YOLO entrenado?#

Realizar la inferencia con un modelo de Ultralytics YOLO entrenado es sencillo:

  1. Carga el modelo:

    from ultralytics import YOLO
    
    model = YOLO("path/to/your/model.pt")
  2. Ejecuta la inferencia:

    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 inferencia avanzadas, que incluyen el procesamiento por lotes, la inferencia de video y el preprocesamiento personalizado, consulta la guía de predicción detallada.

Link to this section¿Dónde puedo encontrar ejemplos y tutoriales para usar Ultralytics?#

Ultralytics proporciona una gran cantidad de recursos para ayudarte a empezar y dominar sus herramientas:

Estos recursos proporcionan ejemplos de código, casos de uso reales y guías paso a paso para diversas tareas utilizando modelos de Ultralytics.

Si necesitas más ayuda, consulta la documentación de Ultralytics o contacta con la comunidad a través de GitHub Issues o el foro de debate oficial.

Comentarios