Ir al contenido

Inferencia en directo con la aplicación Streamlit mediante Ultralytics YOLO11

Introducción

Streamlit simplifica la creación y el despliegue de aplicaciones web interactivas. Su combinación con Ultralytics YOLO11 permite detectar y analizar objetos en tiempo real directamente en el navegador. La alta precisión y velocidad de YOLO11 garantizan un rendimiento sin fisuras para secuencias de vídeo en directo, por lo que es ideal para aplicaciones de seguridad, comercio minorista y otros sectores.



Observa: Cómo utilizar Streamlit con Ultralytics para tiempo real Visión por ordenador en su navegador

Acuicultura Cría de animales
Detección de peces mediante Ultralytics YOLO11 Detección de animales mediante Ultralytics YOLO11
Detección de peces mediante Ultralytics YOLO11 Detección de animales mediante Ultralytics YOLO11

Ventajas de la inferencia en directo

  • Detección de objetos en tiempo real: Streamlit combinado con YOLO11 permite la detección de objetos en tiempo real directamente desde su webcam. Esto permite un análisis y una comprensión inmediatos, por lo que es ideal para aplicaciones que requieren información instantánea.
  • Despliegue sencillo: La interfaz interactiva de Streamlit facilita la implantación y el uso de la aplicación sin necesidad de grandes conocimientos técnicos. Los usuarios pueden iniciar la inferencia en directo con un simple clic, lo que mejora la accesibilidad y la usabilidad.
  • Utilización eficiente de los recursos: Los algoritmos optimizados de YOLO11 garantizan un procesamiento de alta velocidad con un mínimo de recursos informáticos. Esta eficiencia permite una inferencia de webcam fluida y fiable incluso en hardware estándar, lo que pone la visión por ordenador avanzada al alcance de un público más amplio.

Código de aplicación Streamlit

Ultralytics Instalación

Antes de empezar a crear la aplicación, asegúrese de tener instalado el paquete Ultralytics Python . Puedes instalarlo usando el comando pip install ultralytics

Inferencia mediante Streamlit con Ultralytics YOLO

yolo solutions inference

yolo solutions inference model="path/to/model.pt"
from ultralytics import solutions

inf = solutions.Inference(
    model="yolo11n.pt",  # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
)

inf.inference()

# Make sure to run the file using command `streamlit run path/to/file.py`

Esto iniciará la aplicación Streamlit en tu navegador web predeterminado. Verá el título principal, el subtítulo y la barra lateral con las opciones de configuración. Seleccione el modelo YOLO11 que desee, establezca los umbrales de confianza y NMS y haga clic en el botón "Iniciar" para comenzar la detección de objetos en tiempo real.

Opcionalmente, puede indicar un modelo concreto en Python:

Aplicación Streamlit con un modelo personalizado

from ultralytics import solutions

