YOLO Vision 2026:

Ultralytics YOLO26 en Intel Core Ultra Series 3 mediante DL Streamer Pipeline Framework y OpenVINO™#

Esta guía completa ofrece un recorrido detallado para implementar Ultralytics YOLO26 en plataformas Intel Core Ultra Series 3 mediante DL Streamer Pipeline Framework y el kit de herramientas OpenVINO™. Aquí usamos OpenVINO™ para maximizar el rendimiento de inferencia en CPU, GPU integradas y discretas, y NPU de Intel.

Intel DL Streamer

Contenido: ¿Qué es Intel DL Streamer?Requisitos previosPreparación del modelo YOLO26Ejecución de inferencia con YOLO26Configuración multistreamPreguntas frecuentes

¿Qué es Intel DL Streamer?#

Deep Learning Streamer (DL Streamer) Pipeline Framework es un marco de análisis de medios en streaming de código abierto basado en el marco multimedia GStreamer, diseñado para crear canalizaciones complejas de análisis de medios en la nube o en el edge.

DL Streamer permite analizar flujos de audio y vídeo para detectar, clasificar, seguir, identificar y contar objetos, eventos y personas. Está optimizado para hardware Intel y proporciona interoperabilidad entre plugins de GStreamer basados en varias bibliotecas de backend:

  • Inferencia: motor de inferencia OpenVINO™, optimizado para CPU, GPU y NPU de Intel
  • Codificación/decodificación de vídeo: aceleración mediante GPU a través de VA-API
  • Procesamiento de imágenes: aceleración mediante GPU a través de VA-API
  • Metadatos: GStreamer Analytics para resultados de inferencia estructurados
  • Ecosistema: cientos de plugins de GStreamer para E/S de medios, multiplexación/demultiplexación, compatibilidad con códecs y mucho más

DL Streamer admite muchos modelos de IA, incluida toda la familia Ultralytics YOLO (de YOLOv5 a YOLO26), todos en formato OpenVINO™.

DL Streamer se valida periódicamente con sistemas proporcionados en la documentación de System Requirements — Open Edge Platform

Requisitos previos#

Antes de empezar, asegúrate de que lo siguiente esté instalado y configurado en tu sistema Intel:

Preparación del modelo YOLO26#

DL Streamer utiliza modelos en formato IR de OpenVINO™. Los modelos Ultralytics YOLO26 se exportan de PyTorch a IR de OpenVINO™ mediante el exportador de Ultralytics. DL Streamer aprovecha la integración oficial de Ultralytics con OpenVINO™, que proporciona funciones optimizadas de exportación e inferencia para hardware Intel.

  1. Crea la carpeta ~/intel/dlstreamer_demo e instala OpenVINO™ y Ultralytics en un entorno virtual
mkdir -p ~/intel/dlstreamer_demo && cd ~/intel/dlstreamer_demo
python3 -m venv .dls-venv && source .dls-venv/bin/activate
pip install openvino==2026.2.0 ultralytics==8.4.92
  1. Descarga el modelo YOLO26s de PyTorch desde Ultralytics, conviértelo al formato IR de OpenVINO™ y genera una variante con precisión INT8.
yolo export model=yolo26s.pt format=openvino dynamic=True quantize=8 data=coco128.yaml

El modelo debe descargarse en la carpeta ~/intel/dlstreamer_demo/yolo26s_int8_openvino_model.

Precisión del modelo#

DL Streamer admite modelos con precisión FP32, FP16 e INT8. Cada uno requiere un paso de exportación independiente:

# FP32 (default precision, highest accuracy)
yolo export model=yolo26s.pt format=openvino dynamic=True

# FP16 (recommended for GPU inference, good accuracy/performance balance)
yolo export model=yolo26s.pt format=openvino dynamic=True quantize=16

# INT8 (maximum performance, requires calibration dataset)
yolo export model=yolo26s.pt format=openvino dynamic=True quantize=8 data=coco128.yaml

Los ejemplos siguientes utilizan el modelo INT8 exportado en el paso de preparación. Para usar modelos FP32 o FP16, sustituye la ruta del modelo según corresponda (por ejemplo, yolo26s_openvino_model/yolo26s.xml).

Ejecución de inferencia con YOLO26#

Antes de ejecutar la canalización de detección de inferencia de YOLO26 con DL Streamer, ejecuta la imagen Docker de DL Streamer en modo interactivo. Asegúrate de haber seguido el paso de preparación del modelo YOLO26 y descarga el siguiente archivo de vídeo de la base de datos de Pexels.

curl -L https://videos.pexels.com/video-files/1192116/1192116-sd_640_360_30fps.mp4 --output ~/intel/dlstreamer_demo/video1.mp4

Ejecuta la imagen Docker de DL Streamer en modo interactivo.

Nota

Este comando está destinado a sistemas equipados con procesadores Intel Core Ultra Series 3 con GPU integrada (iGPU) y NPU incorporada.

