Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Ultralytics YOLO

Ejecuta una aplicación interactiva de IA con Streamlit y Ultralytics YOLO11

Descubre cómo ejecutar inferencias de Ultralytics YOLO11 en una aplicación web de Streamlit con un breve script y crear demostraciones interactivas de visión artificial sin escribir código de interfaz.

Abirami VinaAbirami Vina11 min de lectura
Ejecución de una aplicación interactiva de IA con Streamlit y Ultralytics YOLO11

Los modelos de visión artificial son herramientas de IA con un gran impacto que permiten a las máquinas interpretar y analizar datos visuales y realizar tareas como la detección de objetos, la clasificación de imágenes y la segmentación de instancias con gran precisión. Sin embargo, a veces hace falta experiencia técnica adicional, por ejemplo, en desarrollo web o aplicaciones móviles, para implementarlos y ponerlos al alcance de un público más amplio.

Por ejemplo, Ultralytics YOLO11 es un modelo compatible con diversas tareas y útil en una amplia variedad de aplicaciones. Sin embargo, a algunos ingenieros de IA puede resultarles algo complicado crear e implementar una interfaz fácil de usar si no tienen ciertos conocimientos técnicos de desarrollo de interfaces.

Streamlit es un framework de código abierto cuyo objetivo es facilitar este proceso. Es una herramienta basada en Python para crear aplicaciones interactivas sin necesidad de un desarrollo front-end complejo. Al combinarlo con Ultralytics YOLO11, los usuarios pueden subir imágenes, procesar vídeos y visualizar resultados en tiempo real con muy poco esfuerzo.

Ultralytics va un paso más allá con su solución Live Inference, que facilita aún más la integración con Streamlit. Con un solo comando, los usuarios pueden iniciar una aplicación de Streamlit para YOLO11 ya preparada, sin necesidad de configurarla ni programarla manualmente.

En este artículo explicaremos cómo configurar y ejecutar YOLO11 con la solución Live Inference de Ultralytics y Streamlit para que la implementación de IA en tiempo real sea más rápida y accesible.

¿Qué es Streamlit?#

Streamlit es un framework de Python que simplifica la creación de aplicaciones web interactivas. Los desarrolladores de IA pueden crear aplicaciones basadas en IA sin tener que lidiar con las complejidades del desarrollo front-end.

Está diseñado para funcionar bien con modelos de IA y aprendizaje automático. Con solo unas pocas líneas de Python, los desarrolladores pueden crear una interfaz en la que los usuarios suban imágenes, procesen vídeos e interactúen con modelos de IA.

Funciones clave de Streamlit

Fig. 1. Funciones clave de Streamlit. Imagen del autor.

Una de sus funciones clave es la representación dinámica. Cuando los usuarios realizan cambios, la aplicación se actualiza automáticamente sin necesidad de volver a cargar la página manualmente.

Además, como es ligero y fácil de usar, Streamlit funciona de forma eficiente tanto en equipos locales como en plataformas en la nube. Por eso es una excelente opción para implementar aplicaciones de IA, compartir modelos con otras personas y ofrecer una experiencia de usuario intuitiva e interactiva.

Ultralytics YOLO11: un modelo versátil de IA visual#

Antes de ver cómo ejecutar inferencias en tiempo real con Ultralytics YOLO11 en una aplicación de Streamlit, veamos más de cerca qué hace que YOLO11 sea tan fiable.

Ultralytics YOLO11 es un modelo diseñado para tareas de visión artificial en tiempo real, como la detección de objetos, la segmentación de instancias y la estimación de poses. Ofrece un alto rendimiento y una gran precisión.

Ultralytics YOLO11 detecta las matrículas de los coches en una autopista de varios carriles

Fig. 2. Ejemplo del uso de YOLO11 para la detección de objetos.

