IUMA División de Diseño de Sistemas Integrados Universidad de Las Palmas de Gran Canaria Implementación hardware del algoritmo Vertex Component Analysis.

Slides:



Advertisements
Presentaciones similares
Complejidad Computacional
Advertisements

Marcas de agua con FHT Fernando Pomares Reyes
METRICAS DE PROCESO Y PROYECTO
Técnico en programación de Software
MÓDULO DE BÚSQUEDA DE PERSONAS DENTRO DE UNA BASE DE DATOS DE ROSTROS
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Representación en espacio de estado
9. Detección de Circunferencias. Transformada de Hough
ARQUITECTURA INTEL Modos de direccionamiento
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
Windows XP sp3.
Imagenes hiperespectrales: introducción
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
Arquitectura de Conjunto de Instrucciones (ISA)
Clustering (Agrupamiento)
Determinacion de endmembers CCA1 Determinación de endmembers mediante una transformacion cónica.
DPTO. MATEMÁTICAS - I.E.S. PABLO SERRANO
Introducción a la Ingeniería en Sistemas
Academia de Informática
Electrónica Digital.
J. Trinidad Guillen Bonilla, H. Guillen Bonilla, A. Guillen Bonilla,
RESPUESTA EN FRECUENCIA
Envolvente Compleja y Modulación
Ancho de Banda de Señales
Reconocimiento y resolución de ecuaciones impresas Luis Fernández Pérez Marco Antonio Formoso Trigo.
Resoluciones de la imagen de satélite
Aplicación de estructuras de datos
Modelos Computacionales
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Capítulo 7 Gestión de memoria.
Programación Lineal Entera Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería Maestría en Ingeniería Eléctrica.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Procesamiento de Imágenes digitales
CARPLATE Reconocimiento del marco de la matrícula de un coche
Próximo tutorial 5-7 Vegetation Analysis in Arid Environments
Ver también páginas de la Guía 2 de Idrisi, y
Experimentos de extraccion de endmembers con MAM.
Índices de vegetación Lectura asignada: Interpreting vegetation indices (ver enlace en página escondida debajo de Tutorial 5-7) Ver también páginas
ANÁLISIS MULTIVARIANTE
Analisis de datos en imagenes hiperespectrales: intro 1 Analisis de datos hiperespectrales: otra revisión Hyperespectral image data analysis, D. Landgrebe,
Introducción a los Sistemas de Información Geográfica (SIG)
Ingeniería Agrícola en caballos de paso fino Juan G. Ríos Juan G. Ríos Dep. Ingeniería civil Uprm Mayagüez Primer semestre
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Universidad Nacional del Nordeste Facultad de Humanidades CARRERA DE ESPECIALIZACION TECNOLOGIAS DE LA INFORMACION GEOGRAFICA (TIG) Resoluciones 511/10-CS.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Universidad Nacional del Nordeste Facultad de Humanidades CARRERA DE ESPECIALIZACION TECNOLOGIAS DE LA INFORMACION GEOGRAFICA (TIG) Resoluciones 511/10-CS.
Próximo tutorial 4-1. Procesamiento de imágenes digitales.
TRABAJO DE TITULACIONELABORACIÓN DE UN PROGRAMA INTEGRAL DE DISEÑO DE PAVIMENTOS. Departamento de Ingeniería En Obras Civiles ALUMNOS: Profesor Guía: Eduardo.
Reconocimiento de caras usando Histogramas de Gradientes Orientados
Introducción a los Sistemas Inteligentes
La geometría Plana..
Elaboración de algoritmos usando lógica de programación
Introducción a la conmutación LAN.
Procesamiento de imágenes digitales
IUMA Universidad de Las Palmas de Gran Canaria Campus Universitario de Tafira Las Palmas de Gran Canaria, SPAIN tel.: Fax: +34.
Presente un cuestionario con los aspectos mas importantes sobre los
Introducción a los TADs
Análisis cinemático: POSICION
Análisis cinemático: ACELERACION