inf = solutions.Inference(
    model="yolo11n.pt",  # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)

inf.inference()

# Make sure to run the file using command `streamlit run path/to/file.py`

Cómo funciona

Bajo el capó, la aplicación Streamlit utiliza el módulo de solucionesUltralytics para crear una interfaz interactiva. Cuando se inicia la inferencia, la aplicación:

  1. Captura vídeo de tu webcam o de un archivo de vídeo cargado
  2. Procesa cada fotograma a través del modelo YOLO11
  3. Aplica la detección de objetos con los umbrales de confianza e IoU especificados.
  4. Muestra en tiempo real los fotogramas originales y los anotados
  5. Activa opcionalmente el seguimiento de objetos si se selecciona

La aplicación ofrece una interfaz limpia y fácil de usar con controles para ajustar los parámetros del modelo e iniciar/detener la inferencia en cualquier momento.

Conclusión

Siguiendo esta guía, habrás creado con éxito una aplicación de detección de objetos en tiempo real utilizando Streamlit y Ultralytics YOLO11 . Esta aplicación le permite experimentar la potencia de YOLO11 en la detección de objetos a través de su webcam, con una interfaz fácil de usar y la posibilidad de detener el flujo de vídeo en cualquier momento.

Para obtener más mejoras, puede explorar la posibilidad de añadir más funciones, como grabar el flujo de vídeo, guardar los fotogramas anotados o integrarse con otras bibliotecas de visión por ordenador.

Comparta sus ideas con la comunidad

Participe en la comunidad para aprender más, solucionar problemas y compartir sus proyectos:

Dónde encontrar ayuda y apoyo

  • Problemas en GitHub: Visite el repositorio GitHub deUltralytics para plantear preguntas, informar de errores y sugerir funciones.
  • Ultralytics Servidor Discord: Únete al servidor Discord deUltralytics para conectar con otros usuarios y desarrolladores, obtener ayuda, compartir conocimientos y aportar ideas.

Documentación oficial

  • Ultralytics YOLO11 Documentación: Consulte la documentación oficial de YOLO11 para obtener guías completas y conocimientos sobre diversas tareas y proyectos de visión por ordenador.

PREGUNTAS FRECUENTES

¿Cómo puedo configurar una aplicación de detección de objetos en tiempo real utilizando Streamlit y Ultralytics YOLO11 ?

Configurar una aplicación de detección de objetos en tiempo real con Streamlit y Ultralytics YOLO11 es sencillo. En primer lugar, asegúrese de tener instalado el paquete Ultralytics Python utilizando:

pip install ultralytics

A continuación, puede crear una aplicación Streamlit básica para ejecutar la inferencia en directo:

Aplicación Streamlit

from ultralytics import solutions

inf = solutions.Inference(
    model="yolo11n.pt",  # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)

inf.inference()

# Make sure to run the file using command `streamlit run path/to/file.py`
yolo solutions inference

Para más detalles sobre la configuración práctica, consulte la sección Streamlit Application Code de la documentación.

¿Cuáles son las principales ventajas de utilizar Ultralytics YOLO11 con Streamlit para la detección de objetos en tiempo real?

El uso de Ultralytics YOLO11 con Streamlit para la detección de objetos en tiempo real ofrece varias ventajas:

  • Detección perfecta en tiempo real: Consiga una detección de objetos en tiempo real de gran precisión directamente desde las imágenes de la cámara web.
  • Interfaz fácil de usar: La interfaz intuitiva de Streamlit permite un uso y despliegue sencillos sin necesidad de grandes conocimientos técnicos.
  • Eficiencia de recursos: los algoritmos optimizados de YOLO11 garantizan un procesamiento de alta velocidad con un mínimo de recursos informáticos.

Descubra más sobre estas ventajas aquí.

¿Cómo despliego una aplicación de detección de objetos Streamlit en mi navegador web?

Después de codificar tu aplicación Streamlit integrando Ultralytics YOLO11 , puedes desplegarla ejecutando:

streamlit run path/to/file.py

Este comando iniciará la aplicación en su navegador web predeterminado, permitiéndole seleccionar modelos YOLO11 , establecer umbrales de confianza y NMS, e iniciar la detección de objetos en tiempo real con un simple clic. Para obtener una guía detallada, consulte la sección Streamlit Application Code.

¿Cuáles son algunos casos de uso de la detección de objetos en tiempo real mediante Streamlit y Ultralytics YOLO11 ?

La detección de objetos en tiempo real mediante Streamlit y Ultralytics YOLO11 puede aplicarse en diversos sectores:

Para conocer casos de uso y ejemplos más detallados, consulte Ultralytics Solutions.

¿Cómo se compara Ultralytics YOLO11 con otros modelos de detección de objetos como YOLOv5 y RCNNs?

Ultralytics YOLO11 ofrece varias mejoras con respecto a modelos anteriores como YOLOv5 y RCNNs:

  • Mayor velocidad y precisión: rendimiento mejorado para aplicaciones en tiempo real.
  • Facilidad de uso: interfaces y despliegue simplificados.
  • Eficiencia de recursos: Optimizado para una mejor velocidad con requisitos computacionales mínimos.

Para una comparación exhaustiva, consulte Ultralytics YOLO11 Documentation y las entradas de blog relacionadas en las que se analiza el rendimiento de los modelos.

Creado hace 8 meses ✏️ Actualizado hace 8 días

Comentarios