Una de las mayores ventajas de YOLO11 es su facilidad de uso. No hacen falta configuraciones complejas: los desarrolladores pueden instalar el paquete Python de Ultralytics y empezar a realizar predicciones con solo unas pocas líneas de código.

El paquete Python de Ultralytics ofrece una serie de funciones que permiten a los usuarios ajustar los modelos y modificar la configuración de detección. También ayuda a optimizar el rendimiento en distintos dispositivos para facilitar la implementación.

Además de su flexibilidad, el paquete Python de Ultralytics ofrece integraciones con varias plataformas, incluidos dispositivos periféricos, entornos en la nube y sistemas equipados con GPU NVIDIA. Tanto si se implementa en un pequeño dispositivo integrado como en un servidor en la nube a gran escala, YOLO11 se adapta al hardware de destino y hace que la IA avanzada de visión sea más accesible.

Ventajas de usar Streamlit con Ultralytics YOLO11#

Puede que te preguntes cómo saber si Streamlit es la opción de implementación adecuada para ti. Si buscas una forma sencilla y eficiente en cuanto a código de ejecutar Ultralytics YOLO11 sin tener que desarrollar el front-end, Streamlit es una buena opción, sobre todo para crear prototipos, proyectos de prueba de concepto (PoC) o implementaciones dirigidas a un número reducido de usuarios.

Simplifica el trabajo con Ultralytics YOLO11 al eliminar complejidades innecesarias y ofrecer una interfaz intuitiva para la interacción en tiempo real. Estas son otras ventajas importantes:

  • Controles de IA personalizables: Puedes añadir controles deslizantes, menús desplegables y botones a tu interfaz para que los usuarios ajusten fácilmente la configuración de detección y filtren objetos concretos.
  • Integración con otras herramientas de IA: Streamlit admite la integración con NumPy, OpenCV, Matplotlib y otras bibliotecas de aprendizaje automático, lo que amplía las posibilidades de los flujos de trabajo de IA.
  • Visualización interactiva de datos: La compatibilidad integrada con gráficos permite a los usuarios visualizar los resultados de la detección de objetos y la segmentación, así como la información obtenida del seguimiento.
  • Ideal para colaborar: Las aplicaciones de Streamlit se pueden compartir fácilmente con miembros del equipo, partes interesadas o clientes mediante un sencillo enlace, lo que permite obtener comentarios y realizar iteraciones al instante.

Guía paso a paso para implementar Ultralytics YOLO11 en una aplicación web de Streamlit#

Ahora que hemos explorado las ventajas de usar Streamlit con Ultralytics YOLO11, veamos cómo ejecutar tareas de visión artificial en tiempo real en un navegador con Streamlit y YOLO11.

Instalación del paquete Python de Ultralytics#

El primer paso es instalar el paquete Python de Ultralytics. Puedes hacerlo con el siguiente comando:

pip install ultralytics

Una vez instalado, YOLO11 estará listo para usarse sin necesidad de una configuración complicada. Si tienes algún problema al instalar los paquetes necesarios, consulta nuestra guía de problemas habituales para encontrar consejos y soluciones.

Inicio de la aplicación de Streamlit con Ultralytics YOLO11#

Normalmente, tendrías que desarrollar un script Python con componentes de Streamlit para ejecutar YOLO11. Sin embargo, Ultralytics ofrece una forma sencilla de ejecutar YOLO11 con Streamlit.

Al ejecutar el siguiente script de Python con streamlit run path/to/file.py, se abrirá la aplicación Streamlit en el navegador web predeterminado:

from ultralytics import solutions

inf = solutions.Inference(
    model="yolo11n.pt",  # puedes usar cualquier modelo compatible con Ultralytics o un modelo entrenado a medida
)

inf.inference()

No hace falta ninguna configuración adicional. La interfaz de la aplicación Streamlit incluye una sección para subir imágenes y vídeos, un menú desplegable para seleccionar la variante del modelo Ultralytics YOLO11 que te interese y controles deslizantes para ajustar la confianza de detección. Todo está bien organizado para que los usuarios puedan ejecutar inferencias sin escribir código adicional.

