Conoce YOLO26: IA de visión de nueva generación.
Ultralytics
Guías

Mejora de las aplicaciones de visión artificial con visualizaciones

Aprende a convertir los datos de aplicaciones de visión artificial en gráficos fáciles de entender utilizando el paquete de Python de Ultralytics para obtener mejores perspectivas.

NUNuvola Ladi
4 min read
Convertir datos de visión artificial en gráficos analíticos

Cada minuto se generan cantidades ingentes de datos, desde terminales de aeropuertos y estaciones de tren hasta centros comerciales. A medida que la IA se utiliza de forma más generalizada, gran parte de estos datos se analiza y desglosa. Sin embargo, a veces los resultados de estos modelos de IA pueden dificultar la identificación de patrones o la comprensión de tendencias a primera vista. Ahí es donde ayuda la visualización de datos: convierte resultados complejos en información clara y fácil de asimilar.

Esto es especialmente cierto en el caso de las aplicaciones de visión artificial. La visión artificial es una rama de la inteligencia artificial (IA) que ayuda a las máquinas a interpretar y comprender la información visual del mundo que las rodea, como imágenes y vídeos. Aunque los modelos de visión artificial, como Ultralytics YOLO11, pueden ayudar a analizar dichos datos visuales para obtener información, la visualización de datos ayuda a poner esa información en un formato fácil de entender.

En pocas palabras, la visualización de datos tiende un puente entre los datos brutos y la comprensión real mediante el uso de gráficos analíticos significativos. En el mundo actual impulsado por los datos, esto es clave porque no basta con que las máquinas realicen tareas; necesitamos que cuenten una historia.

Esa necesidad de narración es exactamente la razón por la que la visualización de datos está en auge, con un mercado que alcanzará los $18.36 mil millones en 2030. Anteriormente, exploramos cómo la visión artificial puede proporcionar valiosos conocimientos empresariales. Hoy, daremos un paso más explicando cómo generar gráficos analíticos claros e instructivos para aplicaciones de visión artificial utilizando el paquete de Ultralytics. ¡Empecemos!

Visualización de datos basada en las salidas de YOLO11

Fig 1. Un ejemplo de visualización de datos basada en los resultados de YOLO11.

Link to this sectionUna visión general de la visualización de datos en aplicaciones de visión artificial#

La visualización de datos en aplicaciones de visión artificial consiste en transformar los resultados de tareas de visión artificial, como la detección y el seguimiento de objetos, en gráficos o paneles fáciles de entender. Estos elementos visuales ayudan a identificar patrones y tendencias, especialmente cuando se trabaja con grandes volúmenes de secuencias de vídeo.

Por ejemplo, en lugar de revisar manualmente horas de vídeo de vigilancia, un simple gráfico de líneas que muestre el número de coches o personas detectadas a lo largo del tiempo puede resaltar rápidamente las horas punta o los periodos inusualmente tranquilos.

Aquí tienes algunas razones clave por las que la visualización de datos es útil:

  • Simplifica datos complejos: Miles de detecciones de objetos pueden ser abrumadoras, pero las visualizaciones como los gráficos de barras o circulares facilitan ver el panorama general, por ejemplo, qué objetos aparecen con mayor frecuencia.

  • Revela tendencias: Los gráficos de líneas y barras ayudan a identificar patrones a lo largo del tiempo, como cuándo y dónde tiende a aumentar el tráfico de personas.

  • Ahorra tiempo: En lugar de revisar cada fotograma de vídeo, los gráficos pueden resaltar rápidamente detalles importantes, como picos repentinos en la actividad de vehículos o apariciones inusuales de objetos en zonas restringidas.

  • Mejora la comunicación: Los elementos visuales facilitan el intercambio de información con audiencias no técnicas, ayudando a que todos comprendan los resultados con mayor claridad.

Link to this sectionDiferentes tipos de visualizaciones de datos#

Diferentes tipos de gráficos analíticos pueden convertir los resultados de la visión artificial en elementos visuales claros y fáciles de entender. Supongamos que trabajas en una aplicación de visión artificial que detecta personas y vehículos en secuencias de vigilancia. En este caso, un gráfico de líneas es ideal para mostrar cómo cambia el número de detecciones a lo largo del tiempo, como el seguimiento de los picos de tráfico de personas durante el día.

