Drone con cámara estéreo. La pequeña caja blanca contiene el sistema integrado, que evalúa las imágenes ligeramente desplazadas de las dos cámaras en tiempo real para detectar obstáculos. Crédito:Fraunhofer IOSB
Ya sea para el automóvil o el dron:desarrollar un software de procesamiento de imágenes para sistemas integrados lleva mucho tiempo y, por lo tanto, es muy costoso. Ahora, la plataforma Tulipp hace posible desarrollar sistemas de procesamiento de imágenes embebidos energéticamente eficientes de forma más rápida y económica. con una drástica reducción del time-to-market. El Instituto Fraunhofer de Optrónica, Tecnologías de sistemas y explotación de imágenes IOSB es miembro del consorcio de la UE que simplificó el proceso.
A primera vista, drones, Los sistemas de asistencia al conductor y los equipos móviles de diagnóstico médico no parecen tener mucho en común. Pero en realidad lo hacen:todos utilizan cada vez más componentes de procesamiento de imágenes, por ejemplo para detectar obstáculos y peatones. El procesamiento de imágenes también se puede utilizar con equipos de rayos X móviles para garantizar una calidad de imagen adecuada a niveles de radiación reducidos. reduciendo así considerablemente la exposición radiactiva.
A diferencia de una computadora de estación de trabajo, donde las dimensiones y el consumo de energía no son factores particularmente críticos, aplicaciones como estas requieren pequeñas, ligero, componentes de procesamiento de imágenes energéticamente eficientes que, sin embargo, son capaces de trabajar en tiempo real. Las plataformas de hardware basadas en arquitecturas y procesadores informáticos convencionales no pueden cumplir adecuadamente con estos requisitos. Esta es la razón por la que se utilizan a menudo sistemas embebidos que utilizan arreglos de puertas programables en campo (FPGA).
Los arreglos de puertas programables en campo son componentes lógicos cuya estructura de circuito se puede configurar libremente utilizando un tipo especial de programación, generalmente involucrando el lenguaje de bajo nivel VHDL. Hay un problema, sin embargo:la mayoría de las aplicaciones de procesamiento de imágenes están escritas en lenguajes de programación de alto nivel como C / C ++, y su migración a los sistemas integrados es muy complicada. VHDL no solo difiere mucho de otros lenguajes de programación, pero el código también debe adaptarse al hardware específico. Esto significa que incluso los programas VHDL existentes no se pueden transferir a otro hardware. Los desarrolladores de software tienen que empezar prácticamente desde cero con cada nuevo sistema.
Kit de inicio para implementar rápidamente sistemas integrados especialmente eficientes desde el punto de vista energético
La cámara estéreo y el sistema integrado instalados en el dron. Crédito:Fraunhofer IOSB
Un consorcio de ocho socios de seis países, incluido el Instituto Fraunhofer de Optrónica, Tecnologías de sistemas y explotación de imágenes IOSB en Karlsruhe, ahora ha simplificado considerablemente este procedimiento en el proyecto Tulipp. "El resultado es una plataforma de desarrollo que consta de directrices de diseño, una plataforma de hardware configurable y un sistema operativo con capacidad en tiempo real que admite procesadores multinúcleo, así como una cadena de herramientas de programación, "dice el Dr.-Ing. Igor Tchouchenkov, gerente de grupo en Fraunhofer IOSB. "Un kit de inicio puesto en el mercado por uno de nuestros socios en Tulipp proporciona soporte adicional. El kit de inicio hace que el desarrollo de tales aplicaciones sea mucho más rápido y fácil. Portar programas C ++ a FPGA, lo que frecuentemente significa varios meses de trabajo para el desarrollador, se puede manipular en unas pocas semanas con el kit de inicio Tulipp ".
Esto significa que el desarrollador primero debe considerar basado en el software programado en C ++, qué elementos de código deben distribuirse a qué componentes de hardware y qué pasos del programa podrían optimizarse o paralelizarse. Las pautas de diseño formuladas ayudan con esta tarea. Entonces entra en juego el kit de inicio. Contiene el hardware configurable al que se pueden conectar los sensores y dispositivos de salida necesarios, el sistema operativo en tiempo real con capacidad para multiprocesador, y lo que se llama la cadena de herramientas STHEM. Las aplicaciones en la cadena de herramientas permiten optimizar el programa C ++ de tal manera que se puede portar a la FPGA de la manera más fácil y rápida posible. "Un enfoque especial de la cadena de herramientas es la optimización energética:después de todo, el objetivo es diseñar sistemas de procesamiento de imágenes que puedan ser alimentados por una pequeña batería siempre que sea posible, ", dice Tchouchenkov." La cadena de herramientas permite visualizar y optimizar individualmente el consumo de energía para cada función de código ".
Cien veces más rápido que una PC de gama alta
Imagen de video de una de las dos cámaras del dron. Crédito:Fraunhofer IOSB
El consorcio trabajó en tres casos de uso específicos para desarrollar y probar la plataforma Tulipp:el equipo de investigación de Fraunhofer IOSB abordó la detección de obstáculos basada en cámaras estéreo para drones, mientras que otros socios del proyecto trabajaron en la detección de peatones en las cercanías de un automóvil y en la mejora de la calidad en vivo de las imágenes de rayos X tomadas por los brazos en C móviles durante las operaciones quirúrgicas. En Tulipp portaron el software de procesamiento de imágenes correspondiente de C ++ a FPGA.
Los resultados son impresionantes:el procesamiento, que originalmente tardó varios segundos en analizar una sola imagen en una PC de gama alta, ahora puede ejecutarse en el dron en tiempo real, es decir, ahora se analizan aproximadamente 30 imágenes por segundo. "La velocidad del algoritmo de detección de peatones podría aumentarse en un factor de 100:ahora el sistema puede analizar 14 imágenes por segundo en comparación con una imagen cada siete segundos. La mejora de la calidad de la imagen de rayos X mediante la aplicación de filtros de imagen que eliminan el ruido permitió reducir el la intensidad de la radiación durante las operaciones quirúrgicas a una cuarta parte del nivel anterior. Al mismo tiempo, el consumo de energía podría reducirse significativamente para las tres aplicaciones.
La misma imagen con información de profundidad superpuesta del análisis de imagen estéreo, resaltando los obstáculos cercanos en rojo. La flecha indica la ruta evasiva recomendada resultante. Crédito:Fraunhofer IOSB