Ejecución de inferencias con Ultralytics YOLO11 en la aplicación de Streamlit#

Ahora que la aplicación de Streamlit está abierta en tu navegador web, veamos cómo usarla para ejecutar inferencias con Ultralytics YOLO11.

Por ejemplo, supongamos que queremos analizar un archivo de vídeo para detectar objetos. Estos son los pasos para subir un archivo, seleccionar un modelo y ver los resultados en tiempo real:

  • Sube un archivo de vídeo: Selecciona «vídeo» en el menú desplegable de configuración del usuario para indicar a la aplicación que procese un archivo pregrabado en lugar de la señal de una webcam.
  • Elige un modelo YOLO11: Selecciona «YOLO11l» en el menú desplegable de modelos para detectar objetos con un modelo YOLO11 grande.
  • Inicia el proceso de detección: Haz clic en «Start» para que Ultralytics YOLO11 analice el vídeo fotograma a fotograma y detecte objetos en tiempo real.
  • Visualiza el vídeo procesado: Observa cómo aparece el vídeo en pantalla con actualizaciones en directo que muestran los objetos detectados mediante cuadros delimitadores.
  • Interactúa con los resultados en Streamlit: Usa la interfaz para ajustar la configuración o analizar las detecciones, sin configuración ni programación adicionales.

Interfaz de la aplicación Ultralytics YOLO para Streamlit

Fig. 3. Interfaz de la aplicación Ultralytics YOLO para Streamlit.

Casos de uso de Streamlit y Ultralytics YOLO11#

Hemos visto que Streamlit es una gran opción para crear prototipos, herramientas de investigación y aplicaciones pequeñas y medianas. Ofrece una forma sencilla de implementar modelos de IA sin un desarrollo complejo del front-end.

Sin embargo, ejecutar YOLO11 con Streamlit no siempre funciona directamente, a menos que uses la aplicación Ultralytics YOLO para Streamlit que hemos configurado en los pasos anteriores. En la mayoría de los casos, hace falta realizar algunas tareas de desarrollo para adaptar la aplicación a necesidades concretas. Aunque Streamlit simplifica la implementación, tendrás que configurar los componentes necesarios para que YOLO11 funcione sin problemas.

Veamos dos ejemplos prácticos de cómo implementar Ultralytics YOLO11 de forma eficaz con Streamlit en situaciones reales.

Recuento de objetos para el control de inventario con Ultralytics YOLO11#

Controlar el inventario en tiendas, almacenes o zonas de material de oficina puede llevar mucho tiempo y dar lugar a errores. Con Ultralytics YOLO11 y Streamlit, las empresas pueden automatizar el recuento de objetos de forma rápida y eficiente, una opción excelente para probar el concepto (PoC) antes de comprometerse con una implementación a gran escala.

Con esta configuración, los usuarios pueden subir una imagen o utilizar la señal de una cámara en directo, y Ultralytics YOLO11 puede detectar y contar objetos al instante. El recuento en tiempo real se puede mostrar en la interfaz de Streamlit, lo que facilita el seguimiento de las existencias sin trabajo manual.

Por ejemplo, el propietario de una tienda puede escanear una estantería y ver al instante cuántas botellas, cajas o productos envasados hay, sin tener que contarlos a mano. Al aprovechar Ultralytics YOLO11 y Streamlit, las empresas pueden reducir el trabajo manual, mejorar la precisión y explorar la automatización con una inversión mínima.

Detección de botellas en un frigorífico con Ultralytics YOLO11

Fig. 4. Detección de botellas en un frigorífico con Ultralytics YOLO11.

Refuerzo de la seguridad con Ultralytics YOLO11 y Streamlit#