De forma similar, los gráficos de barras son útiles cuando quieres comparar el número de diferentes tipos de objetos detectados, como ver si aparecen más coches, bicicletas o peatones en el vídeo. Los gráficos circulares, por otro lado, muestran qué porcentaje representa cada tipo de objeto del total de detecciones. Cada gráfico tiene su propio uso y ayuda a hacer que los datos complejos de visión artificial sean más fáciles de interpretar y compartir.

Ejemplos de gráficos analíticos

Fig 2. Ejemplos de gráficos analíticos.

Link to this sectionGeneración de gráficos analíticos para obtener información sobre la visión artificial#

Ahora que hemos explorado qué es la visualización de datos y por qué son importantes los diferentes tipos de gráficos analíticos, veamos más de cerca cómo utilizar la solución de Ultralytics Analytics para visualizar los resultados de las predicciones de tu modelo de visión artificial. Antes de recorrer el proceso paso a paso, echemos un vistazo a las herramientas y opciones de configuración para entrenar y utilizar el paquete Ultralytics y modelos como YOLO11.

El paquete Python de Ultralytics facilita el entrenamiento de modelos, la detección de objetos, la ejecución de predicciones y la visualización de resultados. Para empezar con él, necesitarás un entorno de programación. Aquí tienes tres opciones sencillas:

  • Interfaz de línea de comandos (CLI): Es una herramienta básica de solo texto donde puedes escribir comandos para ejecutar tu código. No tiene una interfaz visual, y se interactúa con ella escribiendo instrucciones en un terminal o símbolo del sistema.

  • Jupyter Notebooks: Es un entorno de programación interactivo donde puedes escribir, ejecutar y probar pequeños fragmentos de código (llamados "celdas") de uno en uno. Muestra los resultados directamente debajo de cada celda, lo que facilita entender lo que ocurre paso a paso. Es especialmente útil para el aprendizaje y la experimentación.

  • Google Colab: Esta opción es una versión gratuita basada en la nube de Jupyter Notebooks que se ejecuta en tu navegador web. No requiere ninguna configuración en tu ordenador y te da acceso a GPUs gratuitas para un procesamiento más rápido.

Estas herramientas son excelentes para empezar rápidamente, pero los usuarios también pueden integrar Ultralytics en Entornos de Desarrollo Integrados (IDE) como Visual Studio Code (VS Code) o en entornos de producción. Para más opciones, explora la documentación oficial de Ultralytics.

Link to this sectionPaso 1: Configurar el entorno#

Una vez que hayas elegido tu entorno preferido, el siguiente paso es configurarlo para ejecutar predicciones y visualizar los resultados. Puedes utilizar cualquiera de los entornos mencionados anteriormente, dependiendo de con cuál te sientas más cómodo.

Si trabajas en Google Colab, ten en cuenta que utiliza una CPU por defecto, lo que puede ralentizar el rendimiento. Para acelerar las cosas, cambia a una GPU yendo al menú "Entorno de ejecución", seleccionando "Cambiar tipo de entorno de ejecución" y ajustando el acelerador de hardware a GPU (idealmente una T4).

Para preparar tu entorno, necesitarás instalar el paquete Python de Ultralytics utilizando el comando mencionado a continuación. En herramientas basadas en notebooks como Colab o Jupyter, asegúrate de añadir un signo de exclamación (!) antes del comando.

pip install ultralytics

Link to this sectionPaso 2: Descarga de un archivo de vídeo#

A continuación, necesitaremos un vídeo con el que trabajar. Puedes descargar uno fácilmente desde un sitio de stock gratuito como Pexels. Asegúrate de elegir un vídeo que incluya objetos que YOLO11 pueda detectar. Dado que el modelo está preentrenado en el dataset COCO, puede reconocer objetos comunes como personas, coches y bicicletas.

Para este tutorial, usaremos un vídeo de manejo de equipaje en una concurrida terminal de aeropuerto. Puedes usar el mismo vídeo o elegir otro diferente que se ajuste a tu proyecto.

Un fotograma del vídeo de entrada que muestra el manejo de equipaje en una terminal de aeropuerto

Fig 3. Un fotograma del vídeo de entrada que muestra el manejo de equipaje en una terminal de aeropuerto.

Link to this sectionPaso 3: Importación de paquetes#

A continuación, podemos importar las bibliotecas necesarias y cargar el vídeo de entrada.

Empezaremos importando OpenCV (cv2), que es una biblioteca muy utilizada para trabajar con imágenes y vídeo en visión artificial. También importaremos la biblioteca de Ultralytics, que nos ayuda a ejecutar la detección de objetos y generar análisis a partir del vídeo.

