Arrow Electronic Components Online

Aplicaciones de Muestra de Qualcomm Linux – Detección de Objetos con IA y Fusión Paralela de IA

Inteligencia Artificial18 sept 2025
Una persona con un suéter rojo y un cordón amarillo está trabajando en una computadora portátil en una sala de servidores.
Ver todos los artículos

En este artículo, aprende sobre la detección de objetos en transmisión en vivo y las capacidades de fusión de sensores paralelos en el Qualcomm Intelligent Multimedia SDK.

Debido a las variables en constante cambio que afectan la capacidad de un dron autónomo para navegar, se utiliza un procesamiento de IA potente para la toma de decisiones. Debido a su complejidad, implementar estos controles de IA puede ser complicado. Sin embargo, las aplicaciones de ejemplo basadas en Linux de Qualcomm ofrecen a los desarrolladores de productos un camino más rápido hacia el mercado. En este artículo, aprende sobre las capacidades de detección de objetos en transmisión en vivo y fusión de sensores en paralelo incluidas en el Qualcomm Intelligent Multimedia SDK.   La última vez te guiamos a través de dos aplicaciones de ejemplo básicas del Qualcomm Intelligent Multimedia SDK. El SDK está basado en el software Qualcomm® Linux®, nuestra distribución que te permite escribir una vez y usar en muchos de nuestros sistemas en chip (SoCs) para IoT. En este artículo exploraremos dos más de las 22 aplicaciones de ejemplo del SDK para demostrar cómo puedes desarrollar aplicaciones para nuestros chipsets de IoT.

Viendo a través de la IA: Transmisión en vivo de detección de objetos

Esta aplicación de línea de comandos, gst-ai-object-detection, toma una transmisión de video en vivo desde una cámara y la transfiere a los modelos de IA de código abierto YOLO (You Only Look Once) para la detección de objetos. Realiza la detección de objetos con preprocesamiento e inferencia de IA en bloques de hardware dedicados, ejecutando YOLOV5, YOLOV8 o YOLO-Nas utilizando el Snapdragon Neural Processing SDK. Luego muestra una vista previa con la salida superpuesta, como etiquetas y cuadros delimitadores, basándose en el modelo.   La tubería de la aplicación se ve así:

A technical diagram illustrating the workflow of the Qualcomm Neural Processing SDK.

  • qtiqmmfsrc – Usando este plugin de GStreamer, la aplicación captura la transmisión en vivo de la cámara y luego utiliza tee para dividir la transmisión.
  • qtimlvconverter – Este complemento de preprocesamiento realiza tareas como conversión de color, escalado hacia abajo/arriba y normalización en los datos de la transmisión. Convierte la transmisión de video en una transmisión de tensores para inferencia posteriormente.
  • qtimlsnpe – Este plugin de inferencia de aprendizaje automático aplica YOLO-Nas (por defecto), YOLOV8 o YOLOV5 para detectar objetos en la transmisión. Ejecuta el runtime de procesamiento neuronal Snapdragon en hardware en una unidad de procesamiento neuronal (NPU) basada en CPU, GPU y DSP.
  • El runtime de SNPE realiza inferencias en el flujo de tensores y produce un flujo de tensores con los resultados de la inferencia.
  • qtimlvdetection – Para el postprocesamiento, este complemento aplica el umbral al número seleccionado de resultados deseados. Carga el módulo YOLO-Nas para el postprocesamiento, produce fotogramas de video que contienen únicamente cuadros delimitadores (para superposición) y entrega los fotogramas para la composición de video.
  • qtivcomposer – Este complemento superpone cuadros, con las cajas delimitadoras y etiquetas, sobre cuadros del flujo de la cámara en vivo, y luego transfiere los búferes de gst con las capas combinadas.
  • Waylandsink envía el flujo de video recibido a Weston, que renderiza el flujo de video en una pantalla local.

Aquí tienes un ejemplo de cómo usar gst-ai-object-detection para detectar a una persona en una transmisión de cámara:

A person wearing a red sweater and yellow lanyard is seen working on a laptop in a server room.

¿Cuándo usarías esta aplicación?

gst-ai-object-detection tiene docenas de clases que puedes incorporar en tus propias aplicaciones para detectar objetos (personas, vehículos, animales, etc.) y localizarlos en un encuadre de cámara. Los ejemplos incluyen la detección de cascos, fuego/humo e intrusos.

Fusión de IA Paralela: Cuatro Inferencias de IA en Cámara en Vivo

Esta aplicación de línea de comandos, gst-ai-parallel-inference, amplía la aplicación de un solo canal mencionada anteriormente para procesar en paralelo cuatro canales de modelos de IA en bloques de hardware dedicados. Además de la detección de objetos, agrega clasificación, detección de poses y segmentación, y luego muestra vistas previas compuestas y reducidas del flujo de cámara en vivo con la salida de los cuatro modelos superpuesta.   La canalización de la aplicación es una variación de la anterior, con un flujo separado para cada inferencia de IA, como se muestra a continuación:

A technical diagram showcasing a video processing pipeline for AI applications.

  • qtiqmmfsrc – Usando este complemento de gstreamer, la aplicación captura la transmisión en vivo de la cámara y luego utiliza tees para generar cuatro transmisiones paralelas.
  • qtimlvconverter – Este plugin de preprocesamiento realiza tareas como conversión de color, escalado descendente/ascendente y normalización en los datos del flujo. Convierte el flujo de video en un flujo de tensores para inferencia posterior.
  • qtimlsnpe – Este complemento de inferencia de aprendizaje automático aplica YOLO-Nas para la detección de objetos y DeepLabv3 para la segmentación de imágenes. El complemento ejecuta el entorno de procesamiento neuronal Snapdragon en hardware en un CPU-,
  • qtimltflite – Este complemento utiliza PoseNet para la detección de pose y Inception V3 para la clasificación de objetos. El complemento ejecuta el runtime de TFLite en hardware en una unidad de procesamiento neural (NPU) basada en CPU, GPU y DSP.
  • El posprocesamiento utiliza un complemento diferente para cada modelo.
  • qtimlvdetection – Para la detección de objetos, este complemento aplica el umbral al número seleccionado de resultados deseados. Carga el módulo de post-procesamiento YOLO-Nas, genera fotogramas de video que contienen únicamente cuadros delimitadores (para superposición) y entrega los fotogramas para la composición de video.
  • qtimlvclassification – Para la clasificación, este complemento aplica el umbral al número seleccionado de resultados deseados. Carga el módulo de postprocesamiento Inception V3, genera fotogramas de video con etiquetas de clasificación (para superposición) y entrega los fotogramas para la composición de video.
  • qtimlvpose – Para la estimación de poses, este complemento aplica el umbral al número elegido de resultados deseados. Es capaz de cargar módulos para diferentes modelos de estimación de poses. En este caso de uso, carga el módulo PoseNet, produce fotogramas de video con las poses dibujadas (para superposición) y transfiere los fotogramas para la composición de video.
  • qtimlvsegmentation – Para la segmentación, este plugin convierte los tensores de inferencia que recibe en formatos de video que nuestros plugins multimedia pueden entender posteriormente.
  • qtivcomposer – Este complemento superpone fotogramas de los modelos de IA sobre fotogramas de la transmisión en vivo de la cámara, y luego transfiere búferes gst con las capas combinadas.
  • Waylandsink envía el flujo de video recibido a Weston, que renderiza el flujo de video en una pantalla local.

Aquí tienes un ejemplo del flujo de video procesado por gst-ai-parallel-inference:

A male cyclist rides a mountain bike on a rugged dirt trail surrounded by greenery under a clear blue sky.

¿Cuándo usarías esta aplicación?

Como un superconjunto de gst-ai-object-detection, gst-ai-parallel-inference te permite detectar personas, vehículos, animales y otros objetos – incluso humo y fuego – en un marco de cámara.   Con la detección de posturas, puedes determinar, por ejemplo, si una persona está acostada, sentada o de pie, con la posibilidad de identificar si la persona se ha caído. Un entrenador de gimnasio o instructor de yoga puede usar la detección de posturas para entender si un estudiante está asumiendo correctamente una postura o no. Una aplicación de ergonomía puede observar y recordar mantener una postura correcta en una silla o en un escritorio.   Los escenarios para las aplicaciones de clasificación incluyen la categorización de productos, y para segmentación abarcan manufactura, cuidado de la salud y logística.

Próximos pasos

Estas son dos de las aplicaciones más interesantes que hemos creado para mostrar Qualcomm Linux. Puedes obtenerlas, junto con todo el Qualcomm Intelligent Multimedia SDK, desde código abierto, el cual incluye 20 aplicaciones adicionales para IA y multimedia. Luego, puedes comenzar a incorporarlas en tus propias aplicaciones.   Hemos diseñado Qualcomm Linux para que puedas escribir una vez y ejecutar en múltiples chipsets de IoT con el mismo código fuente. El Qualcomm Intelligent Multimedia SDK marca la primera vez que hemos abierto todos nuestros subsistemas multimedia – incluidos cámara, inteligencia artificial y audio – a los desarrolladores a través de APIs. A medida que aportamos más al código abierto, puedes personalizar, probar y contribuir a este trabajo. Es un gran paso en nuestra mentalidad de priorizar a los desarrolladores, en la que hacemos que sea más fácil para ti desarrollar las personalizaciones que deseas en tus aplicaciones IoT que ejecutan Linux.

Etiquetas de artículo

Drones
Internet de las cosas (IoT)
QUALCOMM
Inteligencia Artificial (AI)

Contenido Relacionado