UNIVERSIDAD DE EXTREMADURA
Escuela Politécnica
Ingeniería Informática
Proyecto Fin de Carrera
Comparativa de nuevos algoritmos de extracción
de endmembers en imágenes hiperespectrales
utilizando información espacial
Gabriel Martín Hernández
Febrero, 2009
UIVERSIDAD DE
EXTREMADURA
Escuela Politécnica
Ingeniería Informática
Proyecto Fin de Carrera
Comparativa de nuevos algoritmos de extracción
de endmembers en imágenes hiperespectrales
utilizando información espacial
Autor: Gabriel Martín Hernández Fdo.:Director:
Antonio Plaza Miguel.
Fdo.:Tribunal Calificador
Presidente: Fdo.: Secretario: Fdo.: Vocal: Fdo.:Índice de contenido
Resumen ... 12 1 Motivaciones y objetivos,... 16 1.1 Motivaciones. ... 16 1.2 Objetivos ... 17 2 Antecedentes ... 192.1 Concepto de imagen hiperespectral ... 19
2.2 El problema de la mezcla ... 21
2.3 El sensor AVIRIS de NASA Jet Propulsion Laboratory... 26
3 Algoritmos de extracción de endmembers ... 29
3.1 Algoritmos basados en información espectral ... 30
3.1.1 Orthogonal Subspace Projection (OSP) ...30
3.1.2 -FIDR ...32
3.2 Algoritmos basados en información espacial y espectral ... 34
3.2.1 SSEE ...40
3.2.2 AMEE ...45
3.2.3 Preprocesado espacial...49
4 Resultados experimentales ... 53
4.1 Metodología de análisis... 53
4.2 Imágenes hiperespectrales consideradas en el estudio ... 54
4.2.1 Imágenes sintéticas ...54
4.2.2 Imágenes reales ...62
4.3 Estudio comparativo de algoritmos ... 66
4.3.1 Esquema comparativo y algoritmos de emparejamiento utilizados ...67
4.3.2 Optimización de parámetros en los algoritmos considerados...70
4.3.2.1 Algoritmos basados en información espectral. ... 70
4.3.2.2 Algoritmos basados en información espacial y espectral. ... 74
Ajuste de parámetros para el algoritmo SSEE. ... 74
4.4.1 Resultados con imágenes sintéticas ... 102
4.4.2 Resultados con imágenes reales... 116
4.5 Discusión de resultados ... 120
5 Conclusiones y líneas futuras ... 124
5.1 Conclusiones... 124
5.2 Lineas futuras ... 125
6 Referencias bibliográficas ... 127
7 Apéndice 1: Descripción de ORFEO Toolbox ... 132
7.1 Instalación... 132
7.2 Funcionamiento de Orfeo Tollbox... 134
7.3 Filtros Utilizados ... 134
7.4 Otras herramientas de interés ... 134
8 Apéndice 2: Implementación de algoritmos en Orfeo toolbox y scripts genéricos utilizados en comparativas ... 136
8.1 Algoritmo SSEE ... 136 8.2 Algoritmo AMEE... 154 8.3 Algoritmo de Preprocesado ... 161 8.4 Algoritmo N-FINDR... 166 8.5 Algoritmo OSP ... 169 8.6 PCA ... 173
8.7 Algoritmo de generación de imágenes... 174
8.8 Algoritmos de emparejamiento... 177
Índice de ilustraciones
Figura 2.1: Ejemplo de imagen multi-dimensional de cuatro bandas... 20
Figura 2.2: Procedimiento de análisis hiperespectral... 20
Figura 2.3: Tipos de píxels en imágenes hiperespectrales ... 22
Figura 2.4: Mezcla macroscopica. ... 23
Figura 2.5: Mezcla íntima ... 23
Figura 2.6: Modelo lineal de mezcla... 24
Figura 2.7: Interpretación gráfica del modelo lineal de mezcla... 25
Figura 2.8: Modelo no lineal de mezcla... 26
Figura 2.9: Evolución de la relación SNR del sensor AVIRIS de NASA ... 28
Figura 3.1: Metodología clásica de análisis de imágenes hiperespectrales. ... 30
Figura 3.2: Funcionamiento algoritmo N-FINDR ... 34
Figura 3.3: Ejemplo ilustrativo de la importancia de considerar únicamente la información espectral en el análisis de una imagen hiperespectral... 40
Figura 3.4: Descomposición de una imagen en subconjuntos y obtención de los autovectores... 41
Figura 3.5: Proyección de los pixels sobre los autovectores y obtención de los pixels candidatos... 41
Figura 3.6: Proceso llevado a cabo en el tercer paso. ... 45
Figura 3.7: Operaciones morfológicas extendidas de erosión y diliatación... 46
Figura 3.8: Cálculo del índice MEI mediante la combinación de operaciones morfológicas de erosión y dilatación ... 48
Figura 3.9: Diagrama de bloque de funcionamiento de AMEE ... 49
Figura 3.10: Metodología de preprocesado espacial de imágenes hiperespectrales .. 50
Figura 3.11: Interpretación geométrica del método de preprocesado. ... 52
Figura 4.1: Metodología general de análisis de resultados. ... 54
Figura 4.2: Imágenes fractales utilizadas para generación de imágenes sintéticas.... 56
Figura 4.3: Imagenes fractales divididas en clusters... 58
Figura 4.4: Firmas insertadas en la imagen fractal 1 ... 59
Estados Unidos. ... 64 Figura 4.7: Mapa de minerales obtenidos por el USGS a través del algoritmo Tetracorder en la región Cuprite en Nevada, Estados Unidos... 65 Figura 4.8: Firmas espectrales puras correspondientes a los minerales más representativos en la región Cuprite en Nevada, Estados Unidos... 66 Figura 4.9: Metodología de análisis de imágenes sintéticas utilizando información a priori. ... 68 Figura 4.10:Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 1 con diferentes niveles de ruido). ... 109 Figura 4.11: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 2 con diferentes niveles de ruido). ... 111 Figura 4.12: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 3 con diferentes niveles de ruido). ... 112 Figura 4.13: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 4 con diferentes niveles de ruido). ... 113 Figura 4.14: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 4 con diferentes niveles de ruido). ... 115 Figura 4.15: Posiciones de los endmembers emparejados con cada mineral de referencia para cada método... 117 Figura 4.16: Firmas obtenidas por difrentes algoritmos de extracción de endmembers en la región de Cuprite emparejadas con el mineral Alunite y firma de referencia del mineral Alunite obtenida por el USGS en Cuprite ... 118 Figura 4.17: Firmas obtenidas por difrentes algoritmos de extracción de endmembers en la región de Cuprite emparejadas con el mineral Budinggtonite y firma de referencia del mineral Buddingtonite obtenida por el USGS en Cuprite. ... 118 Figura 4.18: Firmas obtenidas por difrentes algoritmos de extracción de endmembers en la región de Cuprite emparejadas con el mineral Calcite y firma de referencia del mineral Calcite obtenida por el USGS en Cuprite... 118 Figura 4.19: Firmas obtenidas por difrentes algoritmos de extracción de endmembers en la región de Cuprite emparejadas con el mineral Kaolinite y firma de referencia del mineral Kaolinite obtenida por el USGS en Cuprite ... 119
Figura 4.20: Firmas obtenidas por difrentes algoritmos de extracción de endmembers en la región de Cuprite emparejadas con el mineral Muscovite y firma de referencia del mineral Muscovite obtenida por el USGS en Cuprite... 119
Índice de tablas
Tabla 4.1: Resultados de emparejamiento de los 9 endmembers extraídos por el método OSP para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde). .... 71 Tabla 4.2: Resultados de emparejamiento de los 9 endmembers extraídos por el método N-FINDR para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde). .... 73 Tabla 4.3: Resultados de emparejamiento de los 9 endmembers extraídos por el método SSEE para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde). .... 75 Tabla 4.4: Resultados de emparejamiento de los 9 endmembers extraídos por el método SSEE para la imagen fractal 1 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde). ... 76 Tabla 4.5: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SSEE para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde), utilizando diferentes tamaños de subconjunto ... 78 Tabla 4.6: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SSSE para la imagen fractal 5 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde , utilizando diferentes tamaños de subconjunto... 79 Tabla 4.7: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 14 endmembers extraídos por el método SSEE para la imagen real en Cuprite utilizando distintos tamaños de subconjunto ... 80 Tabla 4.8: Resultados de emparejamiento obtenidos por el algoritmo óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SSEE para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde), utilizando diferentes SAD de similaridad... 81 Tabla 4.9: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SSSE para la imagen fractal 5 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde , utilizando diferentes SAD de similaridad... 82 Tabla 4.10: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 14 endmembers extraídos por el método SSEE para la imagen real en Cuprite utilizando distintos SAD de similaridad. ... 82
Tabla 4.11: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SSEE para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde), realizando diferentes iteraciones83 Tabla 4.12: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SSEE para la imagen fractal 1 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde) , realizando diferentes iteraciones. ... 84 Tabla 4.13: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 14 endmembers extraídos por el método SSEE para la imagen real en Cuprite, realizando diferentes iteraciones... 84 Tabla 4.14: Resultados de emparejamiento de los 9 endmembers extraídos por el método AMEE para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde). .... 85 Tabla 4.15: Resultados de emparejamiento de los 9 endmembers extraídos por el método AMEE para la imagen fractal 1 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde). ... 86 Tabla 4.16: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método AMEE para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde), utilizando diferentes tamaños de ventana ... 88 Tabla 4.17: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método AMEE para la imagen fractal 5 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde) , con diferentes tamaños de ventana... 89 Tabla 4.18: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 14 endmembers extraídos por el método AMEE para la imagen real en Cuprite, utilizando diferentes tamaños de ventana. ... 90 Tabla 4.19: Resultados de emparejamiento de los 9 endmembers extraídos por el método SPP + OSP para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde). ... 91 Tabla 4.20: Resultados de emparejamiento de los 9 endmembers extraídos por el método SPP + OSP para la imagen fractal 1 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde). ... 92 Tabla 4.21: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SPP + OSP para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde), utilizando diferentes tamaños de
Tabla 4.22: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SPP + OSP para la imagen fractal 2 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde) , con diferentes tamaños de ventana... 95 Tabla 4.23: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 14 endmembers extraídos por el método SPP + OSP para la imagen real en Cuprite, utilizando diferentes tamaños de ventana... 96 Tabla 4.24: Resultados de emparejamiento de los 9 endmembers extraídos por el método SPP + N-FINDR para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde). ... 97 Tabla 4.25: Resultados de emparejamiento de los 9 endmembers extraídos por el método SPP + N-FINDR para la imagen fractal 1 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde)... 98 Tabla 4.26: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SPP + N-FINDR para las imágenes sin ruido: fractal 1 (fondo azul), fractal 2 (fondo amarillo), fractal 3 (fondo rojo), fractal 4 (fondo gris) y fractal 5 (fondo verde), utilizando diferentes tamaños de ventana ... 99 Tabla 4.27: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 9 endmembers extraídos por el método SPP + N-FINDR para la imagen fractal 4 con diferentes niveles de ruido: SNR de 10:1 (fondo azul), SNR de 30:1 (fondo amarillo), SNR de 50:1 (fondo rojo), SNR de 70:1 (fondo gris) y SNR de 90:1 (fondo verde) , con diferentes tamaños de ventana. ... 101 Tabla 4.28: Resultados de emparejamiento obtenidos por el algoritmo Óptimo-global al intentar emparejar los 14 endmembers extraídos por el método SPP + N-FINDR para la imagen real en Cuprite, utilizando diferentes tamaños de ventana. ... 102 Tabla 4.29: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 1). ... 103 Tabla 4.30: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 2). ... 110 Tabla 4.31: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 3). ...111 Tabla 4.32: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 4). ... 113 Tabla 4.33: Promedio de endmembers emparejados y valor SAD promedio de los
endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 5)... 114 Tabla 4.34: Promedio de endmembers emparejados y valor SAD promedio de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers y de cada algoritmo de emparejamiento (imagen fractal 5)... 115 Tabla 4.35: Valor SAD de los endmembers emparejados para el mejor caso de cada algoritmo de extracción de endmembers (imagen AVIRIS Cuprite)... 116 Tabla 4.36: Tiempos de CPU y de Entrada/Salida resultado de la ejecución de los diferentes algoritmos en Cuprite. ... 120
Resumen
El modelo lineal de mezcla constituye una aproximación clásica al análisis de datos hiperespectrales. Esta técnica generalmente consta de dos partes: 1) la extracción de firmas espectrales puras de materiales presentes en una escena hiperespectral, y 2) descomposición de la escena en fracciones de abundancia mediante un algoritmo de desmezclado espectral [1][1].
A lo largo de la ultima década, se han desarrollado varios algoritmos para la extracción de endmembers de una imagen hiperespectral. Algunas técnicas clásicas incluyen PPI (Pixel Purity Index) [2][2], N-FINDR [3][3], IEA (Iterative Error
Analisis)[4][4], ORASIS (Optical Real-time Adaptive Spectral Identification System)[5][5], CCA (Convex Cone Analysis) [6][6] y OSP (Orthogonal Subspace Projection) [7][7]. Otras técnicas avanzadas se han propuesto más recientemente,
incluyendo una aproximación estadística denominada ICE [8][8], una variante del algoritmo N-FINDR denominada SGA (Simplex Growing Algorithm) [9][9], entre otras [10-13][10][11][12][13]. La mayor parte de estas técnicas se han centrado en el análisis de los datos hiperespectrales sin incorporar información espacial. Como resultado, la búsqueda de endmembers se produce tratando los datos como una colección de medidas espectrales sin ningún tipo de relación espacial. Sin embargo, una de las propiedades características de los datos hiperespectrales es la información espacial, es decir, la posición que ocupa cada pixel en la imagen en un sistema de representación cartesiano. Por consiguiente, la mayor parte de los algoritmos de extracción de endmembers mencionados anteriormente podrían beneficiarse de un esquema en el cual se tenga en cuenta tanto la información espectral como la correlación espacial entre los píxels de la imagen.
En la literatura solo existen unos cuantos algoritmos que incluyan la información espacial en el proceso de extracción de endmembers. Tres de los algoritmos más representativos en la literatura son los siguientes:
El algoritmo AMEE (Automatic Morphological Endmember
Extraction)[14][14] comienza buscando los vecinos más puros y los más
mezclados alrededor de cada pixel de la imagen. Esta tarea se lleva a cabo utilizando las operaciones morfológicas extendidas de dilatación y erosión
respectivamente. A cada pixel puro se le asigna un valor de ecentricidad, el cual se calcula como la distancia espectral entre los más puros y los más mezclados para la vecindad dada. Este proceso se repite iterativamente para cada pixel. En cada iteración los valores de escentricidad de los pixels seleccionados se actualizan. El grupo final de endmembers se obtiene aplicando un valor umbral a la imagen en escala de grises formada por las ecentricidades. Los endmembers finales se pueden extraer de diversas formas como por ejemplo un algoritmo clásico de extracción de endmembers o utilizando crecimiento de regiones.
El algoritmo SSEE (Spatial Spectral Endmember Extraction) [15][15] consta de cuatro pasos. Primero se aplica una descomposición SVD (singular value
decomposition) como un mecanismo efectivo para obtener un conjunto de
autovectores que representen la mayoría de la variabilidad espectral de una escena dada. A continuación se proyectan todos los pixels de la imagen sobre los autovectores determinando así una serie de pixels candidatos. En el tercer paso, el algoritmo analiza la características espaciales y espectrales de los
endmembers candidatos para hacer la media espectral de los endmembers
candidatos que están espacial y espectralmente relacionados. Finalmente, se extraen los endmembers del conjunto anterior.
El algoritmo SPP (Spatial Pre-Processing) se ha desarrollado recientemente [16][16]. Este método se puede usar en combinación con algoritmos de extracción de endmembers que se basan en información espectral. El algoritmo estima, para cada pixel de la imagen, un valor escalar con el cual relaciona la similaridad espectral de los pixels adyacentes en una vecindad dada. Este valor escalar se usa para dar un peso de importancia de la información espectral asociada a cada pixel en términos de su contexto espacial. Las dos claves para el preprocesado son: 1) no es necesario modificar los métodos espectrales de extracción de endmembers para poder aplicarlo, y 2) el método favorece la búsqueda de los endmembers en áreas espaciales homogéneas, lo cual permite obtener endmembers más representativos desde un punto de vista espacial.
incluyen información espacial (AMEE, SSEE, SPP) frente a algoritmos clásicos (N-FINDR, OSP) que utilizan únicamente información espectral. El objetivo del estudio es cuantificar en qué medida la información espacial favorece el proceso de selección de endmembers en una imagen hiperespectral, utilizando para ello un conjunto de algoritmos recientemente propuestos y también aproximaciones clásicas. Conviene destacar que este estudio representa una novedad en la literatura dedicada a extracción de endmembers a partir de imágenes hiperespectrales, ya que el uso de información espacial en dichos algoritmos es relativamente reciente y novedoso en la literatura.
Todos los algoritmos considerados en la presente memoria han sido implementados en forma de software libre a través de la librería Orfeo Toolbox, especializada en el tratamiento de imágenes obtenidas de forma remota. Esta librería de código abierto ha sido desarrollada por el CNES (Centre ational d'Etudes
Spatiales) de Francia [17][17], y se basa en la utilización de código C++ adaptado a
la resolución de problemas de teledetección mediante una serie de formalismos que serán descritos en la memoria.
La memoria del proyecto se encuentra organizada de la siguiente forma. En el primer capítulo se describen las motivaciones y objetivos del proyecto. A continuación, se presentan los antecedentes sobre análisis hiperespectral, el problema de la mezcla en dichas imágenes, y las características de los sensores utilizados. En el tercer capítulo de la memoria se describen los algoritmos de extracción de
endmembers considerados en el presente estudio. En el cuarto capítulo de la memoria
se describen de forma detallada los experimentos realizados, basados en el uso de imágenes sintéticas (generadas utilizando el concepto de fractal para simular diversos patrones espaciales) y una conocida imagen real obtenida por el sensor Airborne Visible Infra-Red Imaging Spectrometer (AVIRIS) de NASA Jet Propulsion
Laboratory sobre el distrito minero de Cuprite en Nevada, Estados Unidos, para la
que existe detallada información de referencia disponible a través del Instituto Geológico de Estados Unidos (USGS). Dicha información se utiliza para cuantificar el impacto de incorporar información espacial en la búsqueda de endmembers. La memoria concluye con dos apéndices en los que se describen, respectivamente, las características principales de la librería Orfeo Toolbox de CNES y la
implementación de los algoritmos AMEE, SSEE, SPP, N-FINDR y OSP en dicho
toolbox, así como porciones de código relativas a las comparativas de algoritmos y
métodos de emparejamiento de endmembers utilizados en el capítulo de resultados experimentales.
1
Motivaciones y objetivos,
1.1 Motivaciones.
El trabajo desarrollado en este Proyecto Fin de Carrera (PFC) se enmarca dentro de las líneas de investigación actuales del Grupo de Redes Neuronales y Procesamiento de Señal (GRNPS) del Departamento de Informática de la Universidad de Extremadura, y se basa en la realización de un estudio comparativo de algoritmos para extracción de referencias espectrales puras o endmembers [1][1] en imágenes hiperespectrales que utilizan información espacial.
A lo largo de la última década se han desarrollado varios algoritmos de extracción de
endmembers basándose sólo en la información espectral de la imagen [2-13][2][13].
Sin embargo la tendencia actual en la literatura es desarrollar técnicas que utilizan tanto la información espacial como la información espectral de la imagen para la extracción de dichas firmas puras [14-16][14][16]. Este Proyecto Fin de Carrera pretende comparar, de forma equitativa, unos y otros algoritmos así como realizar una detallada comparativa entre ambas tendencias utilizando una amplia base de datos de imágenes sintéticas y reales. En concreto, los algoritmos comparados en la presente memoria son: N-FINDR [3][3] y OSP (Orthogonal Subspace Poyections) [7][7] , como algoritmos automáticos representativos de la tendencia basada en utilizar información espectral y AMEE (Automatic Morfological Endmember
Extraction) [14][14], SSEE (Spatial Spectral Endmember Extraction) [5][5] y SPP
(spatial Pre-Processing) [16][16] como algoritmos representativos de la tendencia actual en la literatura basada en utilizar información tanto espacial como espectral. En este sentido a la hora de realizar las implementaciones de dichos algoritmos para el estudio comparativo, se ha optado por utilizar el lenguaje C++ y la librería Orfeo
Toolbox, especializada en el tratamiento de imágenes terrestres obtenidas de forma
remota. Orfeo Toolbox, es una librería de algoritmos para el tratamiento de imágenes de código abierto desarrollada por el CNES francés (Centre ational d'Etudes
Spatiales) [17][17]. Los motivos por los que utilizar esta librería son varios, en
primer lugar se trata de un software libre que nos permite utilizar diversas herramientas necesarias para el tratamiento de imágenes terrestres sin necesidad de
ningún tipo de licencia. Además, esta librería puede ser utilizada en diferentes sistemas operativos, incluyendo Windows, Linux, Unix ó MAC.
1.2 Objetivos
Como se ha comentado en el anterior subapartado, el principal objetivo del presente proyecto es realizar un detallado estudio comparativo de algoritmos para extracción de referencias espectrales puras o endmembers en imágenes hiperespectrales que utilizan información espacial, cuantificando la importancia del uso de información espacial en el proceso de extracción de endmembers. Para conseguir este objetivo global se han llevado a cabo los siguientes objetivos específicos:
Adquirir los conocimientos necesarios sobre los diferentes algoritmos a implementar, así como los conocimientos básicos sobre tratamiento de imágenes hiperespectrales.
Aprender a utilizar correctamente la librería Orfeo Toolbox, así como conocer los módulos más importantes para trabajar con imágenes hiperespectrales. Implementar en el lenguaje de programación C++ utilizando la librería Orfeo
Toolbox los algoritmos utilizados en la presente memoria: OSP, N-FINDR,
AMEE, SSEE, SPP, así como otros algoritmos de soporte para reducir la dimensionalidad de las imágenes hiperespectrales, generación de imágenes sintéticas, emparejamiento (matching) de los endmembers extraídos con firmas espectrales de librería, etc.
Conseguir un modelo de construcción de imágenes sintéticas capaz de simular (a partir del uso de imágenes fractales) los modelos espaciales presentes en la naturaleza y simular las imágenes teniendo en cuenta parámetros clave como la presencia de ruido y parámetros espaciales no homogéneos, característicos de aplicaciones reales.
Desarrollar distintos métodos para evaluar la calidad de los endmembers extraídos, incluyendo el desarrollo de tres técnicas diferentes de emparejamiento entre los endmembers resultado de los algoritmos y los
espectrales), analizando el impacto de los diferentes algoritmos de emparejamiento utilizados en la validación experimental de los resultados. Desarrollar diferentes “scripts”, capaces de automatizar las comparativas,
permitiendo reproducir los resultados de forma rápida e incorporar nuevos algoritmos a las comparativas de forma sencilla e intuitiva.
Ajustar los parámetros de entrada de los diferentes algoritmos para optimizar sus resultados en base a las imágenes sintéticas y reales utilizadas, permitiendo así una comparativa justa de los diferentes algoritmos empleados en el estudio. En este sentido, conviene destacar que el estudio experimental utiliza las mejores versiones posibles de los algoritmos comparados en cada caso de estudio, lo cual incrementa la relevancia del estudio realizado y permite extrapolar las conclusiones obtenidas en el presente estudio a diferentes situaciones, en virtud de la variedad de experimentos realizados utilizando tanto imágenes sintéticas como imágenes reales.
2
Antecedentes
El presente capítulo se organiza de la siguiente forma. En primer lugar, describimos el concepto de imagen hiperespectral, detallando las particularidades y características propias de este tipo de imágenes de alta dimensionalidad. A continuación se explica el problema de la mezcla que se presenta en este tipo de imágenes así como los diferentes modelos de mezcla que se pueden utilizar. Por último el capitulo muestra algunas de las características del sensor Airbone Visible Infra-red Imaging Spectometer (AVIRIS) de NASA Jet Propulsion Laboratory, empleado.
2.1 Concepto de imagen hiperespectral
En la actualidad, existe un amplio conjunto de instrumentos o sensores capaces de medir singularidades espectrales en diferentes longitudes de onda a lo largo de áreas espaciales extensas [18][18]. La disponibilidad de estos instrumentos ha motivado una redefinición del concepto de imagen digital a través de la extensión de la idea de
pixel. Así, en una imagen en escala de grises, podemos decir que un pixel está
constituido por un único valor discreto, mientras que, en una imagen hiperespectral, un pixel consta de un conjunto de valores. Estos valores pueden ser entendidos como vectores -dimensionales [2][2], siendo el número de bandas espectrales en las que el sensor mide información.
La ampliación del concepto de pixel da lugar a una representación en forma de cubo de datos, tal y como aparece en la Fig. 2.1. En este caso el orden de magnitud de permite realizar una distinción a la hora de hablar de imágenes multi-dimensionales. Así, cuando el valor de es reducido, típicamente unas cuantas bandas espectrales [19][19], se habla de imágenes multi-espectrales, mientras que, cuando el orden de magnitud de N es de cientos de bandas [20][20], se habla de imágenes hiperespectrales.
En este senti do, el anális is hiper espec tral se basa en la capacidad de los sensores hiperespectrales para adquirir imágenes digitales en una gran cantidad de canales espectrales muy cercanos entre sí, obteniendo, para cada
pixel, una firma espectral característica de cada material [18][18]. Este proceso
facilita la identificación y cuantificación de los materiales presentes en la escena [21,22][21][22].
Tal y como hemos comentado anteriormente, el resultado de la toma de datos por
Figura 1: Ejemplo de imagen multi-dimensional de cuatro bandas.
parte de un sensor hiperespectral sobre una determinada escena puede ser representado en forma de cubo de datos, con dos dimensiones para representar la ubicación espacial de un pixel, y una tercera dimensión que representa la singularidad espectral de cada pixel en diferentes longitudes de onda. La Fig. 2.2 ilustra el procedimiento de análisis hiperespectral mediante un sencillo diagrama, en el que se ha considerado como ejemplo descriptivo el sensor Airbone Visible
Infra-red Imaging Spectometer (AVIRIS) de NASA Jet Propulsion Laboratory cuyas
características serán descritas en mayor detalle en el último subapartado del presente capítulo. La capacidad de observación de este sensor es mucho más avanzada que la de otros dispositivos similares (en particular en términos de relación señal-ruido (SNR) del sensor [20][20], y permite la obtención de pixels formados por 224 valores espectrales, a partir de los cuales puede obtenerse una firma espectral característica que será utilizada en el proceso de análisis.
Para concluir este subapartado, La Fig. 2.3 muestra un ejemplo de dos firmas espectrales asociadas a una cubierta vegetal, utilizada en este caso como un sencillo ejemplo ilustrativo. La primera de ellas (parte izquierda) fue adquirida por un sensor multiespectral, en concreto, Landsat Thematic Mapper, que dispone de un total de 7 bandas en el rango 0.48 – 2.21 µm. La firma espectral mostrada en la parte derecha de la Fig. 2.3 fue adquirida por el sensor hiperespectral AVIRIS [20], con 224 bandas espectrales en el rango 0.4 a 2.4 µm. Como puede apreciarse en la figura, la firma espectral obtenida mediante un sensor hiperespectral se asemeja a un espectro continuo de valores, mientras que la firma proporcionada por un sensor multiespectral es mucho menos detallada.
2.2 El problema de la mezcla
Como se ha mencionado en el apartado anterior, la capacidad de observación de este sensor permite la obtención de una firma espectral detallada para cada píxel de la imagen, dada por los valores de reflectancia adquiridos por el sensor en diferentes longitudes de onda, lo cual permite una caracterización muy precisa de la superficie de nuestro planeta. Conviene destacar que, en este tipo de imágenes, es habitual la existencia de mezclas a nivel de subpixel, por lo que a grandes rasgos podemos encontrar dos tipos de píxels en estas imágenes: píxel puros y píxel mezcla. Se puede
definir un píxel mezcla como aquel en el que cohabitan diferentes materiales [23][24][25][26][23-26]. Este tipo de píxel son los que constituyen la mayor parte de la imagen hiperespectral, en parte, debido a que este fenómeno es independiente de la escala considerada ya que tiene lugar incluso a niveles microscópicos [4]. La Figura 2.4 muestra un ejemplo del proceso de adquisición de píxels puros (a nivel macroscópico) y mezcla en imágenes hiperespectrales.
Los pixels mezcla constituyen la mayor parte de los pixels de una imagen hiperespectral, y su existencia se debe a una de las dos razones que mencionamos a continuación:
Mezcla macroscópica. Si el tamaño de pixel no es lo suficientemente grande para separar diferentes materiales, dichos elementos ocuparán el espacio asignado al pixel, con lo que el espectro resultante obtenido por el sensor será en realidad un espectro correspondiente a una mezcla de componentes [27][27]. Esta situación aparece ilustrada mediante un ejemplo en la Fig. 2.4. Mezcla íntima. Pueden obtenerse pixels mezcla cuando diferentes materiales
se combinan, dando lugar a lo que se conoce como mezcla íntima entre materiales [28,29][28][29]. Podemos observar esta situación en la Fig. 2.5.
U n pixel mezc la pued e ser desc omp uesto en una colec
ción de espectros "puros" o "característicos" (denominados endmembers en la terminología) y en un conjunto de valores denominados abundancias que indican la proporción o contribución individual de cada uno de los espectros puros en el pixel mezcla [2]. El modelo utilizado para describir la situación anteriormente comentada es el denominado “modelo de mezcla”, el cual considera que cualquier escena está constituida por un conjunto de endmembers con propiedades espectrales características y diferentes entre sí, y que aparecen mezclados en distintas proporciones [30,31][30][31]. Dentro del modelo de mezcla, se consideran dos posibilidades diferentes: lineal y no lineal
El modelo lineal de mezcla supone que cada haz de radiación solar incidente solamente interactúa con un único componente o endmember, de forma que la radiación total reflejada por un pixel mezcla se puede descomponer de forma proporcional a la abundancia de cada uno de los endmembers en el pixel [32,33][32][33]. En la actualidad, el modelo lineal de mezcla es el más utilizado en el análisis hiperespectral, debido a su sencillez y generalidad. Este modelo aparece ilustrado gráficamente en la Fig. 2.6.
Figura 4: Mezcla macroscopica. Figura 5: Mezcla íntima
Como aparece ilustrado en la Fig. 2.6 el modelo lineal de mezcla presupone que la proporció n de componen tes o endmembers que se mezclan en un determinado pixel de la imagen sigue un proceso lineal. Sea s la firma espectral obtenida por un sensor hiperespectral en un determinado pixel. Este espectro puede ser considerado como un vector -dimensional, donde es el número de bandas espectrales del sensor. El vector s puede modelarse en términos de una combinación lineal de vectores endmembers,
ei , i=1..E, de acuerdo con la expresión que se muestra a continuación.
s=
∑
i= 1 E
ci⋅ei⋅⋅ (2.1)
donde E es el número total de endmembers, ci es un valor escalar que representa la
abundancia del endmember ei en el pixel s, y ⋅ es un vector de error que debe ser
lo más reducido posible. El modelo lineal de mezcla puede interpretarse de forma gráfica utilizando un diagrama de dispersión entre dos bandas poco correlacionadas de la imagen, tal y como se muestra en la Fig. 2.7. En la misma, puede apreciarse que todos los puntos de la imagen quedan englobados dentro del triángulo formado por los tres puntos más extremos (elementos espectralmente más puros). Los vectores asociados a dichos puntos constituyen un nuevo sistema de coordenadas con origen en el centroide de la nube de puntos, de forma que cualquier punto de la imagen puede expresarse como combinación lineal de los puntos más extremos, siendo estos puntos son los mejores candidatos para ser seleccionados como endmembers. El paso
clave a la hora de aplicar el modelo lineal de mezcla consiste en identificar de forma correcta los elementos extremos de la nube de puntos -dimensional. Precisamente, este es el problema que nos ocupa en la presente memoria y en el siguiente apartado describiremos una serie de aproximaciones al problema de selección automática de
endmembers, las cuales serán comparadas en el presente estudio.
Antes de finalizar el presente apartado, y teniendo presente que las técnicas desmezclado abordadas en la presente memoria se centran en el modelo lineal de mezcla, es importante destacar que otra aproximación en la literatura al problema de la mezcla se basa en suponer que los endmembers interactúan según un modelo no lineal. Borel y Gerstl [34][34] demostraron que los efectos no lineales que se producen en este caso se deben, fundamentalmente, a efectos de dispersión múltiple en la luz reflejada por los diferentes materiales [35][35]. El modelo no lineal aparece ilustrado gráficamente mediante un ejemplo en la Fig. 2.8. A pesar de que el modelo no lineal puede resultar más preciso en determinadas circunstancias, su aplicación correcta requiere de información a priori acerca de la geometría y propiedades físicas de los objetos observados, lo cual lo hace difícilmente abordable en situaciones en las que no existe dicha información a priori. Además, el modelo no lineal es
difícilmente generalizable entre áreas de aplicación diferentes (e.g. las propiedades físicas y geometría de los minerales son completamente diferentes de las propiedades físicas y geometría de las cubiertas vegetales, e incluso cada cubierta vegetal podría requerir un modelo específico). Por estos motivos, el modelo lineal es el más ampliamente utilizado en la literatura relacionada con análisis de mezclas mediante
endmembers
2.3 E
l
senso
r
AVIRI
S de
NASA
Jet
Propu
lsion
Labor
atory
AVIRIS es un sensor hiperespectral aerotransportado con capacidades analíticas en las zonas visible e infrarroja del espectro [20]. Este sensor está en funcionamiento desde 1987. Fue el primer sistema de adquisición de imágenes capaz de obtener información en una gran cantidad de bandas espectrales estrechas y casi contiguas. AVIRIS es un instrumento único en el mundo de la teledetección, pues permite obtener información espectral en 224 canales espectrales contiguos, cubriendo un rango de longitudes de onda entre 0.4 y 2.5 µm, siendo el ancho entre las bandas muy pequeño, aproximadamente 0.01 µm. En 1989, AVIRIS se convirtió en un instrumento aerotransportado. Desde ese momento, se realizan varias campañas de vuelo cada año para tomar datos mediante AVIRIS. El sensor ha realizado tomas de datos en Estados Unidos, Canadá y Europa, utilizando para ello dos plataformas [16]:
• Un avión ER-2 perteneciente a NASA/Jet Propulsion Laboratory. El ER-2 puede volar a un máximo de 20 km sobre el nivel del mar, a una velocidad máxima de aproximadamente 730 km/h.
• Un avión denominado Twin Otter, capaz de volar a un máximo de 4 km sobre el nivel del mar, a velocidades de 130 km/h.
Algunas de las características más relevantes en cuanto al diseño interno del sensor AVIRIS son las siguientes:
• El sensor utiliza un explorador de barrido que permite obtener un total de 614
píxels por cada oscilación.
• La cobertura de la parte visible del espectro es realizada por un espectrómetro
EFOS- A, compuesto por un array de 32 detectores lineales.
• La cobertura en el infrarrojo es realizada por los espectrómetros EFOS-B,
EFOS-C y EFOS-D, compuestos todos ellos por arrays de 64 detectores
lineales.
• La señal medida por cada detector se amplifica y se codifica utilizando 12 bits. Esta señal se almacena en una memoria intermedia donde es sometida a una etapa de preprocesado, siendo registrada a continuación en una cinta de alta densidad de 10.4 GB a velocidad de 20.4 MB/s.
• El sensor dispone de un sistema de calibración a bordo, que utiliza una lámpara halógena de cuarzo que proporciona la radiación de referencia necesaria para comprobar el estado de los diferentes espectrómetros.
• A lo largo de los últimos años, el sensor ha ido mejorando sus prestaciones en cuanto a la relación señal-ruido, como se muestra en la Fig. 2.9 que describe la evolución de la relación SNR del sensor a lo largo de los últimos años [20].
3
Algoritmos de extracción de endmembers
En este capítulo se describirán los algoritmos empleados para ilustrar el impacto de utilizar información espacial en el proceso de selección de endmembers. Los algoritmos considerados se pueden dividir en dos grandes grupos: en primer lugar aquellos que se basan sólo en la información espectral de la imagen y en segundo lugar aquellos que utilizan tanto la información espectral como la espacial. Dentro del primer grupo se han considerado los algoritmos N-FINDR [3] y OSP (Orthogonal Subspace Projections) [7], como algoritmos automáticos representativos de la tendencia basada en utilizar únicamente información espectral. En el segundo grupo se han considerado los algoritmos AMEE (Automatic Morphological
Endmember Extraction) [14], SSEE (Spatial Spectral Endmember Extraction) [5] y
SPP (Spatial Pre-Processing) [16] como algoritmos representativos de la tendencia actual en la literatura basada en utilizar información tanto espacial como espectral. Los algoritmos se han implementado utilizando el lenguaje C++ y la librería Orfeo
Toolbox, especializada en el tratamiento de imágenes obtenidas de forma remota.
Antes de proceder a describir los algoritmos considerados, es conveniente destacar el contexto en el que dichos algoritmos serán aplicados. En este sentido, la Fig. 3.1 describe la metodología clásica de análisis de imágenes hiperespectrales utilizando el modelo lineal de mezcla. Como puede apreciarse en la Fig. 3.1 la metodología parte de una imagen hiperespectral pre-procesada (para eliminación de efectos atmosféricos, geométricos, etc.) y efectúa los siguientes pasos:
1. Reducción dimensional. Este paso es opcionalmente utilizado por ciertos algoritmos con objeto de reducir la carga computacional de pasos sucesivos mediante la eliminación de ruido e información redundante en la imagen. 2. Identificación de endmembers. En este paso se identifican las firmas
espectrales puras que se combinan para dar lugar a pixels mezcla en la imagen.
3. Estimación de abundancias. La abundancia de las firmas espectrales puras o
endmembers es estimada en cada pixel de la imagen.
el paso de estimación de abundancias pueden ser considerados problemas separados. En el presente trabajo, nos centramos en los dos primeros pasos.
3.1 Algoritmos basados en información espectral
Los algoritmos de extracción de endmembers basados en información espectral dependen de la habilidad para discriminar los pixels basándose sólo en sus características espectrales. A continuación se describen, por este orden, los algoritmos OSP y N-FINDR como dos de las técnicas más representativas dentro de esta categoría. Otras técnicas clásicas con el algoritmo PPI han sido descartadas para el presente estudio debido a su carácter semi-supervisado, lo cual dificulta la obtención de resultados consistentes en varias ejecuciones de forma automatizada.
3.1.1
Orthogonal Subspace Projection (OSP)
El algoritmo OSP fue inicialmente desarrollado para encontrar firmas espectrales utilizando el concepto de proyecciones ortogonales[36] [36]. El algoritmo hace uso de un operador de proyección ortogonal que viene dado por la expresión:
PU⋅= I − U
⋅
UTU⋅
− 1UT (3.1)donde U es una matriz de firmas espectrales, UT es la traspuesta de dicha matriz, e I
es la matriz identidad. El algoritmo utiliza el operador mostrado en (3.1) de forma repetitiva hasta encontrar un conjunto de p pixels ortogonales a partir de un pixel inicial. El proceso iterativo efectuado por este algoritmo puede resumirse en los siguientes pasos:
1. Calcular t0 , el pixel más brillante de la imagen hiperespectral, utilizando la
siguiente expresión: t0= arg
{
max⋅x , y⋅F⋅x , y⋅T
⋅F⋅x , y⋅
}
, donde F⋅
x , y⋅
esel pixel en las coordenadas
⋅
x , y⋅
de la imagen. Como puede comprobarse, el pixel más brillante es aquel que resulta en mayor valor al realizar el producto vectorial entre el vector asociado a dicho pixel y su transpuestoF
⋅
x , y⋅
T . o lo que es lo mismo, la norma primera del pixel.2. Aplicar un operador de proyección ortogonal que denotamos como PU
⋅
, basado en la expresión (3.1) , con U = t0. Este operador se aplica a todos los
pixels de la imagen hiperespectral.
3. A continuación, el algoritmo encuentra un nuevo endmember denominado t0
con el mayor valor en el espacio complementario ⋅t0⋅ ⋅
, ortogonal a t0 ,
de la siguiente forma: t1= arg
{
max⋅x , y⋅[
PU⋅⋅F
⋅
x , y⋅
]
T⋅[
PU⋅⋅F⋅
x , y⋅
]
}
. En otras palabras, el algoritmo busca el pixel con mayor ortogonalidad con respecto a t0 .4. El siguiente paso es modificar la matriz U añadiendo el nuevo endmember encontrado, es decir, U = [t0 t1].
5. Seguidamente, el algoritmo encuentra un nuevo endmember denomina t2 do
con el mayor valor en el espacio complementario⋅t0, t1⋅ ⋅
, ortogonal a t0
y t1 , de la siguiente forma: t2= arg
{
max⋅x , y⋅[
PU⋅⋅F⋅
x , y⋅
]
T
⋅
[
PU⋅⋅F⋅
x , y⋅
]
}
. Es preciso tener en cuenta que, a diferencia del paso 3) en el que U = t0, en6. El proceso se repite, de forma iterativa hasta encontrar el número de
endmembers que deseemos.
Como puede comprobarse en los experimentos realizados, este algoritmo es efectivo a la hora de identificar un conjunto de endmembers espectralmente diferenciados gracias a la condición de ortogonalidad impuesta en el proceso de búsqueda. Como característica negativa, tal y como se muestra en los resultados experimentales el algoritmo puede ser sensible a outliers y píxels anómalos, los cuales podrían ser descartados mediante un proceso capaz de incorporar información espacial de forma previa. También conviene destacar que este algoritmo se ha utilizado en este trabajo en todos los casos en los que resultaba necesario extraer un conjunto de firmas espectrales diferenciadas a partir de un proceso previo basado en la información espacial. En este sentido, el algoritmo OSP descrito en este subapartado se ha empleado en combinación con los algoritmos basados en información espacial AMEE, SSEE y SPP (descritos en detalle en apartados posteriores) para seleccionar un conjunto final de firmas espectrales como paso final de dichos algoritmos.
3.1.2
N-FINDR
El algoritmo N-FINDR [37,38][37][38] utiliza una técnica basada en identificar los endmembers como los vértices del simplex de mayor volumen que puede formarse en el conjunto de puntos. N-FINDR no trabaja con todo el cubo de datos sino con una simplificación del mismo a tantas bandas como endmembers se deseen encontrar. Para este tipo de reducciones se suele utilizar la técnica PCA (Principal
Component Analysis) [39] o MNF (Minimum oise Fraction) [39]. El único
parámetro que tiene este algoritmo es el número de endmembers a identificar. El funcionamiento del algoritmo se describe en los siguientes pasos:
Realizar una reducción de la imagen a un número de bandas igual al número de
ednmembers que se desean extraer mediante PCA o MNF (en nuestro caso PCA).
1. Seleccionar un número aleatorio de pixels que se etiquetan como
endmembers. Ésta selección inicial será refinada de forma iterativa.
pixel se va intercambiando de forma sucesiva a cada uno de los endmembers
inicialmente seleccionados.
3. A medida que el pixel se va intercambiando con los endmembers iniciales se calcula el volumen del hiperpolígono formado con el nuevo punto considerado.
4. Si el volumen obtenido tras el intercambio es mayor que el que había antes del intercambio, el nuevo punto trae como consecuencia un reemplazamiento en el conjunto de endmembers y el nuevo pixel pasa a formar parte del conjunto de endmembers. En caso contrario, se deshace el intercambio. 5. Los pasos 3-5 se repiten de forma iterativa hasta comprobar todos los pixels
de la imagen. De tal forma que al final del proceso tendremos un conjunto de
endmembers tal que su volumen es el mayor posible.
Conviene destacar que, en el primer paso del algoritmo, se establece de forma aleatoria un conjunto inicial de endmembers. Si la estimación inicial es adecuada, el algoritmo llegará a la solución óptima. Por el contrario, una estimación inicial errónea puede dar como resultado que no se llegue a la solución óptima sino que nos quedemos en un máximo local de la función de crecimiento del hiperpolígono [38][38]. El algoritmo presupone que un aumento en el volumen del hiperpolígono definido al incorporar un nuevo pixel en el conjunto de endmembers conlleva una mayor calidad de los mismos. Sin embargo, la Fig. 3.2 muestra que el hecho de utilizar un polígono de mayor volumen no asegura una mejor descripción del conjunto de puntos. Un parámetro más fiable es el aumento en el número de pixels que pueden describirse utilizando el nuevo conjunto de endmembers.
Para concluir la descripción de este método, es importante destacar que los
endmembers identificados por el algoritmo N-FINDR corresponden a pixels
pertenecientes al conjunto de datos original. Utilizando este algoritmo, no es posible generar endmembers artificiales, pues los reemplazamientos se realizan siempre utilizando puntos existentes en el conjunto de muestras disponibles. De este modo, puede ocurrir que los endmembers seleccionados no sean los más puros. Además, el método es sensible a outliers, situación que puede remediarse en parte al incorporar la información espacial en el proceso de búsqueda. Una vez descritas dos
aproximaciones clásicas al problema de extracción de endmembers basadas en información espectral, procedemos a describir métodos que también incorporan información espacial en el proceso.
3.2 Algoritmos basados en información espacial y espectral
Varios autores [14-16] han argumentado que la principal limitación de las técnicas de extracción de endmembers exclusivamente espectrales radica en que el proceso de análisis no tiene en cuenta la correlación espacial presente en la imagen. Para ilustrar esta idea, la parte izquierda de la Fig. 3.3 muestra una imagen hiperespectral originalBanda X
B
a
n
d
a
Y
Volumen 1
Volumen 2
Volumen 1 > Volumen 2
y la parte derecha muestra una nueva imagen hiperespectral, obtenida a partir de un proceso de re-ordenación aleatorio de los pixels de la imagen anterior. La diferencia entre las imágenes mostradas en la Fig. 3.3 radica por tanto en la disposición de los
pixels, es decir, en el dominio espacial. La aplicación de técnicas exclusivamente
espectrales puede producir distintos resultados dependiendo del método utilizado, aunque, en ambos casos, la información espectral del resultado obtenido será la misma.
A partir de la Fig. 3.3, parece razonable introducir metodologías que incorporen información relativa al dominio espacial a la hora de analizar imágenes hiperespectrales. De hecho, las técnicas espaciales y espectrales se necesitan mutuamente, puesto que las aportaciones de unas compensan las carencias de las otras y viceversa. En el presente apartado describimos los métodos de extracción de
endmembers considerados en el presente trabajo que integran información espacial y
espectral.
3.2.1
SSEE
El algoritmo SSEE es un método representativo de las aproximaciones que
Figura 12: Ejemplo ilustrativo de la importancia de considerar únicamente la información espectral en el análisis de una imagen hiperespectral
consideran la información espacial y espectral de forma separada, no simultánea [15]. El algoritmo puede desglosarse en una secuencia de cuatro pasos:
Paso 1)
En el paso uno se utiliza la descomposición SVD para obtener una serie de autovectores que nos den una muestra de la varianza espectral de subconjuntos o subregiones de una imagen [39,40][39][40]. En el primer paso se divide la imagen en subconjuntos cuadrados, estos subconjuntos son de igual tamaño, deben ocupar toda la imagen y no pueden solaparse. Es por esto que el tamaño del subconjunto (lado del cuadrado que forma el subconjunto) debe ser como máximo la imagen entera (si la imagen es cuadrada), como mínimo la raíz cuadrada del número de bandas de la imagen (para poder aplicar la descomposición SVD al subconjunto) y además debe ser divisor de las dimensiones de la imagen (para que ocupen toda la imagen y no se solapen). A cada subconjunto de pixels se realizará una descomposición SVD para obtener los autovectores (ver Fig. 3.4 )
Paso 2)
En el segundo paso se proyectan todos los vectores de cada pixel sobre cada uno de los autovectores obtenidos en el paso anterior, seleccionando como pixels candidatos aquellos pixels cuya proyección sea máxima o mínima (ver Fig. 3.5 ).
Figura 13: Descomposición de una imagen en subconjuntos y obtención de los autovectores.
Paso 3)
El tercer paso comienza con una ampliación del conjunto de pixels candidatos. Para realizar esta ampliación se van cogiendo cada uno de los
pixels candidatos y de una vecindad dada por una ventana cuadrada de lado
igual al tamaño del subconjunto del paso 1 y centrada en el pixel candidato en cuestión, se añaden aquellos vecinos que tengan una distancia de ángulo espectral SAD menor a un valor de umbral. Una vez expandido el conjunto de
pixels candidatos se realiza una media entre aquellos pixels que sean
espectralmente similares y estén relacionados espacialmente. Más concretamente se va cogiendo cada pixel candidato, a continuación se examinan aquellos pixels candidatos vecinos que tengan un SAD menor a un valor de umbral y se realiza una media entre todos ellos para asignársela al pixel en cuestión. Este proceso se repite una serie de veces, de tal manera que los pixels espacial y espectralmente similares irán convergiendo hacia la media de todos ellos (ver Fig. 3.6).
Figura 14: Proyección de los pixels sobre los autovectores y obtención de los pixels candidatos.
Paso 4)
El último paso se trata de extraer los endmembers. Este proceso se puede hacer automáticamente aplicando un algoritmo de extracción de endmembers que tome en cuenta simplemente las características espectrales a los pixels resultantes del paso anterior o semi-automáticamente mediante la ordenación de los pixels candidatos resultantes del paso anterior con respecto a una medida de distancia entre ellos, para a continuación agruparlos en clases y obtener los endmembers. En el presente trabajo, hemos optado por emplear el algoritmo OSP para realizar esta función, debido principalmente al carácter automático de dicho algoritmo y a su efectividad a la hora de proporcionar un conjunto de firmas espectrales ortogonales y espectralmente diferenciadas.
3.2.2
AMEE
El algoritmo AMEE es un método representativo de las aproximaciones que consideran la información espacial y espectral de forma simultánea. Este método utiliza operaciones morfológicas extendidas de erosión y dilatación [16], las cuales aparecen ilustradas gráficamente en la Fig. 3.7.
Como puede apreciarse en la Fig. 3.7, la operación de dilatación expande las zonas espectralmente puras de la imagen; dicha expansión se realiza de una forma que depende de las características espaciales del elemento estructural utilizado. Por el contrario, la operación de erosión da como resultado una reducción de las zonas espectralmente puras según el tamaño y forma del elemento estructural utilizado. En ambos casos, los operadores consideran de forma simultánea la información espacial y espectral a la hora de producir su resultado. Una vez introducidas las características básicas de las operaciones morfológicas en las que se basa el método AMEE, procedemos a describir el algoritmo en sí, el cual puede desglosarse en una secuencia de cuatro pasos:
Paso 1)
Consiste en la aplicación de operadores morfológicos extendidos sobre la imagen hiperespectral original. Cada pixel es evaluado en términos de su pureza espectral en el dominio espacial definido por el elemento estructural de la operación morfológica. En este paso, se consideran elementos estructurales progresivamente crecientes, lo cual permite interpretar la pureza espectral del pixel en diferentes escalas espaciales. Este proceso se basa en el cálculo de una medida de distancia entre el pixel máximo y el mínimo. Para ello, introducimos una medida de calidad denominada índice de excentricidad morfológico o Morphological Eccentricity Index (MEI), cuya interpretación
Figura 16: Operaciones morfológicas extendidas de erosión y diliatación.
gráfica aparece descrita en la Fig. 3.8. Siguiendo la notación utilizada en dicha figura, sean (n,m) las coordenadas espaciales del pixel (f⊕K)(x,y), seleccionado como máximo en la vecindad que rodea a f(x,y), y sea (f⊕K)(x,y) el pixel mínimo en dicha vecindad. El índice de excentricidad asociado al pixel (n,m) se calcula utilizando la siguiente expresión, donde Dist es una medida de distancia punto a punto entre vectores:
MEI ⋅n , m ⋅= Dist {
⋅
f ⊕ K⋅
⋅x , y ⋅,⋅f ⊕ K⋅
⋅x , y ⋅} (3.2) Paso 2)Tiene como objetivo la identificación automatizada de un conjunto de
pixels puros a partir de la información obtenida en la etapa anterior. El
proceso de selección de pixels puros a partir de dicha imagen se realiza utilizando el método de umbralizado automático de Otsu.
Paso 3)
Consiste en aplicar un proceso opcional de crecimiento de regiones, que permite obtener un conjunto de regiones coherentes desde un punto de vista espacial y espectral, a partir de las cuales se obtienen una lista de
endmembers.
Paso 4)
El último paso del algoritmo tiene como objetivo la eliminación de posibles instancias redundantes en la lista final de endmembers obtenida como resultado de la etapa de crecimiento.
Para concluir este apartado, la Fig. 3.9 muestra un diagrama ilustrativo del método AMEE. En la implementación del algoritmo AMEE se ha omitido el paso 3 de crecimiento de regiones, el cual es opcional, debido a que el método elegido para la extracción de endmembers en el paso 4 es el algoritmo OSP descrito en anteriores apartados de esta memoria. El principal motivo por el que se utiliza OSP para seleccionar el conjunto final de endmembers es que el método selecciona las firmas espectrales más ortogonales entre sí, dando lugar a un conjunto de endmembers espectralmente diferenciados y no redundantes.
Figura 17: Cálculo del índice MEI mediante la combinación de operaciones morfológicas de
3.2.3
Preprocesado espacial
El preprocesado espacial es un método por el cual se introduce información espacial en el proceso de búsqueda de endmembers [16], de tal manera que posteriormente al preprocesado se puedan aplicar métodos clásicos de extracción de
endmembers a la imagen preprocesada para así obtener las firmas puras en base a
criterios espaciales y espectrales. La Fig. 3.10 muestra el funcionamiento del método
En el método de preprocesado se calcula un factor escalar para cada pixel relacionado con la similitud de un pixel con sus vecinos. A continuación se usa ese factor escalar para dar un peso a la información espectral de dicho pixel. El factor se
Figura 18: Diagrama de bloque de funcionamiento de AMEE
Fi gura 19: Metodología de preprocesado espacial de imágenes hiperespectrales