Luego, intentaremos abrir el archivo de vídeo especificando su ruta. Asegúrate de reemplazar "path/to/video.mp4" por la ubicación real de tu archivo de vídeo descargado.

Además, el fragmento de código a continuación incluye una sencilla comprobación para asegurarse de que el vídeo se carga correctamente. Si la ruta es incorrecta o el archivo está dañado, el programa se detendrá y mostrará un mensaje de error: "Error reading video file."

import cv2
from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

Link to this sectionPaso 4: Preparación del escritor de vídeo#

A continuación, configuraremos un escritor de vídeo para guardar el resultado. Cuando ejecutemos el análisis, esta parte del código creará un nuevo archivo de vídeo que grabará los gráficos actualizados generados a partir de cada fotograma del vídeo original.

En el fragmento de código a continuación, primero extraemos las propiedades clave del vídeo de entrada: su anchura, altura y fotogramas por segundo (fps). Estos valores se toman directamente del vídeo y se convierten a números enteros para garantizar que tengan el formato correcto para escribir la salida.

A continuación, utilizamos la función cv2.VideoWriter para crear un nuevo archivo de vídeo, llamado "analytics_output.avi" (puedes cambiarle el nombre según lo necesites). El vídeo se guarda usando el formato MJPG, que es un método común de compresión de vídeo. La resolución de salida se establece en 1280×720 píxeles, independientemente del tamaño del vídeo original.

w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
out = cv2.VideoWriter(
    "analytics_output.avi",
    cv2.VideoWriter_fourcc(*"MJPG"),
    fps,
    (1280, 720),
)

Link to this sectionPaso 5: Configuración de la solución de Ultralytics Analytics#

Ahora, configuraremos la solución de Ultralytics Analytics para generar gráficos a partir del vídeo. Puedes elegir cómo se muestran los datos, por ejemplo, en un gráfico de líneas, circular, de área o de barras, y qué modelo YOLO utilizar. En este ejemplo, usaremos el modelo ligero "yolo11n.pt" y mostraremos los resultados como un gráfico de área.

analytics = solutions.Analytics(
    show=True,
    analytics_type="area",
    model="yolo11n.pt",
)

Link to this sectionPaso 6: Procesamiento del vídeo de entrada#

La parte final del código ejecuta un bucle que procesa el vídeo fotograma a fotograma. Cada fotograma se pasa a la herramienta de análisis, que actualiza el gráfico en tiempo real. El gráfico actualizado se escribe entonces en el vídeo de salida. Si no se puede leer un fotograma, el bucle se detiene. Una vez procesados todos los fotogramas, se guarda el vídeo y se cierran todas las ventanas abiertas.

frame_count = 0
while cap.isOpened():
    success, im0 = cap.read()
    if success:
        frame_count += 1
        results = analytics(im0, frame_count)
        out.write(results.plot_im)
    else:
        break

cap.release()
out.release()
cv2.destroyAllWindows()

Link to this sectionPaso 7: Juntándolo todo#

Por último, juntemos todo. Con solo unas pocas líneas de código adicionales, podemos generar dos vídeos de salida: uno que muestra los resultados de detección de objetos de YOLO11 con cuadros delimitadores y etiquetas, y otro que muestra los gráficos de análisis en tiempo real.

Para hacer esto, configuraremos dos instancias de VideoWriter: una para guardar el vídeo de predicción y otra para el análisis. Esta versión del código incluye tanto el seguimiento de objetos como la generación de gráficos, para que puedas ver los resultados de la detección junto a la información visual.

Aquí tienes el código completo junto con ejemplos tanto de las predicciones como de los resultados del análisis.

import cv2
from ultralytics import YOLO, solutions

# Load model and video
model = YOLO('yolo11n.pt')
cap = cv2.VideoCapture('path/to/video.mp4')
assert cap.isOpened(), "Error opening video"

# Get properties
w, h = int(cap.get(3)), int(cap.get(4))
fps = cap.get(5)
analytics_res = (1280, 720)

# Writers for prediction and analytics videos
out_pred = cv2.VideoWriter('output_predictions.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps, (w, h))
out_ana = cv2.VideoWriter('output_analytics.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps, analytics_res)

# Analytics setup
analytics = solutions.Analytics(show=True, analytics_type="area", model='yolo11n.pt')

# Process frames
frame_count = 0
while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break
    frame_count += 1
    pred_frame = model.track(frame, persist=True)[0].plot()
    out_pred.write(pred_frame)
    resized = cv2.resize(pred_frame, analytics_res)
    out_ana.write(analytics(resized, frame_count).plot_im)

cap.release(), out_pred.release(), out_ana.release(), cv2.destroyAllWindows()

Cuando el código anterior se ejecute con éxito, generará dos vídeos de salida. El archivo “output_predictions.avi” mostrará los resultados de la detección de objetos con cuadros delimitadores y etiquetas, mientras que “output_analytics.avi” mostrará los gráficos de análisis en tiempo real basados en las detecciones.

Un fotograma del vídeo de salida de detección de objetos

Fig 4. Un fotograma del archivo “output_predictions.avi”.

Aquí tienes un fotograma del resultado del análisis basado en las predicciones. Utilizando el gráfico de área, podemos obtener información como las fluctuaciones en el recuento de maletas a lo largo del tiempo, como un pico alrededor del fotograma 268, que indica el movimiento o la actividad de maletas en esa parte del vídeo.

Predicciones de YOLO11 visualizadas como un gráfico de área

Fig 5. Predicciones de YOLO11 visualizadas como un gráfico de área.

Link to this sectionUso de gráficos en aplicaciones reales de visión artificial#

Aquí tienes algunas aplicaciones de visión artificial del mundo real donde la visualización de datos tiene un impacto significativo:

  • Sanidad: Los sistemas de visión artificial pueden monitorizar la actividad de los pacientes, el movimiento del personal y el uso del equipo en tiempo real. Esto genera grandes cantidades de datos visuales que, cuando se visualizan, pueden revelar patrones, como los horarios de mayor ocupación de pacientes o los retrasos en las respuestas.

  • Venta minorista y comercio electrónico: La visión artificial se puede utilizar para realizar un seguimiento del movimiento de los clientes, el tiempo de permanencia frente a los estantes y las interacciones con los productos. Los análisis visuales como los gráficos de barras o circulares pueden resaltar qué zonas de la tienda o artículos reciben más atención, ayudando a los minoristas a optimizar la colocación de productos y mejorar las conversiones.

  • Fabricación: Las cámaras equipadas con modelos de visión artificial pueden monitorizar las líneas de montaje en busca de defectos, violaciones de seguridad o el estado de los equipos. La visualización de datos puede mostrar tendencias en los tipos de defectos más comunes o resaltar periodos de tiempo con las tasas de error más altas, permitiendo una toma de decisiones más rápida y un mantenimiento preventivo.

Link to this sectionConclusiones clave#

Con el paquete Ultralytics, puedes convertir fácilmente secuencias de vídeo en gráficos claros e instructivos que revelan lo que está ocurriendo, como el seguimiento de cuántas personas u objetos aparecen a lo largo del tiempo. En lugar de revisar manualmente horas de vídeo, puedes generar resúmenes visuales que resalten patrones y tendencias clave, lo que facilita actuar con rapidez. Ya sea en hospitales, tiendas minoristas o plantas de fabricación, estos gráficos convierten resultados complejos de IA en información que cualquiera puede entender y utilizar.

¿Quieres saber más sobre IA? Explora nuestro repositorio de GitHub, conecta con nuestra comunidad y consulta nuestras opciones de licencia para impulsar tu proyecto de visión por ordenador. Obtén más información sobre innovaciones como la IA en la fabricación y la visión por ordenador en la industria logística en nuestras páginas de soluciones.

Explore solutions

Real-time AI that works with your team

IA en robótica

Potencia máquinas más inteligentes con modelos Ultralytics YOLO. La IA de visión 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
Real-time AI that works with your team

IA en logística

Optimiza la logística con los modelos de Ultralytics YOLO. La visión artificial por IA permite la inspección de paquetes, clasificación, seguimiento de vehículos y monitoreo de seguridad en almacenes en tiempo real.

Más información
Real-time AI that works with your team

IA en el sector minorista

Reimagina el comercio minorista con los modelos de Ultralytics YOLO. La visión artificial por IA potencia el seguimiento de inventario, el monitoreo de estantes, la gestión de colas y mejores perspectivas sobre los clientes.

Más información
Real-time AI that works with your team

IA en la atención sanitaria

Crea soluciones de salud con los modelos de Ultralytics YOLO. La IA de visión en la sanidad potencia imágenes médicas más rápidas, diagnósticos más inteligentes y supervisión de pacientes.

Más información
Real-time AI that works with your team

IA en la fabricación

Optimiza la fabricación con los modelos de Ultralytics YOLO. La visión artificial por IA impulsa el control de calidad, la detección de defectos, el cumplimiento del uso de PPE y la automatización de la línea de montaje.

Más información
Real-time AI that works with your operation

IA en automoción

Aplica la visión artificial en el sector automotriz con los modelos de Ultralytics YOLO. La IA de visión mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para carreteras más inteligentes.

Más información
Real-time AI tailored to your operation

IA en agricultura

Lleva la visión artificial a la agricultura inteligente con los modelos de Ultralytics YOLO. Potencia el seguimiento de cultivos, el control del ganado y la agricultura de precisión para obtener rendimientos mayores y más inteligentes.

Más información
Real-time AI that works with your team

IA en robótica

Potencia máquinas más inteligentes con modelos Ultralytics YOLO. La IA de visión 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
Real-time AI that works with your team

IA en logística

Optimiza la logística con los modelos de Ultralytics YOLO. La visión artificial por IA permite la inspección de paquetes, clasificación, seguimiento de vehículos y monitoreo de seguridad en almacenes en tiempo real.

Más información
Real-time AI that works with your team

IA en el sector minorista

Reimagina el comercio minorista con los modelos de Ultralytics YOLO. La visión artificial por IA potencia el seguimiento de inventario, el monitoreo de estantes, la gestión de colas y mejores perspectivas sobre los clientes.

Más información
Real-time AI that works with your team

IA en la atención sanitaria

Crea soluciones de salud con los modelos de Ultralytics YOLO. La IA de visión en la sanidad potencia imágenes médicas más rápidas, diagnósticos más inteligentes y supervisión de pacientes.

Más información
Real-time AI that works with your team

IA en la fabricación

Optimiza la fabricación con los modelos de Ultralytics YOLO. La visión artificial por IA impulsa el control de calidad, la detección de defectos, el cumplimiento del uso de PPE y la automatización de la línea de montaje.

Más información
Real-time AI that works with your operation

IA en automoción

Aplica la visión artificial en el sector automotriz con los modelos de Ultralytics YOLO. La IA de visión mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para carreteras más inteligentes.

Más información
Real-time AI tailored to your operation

IA en agricultura

Lleva la visión artificial a la agricultura inteligente con los modelos de Ultralytics YOLO. Potencia el seguimiento de cultivos, el control del ganado y la agricultura de precisión para obtener rendimientos mayores y más inteligentes.

Más información
Real-time AI that works with your team

IA en robótica

Potencia máquinas más inteligentes con modelos Ultralytics YOLO. La IA de visión 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
Real-time AI that works with your team

IA en logística

Optimiza la logística con los modelos de Ultralytics YOLO. La visión artificial por IA permite la inspección de paquetes, clasificación, seguimiento de vehículos y monitoreo de seguridad en almacenes en tiempo real.

Más información
Real-time AI that works with your team

IA en el sector minorista

Reimagina el comercio minorista con los modelos de Ultralytics YOLO. La visión artificial por IA potencia el seguimiento de inventario, el monitoreo de estantes, la gestión de colas y mejores perspectivas sobre los clientes.

Más información
Real-time AI that works with your team

IA en la atención sanitaria

Crea soluciones de salud con los modelos de Ultralytics YOLO. La IA de visión en la sanidad potencia imágenes médicas más rápidas, diagnósticos más inteligentes y supervisión de pacientes.

Más información
Real-time AI that works with your team

IA en la fabricación

Optimiza la fabricación con los modelos de Ultralytics YOLO. La visión artificial por IA impulsa el control de calidad, la detección de defectos, el cumplimiento del uso de PPE y la automatización de la línea de montaje.

Más información
Real-time AI that works with your operation

IA en automoción

Aplica la visión artificial en el sector automotriz con los modelos de Ultralytics YOLO. La IA de visión mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para carreteras más inteligentes.

Más información
Real-time AI tailored to your operation

IA en agricultura

Lleva la visión artificial a la agricultura inteligente con los modelos de Ultralytics YOLO. Potencia el seguimiento de cultivos, el control del ganado y la agricultura de precisión para obtener rendimientos mayores y más inteligentes.

Más información

¡Construyamos juntos el futuro de la IA!

Comienza tu viaje con el futuro del aprendizaje automático