Reconocimiento de cara basado en “espectrocara”
75.41 Algoritmos y Programación II Cátedra Ing. Patricia Calvo Complejidad algorítmica.
Proceso de desarrollo de Software
1 ELECTRÓNICA II M. Teresa Higuera Toledano (Dep. Arquitectura de Computadores y Automática) TUTORÍAS Martes y jueves de 11:30 a 13 y Viernes 9:30 a 13.
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
OPTIMIZACION DEL DESEMPEÑO DE ERROR
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
Visión por Computador Tensores bi-tri focales Ayudantía 04 Miguel A. Carrasco Noviembre, 2006 IIC3682.
TEMA 7 ANÁLISIS DE LOS RESULTADOS TEMA 7 ANÁLISIS DE LOS RESULTADOS.
Máster de Tecnologías de Telecomunicación
Transcripción de la presentación:

IUMA División de Diseño de Sistemas Integrados Universidad de Las Palmas de Gran Canaria Implementación hardware del algoritmo Vertex Component Analysis (VCA) para el procesamiento de imágenes hiperespectrales Pablo Horstrand Andaluz Tutores Dr. D. Roberto Sarmiento Rodríguez Dr. D. Sebastián López Suárez Trabajo FiN de Máster Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria ✤ Introducción ✤ Procesamiento de imágenes hiperespectrales ✤ Resultados ✤ Conclusiones Estructura del trabajo ✤ Diseño de arquitecturas Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

Introducción ¿Qué es una imagen hiperespectral? ➡ Conjunto de datos dispuestos de tal forma que cada píxel de la imagen está formado por un set de valores obteniéndose un espectro continuo. Es decir, la imagen hiperespectral tiene las dos dimensiones espaciales, más una tercera espectral. IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Longitud de onda (nm) Reflectancia (%) Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

Introducción Composición de la imagen hiperespectral ➡ Se definen dos tipos de píxeles en la imagen: IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria ✦ Píxel puro: píxeles en la escena que constituyen un único material. ✦ Píxel mezcla: píxel en el que cohabitan varios materiales. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

