Al hacer clic en "Aceptar todas las cookies", usted acepta el almacenamiento de cookies en su dispositivo para mejorar la navegación por el sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información en
Configuración de cookies
Al hacer clic en "Aceptar todas las cookies", usted acepta el almacenamiento de cookies en su dispositivo para mejorar la navegación por el sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información en
Aprenda a ejecutar las inferencias de YOLO11 dentro de una interfaz Streamlit y construya una interfaz de IA interactiva para tareas de visión por ordenador sin conocimientos de codificación.
Los modelos de visión por ordenador son herramientas de IA de gran impacto que permiten a las máquinas interpretar y analizar datos visuales, realizando 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 pueden requerir conocimientos técnicos adicionales, como desarrollo web o aplicaciones móviles, para desplegarlos y hacerlos accesibles a un público más amplio.
Tomemos como ejemplo Ultralytics YOLO11. Se trata de un modelo que admite diversas tareas y resulta útil en toda una serie de aplicaciones. Sin embargo, sin ciertos conocimientos técnicos de front-end, crear e implementar una interfaz fácil de usar para una interacción fluida puede resultar un poco complicado para algunos ingenieros de IA.
Streamlit es un framework de código abierto que pretende facilitar este proceso. Se trata de una herramienta basada en Python para crear aplicaciones interactivas sin necesidad de un complejo desarrollo front-end. Cuando se combina con YOLO11, permite a los usuarios cargar imágenes, procesar vídeos y visualizar resultados en tiempo real con el mínimo esfuerzo.
Ultralytics va un paso más allá con su solución Live Inference, que facilita aún más la integración de Streamlit. Con un solo comando, los usuarios pueden lanzar una aplicación Streamlit preconstruida para YOLO11, eliminando la necesidad de configuración manual y codificación.
En este artículo, explicaremos cómo configurar y ejecutar YOLO11 utilizando la solución Live Inference de Ultralytics con Streamlit, haciendo que el despliegue de IA en tiempo real sea más rápido 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 potenciadas por IA sin tener que lidiar con las complejidades del desarrollo front-end.
Está diseñado para funcionar a la perfección con modelos de IA y aprendizaje automático. Con solo unas líneas de Python, los desarrolladores pueden crear una interfaz en la que los usuarios pueden subir imágenes, procesar vídeos e interactuar con modelos de IA.
Fig. 1. Características principales de Streamlit. Imagen del autor.
Una de sus principales características es el renderizado dinámico. Cuando los usuarios hacen cambios, la aplicación se actualiza automáticamente sin necesidad de recargar manualmente la página.
Además, como es ligero y fácil de usar, Streamlit se ejecuta eficientemente tanto en máquinas locales como en plataformas en la nube. Esto lo convierte en una gran opción para desplegar aplicaciones de IA, compartir modelos con otros y ofrecer una experiencia de usuario intuitiva e interactiva.
Ultralytics YOLO11: un modelo versátil de IA de visión
Antes de adentrarnos en cómo ejecutar inferencias en vivo con Ultralytics YOLO11 en una aplicación Streamlit, echemos un vistazo más de cerca a lo que hace que YOLO11 sea tan fiable.
Ultralytics YOLO11 es un modelo diseñado para tareas de visión por ordenador en tiempo real, como la detección de objetos, la segmentación de instancias y la estimación de poses. Ofrece un rendimiento de alta velocidad con una precisión impresionante.
Fig. 2. Ejemplo de utilización de YOLO11 para la detección de objetos.
Una de las mayores ventajas de YOLO11 es su facilidad de uso. Los desarrolladores pueden instalar el paquete Ultralytics Python y empezar a hacer predicciones con unas pocas líneas de código.
El paquete Ultralytics Python ofrece una serie de funciones que permiten a los usuarios afinar los modelos y ajustar la configuración de detección. También ayuda a optimizar el rendimiento en distintos dispositivos para una implantación más fluida.
Más allá de la flexibilidad, el paquete Python de Ultralytics admite integraciones en múltiples plataformas, incluidos dispositivos periféricos, entornos en la nube y sistemas con GPU NVIDIA. Tanto si se implanta en un pequeño dispositivo integrado como en un servidor en la nube a gran escala, YOLO11 se adapta sin esfuerzo, lo que hace que la IA de visión avanzada sea más accesible que nunca.
Ventajas de utilizar Streamlit con Ultralytics YOLO11
Puede que te preguntes, ¿cómo sé si Streamlit es la opción de despliegue adecuada para mí? Si buscas una forma sencilla y eficiente de ejecutar YOLO11 sin tener que ocuparte del desarrollo del front-end, Streamlit es una buena opción, especialmente para proyectos de prototipos, pruebas de concepto (PoC) o implantaciones dirigidas a un número reducido de usuarios.
Agiliza el proceso de trabajo con YOLO11 eliminando complejidades innecesarias y proporcionando una interfaz intuitiva para la interacción en tiempo real. He aquí otras ventajas clave:
Controles de IA personalizables: Puede añadir controles deslizantes, desplegables y botones a su interfaz, lo que permite a los usuarios ajustar con precisión la configuración de detección y filtrar objetos específicos fácilmente.
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 mejora las capacidades de flujo de trabajo de IA.
Visualización interactiva de datos: La compatibilidad integrada con tablas y gráficos permite a los usuarios visualizar sin esfuerzo la detección de objetos, los resultados de la segmentación o las perspectivas del seguimiento.
Facilidad de colaboración: las aplicaciones de Streamlit pueden compartirse fácilmente con los miembros del equipo, las partes interesadas o los clientes a través de un simple enlace, lo que permite la retroalimentación y la iteración instantáneas.
Guía paso a paso para desplegar YOLO11 en una aplicación web Streamlit
Ahora que hemos explorado las ventajas de utilizar Streamlit con YOLO11, vamos a ver cómo ejecutar tareas de visión por ordenador en tiempo real en un navegador utilizando Streamlit con YOLO11.
Instalación del paquete Python de Ultralytics
El primer paso es instalar el paquete Ultralytics Python. Esto se puede hacer usando el siguiente comando:
Una vez instalado, YOLO11 está listo para usarse sin ninguna configuración complicada. Si tiene algún problema al instalar los paquetes necesarios, puede consultar nuestra Guía de problemas comunes para obtener consejos y soluciones.
Lanzamiento de la aplicación Streamlit con YOLO11
Normalmente, para ejecutar YOLO11 sería necesario desarrollar un script Python utilizando componentes Streamlit. Sin embargo, Ultralytics proporciona una forma sencilla de ejecutar YOLO11 con Streamlit.
Ejecutando el siguiente script Python se lanzará instantáneamente la aplicación Streamlit en tu navegador web por defecto:
No es necesaria ninguna configuración adicional. La interfaz de la aplicación Streamlit incluye una sección de carga de imágenes y vídeos, un menú desplegable para seleccionar la variante del modelo YOLO11 que le interesa y controles deslizantes para ajustar la confianza de la detección. Todo está perfectamente organizado, lo que permite a los usuarios realizar inferencias sin esfuerzo y sin necesidad de escribir código adicional.
Ejecución de inferencias con YOLO11 en la aplicación Streamlit
Ahora que la aplicación Streamlit se está ejecutando en su navegador web, vamos a explorar cómo utilizarla para ejecutar inferencias con YOLO11.
Por ejemplo, supongamos que queremos analizar un archivo de vídeo para detectar objetos. Estos son los pasos para cargar un archivo, seleccionar un modelo y ver los resultados en tiempo real:
Sube un archivo de vídeo: Seleccione "vídeo" en el menú desplegable de configuración del usuario, que indica a la aplicación que procese un archivo pregrabado en lugar de la señal de la cámara web.
Elija un modelo YOLO11: Seleccione "YOLO11l" en el desplegable de modelos para la detección de objetos mediante un modelo YOLO11 de gran tamaño.
Inicie el proceso de detección: Haga clic en "Iniciar" para que YOLO11 analice el vídeo fotograma a fotograma y detecte objetos en tiempo real.
Visualice el vídeo procesado: Vea cómo el vídeo aparece en la pantalla con actualizaciones en directo, mostrando los objetos detectados con cuadros delimitadores.
Interactúe con los resultados en Streamlit: Utilice la interfaz para ajustar la configuración o analizar las detecciones, todo ello sin configuración ni codificación adicionales.
Fig. 3. Interfaz de la aplicación Ultralytics YOLO Streamlit.
Casos prácticos con Streamlit y YOLO11
Hemos echado un vistazo a cómo Streamlit es ideal para crear prototipos, herramientas de investigación y aplicaciones pequeñas y medianas. Ofrece una forma sencilla de desplegar modelos de IA sin un complejo desarrollo front-end.
Sin embargo, ejecutar YOLO11 con Streamlit no siempre es una solución lista para usar, a menos que utilice la aplicación Ultralytics YOLO Streamlit que configuramos en los pasos anteriores. En la mayoría de los casos, se requiere cierto trabajo de desarrollo para personalizar la aplicación y adaptarla a las necesidades específicas. Aunque Streamlit simplifica la implantación, tendrás que configurar los componentes necesarios para que YOLO11 funcione sin problemas.
Exploremos dos ejemplos prácticos de cómo Ultralytics YOLO11 puede desplegarse eficazmente con Streamlit en escenarios del mundo real.
Recuento de objetos para el control de inventario con YOLO11
Llevar la cuenta del inventario en tiendas minoristas, almacenes o áreas de suministros de oficina puede llevar mucho tiempo y ser propenso a errores. Gracias a YOLO11 con Streamlit, las empresas pueden automatizar el recuento de objetos de forma rápida y eficiente, lo que lo convierte en una gran opción para una prueba de concepto (PoC) antes de comprometerse con un despliegue a gran escala.
Con esta configuración, los usuarios pueden cargar una imagen o utilizar una cámara en directo, y YOLO11 puede ayudar a detectar y contar objetos al instante. El recuento en tiempo real puede mostrarse en la interfaz de Streamlit, lo que facilita la supervisión de los niveles de existencias sin esfuerzo manual.
Por ejemplo, el propietario de una tienda puede escanear una estantería y ver inmediatamente cuántas botellas, cajas o productos envasados hay sin tener que contarlos manualmente. Aprovechando 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.
Fig. 4. Detección de botellas en un frigorífico con YOLO11.
Aumentar la seguridad con YOLO11 y Streamlit
Mantener seguras las zonas restringidas de oficinas, almacenes o lugares donde se celebran eventos puede resultar difícil, especialmente con una supervisión manual. Con 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 cámara a la interfaz Streamlit, donde YOLO11 se utiliza para identificar y rastrear 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 su revisión.
Por ejemplo, un responsable de almacén puede controlar el acceso a zonas de almacenamiento de alta seguridad, o una oficina puede seguir los movimientos en secciones restringidas sin necesidad de supervisión constante.
Este puede ser un proyecto revelador para las empresas que deseen explorar la supervisión de la seguridad basada en IA Vision antes de comprometerse con un sistema más grande y totalmente automatizado. Al integrar YOLO11 con Streamlit, las empresas pueden mejorar la seguridad, minimizar la supervisión manual y responder a los accesos no autorizados con mayor eficacia.
Consejos para supervisar una aplicación interactiva de inteligencia artificial con Streamlit
El uso de herramientas como Streamlit para desplegar modelos de visión por ordenador ayuda a crear una experiencia interactiva y fácil de usar. Sin embargo, después de configurar la interfaz en vivo, es importante asegurarse de que el sistema funcione de forma eficiente y ofrezca resultados precisos a lo largo del tiempo.
He aquí algunos factores clave a tener en cuenta tras la implantación:
Seguimiento regular: Controle la precisión de la detección, la velocidad de inferencia y el uso de recursos. Ajuste los parámetros del modelo o actualice el hardware si el rendimiento disminuye.
Gestión de múltiples usuarios y escalabilidad: A medida que crece la demanda de los usuarios, la optimización de la infraestructura es clave para mantener el rendimiento. Las plataformas en la nube y las soluciones de implantación escalables ayudan a garantizar un funcionamiento sin problemas.
Mantener el modelo actualizado: Mantener actualizados el modelo y las bibliotecas mejora la precisión, la seguridad y el acceso a nuevas funciones.
Principales conclusiones
Ultralytics simplifica la implantación de YOLO11 con una interfaz en vivo Streamlit lista para usar que se ejecuta con un solo comando, sin necesidad de codificación. Esto permite a los usuarios empezar a utilizar la detección de objetos en tiempo real al instante.
La interfaz también incluye personalización integrada, lo que permite a los usuarios cambiar de modelo, ajustar la precisión de la detección y filtrar objetos con facilidad. Todo se gestiona desde una interfaz sencilla y fácil de usar, que elimina la necesidad de desarrollar manualmente la interfaz de usuario. Al combinar
Gracias a las capacidades de YOLO11 y a la facilidad de implantación de Streamlit, las empresas y los desarrolladores pueden crear prototipos, probar y perfeccionar rápidamente aplicaciones basadas en IA.