docker run -it --rm \
  -v ~/intel/dlstreamer_demo:/home/dlstreamer/demo \
  -v "$HOME/.Xauthority:/root/.Xauthority:rw" \
  -e DISPLAY=$DISPLAY \
  -e XDG_RUNTIME_DIR=/tmp \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  --device /dev/dri \
  --group-add $(stat -c "%g" /dev/dri/render*) \
  --device /dev/accel \
  --group-add $(stat -c "%g" /dev/accel/accel*) \
  -e ZE_ENABLE_ALT_DRIVERS=libze_intel_npu.so \
  intel/dlstreamer:latest

Precisión INT8 (máximo rendimiento)#

La cuantización INT8 ofrece el mayor rendimiento al reducir los pesos del modelo a enteros de 8 bits. El exportador de Ultralytics gestiona la calibración automáticamente.

Ejecuta YOLO26s con INT8 en GPU#

gst-launch-1.0 filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU ! queue ! vapostproc ! gvawatermark ! gvafpscounter ! autovideosink sync=false
Intel DL Streamer GPU

Ejecuta YOLO26s con INT8 en GPU y guarda el resultado en un archivo de vídeo (~/intel/dlstreamer_demo/yolo_video1_yolo26s_INT8_GPU.mp4)#

gst-launch-1.0 filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU ! queue ! vapostproc ! gvawatermark ! gvafpscounter ! vah264enc ! h264parse ! mp4mux ! filesink location=/home/dlstreamer/demo/yolo_video1_yolo26s_INT8_GPU.mp4

Ejecuta YOLO26s con INT8 en NPU#

gst-launch-1.0 filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=NPU ! queue ! vapostproc ! gvawatermark ! gvafpscounter ! autovideosink sync=false
Intel DL Streamer NPU

Configuración multistream#

DL Streamer admite el procesamiento multistream, en el que se descodifican e infieren simultáneamente varias fuentes de vídeo. Puedes iniciar varias canalizaciones en paralelo mediante el elemento vacompositor de GStreamer para combinar varios flujos.

Ejecución en paralelo de varias canalizaciones (4 flujos) (GPU)#

gst-launch-1.0 vacompositor name=comp sink_0::xpos=0 sink_0::ypos=0 sink_1::xpos=660 sink_1::ypos=0 sink_2::xpos=0 sink_2::ypos=380 sink_3::xpos=660 sink_3::ypos=380 ! autovideosink sync=false \
  filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_0 \
  filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_1 \
  filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_2 \
  filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_3
Intel DL Streamer Multistream GPU

Recursos adicionales#

Preguntas frecuentes#

  • Instala DL Streamer siguiendo la guía de instalación, configura el entorno con source /opt/intel/dlstreamer/scripts/setup_dls_env.sh, instala Ultralytics y OpenVINO™ y descarga los modelos mediante download_ultralytics_models.sh. Después, ejecuta la inferencia con la aplicación de ejemplo de DL Streamer yolo_detect.sh, que proporciona un script listo para usar para ejecutar canalizaciones de inferencia de YOLO26. Consulta el tutorial breve para saber cómo ejecutarlo.

  • OpenVINO™ optimiza el modelo YOLO26 específicamente para hardware Intel mediante técnicas como la optimización del grafo, la fusión de capas y el ajuste de kernels específicos del hardware. Combinada con la descodificación acelerada mediante VA-API y el preprocesamiento sin copias va-surface-sharing de DL Streamer, la canalización completa de análisis de vídeo alcanza un rendimiento significativamente mayor que los frameworks no optimizados.

  • Sí. DL Streamer admite inferencia en CPU Intel (Core, Core Ultra, Xeon), GPU integradas (Iris Xe, Arc), GPU discretas (Arc A-Series, B-Series) y NPU (AI Boost) de varias generaciones de plataformas Intel. Solo tienes que cambiar el parámetro DEVICE a CPU, GPU o NPU.

    • FP16 se recomienda como opción predeterminada para la inferencia en GPU: ofrece una precisión cercana a FP32 con una mejora del rendimiento de aproximadamente 2x.
    • INT8 ofrece el máximo rendimiento (2–3x superior a FP32) con una pequeña reducción de precisión y es ideal cuando la prioridad es maximizar el rendimiento. Los modelos INT8 se calibran automáticamente durante la exportación de Ultralytics.
  • DL Streamer admite todas las variantes de tareas de YOLO26: - Detección: yolo26n, yolo26s, yolo26m, yolo26l, yolo26x - Cuadro delimitador orientado (OBB): yolo26s-obb (y todas las variantes de tamaño) - Segmentación de instancias: yolo26s-seg (y todas las variantes de tamaño) - Estimación de pose: yolo26s-pose (y todas las variantes de tamaño) - Clasificación: yolo26s-cls (canalización compuesta con detección)

  • Usa la opción de salida json para escribir los resultados de detección como líneas JSON en un archivo:

    ./yolo_detect.sh yolo26s GPU input_video.mp4 json va-surface-sharing INT8

    Como alternativa, usa el elemento gvametapublish en canalizaciones personalizadas para publicar metadatos en archivos, MQTT o Kafka.

Comentarios