Las necesidades de procesamiento de la visión artificial: una tendencia en auge
Se trata de una tecnología de vanguardia que permite la obtención, procesamiento y análisis de cualquier tipo de información obtenida a través de imágenes digitales. Stephen Turnbull, director de Mercados Verticales de la división de Soluciones Integradas de AMD, explica en este artículo cómo los equipos que analizan las imágenes lo pueden hacer cada vez con más detalle y, pertanto, el potencial de esta disciplina aumenta, al igual que lo hacen las necesidades de procesamiento.
Háblales a tus amigos y familiares sobre la visión artificial y seguramente te mirarán raro, y es posible que acto seguido comiencen a charlar sobre una película que vieron en la que los robots tomaban conciencia de sí mismos y se volvían peligrosos. Por fortuna, la realidad no es tan siniestra. Tal vez la industria debería considerar una denominación de este segmento de tecnología que resulte más fácil para los usuarios, ya que este campo de vanguardia tiene un potencial enorme y positivo para las aplicaciones integradas.
En su esencia, la visión artificial consiste simplemente en aprovechar la información disponible en una imagen para tomar una decisión sobre qué hacer, sotto, con el objeto de la imagen.
Un simple pasa/no pasa al examinar un producto en la línea de montaje o antes de su envío es uno de los ejemplos más simples. La inspección de una placa de circuitos impresos (PCB) es un caso de uso común, donde la imagen de una placa maestra realizada correctamente puede ser comparada de manera fácil y rápida con las PCBs que se están produciendo, a medida que pasan de un sistema pick-and-place automatizado a la siguiente etapa. Este es un paso muy valioso para asegurar la calidad y que ayuda a reducir los elementos desechados, y que el ojo y el cerebro humano no podrían repetir constantemente cientos o incluso miles de veces por día.
Ver es creer en la visión artificial integrada
A medida que aumenta la resolución de los sistemas de captura de imágenes, el potencial de la visión artificial también lo hace, porque el nivel de detalle disponible para realizar una evaluación aumenta a una tasa correspondiente. Subconjuntos de información visual cada vez más pequeños pueden ser evaluados comparándolos con una plantilla maestra, aumentando la carga del procesador del sistema para tratar los datos y ofrecer rápidamente una decisión sobre qué hacer en los siguientes pasos (pasa/no pasa, retener, comenzar desde el principio, and so on.).
La clasificación de vegetales es un caso donde la categorización de éstos como apto/no apto no es óptima, ya que los estándares son diferentes de un país a otro y la calidad del producto varía a lo largo de una temporada. Para ser capaces de minimizar los desechos para el productor y aún así mantener la calidad adecuada para el cliente, se necesitan algoritmos más óptimos para la clasificación de la calidad, una tarea casi imposible para el ojo y el cerebro humano.
Una empresa que está haciendo uso de esta aplicación es la danesa Qtechnology. La compañía ofrece cámaras inteligentes para la la clasificación de verduras, con volúmenes de producción de hasta 25 toneladas por hora, lo que requiere analizar más de 250.000 productos entre alrededor de 500.000 immagini. A 6,2 MB por cada imagen, este caso particular requiere el análisis de más de 2,5 Terabytes de datos de imagen cada hora por máquina, una cantidad colosal de información a procesar. Con esta cantidad de datos se necesitarían más de 6 horas de tiempo de transferencia en una conexión Gigabit Ethernet.
Para resolver esto con algoritmos más simples se requerirían múltiples etapas y cámaras, iluminación en la máquina, más bienes raíces en las fábricas, and so on. La alternativa es aplicar una amplia capacidad de procesamiento, ya sea como una unidad de procesamiento centralizado a través de conexiones de banda ancha o de procesamiento distribuido con cámaras inteligentes, procesando datos en tiempo real directamente en la cámara con sólo los resultados por producto ofrecidos por el sistema de clasificación mecánica final.
Para hacer frente a diferentes tecnologías de captura de imagen, Qtechnology se sirve de cabezas intercambiables con diferentes conjuntos de sensores que van con los sistemas de cámaras inteligentes. Su cabeza de imágenes hiperespectrales, Per esempio, permite la detección no destructiva de la calidad y la inocuidad de los alimentos.
En los sistemas de visión estándar, la calidad y la seguridad de los alimentos generalmente se definen por atributos físicos externos como la textura y el color. Las imágenes hiperespectrales está dando a la industria alimentaria la oportunidad de incluir nuevos atributos en la evaluación de la calidad y la seguridad, tales como atributos químicos y biológicos para determinar el azúcar, la grasa, la humedad y el recuento de bacterias en los productos.
En las imágenes hiperespectrales, se obtienen de cada pixel tres cubos de imágenes tridimensionales con la información espacial y espectral. Un mayor número de características espectrales ofrece una mejor discriminación de los atributos y permite calificar teniendo en cuenta más características. Los cubos de imágenes incluyen la intensidad (reflejada o luz transmitida) de cada píxel para todas las longitudes de onda adquiridas de la luz, lo que resulta en cada cubo de imagen conteniendo una masa de información. Esta cantidad de datos representa un aumento exponencial en el reto computacional para extraer resultados cualitativos y cuantitativos para la clasificación del producto en tiempo real.
La aplicación de la informática heterogénea
El soporte a estas demandas de procesamiento, hoy y en el futuro, requiere de un procesamiento de alto rendimiento y escalable.
Qtechnology utiliza una unidad de procesamiento acelerado (APU) en sus plataformas para cámaras inteligentes que combina la GPU y CPU en el mismo chip, permitiendo al sistema descargar el procesamiento de los datos de píxeles en las aplicaciones de visión a la GPU sin transacciones de bus de alta latencia entre los componentes de procesamiento.
Esto permite a la CPU servir otras interrupciones con una latencia más baja, lo que ayuda a mejorar el rendimiento en tiempo real de todo el sistema y hacer frente a las crecientes demandas de procesamiento de sistemas de visión modernos.
El emparejamiento de un motor de procesamiento diferente en una sola oblea o en un sistema para aplicar la potencia de procesamiento adecuada al problema está en el corazón de la computación heterogénea.
La Fundación Heterogeneous System Architecture (HSA ·) fue instaurada en 2012 específicamente para ayudar a que la industria definiera especificaciones abiertas para los procesadores y sistemas que aprovechan todos los elementos de procesamiento disponibles para mejorar la eficiencia de procesamiento.
La GPU es un motor masivamente paralelo que pueden aplicar las mismas instrucciones a través de grandes conjuntos de datos (In questo caso, Pixel) allo stesso tempo; eso es exactamente lo que se necesita para que ejecutes un juego en 3D en tu consola de videojuegos favorita o PC.
Casualmente, esto también es exactamente lo que se necesita para la visión artificial. El rendimiento adicional se puede aumentar por el emparejamiento de la APU con una GPU discreta externa, en un formato Mobile PCI Express Module (MXM), que permite a las empresas añadir recursos adicionales de procesamiento de la GPU para apoyar las tareas de visión aún más intensivas cuando sea necesario.
El software es una parte crítica de la ecuación. Con HSA, toda la plataforma de procesamiento puede ser gobernada por un núcleo estándar Linux, que requiere sólo un apoyo modesto de desarrollo con cada nueva versión del kernel. El Proyecto Yocto, un proyecto de colaboración de código abierto, proporciona plantillas, herramientas y métodos para ayudar a los usuarios a crear sistemas basados en Linux personalizados para productos embebidos.
El enorme apoyo del ecosistema para x86 permite a las empresas aprovechar las bibliotecas de procesamiento de imágenes de terceros y de código abierto, como OpenCV, Mathworks Matlab y Halcon. Herramientas de depuración, analizadores de latencia y perfiladores (perf, ftrace) también están ampliamente disponibles.
Stephen Turnbull
Director de Mercados Verticales de la división de Soluciones Integradas de AMD.
Ti è piaciuto questo articolo?
Iscriviti al nostro Feed RSS E non ti perderai nulla.