Diseño de la arquitectura de un extractor de endmembers de imágenes hiperespectrales sobre un FPGA en tiempo real - Luis Peña, Christian Jair (2018)
El presente trabajo consiste en el dise˜no hardware de un extractor de endmembers para im´agenes hiperespectrales en tiempo real empleando el algoritmo N-FINDR. Para comprobar la efeciencia de la arquictectura se utiliz´o la imagen hiperespectral Cuprite la cual tiene un tama˜no de 350 350 y fue capturada por el sensor aerotransportado AVIRIS, el cual escanea una columna de 512 p´ıxeles en 8.3ms. Por ende, el procesamiento de la referida imagen se realizar´a en menos de 1.98 segundos para alcanzar el tiempo real. En primer lugar, el algoritmo fue analizado por medio del entorno de programaci´on MATLAB® con el fin de identificar los procesos m´as costosos computacionalmente para optimizarlos. Adem´as, se realiz´o el estudio de una nueva forma de eliminaci´on de pixeles en el an´alisis por medio de un pre-procesamiento con la intenci´on de reducir el tiempo de ejecuci´on del algoritmo. Posteriormente, se analiz´o el proceso m´as costoso computacionalmente y se propuso un dise˜no algor´ıtmico para mejorar la velocidad del proceso. En segundo lugar, se realiz´o la s´ıntesis comportamental de la aplicaci´on software con la finalidad de obtener una arquitectura hardware del sistema. La arquitectura fue descrita utilizando el lenguaje de descripci´on de hardware Verilog. Finalmente, el dise˜no se verific´o y valid´o mediante la herramienta ISim de Xilinx, a trav´es del uso de testbenches, realizando la sintesis de la arquitectura dise˜nada sobre un FPGA Virtex 4 utilizado el software ISE de la empresa Xilinx obteniendo una frecuencia de operaci´on estimada de 69.4Mhz, que representa un 64% de mejora, respecto de la referencia [1], llegando a procesar una imagen hiperespectral en 17.98 segundos. Sin embargo, con esta frecuencia no es posible alcanzar el procesamiento en tiempo real esperado utilizando la familia Virtex 4. La arquitectura dise˜nada, fue optimizada utilizando paralelismo de operaciones, lo cual hace que se incremente el ´area de dise˜no, excediendo el l´ımite de slices disponibles en el modelo Virtex 4 utilizando en la referencia [1], por ello se identific´o mediante las hojas de datos de la familia Virtex que el FPGA m´as id´oneo para soportar la arquitectura dise˜nada es la Virtex 7 modelo XC7VX980T que supera los 71,096 slices que requiere la presente arquitectura, obteniendo una frecuencia de operaci´on de 112.819MHz.