Mantener seguras las zonas restringidas de oficinas, almacenes o recintos para eventos puede ser difícil, sobre todo si se supervisan manualmente. Con Ultralytics YOLO11 y Streamlit, las empresas pueden configurar un sencillo sistema de seguridad basado en IA para detectar accesos no autorizados en tiempo real.

Se puede conectar una señal de cámara a la interfaz de Streamlit, donde Ultralytics YOLO11 identifica y sigue a las personas que entran en zonas restringidas. Si se detecta a una persona no autorizada, el sistema puede activar una alerta o registrar el evento para revisarlo.

Por ejemplo, el responsable de un almacén puede supervisar el acceso a zonas de almacenamiento de alta seguridad, o una oficina puede controlar el movimiento en áreas restringidas sin necesidad de una vigilancia constante.

Este puede ser un proyecto piloto útil para las empresas que quieran explorar la monitorización de seguridad con Vision AI antes de comprometerse con un sistema más amplio y totalmente automatizado. Al integrar Ultralytics YOLO11 con Streamlit, las empresas pueden mejorar la seguridad, reducir la monitorización manual y responder de forma más eficaz a los accesos no autorizados.

Consejos para supervisar una aplicación interactiva de IA con Streamlit#

El uso de herramientas como Streamlit para implementar modelos de visión artificial ayuda a crear una experiencia interactiva y fácil de usar. Sin embargo, después de configurar la interfaz en directo, es importante asegurarse de que el sistema funcione de manera eficiente y ofrezca resultados precisos a lo largo del tiempo.

Estos son algunos factores importantes que debes tener en cuenta después de la implementación:

  • Supervisión periódica: Controla la precisión de detección, la velocidad de inferencia y el uso de recursos. Ajusta los parámetros del modelo o actualiza el hardware si el rendimiento disminuye.
  • Gestión de varios usuarios y escalabilidad: A medida que aumenta la demanda de los usuarios, optimizar la infraestructura es fundamental para mantener el rendimiento. Las plataformas en la nube y las soluciones de implementación escalables ayudan a garantizar un funcionamiento fluido.
  • Mantén el modelo actualizado: Mantener actualizados el modelo y las bibliotecas mejora la precisión y la seguridad, y permite acceder a nuevas funciones.

Conclusiones clave#

Ultralytics simplifica la implementación de YOLO11 con una interfaz en directo de Streamlit lista para usar que se inicia con un solo comando, sin necesidad de programar. Así, los usuarios pueden empezar a utilizar la detección de objetos en tiempo real al instante.

La interfaz también incluye opciones de personalización integradas que permiten cambiar de modelo, ajustar los umbrales de confianza y filtrar objetos fácilmente. Todo se gestiona desde una interfaz sencilla e intuitiva, sin necesidad de desarrollar la interfaz de usuario manualmente.

Al combinar las capacidades de Ultralytics YOLO11 con la facilidad de implementación de Streamlit, las empresas y los desarrolladores pueden crear prototipos, probar y perfeccionar rápidamente aplicaciones basadas en IA.

Forma parte de nuestra comunidad y explora nuestro repositorio de GitHub para descubrir más información sobre IA. Consulta nuestras páginas de soluciones para conocer innovaciones como la IA en la fabricación y la visión artificial en la atención sanitaria. Echa un vistazo a nuestras opciones de licencia y empieza hoy mismo.

Escrito por

Abirami Vina
Abirami Vina

Creador de contenido · Ultralytics

Abirami Vina comenzó su carrera como ingeniera de visión artificial y sentó unas bases sólidas en AI visual y aprendizaje automático. Es creadora de contenido para Ultralytics y fundadora y redactora jefe de Scribe of AI, donde elabora contenido técnico de alta calidad para empresas centradas en AI. Su pasión por hacer que la AI sea comprensible y atractiva impulsa su trabajo, que conecta la tecnología de vanguardia con su impacto en el mundo real.

Comentarios

Haz una pregunta, comparte tus resultados o ayuda a otra persona.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático