UNIVERSIDAD DE EXTREMADURA
Escuela Politécnica
MÁSTER UNIVERSITARIO EN
INVESTIGACIÓN EN INGENIERÍA Y
ARQUITECTURA (MUIT)
ESPECIALIDAD EN:
TECNOLOGÍAS INFORMATICAS Y DE LAS
COMUNICACIONES (TINC)
Trabajo Fin de Máster MUIT-TINC
HyperMix: Una nueva herramienta libre para el
desmezclado de imágenes hiperespectrales de la
superficie terrestre
Luis Ignacio Jiménez Gil
Septiembre 2012
MÁSTER UNIVERSITARIO EN
INVESTIGACIÓN EN INGENIERÍA Y
ARQUITECTURA (MUIT)
ESPECIALIDAD EN:
TECNOLOGÍAS INFORMATICAS Y DE LAS
COMUNICACIONES (TINC)
Trabajo Fin de Máster MUIT-TINC
HyperMix: Una nueva herramienta libre para el
desmezclado de imágenes hiperespectrales de la
superficie terrestre
Autor: Luis Ignacio Jiménez Gil
Fdo:
Director: Antonio J. Plaza Miguel
Fdo:
Tribunal Calificador
Presidente:
Fdo:
Secretario:
Fdo:
Vocal:
Fdo:
CALIFICACIÓN:
FECHA:
Tabla de contenido
ÍNDICE DE IMÁGENES ................................................................................. 3
ÍNDICE DE EXPRESIONES Y TABLAS ........................................................ 6
RESUMEN ..................................................................................................... 8
CAPÍTULO 1. Motivaciones y objetivos ....................................................... 10
1.1.
Motivaciones ................................................................................... 10
1.2.
Objetivos ......................................................................................... 12
CAPÍTULO 2. Antecedentes ........................................................................ 14
2.1. Análisis hiperespectral ....................................................................... 14
2.2 El problema de la mezcla ................................................................... 18
2.3. Firmas espectrales puras. ................................................................. 21
2.4. Análisis del software disponible para el tratamiento de imágenes
hiperespectrales ....................................................................................... 24
2.4.1. Software comercial existente para el análisis hiperespectral ...... 24
2.4.2. Software libre existente para el análisis hiperespectral ............... 27
2.4.4. Ventajas del software libre para el tratamiento de imágenes
hiperespectrales. ................................................................................... 30
CAPÍTULO 3. Algoritmos implementados ................................................... 32
3.1. Estimación del número de endmembers ........................................... 34
3.1.1. VD ............................................................................................... 34
3.1.2. HYSIME....................................................................................... 35
3. 2. Reducción de componentes ............................................................. 37
3.2.1. PCA ............................................................................................. 38
3.2.2. SPCA........................................................................................... 39
3. 3. Extracción de endmembers .............................................................. 40
1
3.3.1. OSP ............................................................................................. 40
3.3.2. N-FINDR...................................................................................... 42
3.4. Unmixing ............................................................................................ 45
3.4.1. LSU ............................................................................................. 46
3.4.2 ISRA ............................................................................................. 46
CAPÍTULO 4. La herramienta HyperMix ...................................................... 48
CAPÍTULO 5. Resultados experimentales ................................................... 56
5.1. Descripción de imágenes hiperespectrales ....................................... 56
5.1.1. Sintética (Fractal) ........................................................................ 56
5.1.2. Real (Cuprite) .............................................................................. 60
5.2. Comparativa de resultados ................................................................ 63
5.2.1. Tiempo computacional ................................................................ 63
5.2.2. Precisión de los algoritmos de extracción de endmembers frente al
ruido ...................................................................................................... 65
5.2.3. Influencia del ruido en la imagen reconstruida a partir de los datos
extraídos................................................................................................ 67
CAPÍTULO 6. Conclusiones y líneas futuras ............................................... 70
6.1. Conclusiones ..................................................................................... 70
6.2. Líneas futuras .................................................................................... 71
REFERENCIAS BIBLIOGRÁFICAS............................................................. 73
APÉNDICE I: PUBLICACIONES RELACIONADAS ..................................... 78
Congresos: ............................................................................................... 78
2
ÍNDICE DE IMÁGENES
Figura 2.1: Ejemplo de imagen multi-espectral de cuatro bandas.
Figura 2.2: Procedimiento de análisis hiperespectral.
Figura 2.3: Firmas espectrales de vegetación obtenidas por el sensor
multiespectral Landsat TM (7 bandas) y el sensor hiperespectral AVIRIS
(224 bandas).
Figura 1.4: Tipos de píxels en las imágenes hiperespectrales.
Figura 2.5: Mezcla macroscópica
Figura 2.6: Mezcla íntima.
Figura 2.7: modelo lineal de mezcla.
Figura 2.8: Interpretación gráfica del modelo lineal de mezcla.
Figura 2.9: Interfaz proporcionada por el software ENVI ITT.
Figura 2.10: Captura de pantalla de la herramienta PCI Geomatica.
Figura 2.11: Captura de una aplicación basada en ORFEO Toolbox para el
tratamiento de imágenes.
Figura 2.12: Aplicación basada en OTB para segmentación de imágenes.
Figura 3.1: Cadena completa de desmezclado o unmixing de imágenes
hiperespectrales.
Figura 3.2: Ilustración gráfica de la transformación PCA.
Figura 3.3: Funcionamiento del algoritmo N-FINDR.
Figura 3.4: Representación de la mezcla de tres endmembers.
3
Figura 4.1: Pantalla principal de la versión anterior de la herramienta
HyperMix.
Figura 4.2: Pantalla inicial de la herramienta HyperMix en la nueva versión.
Figura 4.3: De izquierda a derecha las distintas paletas de colores que usa
HyperMix. Grey, Envi, Hot, Cold, Bio y Jet.
Figura 4.4: Ventana de descarga de imágenes por FTP de la herramienta
HyperMix desde Hyperspectral Repository.
Figura 4.5: Ventana de selección de imágenes de la herramienta HyperMix
desde Hyperspectral Repository.
Figura 4.6: Imagen de la pestaña de estadísticas donde se pueden ver los
tiempos de ejecución y la diferencia entre las firmas extraídas y las de
referencia.
Figura 4.8: Foros creados para la consulta de dudas y proponer sugerencias
sobre HyperMix.
Figura 4.7: Vista general de la página web creada para la difusión de la
herramienta Hypermix. Actualmente solo está disponible la versión anterior
de la aplicación.
Figura 5.1: Imagen Fractal 1 usada para crear la imagen sintética (izquierda).
Fractal 1 dividida en clusters (derecha).
Figura 5.2: Firmas insertadas en la imagen Fractal 1.
Figura 5.3: Verdad terreno del Fractal 1 en escala de grises.
Figura 5.4: Imagen hiperespectral AVIRIS sobre la región Cuprite en
Nevada, Estados Unidos.
Figura 5.5: Mapa de minerales obtenidos por el U.S. Geological Survey a
través del algoritmo Tetracorder en la región Cuprite en Nevada, Estados
Unidos.
4
Figura 5.6: Firmas espectrales puras correspondientes a los minerales más
representativos en la región Cuprite en Nevada, Estados Unidos.
Figura 5.7: Representación visual del error de reconstrucción de la imagen
original a partir de las firmas extraídas y los mapas de abundancia. Las
imágenes están ordenadas, de izquierda a derecha, de mayor señal de ruido
a menor señal de ruido. Los colores fríos están más cerca del valor mínimo
de error y los más cálidos del máximo.
5
ÍNDICE DE EXPRESIONES Y TABLAS
Expresión 2.1: Expresión de un píxel como combinación lineal de las firmas
espectrales puras.
Expresión 3.1: Cálculo de la matriz de correlación de la imagen.
Expresión 3.2: Cálculo de la matriz de covarianza de la imagen.
Expresión 3.3: Estimación de la matriz de ruido contenido en la imagen.
Expresión 3.4: Expresiones de la matriz de correlación de ruido y de la
matriz de correlación de la señal.
Expresión 3.5: Descomposición de valores singulares (SVD).
Expresión 3.6: Operador de proyección ortogonal utilizado por el algoritmo
OSP.
Expresión 3.7: Expresión de la abundancia de un conjunto de firmas
espectrales puras en un píxel para el algoritmo LSU.
Expresión 3.8: Expresión de la abundancia de un conjunto de firmas
espectrales puras en un píxel para el algoritmo ISRA.
Expresión 5.1: Expresión representativa de una imagen sintética.
Expresión 5.2: Definición de la inclusión de ruido en una imagen dada por de
Harsanyi y Chang.
Tabla 5.1: Resultados experimentales de cada uno de los algoritmos de la
herramienta HyperMix en segundos.
Tabla 5.2: Resultados obtenidos por la herramienta HyperMix comparando
los endmembers extraídos con las firmas de referencia por el método del
mínimo en la imagen Fractal1.
6
Tabla 5.3: Resultados obtenidos con la herramienta HyperMix para la image
de Cuprite por el método del mínimo con cinco endmembers.
Tabla 5.4: Resultados obtenidos por la herramienta HyperMix al reconstruir
la imagen a partir de los endmember y los mapas de abundancia.
7
RESUMEN
El análisis hiperespectral constituye una nueva técnica en observación
remota de la Tierra que permite obtener imágenes con gran resolución
espectral (cientos de bandas) para una misma zona de la superficie
terrestre. 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 (denominados endmembers en la literatura), y
2) la descomposición de las escenas en fracciones de abundancia relativas a
dichos endmembers. Opcionalmente, se pueden añadir otras dos partes que
son la estimación de los denominados endmembers presentes en la escena
y la reducción de la dimensionalidad de la imagen.
En el presente trabajo se ha desarrollado una nueva herramienta que
permite realizar todas las etapas del proceso de análisis hiperespectral,
tratando, en la medida de lo posible, de presentar dichas etapas de una
forma sencilla e intuitiva. Para el desarrollo de la herramienta se ha optado
por el lenguaje C++ utilizando para definir la interfaz de usuario, los procesos
de entrada-salida y las comunicaciones la biblioteca Qt e incluir los
algoritmos implementados por el grupo de investigación de “Computación
Hiperespectral” (HyperComp). Los algoritmos incluidos permiten trabajar en
todas las etapas de la cadena de demezclado.
Además la herramienta contiene otras funciones útiles para el
procesamiento de las imágenes hiperespectrales, entre las cuales la más
novedosa sea el acceso a un repositorio de imágenes que el grupo tiene a
su disposición.
En este trabajo también se incluye una comparativa analítica de los
métodos usados para la extracción de endmembers y generación de mapas
de abundancia en base a los resultados obtenidos por la propia herramienta
en dichas etapas.
8
La memoria del trabajo se encuentra organizada de la siguiente
forma. En el primer capítulo se describen las motivaciones y objetivos del
trabajo. A continuación, se presentan los antecedentes y trabajos previos
sobre análisis, así como un resumen sobre el software existente y las
ventajas del software libre. En el siguiente capítulo se describen los
algoritmos disponibles en esta versión de la herramienta. A continuación se
trata sobre la herramienta y los cambios respecto a la versión anterior. El
siguiente capítulo expone los resultados obtenidos por la herramienta en dos
supuestos, uno sintético y otro real, utilizando imágenes hiperespectrales de
referencia. En el último capítulo se exponen las conclusiones obtenidas del
trabajo y se proponen las líneas futuras de trabajo sobre este campo.
9
CAPÍTULO 1. Motivaciones y objetivos
1.1.
Motivaciones
El trabajo desarrollado en este Trabajo Fin de Máster (TFM) se
enmarca dentro de las líneas de trabajo del grupo de investigación de
“Computación
Hiperespectral”
(HyperComp)
de
la
Universidad
de
Extremadura, entre las cuales se encuentra el desarrollo de nuevas técnicas
para demezclado de imágenes hiperespectrales de la superficie terrestre
basadas en la extracción de referencias espectrales puras o endmembers
[1]. El presente trabajo se ha centrado en el desarrollo de una herramienta
de software libre capaz de manejar algunas de dichas técnicas de forma
eficiente con vistas a la utilidad que para un investigador esto pueda
significar, y de forma sencilla para ampliar la difusión de este campo de la
teledetección a posibles nuevos investigadores. Dichos algoritmos se
encontraban disponibles de forma pública únicamente en forma de software
propietario, por ejemplo en paquetes como el conocido Research Systems
ENVI de ITTVisual Solutions1.
Así el presente Trabajo Fin de Máster pretende el desarrollo de una
aplicación que englobe una serie de algoritmos para el tratamiento de
imágenes hiperespectrales junto con un conjunto de funcionalidades útiles
para la representación y la medición de los resultados ofrecidos por dichos
algoritmos. Como ya se ha comentado, la gran ventaja de esta herramienta
es que es software libre, permitiendo su
libertad de uso, modificación,
ampliación y redistribución. Por otro lado, esta característica de la
herramienta nos permite pensar en el desarrollo y ampliación por parte del
grupo a largo plazo basándose en la colaboración con otros centros
dedicados al mismo tipo de investigación. Con todo se eliminan las
1
http://www.ittvis.com/language/en-us/productsservices/envi.aspx
10
restricciones de uso que imponen las licencias de software propietario y los
problemas que pueden surgir con actualizaciones no controladas.
Es pretensión también del presente trabajo que los principales
fundamentos a la hora de desarrollar la aplicación sean el manejo sencillo,
óptimo y útil de dichos algoritmos así como de las funcionalidades que se
crean necesarias para complementar este manejo utilizando para ello la
biblioteca Qt. En concreto, los algoritmos incluidos en la comparativa que
abarca la presente memoria son: VD (Virtual Dimensionality), HYSIME, PCA
(Principal Component Analysis), SPCA (Spatial Principal Component
Analysis), OSP (Orthogonal Subspace Proyections) [2], N-FINDR, LSU
(Linear Spectral Unmixing) [1] e ISRA (Image Space Reconstruction
Algorimth).
11
1.2.
Objetivos
Como se ha comentado en el anterior apartado el principal objetivo de
este trabajo es el desarrollo de una aplicación para el manejo de algoritmos
de procesamiento de imágenes hiperespectrales de forma gráfica y
amigable, sin perder de vista la eficiencia y utilidad de los algoritmos que se
usan, así como la creación de una plataforma que aglutine el conjunto de
trabajos desarrollados por el Grupo de Investigación son los objetivos
generales de este Trabajo Fin de Máster.
De forma más específica los objetivos que se han ido planteando son
los siguientes:

Aprender a desarrollar aplicaciones utilizando la biblioteca Qt
así como el entorno de desarrollo propio de esta biblioteca
(QtCreator) y la extensión de complementos gráficos Qwt en
consonancia a distintas tecnologías usadas a este fin.

Crear una aplicación de complejidad mínima pretendiendo
mejorar la presentación de los resultados y la eficiencia de los
algoritmos incluidos, junto con
herramientas útiles para el
estudio y comparación de los resultados ofrecidos.

Reducir al mínimo el número de dependencias que la
herramienta pueda tener de cara a una distribución mayor y
una

difusión
positiva
de
la
valoración
de
esta.
Implementar en el lenguaje de programación C++ los
algoritmos utilizados en la presente memoria: VD, HYSIME,
PCA,
SPCA,
anteriormente
OSP,
las
NFINDR,
versiones
LSU
de
e
estos
ISRA.
Ya
algoritmos
que
se
encontraban implementadas en C y las versiones que la
12
herramienta incluía, a pesar de estar en C++, utilizan la librería
ORFEO ToolBox, que como se explicará más adelante, ha
dejado de utilizarse en el desarrollo de la herramienta.

Crear una plataforma abierta a la integración de nuevas
tecnologías entre las cuales podemos mencionar
CUDA y
ejecución de algoritmos y visualización de resultados de forma
remota.
13
CAPÍTULO 2. Antecedentes
El este capítulo se presentan los principales conceptos básicos que se
van a utilizar a lo largo del documento. En primer lugar se describe 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, con particular énfasis en la extracción de firmas espectrales puras o
endmembers. Por último se realizará un análisis del software actualmente
disponible para el procesamiento de las imágenes hiperespectrales.
2.1. Análisis 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 [3]. 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 píxel. Así
en una imagen en escala de grises podemos decir que un píxel está
constituido por un único valor discreto, mientras que, en una imagen
hiperespectral, un píxel consta de un conjunto amplio de valores. Estos
valores pueden ser entendidos como vectores N-dimensionales [4], siendo N
el número de bandas espectrales en las que el sensor mide información.
La ampliación del concepto de píxel da lugar a una representación en
forma de cubo de datos, tal y como aparece en la Figura 2.1. En este caso el
orden de magnitud de N permite realizar una distinción a la hora de hablar
de imágenes multidimensionales. Así, cuando el valor de N es reducido,
típicamente unas cuantas bandas espectrales [5] se habla de imágenes
14
multi-espectrales, mientras que, cuando el orden de magnitud de N es de
cientos de bandas [6] se hablad de imágenes hiperespectrales.
Figura 2.1: Ejemplo de imagen multi-espectral de cuatro bandas
En este sentido, el análisis hiperespectral 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 píxel, una firma espectral característica de cada material [3]. Este
proceso facilita la identificación y cuantificación de los materiales en la
escena [7,8].
15
Figura 2.2: Procedimiento de análisis hiperespectral.
Tal y como hemos comentado anteriormente, el resultado de la toma
de datos por 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 píxel, y una
tercera dimensión para representar la singularidad espectral de cada píxel
en diferentes longitudes de onda. La Figura 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 Infrared
Imaging Spectometer (AVIRIS) de NASA Jet Propulsion Laboratory. 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 [6], y permite la obtención de píxels formados por
doscientos veinticuatro valores espectrales, a partir de los cuales puede
16
obtenerse una firma espectral característica que será utilizada en el proceso
de análisis.
Para concluir este subapartado, la Figura 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 (izquierda) fue
adquirida por un sensor multiespectral, en concreto, Landsat Thematic
Mapper [9], que dispone de un total de siete bandas en el rango 0.48 –
2.21
. La segunda (derecha) fue obtenida por el sensor hiperespectral
AVIRIS, anteriormente comentado. Como puede apreciarse en la Figura 2.3,
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.
Figura 2.3: Firmas espectrales de vegetación obtenidas por el sensor multiespectral Landsat
TM (7 bandas) y el sensor hiperespectral AVIRIS (224 bandas).
17
2.2 El problema de la mezcla
Como se ha mencionado en el apartado anterior, la capacidad de
observación de sensores hiperespectrales como AVIRIS 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 subpíxel, por lo
que a grandes rasgos podemos encontrar dos tipos de píxels en estas
imágenes: píxels puros y píxel mezcla. Se puede definir un píxel mezcla
como aquel en el que cohabitan diferentes materiales [2, 10-12].
Este tipo de píxels 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 [13]. 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.
Figura 2.4: Tipos de píxels en las imágenes hiperespectrales.
18
Los píxels mezcla constituyen la mayor parte de los píxels 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 píxel no es lo suficientemente
grande para separar diferentes materiales,
dichos elementos
ocuparan el espacio asignado al píxel, con lo que el espectro
resultante obtenido por el sensor será en realidad un espectro
correspondiente a una mezcla de componentes [14]. Esta situación
aparece ilustrada mediante un ejemplo en la Figura 2.5.
Figura 2.5: Mezcla macroscópica

Mezcla íntima. Pueden obtenerse píxels mezcla cuando diferentes
materiales se combinan, dando lugar a lo que se conoce como mezcla
intima entre materiales [15,16]. Podemos observar esta situación en la
Figura 2.6.
19
Figura 2.6: Mezcla íntima.
20
2.3. Firmas espectrales puras.
Un píxel mezcla puede ser descompuesto en una colecció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 píxel mezcla [17]. 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 [18,19]. 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 píxel mezcla se puede
descomponer de forma proporcional a la abundancia de cada uno de los
endmembers en el píxel [20,21]. El modelo lineal proporciona resultados
adecuados en gran cantidad de aplicaciones [22], y se caracteriza por su
simplicidad [23]. Por su parte, el modelo no lineal ha sido utilizado con gran
éxito en determinadas aplicaciones de carácter específico, especialmente en
aplicaciones orientadas a estudiar las propiedades de cubiertas vegetales
(Zarco-Tejada y col., 2001).
Este modelo aparece ilustrado gráficamente en la Figura 2.7.
21
Figura 2.7: modelo lineal de mezcla.
Como aparece reflejado en la Figura 2.7 el modelo lineal de mezcla
presupone que la proporción de componentes o endmembers que se
mezclan en un determinado píxel de la imagen sigue un proceso lineal. Sea
s la firma espectral obtenida por un sensor hiperespectral en un determinado
píxel. Este espectro puede ser considerado como un vector N-dimensional,
donde N 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,
, i=1. Y, de acuerdo con la expresión 2.1 que se muestra a continuación.
∑
(2.1)
Donde E es el número total de endmembers,
que representa la abundancia del endmember
es un valor escalar
en el píxel , y
es un
vector de error que debe ser lo más reducido posible. El modelo lineal de
22
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 Figura 2.8. 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 N-dimensional.
Figura 2.8: Interpretación gráfica del modelo lineal de mezcla.
23
2.4. Análisis del software disponible para el tratamiento de
imágenes hiperespectrales
2.4.1. Software comercial existente para el análisis hiperespectral
En la actualidad existen varios software comerciales dedicados al
tratamiento de imágenes hiperespectrales. En este apartado del trabajo
vamos a analizar dos de ellos: ENVI y PCI Geomatics.

ENVI es un software para el procesamiento y análisis de imágenes
geoespaciales
utilizado
por
profesionales
GIS,
científicos,
investigadores y analistas de imágenes propuesto por ITT Visual
Information Solutions. ENVI combina procesamientos de las imágenes
espectrales más recientes con tecnología de análisis de imagen
mediante una interfaz intuitiva y fácil de usar que ayuda a obtener
información significativa de las imágenes tratadas.
Como
programa está constituido sobre lenguaje (IDL)
especializado en el manejo de datos multidimensionales y su
visualización. Se diferencia de otros programas similares en que
contiene
funciones
especialmente
adaptadas
al
trabajo
con
información territorial o geográfica. ENVI se caracteriza por ser
multiplataforma, existiendo versiones para Windows, Linux y varias
versiones de UNIX, lo que lo hace muy versátil, además es el primer
software totalmente compatible con ArcGIS [24]. A continuación
podemos ver una imagen de ENVI (Figura 2.9).
24
Figura 2.9: Interfaz proporcionada por el software ENVI ITT.

El software PCI Geomatics para Procesamiento Digital de Imágenes
Satelitales de todo tipo de sensor aeroespacial se ofrece con dos
niveles de funciones:
o Geomatica Core con todo lo necesario para clasificar imágenes
multiespectrales (paquete básico).
o Geomatica Prime que ofrece muchas funciones analíticas de
geoprocesamiento Raster (paquete ampliado).
PCI Geomatica integra en un solo
entorno, las herramientas
comúnmente utilizadas en la teledetección y análisis espacial [25]. En
la Figura 2.10 vemos un ejemplo de esta herramienta.
25
Figura 2.10: Captura de pantalla de la herramienta PCI Geomatica.
Ambas
herramientas
proporcionan
un
amplio
número
de
funcionalidades de forma sencilla y amigable. Por supuesto, el hecho de que
sean software propietario provoca que su uso y las funcionalidades
aportadas dependan del soporte dado por las respectivas compañías que los
desarrollan.
26
2.4.2. Software libre existente para el análisis hiperespectral
En este apartado hablaremos de las herramientas para imágenes
hiperespectrales en MATLAB (Hyperspectral Image Analysis Toolbox, HIAT)
y de la librería de C++ ORFEO ToolBox, estando este conjunto de
herramientas
previstas
para
el
análisis de
datos
hiperespectrales
y multiespectrales.
HIAT es una colección de funciones que amplían las capacidades del
entorno informático numérico MATLAB. Se ha implementado para los
sistemas Macintosh y PC con Windows utilizando MATLAB. El propósito
de esta caja de herramientas es proporcionar al usuario un entorno en el
que pueden
utilizar diferentes métodos de
imágenes de datos
funciones
hiperespectrales
proporcionan los
métodos
procesamiento
de
y multiespectrales. Además
estas
estándar
de procesamiento
de
imágenes tales como el análisis discriminante, componentes principales, la
distancia euclídea, y de máxima verosimilitud. En comparación con las
aplicaciones del apartado anterior estos métodos ofrecen algunas de las
mismas funcionalidades particularmente útiles para el tratamiento de
imágenes hiperespectrales en código libre. Por el contrario, este mismo
hecho, al ser código MATLAB, hace que su eficiencia sea, en comparación,
bastante reducida.
Por otro lado, CNES decide desarrollar ORFEO ToolBox (OTB) como
un conjunto encapsulado de algoritmos en una librería de software [26]. El
objetivo que se plantean para OTB es establecer una metodología savoir
faire (“don de gentes”) para adoptar un enfoque de desarrollo incremental
con el objetivo de explotar, de manera eficiente, los resultados obtenidos en
el marco de los estudios I + D.
Todos los avances desarrollados están basados en FLOSS (Free
Open Source Software) o en desarrollos previos por parte del CNES. OTB es
distribuido bajo licencia CéCILL (http://www.cecill.info/licences/Licence_CeCILL_V2-
27
en.html).
En la figura 2.11 podemos ver un ejemplo de aplicación usando la
librería ORFEO. OTB está implementado en C++ y se basa principalmente
en ITK (Insight Toolkit). ITK es una librería desarrollada por US National
Library of Medicine of the National Institutes of Health. Es usada como
elemento principal de OTB, por esa razón, muchas las clases de OTB
heredan sus funcionalidades de algunas de las clases de ITK. Para
establecer una continuidad en el aprendizaje, la documentación de OTB,
sigue las mismas líneas de organización y diseño que la documentación de
ITK, de tal manera que, para el usuario, la navegación por los distintos
métodos y clases de las dos librerías se hace mucho más sencilla.
Figura 2.11: Captura de una aplicación basada en ORFEO ToolBox para el tratamiento de
imágenes.
OTB fue creado desde su inicio (y hasta ahora) de forma colaborativa.
La enseñanza, la investigación y los usos comerciales, de este conjunto de
herramientas son algunos de los objetivos previstos que se tenían para esta
28
librería. Los desarrolladores proponen, que de usarse, se colabore en su
mejora mediante el reporte de errores, la contribución con nuevas clases y
su difusión mediante cursos para llegar al mayor número posible de
colaboradores, siendo debido a su facilidad de uso, algo realmente factible.
De estas sugerencias se observa una clara disposición al mantenimiento a
largo plazo y al aumento de nuevas funcionalidades de la librería, el cual,
puede ser un punto a tener en cuenta en futuros proyectos.
Figura 2.12: Aplicación basada en OTB para segmentación de imágenes.
Como conclusión podemos decir que la librería ORFEO ToolBox
provee de un conjunto de recursos (como los ofrecidos por software
comerciales) para el tratamiento de imágenes hiperespectrales, tanto en la
línea que este trabajo trata como en otras como puede ser segmentación
(ver Figura 2.12) o clasificación de imágenes, bastante útiles, como pueden
ser los métodos de lectura y escritura de imágenes en distintos formatos o la
extracción de un píxel concreto, además de las ventajas que supone ser
software libre en la investigación y el estudio, así como, en el desarrollo de
nuevas funcionalidades. Por añadido provee de estas funcionalidades en
código C por lo que su eficiencia, en comparación a otros toolboxes, es
mucho mayor.
29
2.4.4. Ventajas del software libre para el tratamiento de imágenes
hiperespectrales.
En este apartado se comentarán las ventajas del desarrollo mediante
software libre de una aplicación en general, y para el tratamiento de
imágenes hiperespectrales en particular, frente a herramientas de código
propietario como puede ser ENVI. Entre ellas destacaremos las siguientes:

Libertad para el usuario para que pueda utilizar el software como más
le convenga en cuestiones de modificación y difusión. Estas dos
cuestiones son muy importantes para aplicaciones de investigación ya
que las aplicaciones se mantienen más actualizadas en el ámbito de
nuevos avances en la materia que se trate. La apuesta por el bien
común hace que se pueda mejorar aplicaciones o algoritmos de otros
desarrolladores teniendo en el mismo tiempo más y mejores
aplicaciones ya que no se tiene que partir de cero.

En la cuestión económica simplemente hacer hincapié en el bajo o
nulo coste de los productos libres con la consiguiente rebaja en los
gastos en licencias de uso de software propietario. Esto permite y
motiva a tener un mayor número de desarrolladores e investigadores
ya que la limitación de puestos de trabajo es menor.

El soporte y compatibilidad a largo plazo, más que una ventaja del
software libre es una desventaja del software propietario. A un
vendedor, una vez alcanzado el número máximo de ventas, le
interesa sacar un nuevo producto más que mejorar el presente para
30
que los usuarios sigan trabajando con él. Esto obliga al vendedor a
intentar en la medida de lo posible hacer obsoleto el producto anterior.
Con el uso de software libre se pretende centrar la atención el uso de
la aplicación en sí, teniendo estas vidas más largas ya que se van
solucionando los fallos a medida que se descubre y aportando nuevas
funcionalidades sin necesidad de aprender un nuevo entorno de
trabajo.

Por contra un software como ENVI ofrece una garantía de calidad que
el software libre no puede asegurar.
31
CAPÍTULO 3. Algoritmos implementados
En esta sección
describimos los algoritmos de extracción de
endmembers y desmezclado espectral que se han incluido en la herramienta
desarrollada. Antes de describir las soluciones disponibles Como puede
apreciarse en la figura 3.1, la metodología parte de una imagen preprocesada, es decir, corregida geométricamente [27] y atmosféricamente
[28]. A continuación, se efectúan 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.
32
Imagen pre-procesada
Imagen reducida
dimensionalmente
PCA, MNF, ICA
Reducción
dimensional
LSU,
FCLSU
Estimación de
abundancias
Extracción de
endmembers
endmembers
Reflectancia (%*100)
5000
4000
3000
2000
1000
0
300
600
900
1200
1500
1800
2100
2400
Longitud de onda (nm)
Mapas de abundancia
Figura 3.1: Cadena completa de desmezclado o unmixing de imágenes hiperespectrales.
A partir del conjunto de pasos anteriormente descrito, el paso de
identificación de endmembers y el paso de estimación de abundancias
pueden ser considerados problemas separados.
Existe un paso previo opcional que es la estimación del número de
endmembers presentes en la imagen a procesar. Este paso proporciona el
número teórico de firmas espectrales puras en la imagen. Así los resultados
obtenidos por la cadena de demezclado estarán enfocados al caso óptimo.
33
3.1. Estimación del número de endmembers
En este paso de la cadena de demezclado los algoritmos proveen de
un valor numérico de estimación de las firmas espectrales puras que
contiene la imagen hiperespectral que se esta procesando. Dependiendo de
la complejidad y la dimensionalidad de la imagen procesada, estos
algoritmos pueden ser demasiado costosos en aplicaciones donde el tiempo
sea crítico, debido a ello, no se considera una etapa obligatoria de la cadena
de demezclado. Dos de los algoritmos más extendidos son Virtual
Dimensionality y Hyperspectral Signal Identification by Minimum Error.
3.1.1. VD
En
el
algoritmo
Virtual
Dimensionality
a la imagen hiperespectral de
vez son vectores de
bandas.
(VD)
se
denota
píxeles, los cuales a su
En primer lugar el algoritmo calcula los
autovalores de la matriz de correlación (3.1) y la matriz de covarianza (3.2)
para cada una de las bandas espectrales de la imagen original .
̅
̅
̅̅̅̅
(3.1)
(3.2)
Si una firma espectral en particular hace una contribución al valor
propio representado en la señal de energía de una banda espectral, ocurre
que su valor propio de correlación asociado será mayor que su valor propio
de covarianza correspondiente en esta banda particular. Por otro lado, si el
valor propio de correlación estuviera muy cerca del valor propio de
34
covarianza, en ese caso, lo único que habría presente en esa banda sería
ruido. Aplicando este concepto, un detector Neyman-Pearson [29] es
introducido para la cuestión de si una firma distintiva está presente o no en
cada una de las bandas espectrales como un problema de hipótesis binaria
donde se genera un determinado detector Neyman-Pearson para la toma de
decisiones en base a
(probabilidad de falsa alarma) dada. Con todo el
problema se reduce pues a establecer un valor de
la apropiada estimación de las
adecuado para obtener
firmas espectrales.
3.1.2. HYSIME
El algoritmo Hysime se establece en dos pasos [30].
En primer lugar hacer una estimación del ruido presente en la imagen
, ̂
hiperespectral original. Siendo
̂
y
calculamos la
matriz de estimación de ruido ̂ iterativamente mediante la expresión 3.3.
̂
̂
Donde
desde
(3.3)
̂
[̂]
siendo
en una iteración
.
En segundo lugar calcular la matriz de correlación del ruido
matriz de correlación de la señal
∑( ̂ ̂ )
.
∑
35
̂ (
̂ )
(3.4)
y la
Sea
los autovalores de
ordenados de forma ascendente las
firmas espectrales estimadas son aquellas donde
36
.
3. 2. Reducción de componentes
El método de análisis de componentes principales o Principal
Component Analysis (PCA) aprovecha la elevada correlación existente entre
bandas consecutivas de una imagen hiperespectral para reducir su
dimensionalidad [31]. La transformación PCA permite obtener un conjunto
reducido de bandas (denominadas autovectores) poco correlacionadas entre
sí, (ortogonales, en el caso ideal) que contienen la mayor parte de la
información presente en la imagen original. Así, el primer autovector
contiene el mayor porcentaje de la varianza de la imagen original; el
segundo contiene mayor porcentaje de varianza que el tercero, y así
sucesivamente. Las últimas bandas de la descomposición suelen venir
caracterizadas por un escaso contenido en cuanto a información relevante,
estando en su mayor parte compuestas por el ruido presente en la imagen
original). De esta forma, la transformación PCA permite separar ruido de
información útil [32]. Es importante destacar que el conjunto de bandas
resultante de la transformación PCA es obtenido a partir de combinaciones
lineales de las bandas originales de la imagen [33].
Esta transformación sirve para reducir la dimensionalidad del conjunto
de datos, en el caso de las imágenes hiperespectrales, el número de
componentes por píxel. Por ejemplo el algoritmo de extracción de
endmembers N-FINDR utiliza los resultados de este algoritmo para extraer
dichos endmembers a partir una imagen dimensionalmente “reducida”. La
etapa de reducción dimensional no es, en sí misma, necesaria para el
análisis de imágenes hiperespectrales [34]. Sin embargo, se trata de un paso
que muchos algoritmos incorporan, debido a la alta dimensionalidad de los
datos analizados.
La transformación PCA aparece ilustrada de forma gráfica en la
Figura 3.1. Como puede apreciarse en la figura, esta transformación permite
37
obtener un nuevo sistema de coordenadas sobre el que se proyectan los
datos.
Banda Y
Componente 1
Componente 2
Banda X
Figura 3.2: Ilustración gráfica de la transformación PCA.
3.2.1. PCA
El algoritmo comienza creando una matriz a partir de los píxels de la
imagen hiperespectral. De esta matriz se extraen los autovectores mediante
una descomposición SVD o Singular Value Descomposition, que es una
factorización de una matriz real o compleja tal y como se ve en la expresión
3.5.
(3.5)
Donde
es una matriz unitaria de
,
es una matriz diagonal con
números reales no negativos en la diagonal, y
transpuesta de
que es una matriz unitaria de
es la conjugada
.
Estos autovectores se multiplican por la matriz para obtener la matriz
PCA que será base para la imagen de salida. Esta imagen de salida tendrá
38
el mismo número de píxels que la original pero con el número de
componentes deseadas.
3.2.2. SPCA
O Simple Principal Component Analysis [35] es una versión del
algoritmo anterior donde no hace falta calcular la SVD. El método consiste
en calcular iterativamente los autovectores de la imagen original de tal
manera que en cada iteración se le resta la influencia del mayor autovector.
Las condiciones de terminación de esta iteración es la convergencia de los
autovectores en base a un valor de margen proporcionado o la finalización
del número de iteraciones introducido en la ejecución del algoritmo.
39
3. 3. Extracción de endmembers
Estos algoritmos están pensados para calcular, a partir de la imagen
hiperespectral y un número deseado o estimado de posibles firmas
espectrales puras, los valores de dichas firmas.
3.3.1. OSP
El algoritmo OSP fue inicialmente desarrollado para encontrar firmas
espectrales utilizando el concepto de proyecciones ortogonales. El algoritmo
hace uso de un operador de proyección ortogonal que viene dado por la
expresión 3.6.

┴


  

(3.6)
Donde  es una matriz de firmas espectrales,  es la traspuesta de dicha
matriz, e  es la matriz identidad. El algoritmo utiliza el operador mostrado
anteriormente de forma repetitiva hasta encontrar un conjunto de
píxels
ortogonales a partir de un píxel inicial. El proceso iterativo efectuado por este
algoritmo puede resumirse en los siguientes pasos:
1. Calcular  , el píxel más brillante de la imagen hiperespectral,
utilizando la siguiente expresión: 
donde

 es el píxel en las coordenadas




,
 de la imagen. Como
puede comprobarse, el píxel más brillante es aquel que resulta en
mayor valor al realizarse el producto vectorial entre el vector asociado
a dicho píxel y su transpuesto
primera del píxel.
40
 o lo que es lo mismo, la norma
2. Aplicar un operador de proyección ortogonal que denotamos como
┴
 , basado en la expresión anterior, con 

 . Este operador se
aplica a todos los píxels de la imagen hiperespectral.
3. A continuación, el algoritmo encuentra un nuevo endmember
con el
mayor valor en el espacio complementario < .>┴ , ortogonal a  ., de
la siguiente forma:  .



┴

┴

. En
otras palabras, el algoritmo busca el píxel con mayor ortogonalidad
con respecto a  .
4. El siguiente paso es modificar la matriz  añadiendo el nuevo
endmember encontrado, es decir 
  .
5. Seguidamente el algoritmo encuentra un nuevo endmember  con el
mayor valor en el espacio complementario<  >┴ , ortogonal tanto a

como a  Y  , de la siguiente forma: 

┴



┴
. Es preciso tener en cuenta que, a diferencia
del paso 3) en el que 
basa en la matriz 

 en este punto el trabajo ortogonal se
  .
6. 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.
41
3.3.2. N-FINDR
El algoritmo N-FINDR 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) o MNF (Minimum Noise Fraction). 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:
1. Realizar una reducción de la imagen a un número de bandas igual al
número de endmembers que se desean extraer mediante PCA o MNF
(en nuestro caso PCA). Seleccionar un número aleatorio de píxels
que se etiquetan como endmembers. Ésta selección inicial será
refinada de forma iterativa.
2. El segundo paso consiste en seleccionar un píxel de la imagen
original. Este píxel se va intercambiando de forma sucesiva a cada
uno de los endmembers inicialmente seleccionados.
3. A medida que el píxel 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 píxel
42
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
píxels 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.
El algoritmo presupone que un aumento en el volumen del
hiperpolígono definido al incorporar un nuevo píxel en el conjunto de
endmembers conlleva una mayor calidad de los mismos. Sin embargo, la
Figura 3.3 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 píxels que pueden describirse
utilizando el nuevo conjunto de endmembers.
43
Figura 3.3: Funcionamiento del algoritmo N-FINDR.
Para concluir la descripción de este método, es importante destacar
que los endmembers identificados por el algoritmo N-FINDR corresponden a
píxels 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 (entendidos como píxels con ruido), 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.
44
3.4. Unmixing
Los píxeles de una imagen, representan áreas de uno a varios metros
cuadrados. Estos píxeles, generalmente están compuestos por mezclas de
materiales, lo cual nos lleva a la conclusión de que los píxeles puros no son
muy frecuentes. Así la firma espectral medida por la mayoría de los sensores
en un determinado punto es una mezcla de materiales que puede
expresarse como una combinación lineal de los espectros "puros" o
endmembers y sus pesos en la combinación lineal dependen de la fracción
de área que ocupan.
Los píxeles mezcla, pueden analizarse usando un modelo matemático
donde el espectro observado es el resultado de la suma de los productos
entre el espectro puro del material “extremo” por el porcentaje de
abundancia correspondiente. La Figura 3.4 ilustra lo descrito anteriormente.
Figura 3.4: Representación de la mezcla de tres endmembers.
45
3.4.1. LSU
A partir de los datos de la imagen hiperespectral, obtener un conjunto
de datos según la expresión 3.7.
 

Donde



(3.7)
la abundancia de ese conjunto de endmembers en ese
píxel,  es la matriz con los valores de los endmembers y
 es un vector
con los valores para un píxel determinado de la imagen. Aplicando esta
operación a cada píxel de la imagen podemos obtener imágenes que
representan la concentración de un endmember en la imagen (mapas de
abundancia).
3.4.2 ISRA
O Image Space Reconstruction Algorimth se basa en la expresión 3.8.

Donde
∑
 ∑

  ̂
es el número de píxels, ̂
(3.8)


y
.
En base a esta expresión podemos decir que si los valores iniciales del
vector de abundancias son positivos las abundancias finales son positivas y
si llega a ser cero se mantiene en cero.
46
Este algoritmo iterativo termina cuando la estimación de la siguiente
abundancia calculada en comparación con la anterior es muy similar en base
a un valor
de error establecido de antemano. El ratio de convergencia de
este algoritmo es lento aunque pueden utilizarse distintos métodos para
acelerar esta convergencia.
La ventaja de este algoritmo es que resulta más simple de
implementar tanto en software como en hardware.
47
CAPÍTULO 4. La herramienta HyperMix
En este capítulo trataremos más en profundidad acerca de la
herramienta en si, así como de los cambios realizados respecto a la versión
anterior [36,37] y las razones en particular que nos han llevado a ello.
En primer lugar señalar que el desarrollo de esta herramienta tiene
una serie de objetivos que son:

Desarrollo de una aplicación que facilite el manejo y la visualización
de los algoritmos para el tratamiento de imágenes hiperespectrales.

Difusión mediante una plataforma de los algoritmos desarrollados e
implementados por el grupo de investigación en código abierto.

Como método de iniciación en la temática de la cadena de
demezclado, mediante el uso de algoritmos de una forma gráfica
sencilla.

Como
plataforma
donde
poder
integrar
nuevos
avances
y
funcionalidades útiles para el trabajo del grupo de investigación.
Por otro lado aunque hay cambios que se pueden percibir a simple
vista (Figura 4.1 y 4.2) entre las dos versiones detallaremos una lista de las
modificaciones que la herramienta ha sufrido:
1. Se ha sustituido la librería de desarrollo de interfaces de
usuario Fast Ligth ToolKit (FLTK) por Qt que es una biblioteca
multiplataforma
aplicaciones
ampliamente
tanto
con
interfaz
usada
gráfica
para
como
desarrollar
sin
ella,
herramientas para línea de comandos y consolas para
servidores. Esta biblioteca es desarrollada como software libre
y código abierto, por lo que mantiene la ideología base de la
herramienta, donde participa tanto la comunidad como
desarrolladores de Nokia (desarrolladores originales) y otras
48
empresas. La razón principal de este cambio radica en que
tanto la versión utilizada, como las más recientes de FLTK no
ofrecían
la
posibilidad
de
trabajar
con
programación
concurrente y paralela. Aunque en esta versión no existe esa
necesidad se trataba de sentar las bases para que en el futuro
la inserción de estos algoritmos no fuera un contratiempo
excesivo.
2. Otra de las librerías fundamentales de la versión anterior de la
herramienta era ORFEO ToolBox, que es una librería software
libre desarrollada por el CNES (Centre National d’Etudes
Spatiales de Francia) en el marco del “ORFEO Accompaniment
Program”. A pesar de que esta librería facilitaba el trabajo de
implementación de los algoritmos propuestos así como de otros
no incluidos en el presente trabajo, se ha decidido dejar de
usarla fundamentalmente por mantener la consistencia de
HyperMix respecto a otra herramienta desarrollada en el grupo
de investigación HyperComp (Hyperspectral Repository [38]).
La idea es que todas las herramientas desarrolladas en el
grupo compartan las mismas versiones de los algoritmos y,
eventualmente, trabajar coordinadas. En esta versión veremos
como esta idea ha empezado a fraguarse.
49
Figura 4.1: Pantalla principal de la versión anterior de la herramienta HyperMix.
Figura 4.2: Pantalla inicial de la herramienta HyperMix en la nueva versión.
Hasta ahora se han mencionado los cambios realizados en las
herramientas de desarrollo, a partir de aquí se mencionarán los cambios y
las nuevas funcionalidades que la herramienta ofrece.
3. En primer lugar un cambio notable en la funcionalidad de la
herramienta es que el número de algoritmos que se ha incluido
en esta versión es menor. Esto es debido a que los algoritmos
50
(IEA, VCA, SSEE, AMEE, SCLS, NCLS y FCLS) estaban
implementados usando la librería ORFEO ToolBox y han sido
eliminados, de momento, por las razones anteriormente dichas.
Por el contrario se han incluido los algoritmos SPCA e ISRA
permitiendo tener al menos dos algoritmos por etapa de la
cadena de demezclado.
4. Relativo a la presentación de las imágenes y los resultados se
ha modificado la apariencia de la herramienta, usando
pestañas para cada apartado, para ampliar la zona donde se
muestran las imágenes, reducir el tamaño de la ventana
principal y focalizar la atención del usuario en los resultados
concretos que está observando. Se ha incluido a su vez la
opción de cambiar la paleta de colores que se desea usar para
mostrar los resultados (Figura 4.3).
Figura 4.3: De izquierda a derecha las distintas paletas de colores que usa HyperMix. Grey,
Envi, Hot, Cold, Bio y Jet.
5. Como se ha mencionado antes un punto importante de la
herramienta de cara al futuro es compartir funcionalidades y
recursos con otra de las herramientas del grupo, Hyperspectral
Repository. De momento la HyperMix incluye acceso a la lista
de
imágenes
que hay almacenadas
51
en
el
repositorio
permitiendo su descarga y su uso así como la consulta de la
información referente a las propias imágenes: dimensiones,
tipo de datos, etc. Esta opción solo está disponible si,
obviamente, la herramienta está conectada a Internet. En las
Figuras 4.4 y 4.5 se pueden ver las ventanas que permiten el
acceso al repositorio.
Figura 4.4: Ventana de descarga de imágenes por FTP de la herramienta HyperMix desde
Hyperspectral Repository.
Figura 4.5: Ventana de selección de imágenes de la herramienta HyperMix desde Hyperspectral
Repository.
52
6. Por último, en la versión anterior se incluía un apartado que
permitía generar un fichero .csv con la comparativa de las
firmas extraídas con una imagen con las firmas reales de la
imagen. Se ha modificado la presentación de dichos resultados
partiendo de la premisa de generar los mínimos archivos
externos posibles y se ha ampliado la funcionalidad de
comparativas mostrando los tiempos de ejecución de cada una
de las últimas ejecuciones de los distintos algoritmos (Figura
4.6).
Figura 4.6: Imagen de la pestaña de estadísticas donde se pueden ver los tiempos de ejecución
y la diferencia entre las firmas extraídas y las de referencia.
53
Para difusión de las distintas versiones de la herramienta HyperMix y
notificar las distintas actualizaciones que tenga se ha creado una página web
para la aplicación (http://www.hypercomp.es/hypermix). En dicho portal
podemos, además de descargar las distintas versiones de la herramienta,
hacer consultas sobre temas propuestos en los distintos foros, así como
proponer sugerencias para la mejora de la herramienta. En la Figura 4.7
podemos ver la vista general de la página de la herramienta HyperMix
actualmente. La página requiere que el usuario se registre para poder
participar y descargar la aplicación.
Figura 4.7: Vista general de la página web creada para la difusión de la herramienta Hypermix.
Actualmente solo está disponible la versión anterior de la aplicación.
La idea de la página es centralizar las dudas y proponer soluciones
accesibles sobre la herramienta que cualquier usuario de esta pueda tener.
Además es una buena plataforma donde difundir nuevas versiones y obtener
nuevas ideas. Como se puede ver en la Figura 4.8 existe espacio para
comunicar tanto problemas de instalación y errores no detectados en la
54
herramienta como sugerencias para la herramienta y consulta del manual de
usuario y los distintos trabajos publicados sobre la herramienta.
Figura 4.8: Foros creados para la consulta de dudas y proponer sugerencias sobre HyperMix.
55
CAPÍTULO 5. Resultados experimentales
5.1. Descripción de imágenes hiperespectrales
En el presente trabajo se contemplan tanto imágenes sintéticas como
imágenes reales. Las imágenes sintéticas nos proporcionan un conocimiento
verdadero del terreno y por tanto se puede evaluar cuantitativamente la
capacidad de los algoritmos empleados para extraer correctamente los
endmembers. Por el contrario, estas imágenes no corresponden a ninguna
situación real y por lo tanto en ellas no influyen factores que sí están
presentes en las imágenes reales, como pueden ser, los efectos de la
atmósfera o las características del propio sensor. Por otro lado tenemos las
imágenes reales en las cuales resulta más difícil determinar con exactitud la
verdad terreno, con lo que los resultados obtenidos son menos precisos.
5.1.1. Sintética (Fractal)
La imagen que vamos a considerar en este estudio como imagen
sintética esta generada a partir de un patrón similar a los hallados en la
naturaleza. Al generar esta imagen (Fractal) se consideró un patrón fractal,
ya que son patrones geométricos recursivamente, lo que nos permite
obtener esa similitud que buscábamos.
Figura 5.1: Imagen Fractal usada para crear la imagen sintética (izquierda). Fractal dividida en
clusters (derecha).
56
Las imágenes fractales se han generado con una gran variedad de
colores, es decir, se ha intentado que el ancho de banda de la imagen sea lo
más amplio posible para poder extraer el máximo número de clusters. Las
imágenes se dividen en clusters o clases para a continuación insertar una
firma espectral en cada cluster, es por ello que el número de clusters debe
ser mayor que el número de firmas puras que queramos insertar. Para dividir
en clusters las imágenes fractales se ha utilizado un algoritmo de
clasificación de píxels no supervisado: “k-means” [39]. Al generar la imagen
fue necesario decidir qué firma se iba a introducir en cada cluster Las firmas
que fueron insertadas fueron obtenidas aleatoriamente de una librería
espectral de minerales proporcionada por el Instituto Geológico de Estados
Unidos (USGS), cuya versión completa dispone de un total de 420 firmas
espectrales correspondientes a diferentes minerales. La librería espectral se
encuentra
disponible
en
la
siguiente
dirección
web:
http://speclab.cr.usgs.gov. En la Figura 5.2 se muestran las firmas
espectrales de minerales consideradas en las simulaciones.
Figura 5.2: Firmas insertadas en la imagen Fractal 1.
57
Es importante destacar que en la imagen fractal se han insertado
nueve firmas puras. En la Figura 5.3 se puede observar las fracciones de
abundancia en escala de grises de la verdad terreno del Fractal 1, lo cual
ofrece una idea acerca del aspecto de la imagen hiperespectral simulada.
Figura 5.3: Verdad terreno del Fractal 1 en escala de grises.
58
La imagen sintética responde a la siguiente ecuación:
∑



 de la imagen,
es la fracción de abundancia de la firma
 ,
la posición
(5.1)
 representa el píxel en la posición
Donde


 
simular la imagen y
para el píxel de
denota las firmas espectrales utilizadas para
que es la relación señal-ruido introducida en la
imagen que puede entenderse, en términos globales, como la relación entre
la amplitud de la señal obtenida y la amplitud del ruido o, lo que es lo mismo,
la cantidad de señal adquirida por unidad de ruido. La aproximación utilizada
en el presente trabajo para añadir ruido a las imágenes simuladas se basa
en la definición de Harsanyi y Chang [40], la cual ha sido utilizada
ampliamente en la literatura para imponer una relación señal-ruido
predeterminada en cada una de las bandas de una imagen simulada. De
este modo, se puede generar una relación SNR de r en las diferentes
bandas del sensor utilizando la siguiente expresión:

Donde

(

)

es la firma espectral original,
(5.2)

es un vector que se
multiplica a la firma antes mencionada para simular el efecto introducido por
el ruido, y

es el espectro ruidoso resultante.
En el presente trabajo para la imagen Fractal existen varias imágenes,
cada una de ellas con una relación SNR diferente. Las SNR empleadas se
han basado en valores de r de 30, 70 y sin ruido, con lo que al final se han
generado un total de tres imágenes sintéticas. Para denotar dichas
59
imágenes, utilizamos la convención
“Fractalk_noise_r”, donde k hace
referencia al número de fractal utilizado y r hace referencia al valor de SNR
utilizado. Así, la imagen “Fractal1_noise_30” corresponde a la imagen
sintética simulada a partir del Fractal, con relación SNR de 30, y así
sucesivamente.
5.1.2. Real (Cuprite)
La imagen real utilizada en el presente estudio fue obtenida por el
sensor AVIRIS sobre el distrito minero de Cuprite, Nevada, el cual ha sido
utilizado a lo largo de los años como una zona de estudio para la validación
de algoritmos de tratamiento de imágenes hiperespectrales, sobre todo, para
evaluar la precisión de algoritmos de extracción de endmembers [41,42].
Esto ha sido posible gracias a la obtención repetitiva de datos en sucesivas
campañas utilizando diferentes sensores hiperespectrales (en concreto, el
sensor AVIRIS de NASA lleva obteniendo datos en Cuprite año tras año
desde 1990). Además, el Instituto Geológico de Estados Unidos (USGS) ha
realizado, de forma paralela a las campanas de adquisición de imágenes,
estudios sobre el terreno que han permitido la obtención de información de
verdad terreno muy extensa, favoreciendo la utilización de esta imagen
como un estándar a la hora de validar algoritmos de tratamiento de
imágenes hiperespectrales.
La imagen que hemos utilizado en el estudio (denominada AVCUP95)
fue adquirida por el sensor AVIRIS en 1995 y se encuentra disponible online
(http://aviris.jpl.nasa.gov). La Figura 4.4 muestra la ubicación de la imagen
sobre una fotografía aérea de la zona. Visualmente, puede apreciarse la
existencia de zonas compuestas por minerales, así como abundantes suelos
desnudos y una carretera interestatal que cruza la zona en dirección nortesur. La imagen utilizada en el estudio consta de 350x350 píxels, cada uno de
los cuales contiene 224 valores de reflectancia en el rango espectral 0.4 a
60
2.5
. La información de las firmas presentes en esta imagen se ha
obtenido a partir de los datos obtenidos por el USGS en esta región
(disponibles online en la dirección http://speclab.cr.usgs.gov). En la Figura
5.4 se puede observar un mapa de minerales generado mediante la
herramienta Tetracorder de USGS [43] (disponible online en la dirección
(http://speclab.cr.usgs.gov/PAPERS/tetracorder/),
y
que
describe
la
localización de diferentes minerales y alteraciones de dichos minerales en la
región Cuprite. Por otra parte, la Figura 5.6 muestra las firmas espectrales
USGS de los minerales con mayor presencia en la zona de estudio, las
cuales incluyen las firmas de los minerales alunite, buddingtonite, calcite,
kaolinite y muscovite. Dichos minerales serán utilizados como referencia en
el presente estudio, de modo que sus firmas espectrales asociadas se
utilizaran como verdad-terreno a la hora de evaluar la bondad de los
algoritmos de extracción de endmembers considerados en la selección de
firmas espectrales puras en dicha zona.
Figura 5.4: Imagen hiperespectral AVIRIS sobre la región Cuprite en Nevada, Estados Unidos.
61
Figura 5.5: Mapa de minerales obtenidos por el U.S. Geological Survey a través del algoritmo
Tetracorder en la región Cuprite en Nevada, Estados Unidos.
Figura 5.6: Firmas espectrales puras correspondientes a los minerales más representativos en
la región Cuprite en Nevada, Estados Unidos.
62
5.2. Comparativa de resultados
Esta comparativa realizada con los resultados que provee la
herramienta HyperMix va a constar de diferentes partes. En primer lugar
haremos un estudio de los tiempos de computación de los distintos
algoritmos obtenidos con la herramienta con el objetivo de determinar que
combinación de ellos para formar una cadena de demezclado completa es la
que tarda menos tiempo y el potencial de mejora que tienen respecto a una
futura implementación paralela.
En segundo lugar realizaremos una comparación de precisión de los
algoritmos de extracción de endmembers en relación a un conjunto de firmas
de referencia para cada una de las imágenes (sintética y real), siendo a su
vez dividida la comparativa de la imagen sintética para comparar los efectos
de una señal de ruido creciente.
Por último estableceremos un estudio de ruido con las imágenes
fractales y como afecta este a la cadena de demezclado utilizado como
medida el error en la imagen reconstruida a partir de las firmas extraídas y
las abundancias calculadas.
5.2.1. Tiempo computacional
En este apartado se quiere mostrar cuan “rápidos” o “lentos” son los
distintos algoritmos implementados en serie, sin entrar a debatir su precisión,
con objetivo de construir la cadena de demezclado más rápida posible con la
herramienta y plantear, de cara al futuro, el margen de mejora para una
posible implementación paralela de los mismos.
Para medir la rapidez se van a utilizar los tiempos que la propia
herramienta ofrece medidos en segundos.
63
Los resultados obtenidos son los siguientes:
Algoritmo \ Imagen
Fractal1_noise110
Cuprite
VD
2,249
16,980
HYSIME
18,620
161,200
PCA
2,073
18,540
SPCA
1,980
18,710
ATGP-OSP
11,010
222,1
ATGP-OSP (sobre imagen reducida)
0,026
2,107
N-FINDR
0,010
0,219
LSU
0,107
2,212
ISRA
20,84
457,200
Tabla 5.1: Resultados experimentales de cada uno de los algoritmos de la herramienta
HyperMix en segundos.
Queda claro que para la imagen sintética la cadena de demezclado
más rápida es aquella formada por la combinación de algoritmos VD - SPCA
- N-FINDR - LSU. A su vez esta combinación parece ser la más rápida
también al procesar la imagen real salvando la etapa de reducción de
componentes en la que el algoritmo PCA es ligeramente más veloz que el
SPCA. Aclarar que incluso eliminando la etapa de reducción de
dimensionalidad para la cadena VD - OSP - LSU, esta no resulta más rápida.
Por otro lado vemos como los algoritmos HYSIME, ATGP-OSP e
ISRA necesitan un elevado tiempo de computación en comparación con las
otras opciones, que independientemente de su precisión eleva los tiempos
de computación enormemente. También comprobamos como para una
imagen más grande (Cuprite 350x350x188 frente a la Fractal1 100x100x221)
los tiempos de estos algoritmos se hacen demasiado costosos. Por lo tanto
podemos decir que respecto a una hipotética implementación paralela estos
tres algoritmos son los que más potencial de mejora tienen.
64
5.2.2. Precisión de los algoritmos de extracción de endmembers frente al
ruido
Para realizar esta comparación se va a utilizar como medida de
referencia la distancia de ángulo espectral o spectral angle distance (SAD)
donde un valor cero es representa dos firmas idénticas, comparando los
resultados obtenidos por los algoritmos ATGP-OSP (directamente sobre la
imagen y sobre una imagen reducida por PCA) y N-FINDR utilizando la
imagen Fractal1 con diversos valores de ruido insertados en ella. Con esta
comparativa queremos ver cómo de precisos son estos algoritmos frente a
una señal de ruido creciente.
Los resultados obtenidos son:
Algoritmo-Noise
1
2
3
4
5
6
7
8
9
Media
OSP-110
0,002
0,005
0,002
0
0,002
0,009
0,001
0,007
0
0,003
OSP-70
0,002
0,005
0,002
0
0,002
0,009
0,001
0,005
0,001
0,003
OSP-30
0,022
0,048
0,029
0,025
0,029
0,035
0,028
0,066
0,031
0,035
OSP-10
0,215
0,295
0,467
0,263
0,291
0,488
0,328
0,604
0,303
0,362
NFINDR-110
0,002
0
0,002
0,005
0,007
0,002
0,005
0,001
0
0,003
NFINDR-70
0,001
0,002
0,003
0,002
0,022
0,008
0,005
0
0,003
0,005
NFINDR-30
0,028
0,033
0,032
0,021
0,028
0,080
0,107
0,165
0,258
0,084
NFINDR-10
0,297
0,388
0,299
0,275
0,499
0,241
0,249
0,354
0,483
0,343
PCA+OSP-110
0,002
0,001
0,002
0
0,007
0,001
0
0,007
0,34
0,040
PCA+OSP-70
0,002
0,002
0,001
0
0,007
0,009
0,001
0,013
0,002
0,004
PCA+OSP-30
0,045
0,031
0,029
0,027
0,027
0,128
0,128
0,124
0,447
0,110
PCA+OSP-10
0,261
0,297
0,257
0,443
0,281
0,525
0,434
0,291
0,257
0,338
Tabla 5.2: Resultados obtenidos por la herramienta HyperMix comparando los endmembers
extraídos con las firmas de referencia por el método del mínimo en la imagen Fractal1.
En base a los resultados de la tabla anterior podemos decir en primer
lugar que la diferencia de precisión entre el algoritmo OSP aplicado
directamente a la imagen y aplicado a una imagen reducida por PCA es muy
similar (aunque se dejan ver los efectos de la pérdida de información en el
65
último endmember de la imagen con menos ruido, debido a que el algoritmo
extrae dos veces la misma firma) por lo que, basándonos en los resultados
de la comparativa anterior, resulta provechoso aplicar una reducción de
componentes a la imagen antes de aplicar el algoritmo OSP.
A su vez, en comparación con el algoritmo N-FINDR los resultados
son también muy similares. A razón de estos resultados se puede concluir
que como era de esperar el incremento de la señal de ruido en una imagen
reduce la precisión de los algoritmos de extracción de endmembers, siendo
el menos afectado por este incremento el algoritmo OSP aplicado
directamente a la imagen, aunque la progresión de pérdida de precisión
entre ambos algoritmos es muy similar.
Los resultados obtenidos para la imagen real son:
Algoritmo
1
2
3
4
5
Media
OSP
0,188
0,362
0,261
0,373
0,345
0,357
PCA+OSP
0,192
0,361
0,259
0,328
0,361
0,290
N-FINDR
0,189
0,361
0,259
0,328
0,361
0,300
Tabla 5.3: Resultados obtenidos con la herramienta HyperMix para la image de Cuprite por el
método del mínimo con cinco endmembers.
Teniendo en cuenta que se buscan cinco firmas espectrales
concretas, los resultados muestran una distancia espectral superior a la
ofrecida en la imagen sintética, consecuencia de que en la imagen existen
más endmembers por extraer y que los extraídos no necesariamente son
incorrectos. En base a este margen de error los resultados muestran como al
aplicar una reducción dimensional, aparte de mejores tiempos de
computación, obtenemos unos resultados más precisos.
66
5.2.3. Influencia del ruido en la imagen reconstruida a partir de los datos
extraídos
En este apartado trataremos de mostrar la diferencia de precisión en
los resultados cuando el ruido mezclado en la imagen se incrementa. A
diferencia del apartado anterior el resultado final de la cadena de unmixing lo
compararemos en función del error cometido al reconstruir la imagen original
a partir de los datos extraídos. Al igual que antes se aplicará la comparativa
al algoritmo ATGP-OSP con y sin etapa de reducción de dimensionalidad y
al algoritmo N-FINDR.
En la siguiente tabla se muestran los valores máximo, mínimo y medio
de las imágenes reconstruidas a partir de los endmembers extraídos y los
mapas de abundancia generados a partir de esas firmas. Para generar los
mapas de abundancia se ha utilizado el algoritmo LSU ya que no depende
de que haya convergencia en los resultados como en el algoritmo ISRA.
Algoritmo-Ruido
Máximo
Mínimo
Media
N-FINDR-110
0,213
0,078
0,149
OSP-110
0,264
0,094
0,183
PCA + OSP-110
696,6
205,9
464
N-FINDR-70
0,373
0,111
0,273
OSP-70
0,526
0,178
0,379
PCA + OSP-70
0,228
0,178
0,178
N-FINDR-30
28,55
0,01
16,2
OSP-30
19,61
0,007
15,12
PCA + OSP-30
24,22
0,016
16,32
N-FINDR-10
168,5
0,01
138,8
OSP-10
159,9
0,01
135,2
PCA + OSP-10
168,8
0,01
139,3
Tabla 5.4: Resultados obtenidos por la herramienta HyperMix al reconstruir la imagen a partir
de los endmember y los mapas de abundancia.
67
En primer lugar el resultado obtenido para la imagen Fractal1_110
usando el algoritmo OSP tras haber realizado una reducción dimensional
con el algoritmo PCA se deben a que se está utilizando la misma imagen
reducida resultado de las mismas condiciones utilizadas para la requerida
por N-FINDR, esto es una imagen reducida con un número de componentes
igual al número de firmas que deseamos extraer menos uno. Como
consecuencia
el
algoritmo
OSP
está
buscando
nueve
vectores
ortogonalmente independientes en un espacio de ocho dimensiones, por lo
cual, una de las firmas espectrales se repite generando dicho error.
Podemos ver en la Figura 5.7 los distintos valores de error obtenidos.
Figura 5.7: Representación visual del error de reconstrucción de la imagen original a partir de
las firmas extraídas y los mapas de abundancia. Las imágenes están ordenadas, de izquierda a
derecha, de mayor señal de ruido a menor señal de ruido. Los colores fríos están más cerca del
valor mínimo de error y los más cálidos del máximo.
La imagen superior nos muestra la distribución del error de tal manera
que los colores más “rojos” son valores más altos de error y los valores
“azules” están más cercanos al valor mínimo de error, siendo la escala de
asignación de colores a los valores proporcional a la diferencia entre el
68
máximo error en una imagen y el mínimo error de la imagen, de tal manera
por ejemplo, que en la imagen con menos ruido aplicando el algoritmo OSP
el rojo más intenso correspondería a un error de 0,284 y un valor de 0,094
para el azul más oscuro mientras que para la imagen con mayor señal de
error incluida el rojo más intenso correspondería a un error de 159,9 y el azul
oscuro a 0,01.
La explicación a los valores mínimos de error en las imágenes con
mayor ruido añadido viene dada por una serie de píxeles, los cuales apenas
se aprecian en la Figura5.7, que han sido considerados por los algoritmos de
extracción como los representativos de las firmas espectrales puras
contenidas en la imagen.
69
CAPÍTULO 6. Conclusiones y líneas futuras
6.1. Conclusiones
En el presente trabajo se han implementado en forma de software
libre diferentes algoritmos de extracción de endmembers, así como,
algoritmos reducción de dimensionalidad y algoritmos de demezclado con el
objetivo de realizar una comparativa equitativa de dichos algoritmos y en qué
condiciones su uso resulta más apropiado en aplicaciones de desmezclado
de imágenes hiperespectrales. Dicha comparativa ha estado centrada en la
precisión y velocidad dada por los algoritmos en la resolución de cada una
de las etapas de la cadena de demezclado.
Para abordar la comparativa desde distintos puntos de vista se han
utilizado imágenes sintéticas e imágenes reales. Las imágenes sintéticas
elaboradas en anteriores trabajos siguen patrones espaciales similares a los
que produce la naturaleza mediante la utilización de fractales y comprenden
una detallada simulación mediante el uso de firmas espectrales reales y
ruido en diferentes proporciones. Por su parte, la imagen real empleada en
la comparativa fue proporcionada por el sensor AVIRIS sobre el distrito
minero de Cuprite, en Nevada, Estados Unidos, y para dicha imagen se
dispones de información de referencia muy detallada a través del Instituto
Geológico de los Estados Unidos (USGS), la cual se ha empleado para
analizar la precisión de los diferentes algoritmos comparados en la tarea de
extraer endmembers a partir de dicha imagen.
Además se han estudiado los efectos del ruido aditivo sobre los
resultados proporcionados por los algoritmos.
70
6.2. Líneas futuras
En las líneas de trabajo que han quedado abiertas en el presente
trabajo podemos mencionar las siguientes.
Desde el punto de vista de la herramienta implementada las líneas
futuras de trabajo se deberían centrar en la inclusión de nuevos algoritmos,
al menos los presentes en la anterior versión de la herramienta, así como,
extender sus funcionalidades para posibilitar su uso a un mayor nivel
académico.
La extracción de imágenes en formatos estándar (jpeg, png, étc) para
almacenar los resultados obtenidos en las gráficas, mapas de abundancia y
bandas de la imagen hiperespectral ayudaría a fomentar su utilidad en el
entorno de investigación.
Continuar con la integración de la herramienta Hyperspectral
Repository de tal manera que se permita el uso indistinto de una u otra
herramienta para los mismos fines, con la salvedad de realizar las
actividades en un entorno local o remoto.
Finalmente,
se
considera
como
línea
futura
de
trabajo
la
implementación eficiente de algoritmos en arquitecturas paralelas y su
integración en la herramienta, que permitan mejorar el rendimiento
computacional de dicho algoritmo ya que emplea tiempos muy elevados en
completar sus cálculos y puede optimizarse mediante la incorporación de
técnicas de procesamiento paralelo en su diseño e implementación.
En el apartado de las comparativas, la posibilidad de incluir nuevos
algoritmos para la extracción de endmembers, existiendo muchos más de los
planteados. Por otra parte, solo se ha utilizado una imagen real (AVIRIS
Cuprite), si bien es cierto que se trata de la escena estándar más estudiada
en aplicaciones relacionadas con extracción de endmembers (debido a la
disponibilidad de firmas espectrales USGS de referencia para la misma),
71
sería interesante comparar los algoritmos en otras escenas hiperespectrales
reales para extrapolar las conclusiones obtenidas en el presente trabajo a
otros contextos.
Además si se introduce computación paralela sería
adecuado conocer la mejora de tiempos de computación que ofrecen los
algoritmos en ambas versiones.
72
REFERENCIAS BIBLIOGRÁFICAS
[1]. A. Plaza, P. Martinez, R. Perez, and J. Plaza, “A quantitative and
comparative analysis of endmember extraction algorithms from hyperspectral
data”, IEEE Transactions on Geoscience and Remote Sensing, vol. 42, no. 3,
pp. 650–663, 2004.
[2] J.C. Harsanyi and C.-I. Chang, “Hyperspectral image classification and
dimensionality
reduction:
An
orthogonal
subspace
projection”,
IEEE
transactions on Geoscience and Remote Sensing, vol. 32, no. 4, pp. 779–
785.
[3] D. Landgrebe, “Hyperspectral Image Data Analysis”, IEEE Signal
Processing Magazine, vol. 19, no. 1, pp. 17-28, 2002.
[4] J.W. Boardman, F.A. Kruse, and R. O. Green, “Mapping Target
Signatures Via Partial Unmixing of Aviris Data”, Proc. VII NASA/JPL Airborne
Earth Science Workshop, pp. 23–26, 1995.
[5] P.-F. Hsieh, D. Landgrebe, Classification of High Dimensional Data. Tesis
Doctoral, School of Electrical and Computer Engineering, Purdue University,
1998.
[6] R.O. Green, y col.,
“Imaging Spectroscopy and the Airborne
Visible/Infrared Imaging Spectrometer (AVIRIS)”, Remote Sensing of
Environment, vol. 65, pp. 227-248, 1998.
[7] G. Shaw, D. Manolakis, “Signal processing for hyperspectral image
exploitation”, IEEE Signal Processing Magazine, vol. 19, pp. 12-16, 2002.
[8] D.W. Stein, S.G. Beaven, L.E. Hoff, E.M. Winter, A.P. Schaum, A.D.
Stocker, “Anomaly Detection from Hyperspectral Imagery”, IEEE Signal
Processing Magazine, vol. 19, pp. 58-69, 2002.
73
[9] C.-I Chang, C.M. Brumley, “A Kalman Filtering Approach to Multispectral
Image Classification and Detection of Changes in Signature Abundance”.
IEEE Transactions on Geoscience and Remote Sensing, vol. 37, pp. 257 –
268, 1999.
[10] W.P. Kustas, J.M. Norman, “Evaluating the Effects of Subpíxel
Heterogeneity on Píxel Average Fluxes”, Remote Sensing of Environment,
vol. 74, pp. 327-342, 2002.
[11] M. Faraklioti, M. Petrou, “Illumination invariant unmixing of sets of mixed
píxels”. IEEE Transactions on Geoscience and Remote Sensing, vol. 39, pp.
2227-2234, 2001.
[12] T.M. Tu, H.C. Shyu, C.H.Lee,C.-I Chang, “An oblique subspace
projection approach for mixed píxel classification in hyperspectral images”,
Pattern Recognition, vol. 32, pp. 1399-1408, 1999.
[13]. R. A. Neville, K. Staenz, T. Szeredi, J. Lefebvre, and P. Hauff,
“Automatic endmember extraction from hyperspectral data for mineral
exploration”, Proc. 21st Canadian Symp. Remote Sensing., pp. 21–24, 1999.
[14] J.M. Chen, “Spatial Scaling of a Remotely Sensed Surface Parameter
byContexture”, Remote Sensing of Environment, vol. 69, pp. 30-42, 1999.
[15] N. Keshava, J.F. Mustard, “Spectral unmixing”, IEEE Signal Processing
Magazine, vol. 19, pp. 44-57, 2002.
[16] P.E. Johnson, M.O. Smith, S. Taylor-George, J.B. Adams, “A SemiEmpirical Method for Analysis of the Reflectance Spectra of Binary Mineral
Mixtures”. Journal of Geophysical Research, vol. 99, pp. 3557-3561, 1983.
[17] J.W. Boardman, F.A. Kruse, and R. O. Green, “Mapping Target
Signatures Via Partial Unmixing of Aviris Data”, Proc. VII NASA/JPL Airborne
Earth Science Workshop, pp. 23–26, 1995.
74
[18] F.A. Kruse, “Spectral Identification of Image Endmembers Determined
fromAVIRIS Data”, Proc. VII NASA/JPL Airborne Earth Science Workshop,
1998.
[19] J.J. Settle, “On the Relationship between Spectral Unmixing and
SubspaceProjection”, IEEE Transactions on Geoscience and Remote
Sensing, vol. 34, pp. 1045–1046, 1996.
[20] M. Petrou, P.G. Foschi, “Confidence in linear spectral unmixing of single
píxels”, IEEE Transactions on Geoscience and Remote Sensing, vol. 37, pp.
624 – 626, Jan. 1999.
[21] Y. H. Hu, H. B. Lee, F. L. Scarpace, “Optimal Linear Spectral Unmixing”,
IEEE Transactions on Geoscience and Remote Sensing, vol. 37, pp. 639–
644, 1999.
[22] E.F. Collins, D.A. Roberts, C.C. Borel, “Spectral Mixture Analysis of
Simulated Thermal Infrared Spectrometry Data: An Initial Temperature
Estimate Bounded TESSMA Search Approach” . IEEE Transactions on
Geoscience and Remote Sensing, vol. 39, no. 7, pp. 1435- 1446, 2001.
[23] C.A. Bateson, G.P. Asner, C.A. Wessman, “Endmember Bundles: A New
Approach to Incorporating Endmember Variability into Spectral Mixture
Analysis”, IEEE Transactions on Geoscience and Remote Sensing, vol. 38,
pp. 1083–1094, 2000.
[24] “ENVI Software Image Processing & Analysis Solutions from ITT” main
page of ITT.
[25] Geosoluciones, “Manual de PCI Geomatica 10”, 1-5.
[26] OTB Development Team, “The ORFEO ToolBox software guide.
Updated for OTB 3.8”, 2010.
[27] P. Strobl, A. Müller, D. Schläpfer, M. Schaepman, "Laboratory
Calibration
and
Inflight
Validation
75
of
the
Digital
Airborne
Imaging
Spectrometer DAIS 7915 for the 1996 Flight Season", en: Proc. SPIE
Algorithms for Multispectral and Hyperspectral Imagery III, vol. 3071, pp.
225-235, 1997.
[28] R. Richter, "Bandpass resampling effects on the retrieval of radiance and
surface reflectance". Applied Optics, vol. 39, pp. 5001-5005, 2000.
[29] C.-I. Chang and Q. Du, “Estimation of number of spectrally distinct signal
sources in hyperspectral imagery,” IEEE Transactions on Geoscience and
Remote Sensing, vol. 42, no. 3, pp. 608–619, 2004.
[30] S. Sánchez and A. Plaza, “Fast Determination of the Number of
Endmembers for Real-Time Hyperspectral Unmixing on GPUs”.
[31] A. Ifarraguerri, C.-I Chang, "Multispectral and hyperspectral image
analysis with projection pursuit," IEEE Transactions on Geoscience and
Remote Sensing, vol. 38, pp. 2529-2538, 2000.
[32] S. Subramanian, N. Gat, A. Ratcliff, M. Eismann, “Hyperspectral Data
Reduction Using Principal Components Transformation”, en Proc. X
NASA/JPL Airborne Earth Science Workshop, 2000.
[33] J.R. Eastman, and M. Fulk, (1993) "Long Sequence Time Series
Evaluation using Standardized Principal Components", Photogrammetric
Engineering and Remote Sensing, 59, 8, 1307-1312.
[34] L.O. Jiménez, D. Landgrebe, Tesis de Jiménez., 1996.
[35] S. Sánchez, R. Ramalho, L. Sousa and A. Plaza, “Real-Time
Implementation of Remotely Sensed Hyperspectral Image Unmixing on
GPUs”.
[36] L. I. Jimenez, G. Martin and A. Plaza. HyperMix: A New Tool for
Quantitative Evaluation of Endmember Identification and Spectral Unmixing
Techniques.
IEEE
Geoscience
and
(IGARSS'12), Munich, Germany, 2012.
76
Remote
Sensing
Symposium
[37] L. I. Jimenez, G. Martin and A. Plaza. A New Tool for Evaluating
Spectral Unmixing Applications for Remotely Sensed Hyperspectral Image
Analysis. International Conference on Geographic Object-Based Image
Analysis (GEOBIA), Rio de Janeiro, Brazil, 2012.
[38] J. Sevilla, S. Bernabe, P. G. Rodriguez and A. Plaza. “A New Digital
Repository for Remotely Sensed Hyperspectral Imagery with UnmixingBased Retrieval Functionality”. SPIE Optics and Photonics, Satellite Data
Compression, Communication, and Processing Conference, San Diego, CA,
2012.
[39] J. A. Richards y X. Jia. “Remote Sensing Digital Image Analysis”.
Springer-Verlag, 1999.
[40] A. Plaza, P. Martinez, R. Perez, and J. Plaza, “Spatial/spectral
endmember extraction by multidimensional morphological operations”, IEEE
Transactions on Geoscience and Remote Sensing, vol. 40, no. 9, pp. 2025–
2041, 2002.
[41] G. Swayze, “The hydrothermal and structural history of the cuprite
miningdistrict,
Southwestern
Nevada:
An
integrated
geological
and
geophysical approach,” Ph.D. dissertation, Univ. Colorado, Boulder, CO,
1997.
[42] R. Clark, et al. “The U.S. Geological Survey Digital Spectral Library:
Version1: 0.2 to 3.0 m”, U.S. Geological Survey Open File Rep. 93–592,
1993.
[43] R. Clark y col. “Imaging Spectroscopy: Earth and Planetary Remote
Sensing with the USGS Tetracorder and Expert Systems”, Journal of
Geophysical Research, 2003.
77
APÉNDICE I: PUBLICACIONES RELACIONADAS
Congresos:

L. I. Jimenez, G. Martin and A. Plaza. HyperMix: A New Tool for
Quantitative Evaluation of Endmember Identification and Spectral
Unmixing Techniques. IEEE Geoscience and Remote Sensing
Symposium (IGARSS'12), Munich, Germany, 2012. Este trabajo,
presentado en forma de comunicación oral en el congreso IGARSS en
Munich, Alemania, el cual es el principal foro a nivel internacional
sobre observación remota de la Tierra donde se congrega a miles de
investigadores a nivel mundial, expone una nueva herramienta para el
manejo y procesado de imágenes hiperespectrales desarrollada
utilizando la librería de código abierto ORFEO ToolBox. Se presentan
en dicha herramienta los algoritmos implementados en C++ usando
funciones de la mencionada librería. La aportación a este trabajo
incluye el desarrollo de la aplicación, así como la implementación de
los algoritmos usados en C++.

L. I. Jimenez, G. Martin and A. Plaza. A New Tool for Evaluating
Spectral Unmixing Applications for Remotely Sensed Hyperspectral
Image Analysis. International Conference on Geographic ObjectBased Image Analysis (GEOBIA), Rio de Janeiro, Brazil, 2012. Este
trabajo es presentado en GEOBIA 2012 en Rio de Janeiro siendo este
un foro de excelencia donde un selecto grupo de investigadores,
estudiantes y usuario interesados presentaron sus investigaciones y
últimos resultados siendo uno de los foros sobre el campo del análisis
de imagen más importante a nivel mundial. En dicho foro se presento
la herramienta HyperMix para el procesamiento y tratamiento de
imágenes hiperespectrales desarrollada como una aplicación de
código libre usando funciones de la librería para el procesamiento de
78
imágenes hiperespectrales ORFEO ToolBox y unos resultados
comparativos sobre la eficiencia de los algoritmos que la herramienta
maneja sobre supuestos sintéticos y reales. La aportación en este
trabajo
consistió
en
el
desarrollo
de
la
herramienta
y
la
implementación de los distintos algoritmos que la forman en C++
usando la librería ORFEO ToolBox. Para este trabajo también se
realizó una comparativa de eficiencia entre los distintos algoritmos
incluidos en la aplicación.
Añadir que actualmente se está preparando un documento para IEEE
Geoscience and Remote Sensing Letters sobre la herramienta HyperMix,
siendo esta una publicación que pone énfasis en realizar revisiones rápidas
a artículos de alto impacto en la teoría, los conceptos y las técnicas de la
ciencia y la ingeniería que se aplican a la detección de la tierra, los océanos,
la atmósfera y el espacio y el procesamiento, interpretación y difusión de
esta información.
79