Cómo diseñar e implantar rápidamente sistemas de visión artificial inteligentes

Por Jeff Shepard

Colaboración de Editores de DigiKey de América del Norte

La necesidad de la visión artificial es cada vez mayor en toda una serie de aplicaciones, como la seguridad, las cámaras de tráfico y de ciudad, el análisis del comercio minorista, la inspección automatizada, el control de procesos y la robótica guiada por visión. La aplicación de la visión artificial es compleja y requiere la integración de diversas tecnologías y subsistemas, incluidos el hardware de alto rendimiento y el software avanzado de inteligencia artificial/aprendizaje automático (AI/ML). Comienza con la optimización de la tecnología de captura de video y la E/S de visión para cubrir las necesidades de la aplicación y se extiende a los múltiples canales de procesamiento de imágenes para una conectividad eficiente. En última instancia, depende de que el sistema de visión integrado pueda realizar análisis basados en la visión en tiempo real utilizando hardware de alto rendimiento, como matrices de puertas programables en campo (FPGA), sistemas en módulos (SOM), sistemas en chips (SoC) e incluso sistemas multiprocesadores en chips (MPSoC) para ejecutar el software de procesamiento y reconocimiento de imágenes de IA/ML necesario. Esto puede ser un proceso complejo y costoso que requiere mucho tiempo y puede estar expuesto a numerosas oportunidades de sobrecostos y retrasos en el calendario.

En lugar de empezar desde cero, los diseñadores pueden recurrir a una plataforma de desarrollo bien preparada y de alto rendimiento que acelera el tiempo de comercialización, controla los costos y reduce los riesgos de desarrollo. Además, admite altos grados de flexibilidad y rendimiento de las aplicaciones. Una plataforma de desarrollo basada en SOM puede proporcionar un entorno de hardware y software integrado, lo que permite a los desarrolladores centrarse en la personalización de las aplicaciones y ahorrar hasta nueve meses de tiempo de desarrollo. Además del entorno de desarrollo, la misma arquitectura SOM está disponible en configuraciones optimizadas para la producción en entornos comerciales e industriales, lo que mejora la fiabilidad y la calidad de las aplicaciones, reduce aún más los riesgos y acelera el tiempo de comercialización.

Este artículo comienza repasando los retos asociados al desarrollo de sistemas de visión artificial de alto rendimiento, después presenta el completo entorno de desarrollo que ofrece el kit de inicio de IA de visión Kria KV260 de AMD Xilinx, y finaliza con ejemplos de SOM listos para la producción basados en la plataforma Kira 26, diseñados para ser conectados a una tarjeta portadora con periféricos específicos de la solución.

Comienza con la optimización del tipo de datos.

Las necesidades de los algoritmos de aprendizaje profundo están evolucionando. No todas las aplicaciones necesitan cálculos de alta precisión. Se están utilizando tipos de datos de menor precisión, como INT8, o formatos de datos personalizados. Los sistemas basados en la GPU pueden enfrentarse al reto de intentar modificar las arquitecturas optimizadas para datos de alta precisión para acomodar formatos de datos de menor precisión de forma eficiente. El SOM del Kria K26 es reconfigurable, lo que le permite soportar una amplia gama de tipos de datos, desde FP32 hasta INT8 y otros. La reconfigurabilidad también da lugar a un menor consumo energético global. Por ejemplo, las operaciones optimizadas para INT8 consumen un orden de magnitud menos de energía en comparación con una operación FP32 (Figura 1).

Imagen de la energía necesaria para las operaciones INT8 en comparación con las operaciones FP32Figura 1: Se necesita un orden de magnitud menos de energía para las operaciones INT8 (8b Add) en comparación con las operaciones FP32 (32b Add). (Fuente de la imagen: AMD Xilinx)

Arquitectura óptima para un consumo mínimo de energía

Los diseños implementados sobre la base de una arquitectura de GPU o CPU multinúcleo pueden consumir mucha energía según los patrones típicos de uso de la misma:

  • 30% para los núcleos
  • 30% para la memoria interna (L1, L2, L3)
  • 40% para la memoria externa (como DDR)

Las GPU necesitan acceder con frecuencia a una memoria DDR poco eficiente para poder programar y pueden suponer un cuello de botella para las demandas de cálculo de gran ancho de banda. La arquitectura Zynq MPSoC utilizada en el SOM Kria K26 admite el desarrollo de aplicaciones con poco o ningún acceso a la memoria externa. Por ejemplo, en una aplicación típica de automoción, la comunicación entre la GPU y varios módulos requiere múltiples accesos a la memoria DDR externa, mientras que la solución basada en el Zynq MPSoC incorpora un proceso diseñado para evitar la mayoría de los accesos a la DDR (Figura 2).

Diagrama de comparación del SOC típico y el AMD Xilinx Zynq MPSoCFigura 2: En esta aplicación típica de automoción, la GPU requiere múltiples accesos a la DDR para la comunicación entre los distintos módulos (izquierda), mientras que la arquitectura de canalización del Zynq MPSoC (derecha) evita la mayoría de los accesos a la DDR. (Fuente de la imagen: AMD Xilinx)

El recorte aprovecha las ventajas

El rendimiento de las redes neuronales en el SOM K26 puede mejorarse utilizando una herramienta de optimización de IA que permite optimizar y recortar los datos. Es muy común que las redes neuronales estén sobreparametrizadas, lo que conduce a altos niveles de redundancia que pueden optimizarse utilizando el recorte de datos y la compresión de modelos. El uso del optimizador de IA de Xilinx puede dar lugar a una reducción de 50 veces en la complejidad del modelo, con un impacto nominal en la precisión del mismo. Por ejemplo, un detector de disparo único (SSD) más una arquitectura de red neuronal de convolución (CNN) VGG con 117 giga operaciones (Gops) se refinó a lo largo de 11 iteraciones de poda utilizando el optimizador de IA. Antes de la optimización, el modelo funcionaba a 18 cuadros por segundo (FPS) en un Zynq UltraScale+ MPSoC. Tras 11 iteraciones -laduodécima ejecución del modelo-, la complejidad se redujo de 117 Gops a 11.6 Gops (10X), el rendimiento aumentó de 18 a 103 FPS (5X), y la precisión se redujo de 61.55 de precisión media (mAP) para la detección de objetos a 60.4 mAP (solo un 1% menos) (Figura 3).

Gráfico de la ventaja de la podaFigura 3: Tras un número relativamente reducido de iteraciones, el recorte puede reducir la complejidad del modelo (Gop) en 10 veces y mejorar el rendimiento (FPS) en 5 veces, con solo una reducción del 1% en la precisión (mAP). (Fuente de la imagen: AMD Xilinx)

Ejemplo de aplicación en el mundo real

Se ha desarrollado una aplicación de aprendizaje automático para la detección y el reconocimiento de matrículas de automóviles, también llamada reconocimiento de matrículas de automóviles (ANPR), basada en el software de análisis de visión de Uncanny Vision. El ANPR se utiliza en sistemas de peaje automatizados, control de autopistas, acceso seguro a puertas y aparcamientos, y otras aplicaciones. Esta aplicación ANPR incluye una canalización basada en la IA que descodifica el video y preprocesa la imagen, seguida de la detección ML y el reconocimiento de caracteres OCR (Figura 4).

Diagrama del flujo típico de procesamiento de imágenes para una aplicación ANPR basada en IA (haga clic para ampliar)Figura 4: Flujo típico de procesamiento de imágenes para una aplicación ANPR basada en IA. (Fuente de la imagen: AMD Xilinx)

La implementación de ANPR requiere uno o más feeds de protocolo de transmisión en tiempo real (RTSP) codificados en H.264 o H.265, decodificados o sin comprimir. Los fotogramas de video descodificados se escalan, recortan, convierten el espacio de color y se normalizan (preprocesamiento), y luego se envían al algoritmo de detección de ML. Las implementaciones de ANPR de alto rendimiento requieren una canalización de IA de varias etapas. La primera etapa detecta y localiza el vehículo en la imagen, creando la región de interés (ROI). Al mismo tiempo, otros algoritmos optimizan la calidad de la imagen para su posterior uso por el algoritmo de reconocimiento de caracteres OCR y rastrean el movimiento del vehículo a través de múltiples fotogramas. El ROI del vehículo se recorta además para generar el ROI de la matrícula procesado por el algoritmo OCR para determinar los caracteres de la matrícula. En comparación con otros SOM comerciales basados en GPU o CPU, la aplicación ANPR de Uncanny Vision se ejecutaba 2-3 veces más rápido en el SOM Kira KV260, con un costo inferior a 100 dólares por alimentación RTSP.

Entorno de desarrollo de visión inteligente

Los diseñadores de aplicaciones de visión inteligente, como cámaras de tráfico y de ciudad, análisis de comercios, seguridad, automatización industrial y robótica, pueden recurrir al entorno de desarrollo Kria K26 SOM AI Starter. Este entorno está construido con la arquitectura MPSoC Zynq® UltraScale+™ y cuenta con una creciente biblioteca de paquetes de software de aplicación curados (Figura 5). El AI Starter SOM incluye un procesador Arm Cortex-A53 de cuatro núcleos, más de 250 mil células lógicas y un códec de video H.264/265. El SOM también cuenta con 4 GB de memoria DDR4, 245 IO y 1.4 tera-ops de computación de IA para apoyar la creación de aplicaciones de IA de visión de alto rendimiento que ofrecen más de 3 veces más rendimiento con menor latencia y energía en comparación con otros enfoques de hardware. Las aplicaciones preconstruidas permiten realizar los diseños iniciales en menos de una hora.

Imagen kit de inicio de IA de visión de AMD Xilinx Kria KV260Figura 5: El kit de inicio de IA de visión Kria KV260 es un completo entorno de desarrollo para aplicaciones de visión artificial. (Fuente de la imagen: AMD Xilinx)

Para ayudar a iniciar el proceso de desarrollo utilizando el SOM Kria K26, AMD Xilinx ofrece el kit de inicio de IA de visión KV260 que incluye un adaptador de corriente, un cable Ethernet, una tarjeta microSD, un cable USB, un cable HDMI y un módulo de cámara (Figura 6). Si no se necesita todo el kit de inicio, los desarrolladores pueden simplemente adquirir el adaptador de corriente opcional para empezar a utilizar el Kira K26 SOM.

Imagen del kit de inicio de IA de visión de AMD Xilinx KV260Figura 6: El kit de inicio de la IA de visión KV260 incluye: (fila superior, de izquierda a derecha) fuente de alimentación, cable Ethernet, tarjeta microSD, y (fila inferior, de izquierda a derecha) cable USB, cable HDMI, módulo de cámara. (Imagen: AMD Xilinx)

Otro factor que acelera el desarrollo es el amplio abanico de funciones, que incluye abundantes entradas y salidas de 1.8 V, 3.3 V y diferenciales con cuatro transceptores de 6 Gb/s y cuatro de 12.5 Gb/s. Estas características permiten el desarrollo de aplicaciones con un mayor número de sensores de imagen por SOM y muchas variaciones de interfaces de sensores, como MIPI, LVDS, SLVS y SLVS-EC, que no siempre son compatibles con los productos estándar de aplicación (ASSP) o las GPU. Los desarrolladores también pueden implementar DisplayPort, HDMI, PCIe, USB2.0/3.0 y estándares definidos por el usuario con la lógica programable integrada.

Por último, el desarrollo de aplicaciones de IA se ha simplificado y hecho más accesible al acoplar las amplias capacidades de hardware y el entorno de software del SOM K26 con aplicaciones de visión listas para la producción. Estas aplicaciones de visión pueden implementarse sin necesidad de un diseño de hardware FPGA y permiten a los desarrolladores de software integrar rápidamente modelos de IA y código de aplicación personalizados e incluso modificar el proceso de visión. La plataforma de desarrollo de software unificado Vitis y las librerías de Xilinx son compatibles con los entornos de diseño habituales, como los marcos TensorFlow, Pytorch y Café, así como con múltiples lenguajes de programación, como C, C++, OpenCL™ y Python. También hay una tienda de aplicaciones integradas para aplicaciones de borde que utilizan los SOM Kria de Xilinx y sus socios del ecosistema. Las ofertas de Xilinx son gratuitas y de código abierto e incluyen el seguimiento de cámaras inteligentes y la detección de rostros, el procesamiento del lenguaje natural con visión inteligente, y mucho más.

Producción optimizada de Kira 26 SOM

Una vez completado el proceso de desarrollo, están disponibles versiones del SOM K26 listas para la producción, diseñadas para ser conectadas a una tarjeta portadora con periféricos específicos para la solución que pueden acelerar la transición a la fabricación (Figura 7). El SOM K26 básico es una unidad de grado comercial con un rango de temperatura de 0 °C a +85 °C de temperatura de unión, según lo medido por el sensor de temperatura interno. También está disponible una versión de grado industrial del SOM K26, que puede funcionar entre -40 °C y +100 °C.

El mercado industrial exige una larga vida útil en entornos difíciles. El Kria SOM, de calidad industrial, está diseñado para funcionar durante diez años a una temperatura de unión de 100 °C y una humedad relativa del 80%, y para soportar hasta 40 g de golpes y 5 g de vibración media cuadrática (RMS). También cuenta con una disponibilidad de producción mínima de diez años para respaldar los largos ciclos de vida de los productos.

Imagen de los SOM Xilinx Kira 26 optimizados para producciónFigura 7: Los SOM de Kira 26 optimizados para la producción en entornos industriales y comerciales están diseñados para conectarse a una tarjeta portadora con periféricos específicos para la solución. (Imagen: DigiKey)

Resumen

Los diseñadores de aplicaciones de visión artificial, como cámaras de seguridad, tráfico y ciudad, análisis de comercios, inspección automatizada, control de procesos y robótica guiada por visión, pueden recurrir al Kria K26 SOM AI Starter para acelerar el tiempo de comercialización, ayudar a controlar los costos y reducir los riesgos de desarrollo. Esta plataforma de desarrollo basada en SOM es un entorno integrado de hardware y software que permite a los desarrolladores centrarse en la personalización de las aplicaciones y ahorrar hasta nueve meses de tiempo de desarrollo. La misma arquitectura SOM está disponible en configuraciones optimizadas para la producción en entornos comerciales e industriales, lo que acelera aún más el tiempo de comercialización. La versión industrial tiene una disponibilidad de producción mínima de 10 años para respaldar los ciclos de vida largos de los productos.

DigiKey logo

Descargo de responsabilidad: Las opiniones, creencias y puntos de vista expresados por los autores o participantes del foro de este sitio web no reflejan necesariamente las opiniones, las creencias y los puntos de vista de DigiKey o de las políticas oficiales de DigiKey.

Información sobre el autor

Image of Jeff Shepard

Jeff Shepard

Jeff ha estado escribiendo sobre electrónica de potencia, componentes electrónicos y otros temas de tecnología durante más de 30 años. Empezó a escribir sobre electrónica de potencia como editor senior en el EETimes. Posteriormente fundó Powertechniques, una revista de diseño de electrónica de potencia, y más tarde fundó Darnell Group, una empresa global de investigación y publicación de electrónica de potencia. Entre sus actividades, el Grupo Darnell publicó PowerPulse.net, que proporcionaba noticias diarias a la comunidad mundial de ingeniería en electrónica de potencia. Es el autor de un libro de texto sobre fuentes de alimentación conmutadas, titulado "Fuentes de alimentación", publicado por la división Reston de Prentice Hall.

Jeff también cofundó Jeta Power Systems, un fabricante de fuentes de alimentación conmutadas de alto voltaje, que fue adquirido por Computer Products. Jeff es también un inventor, ya que su nombre figura en 17 patentes de los Estados Unidos en los campos de la recolección de energía térmica y los metamateriales ópticos, y es una fuente de la industria y un frecuente orador sobre las tendencias mundiales en la electrónica de potencia. Tiene una maestría en Métodos cuantitativos y Matemáticas de la Universidad de California.

Información sobre la editorial

Editores de DigiKey de América del Norte