Introducción Modelo lineal de mezcla ➡ El modelo lineal representa de manera fiable la composición. IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Introducción Inconvenientes ➡ Gran cantidad de datos ✦ ✦ Ocupa más espacio en memoria Flujo de transmisión más costoso ➡ Tiempo de cómputo elevado Imagen hiperespectral (55 bandas): 77Mbits Imagen RGB: 4Mbits Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Introducción Coste computacional elevado ➡ Cálculo de la matriz de covarianza Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Introducción Implementación en hardware ➡ Las posibilidades de selección de los dispositivos hardware es variada. Hardware Software Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Introducción Objetivos ➡ Plantear modificaciones en el algoritmo VCA que posibiliten la labor de su implementación en hardware aumentando su rendimiento. ➡ Estudiar los algoritmos de extracción de endmembers, PPI, N- FINDR y VCA, y destacar sus principales diferencias. ➡ Implementar y sintetizar el algoritmo VCA junto con las modificaciones estudiadas, en una FPGA Virtex 5. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones AVDP-SX95T (Virtex 5)

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria ✤ Introducción ✤ Diseño de arquitecturas ✤ Resultados ✤ Conclusiones ✤ Procesamiento de imágenes hiperespectrales Estructura del trabajo Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Cadena de procesado Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Algoritmos de adaptación ➡ La imagen hiperespectral aérea tomada por el sensor debe ser sometida a procesos de adaptación para la aplicación de los algoritmos de siguientes etapas. ✦ ✦ ✦ Correcciones geométricas Georreferenciación Conversión Radiancia-Reflectancia

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Preprocesado: transformación espacial ➡ Los algoritmos de esta etapa se pueden dividir en dos subgrupos,los que realizan una transformación espacial: ✦ ✦ ✦ Análisis de Componentes Principales (PCA) Singular Value Decomposition (SVD) Maximum Noise Fraction (MNF)

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Segmentación ( Clustering ): Kmeans End-member terreno End-member vegetación End-member agua

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Clasificación ➡ Asignación de una etiqueta a cada píxel de la imagen. ✦ ✦ Spectral angle (SA) Cross-Correlation (CC) ➡ Los métodos que proporcionan un mejor equilibrio entre resultados en la clasificación de materiales y coste computacional son: ➡ Se utilizan diferentes métricas en la comparación.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Clasificación: Spectral Angle(SA) ➡ En el espacio n-dimensional, se obtiene el ángulo entre un píxel y el espectro patrón.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Clasificación: Cross-Correlation(CC) ➡ Correlación lineal entre cada uno de los píxeles y el espectro patrón.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Extracción de endmembers: Pixel Purity Index (PPI) ➡ Proyección de la imagen sobre vectores aleatorios (skewers): generación de vectores aleatorios: Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales ➡ Los puntos en el espacio forman un simplex número de búsquedas: ➡ Se determina el volumen encerrado por las diferentes combinaciones de puntos Extracción de endmembers: N-FINDR Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Extracción de endmembers: Vertex Component Analysis (VCA) ✦ Los puntos forman un simplex en el espacio. ✦ ✦ Se determinan los vectores ortogonales ( f ) a los endmembers ya calculados. Se proyecta la imagen sobre dicho vector. ✦ Se selecciona aquel píxel cuya proyección sea mayor. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones ✦ Se realiza una proyección de la imagen sobre el plano perpendicular a u.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales ➡ Preprocesado + algoritmo Extracción de endmembers: Vertex Component Analysis (VCA) 1 2 Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Pseudoinversa vs. Gram Schmidt ➡ Pseudoinversa ✦ SVD method Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales ➡ Gram-Schmidt Pseudoinversa vs. Gram Schmidt Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales ➡ Nos quedamos con el píxel cuyo producto por f sea el mayor. Por tanto: Proyección de la imagen sobre el vector f ✦ No se realiza la normalización del vector f, ya que esto afecta a todos los productos por igual. ✦ Se realiza la proyección de la imagen sobre el vector f, con todos los elementos en notación entera. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones ✦ Para ellos se ejecuta un desplazamiento de todos los exponentes en punto flotante, de los elementos de f.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Extracción de endmembers: Modificaciones sobre el VCA Inicialización Desplazamiento de los exponentes de Y Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Extracción de endmembers: Modificaciones sobre el VCA Generación de la base u Generación de f Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Procesamiento de imágenes hiperespectrales Extracción de endmembers: Modificaciones sobre el VCA 1ª iteración Desplazamiento de los exponentes de f truncamiento Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria ✤ Introducción ✤ Diseño de arquitecturas ✤ Resultados ✤ Conclusiones ✤ Procesamiento de imágenes hiperespectrales Estructura del trabajo Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Diseño de arquitecturas Generalidades ➡ Se realizan 2 implementaciones 1.Todas las operaciones en punto flotante. 2.La proyección de la matriz sobre el vector f se realiza con números enteros. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Diseño de arquitecturas ➡ 1ª arquitectura Arquitecturas generales Input Output Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Diseño de arquitecturas ➡ 2ª arquitectura Arquitecturas generales Diferencias Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Diseño de arquitecturas ➡ Calcula las constantes para el cálculo del nuevo vector de la base Bloque: constantcalc ✦ Presenta un bucle interno con p iteraciones. ✦ Presenta un bucle externo con iter iteraciones. ✦ Las entradas son: 1.el nuevo endmember a. 2.los vectores de la base u. 3.la iteración en que está el algoritmo, iter. 4.el denominador de la ecuación de la constante, el producto de cada vector de u por si mismo, mod. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Diseño de arquitecturas Bloque: image projection Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria ✤ Introducción ✤ Diseño de arquitecturas ✤ Resultados ✤ Conclusiones ✤ Procesamiento de imágenes hiperespectrales Estructura del trabajo

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Resultados Demo VCA ➡ Para obtener los resultados en Matlab se hace uso de esta demo que consta de 2 partes: ✦ Genera una imagen (imagen artificial) a partir de firmas espectrales de librerías, y los compara con los endmembers detectados (tamaño: 36x36x224) ✦ También se contrastan los resultados con una imagen muy conocida como cuprite (tamaño:250x191x188) Imagen ArtificialCuprite Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Resultados Demo VCA Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Resultados en software: Imagen artificial Resultados ➡ Se emplea la siguiente figura de mérito en la comparación Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones ➡ Los resultados se obtienen para una imagen de 36x36 píxeles y 224 bandas espectrales ➡ Se construye una tabla en la que se varía el número de endmembers a calcular p, y la relación señal ruido, SNR.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Resultados en software: Imagen artificial Resultados 10 dB20 dB30 dB40 dB50 dB 3-0,9934º0,0131º-0,0121º-0,012º0,0006º 40,0186º-0,5254º-0,052º-0,0096º-0,0109º 5-0,1463º0,8745º0,0427º-0,1356º0,0064º 61,1479º-0,4961º-0,0649º0,4242º0,0123º 70,4412º-1,1901º0,3961º-0,0475º0,1191º 8-0,7105º-0,6022º-0,1286º0,0597º0,0159º 9-0,4914º-1,0834º-0,0797º0,1105º-0,0038º 102,271º0,0225º0,0738º-0,0104º-0,0567º Sumatoria1,5371º-2,7891º0,1753º0,3793º0,0829º SNR p Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Verificación e implementación Resultados en software: Cuprite ➡ Comparación con 5 firmas espectrales conocidas Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Verificación e implementación Resultados en hardware: Ocupación en área Virtex 5 Implementación 1Implementación 2 Slice Registers32%27% Slice LUTs25%20% Block RAM/FIFO2% DSP48Es4%5% ★ La implementación con operaciones en entero utiliza menos recursos hardware. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones ➡ Los resultados se obtienen para una imagen de 36x36 píxeles y 224 bandas espectrales

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Verificación e implementación Resultados en hardware: Tiempo de ejecución Frecuencia (MHz)LatenciaTiempo total (ms) Implementación 1210, ,0463 Implementación 2268, ,0387 ★ La implementación con operaciones en entero es más rápida. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria ✤ Introducción ✤ Diseño de arquitecturas ✤ Resultados ✤ Conclusiones ✤ Procesamiento de imágenes hiperespectrales Estructura del trabajo Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Conclusiones ➡ En el presente trabajo se han presentado modificaciones en el algoritmo VCA para su implementación hardware. ➡ Estas modificaciones han probado obtener resultados prácticamente iguales, a partir de las pruebas que se han realizado en software, siendo su implementación más asequible de abordar y de menor coste computacional. ➡ Se han sintetizado dos versiones diferentes, comprobándose que aquella que ejecuta la proyección de la imagen sobre el vector f en notación entera utiliza menos recursos y obtiene mejores tiempos de ejecución. Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones ➡ Se va a presentar un paper a la revista IEEE Geoscience and Remote Sensing Letters (Factor de Impacto:1.4), con los resultados que se han obtenido en software.

IUMA División de Diseño de Circuitos Integrados Universidad de Las Palmas de Gran Canaria Conclusiones ➡ La comunicación debe permitir trabajar a velocidades mayores. ➡ Las imágenes hiperespectrales son un campo de la tecnología por desarrollar, lo que implica la aparición constante de nuevos algoritmos y mejoras en los ya existentes. ➡ Existen multitud de aplicaciones que requieren de la implementación en tiempo real de los algoritmos. ➡ La implementación de la cadena completa de procesado en hardware, podría proporcionar la actualización de endmembers en tiempo real.

IUMA División de Diseño de Sistemas Integrados Universidad de Las Palmas de Gran Canaria Implementación hardware del algoritmo Vertex Component Analysis (VCA) para el procesamiento de imágenes hiperespectrales Pablo Horstrand Andaluz Tutores Dr. D. Roberto Sarmiento Rodríguez Dr. D. Sebastián López Suárez Trabajo FiN de Máster Instituto Universitario de Microelectrónica Aplicada Sistemas de información y Comunicaciones