Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Inferencia en tiempo real

Explora el poder de la inferencia en tiempo real para obtener predicciones instantáneas de IA. Descubre cómo Ultralytics ofrece resultados de baja latencia para dispositivos periféricos y robótica.

La inferencia en tiempo real se refiere al proceso en el que un modelo de aprendizaje automático (ML) entrenado acepta datos de entrada en vivo y genera predicciones casi instantáneamente. A diferencia del procesamiento fuera de línea, en el que los datos se recopilan y analizan de forma masiva en un momento posterior, la inferencia en tiempo real se produce sobre la marcha, lo que permite a los sistemas reaccionar a su entorno con rapidez y agilidad. Esta capacidad es el corazón de las modernas aplicaciones de inteligencia artificial (IA) , ya que permite a los dispositivos percibir, interpretar y actuar sobre los datos en milisegundos.

La importancia de la baja latencia

La métrica principal para evaluar el rendimiento en tiempo real es la latencia de inferencia. Esta mide el retraso entre el momento en que los datos se introducen en el modelo, como un fotograma de una cámara de vídeo, y el momento en que el modelo produce un resultado, como un cuadro delimitador o una etiqueta de clasificación. Para que una aplicación se considere «en tiempo real», la latencia debe ser lo suficientemente baja como para igualar la velocidad del flujo de datos entrantes.

Por ejemplo, en tareas de comprensión de vídeo que se ejecutan a 30 fotogramas por segundo (FPS), el sistema tiene un tiempo estrictamente limitado de aproximadamente 33 milisegundos para procesar cada fotograma. Si la inferencia tarda más, el sistema introduce un retraso, lo que puede provocar la pérdida de fotogramas o respuestas retrasadas. Para lograrlo, a menudo se requiere aceleración por hardware mediante GPU o dispositivos Edge AI especializados como NVIDIA .

Inferencia en tiempo real frente a inferencia por lotes

Es útil distinguir los flujos de trabajo en tiempo real del procesamiento por lotes. Aunque ambos implican generar predicciones, sus objetivos y arquitecturas difieren significativamente:

  • Inferencia en tiempo real: Da prioridad a la baja latencia. Procesa puntos de datos únicos (o lotes muy pequeños ) tan pronto como llegan. Esto es esencial para aplicaciones interactivas como los vehículos autónomos, en los que un coche debe detect instantáneamente detect peatón para frenar a tiempo.
  • Inferencia por lotes: da prioridad al alto rendimiento. Recopila un gran volumen de datos y los procesa todos a la vez. Es adecuada para tareas no urgentes, como generar informes de inventario nocturnos o analizar tendencias históricas de big data.

Aplicaciones en el mundo real

La capacidad de tomar decisiones en fracciones de segundo ha transformado diversos sectores al permitir la automatización en entornos dinámicos .

  • Fabricación inteligente: En la IA aplicada a la fabricación, las cámaras situadas sobre las cintas transportadoras utilizan la inferencia en tiempo real para realizar un control de calidad automatizado. Un modelo de detección de objetos puede identificar instantáneamente defectos u objetos extraños en productos que se mueven a gran velocidad. Si se detecta una anomalía, el sistema activa un brazo robótico para retirar el artículo inmediatamente, lo que garantiza que solo los productos de alta calidad lleguen al embalaje.
  • Vigilancia y seguridad: Los sistemas de seguridad modernos se basan en la visión artificial para supervisar los perímetros. En lugar de limitarse a grabar imágenes, estas cámaras realizan detección de personas o reconocimiento facial en tiempo real para alertar al personal de seguridad de cualquier acceso no autorizado en el momento en que se produce.
  • Robótica: En el campo de la IA en robótica, los robots utilizan la estimación de posturas para navegar por espacios físicos complejos . Un robot de almacén debe inferir continuamente la ubicación de los obstáculos y los trabajadores humanos para planificar su trayectoria de forma segura y eficiente.

Optimización e implementación

La implementación de modelos para aplicaciones en tiempo real a menudo requiere optimización para garantizar que se ejecuten de manera eficiente en el hardware de destino . Técnicas como la cuantificación de modelos reducen la precisión de los pesos del modelo (por ejemplo, de float32 a int8) para disminuir el uso de memoria y aumentar la velocidad de inferencia con un impacto mínimo en la precisión.

Los desarrolladores pueden utilizar la Ultralytics para optimizar este proceso. La plataforma simplifica la formación y permite a los usuarios exportar modelos a formatos optimizados como TensorRT para NVIDIA , OpenVINO para Intel o TFLite para implementación móvil.

Ejemplo de código

El siguiente Python muestra cómo ejecutar una inferencia en tiempo real en una transmisión de cámara web utilizando el ultralytics biblioteca. Utiliza el YOLO26 El modelo Nano, diseñado específicamente para ofrecer un rendimiento de alta velocidad en dispositivos periféricos.

from ultralytics import YOLO

# Load the YOLO26 Nano model, optimized for speed and real-time tasks
model = YOLO("yolo26n.pt")

# Run inference on the default webcam (source="0")
# 'stream=True' returns a generator for memory-efficient processing
# 'show=True' displays the video feed with bounding boxes in real-time
results = model.predict(source="0", stream=True, show=True)

# Iterate through the generator to process frames as they arrive
for result in results:
    # Example: Print the number of objects detected in the current frame
    print(f"Detected {len(result.boxes)} objects")

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora