INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-27 Corrección Geométrica de imágenes Hiperespectrales a partir de datos de navegación Juan Fernando Vélez Varela Jader Balbín Mesa Ingeniería de Sistemas Directora del trabajo de grado: Ph.D. María Constanza Torres INSTITUTO TECNOLÓGICO METROPOLITANO Febrero 2017 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 2 RESUMEN Este trabajo de grado se basó en el desarrollo de una librería en Matlab para realizar la corrección geométrica de imágenes hiperespectrales capturadas con sensores aero- transportados y de los cuales se tiene datos de navegación. Dado el creciente número de aplicaciones para las imágenes hiperespectrales en aplicaciones de percepción remota y observación de la tierra, este trabajo buscó proporcionar una herramienta computacional fiable al laboratorio de Maquinas Inteligentes y Reconocimiento de Patrones, que permita eliminar la distorsión geométrica de la imagen que resulta por el movimiento de la tierra y la plataforma en el momento de la adquisición. Para el desarrollo de este trabajo se realizó una revisión del estado del arte en percepción remota y las técnicas para corrección geométrica. Se seleccionó una técnica de corrección geométrica que usa datos de navegación para eliminar las distorsiones debido al movimiento del avión. Esta técnica fue implementada sobre MATLAB y evaluada empleando imágenes hiperespectrales disponibles en la web. Palabras clave: Imágenes hiperespectrales, corrección geométrica, percepción remota INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 3 TABLA DE CONTENIDO 1. INTRODUCCIÓN ......................................................................................... 4 2. MARCO TEÓRICO ....................................................................................... 5 2.1 Corrección geométrica................................................................................. 7 2.2 Localización de puntos de control ............................................................... 8 3. METODOLOGÍA ............................................................................................. 9 4. RESULTADOS Y DISCUSIÓN ...................................................................... 13 5. CONCLUSIONES, RECOMENDACIONES Y TRABAJO FUTURO .................. 19 REFERENCIAS .................................................................................................. 20 6.ANEXOS………………………………………………………………………………………………………………21 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 4 1. INTRODUCCIÓN La percepción remota es un campo de creciente interés para aplicaciones como observación de la tierra, estudios ambientales, minería, agricultura, seguridad y defensa. La percepción remota consiste en la captura de datos de una superficie a través de sensores, usualmente ubicados en plataformas aéreas o satelitales. Entre los sensores más empleados en percepción remota se encuentran las cámaras hiperespetrales, los cuales miden la energía reflejada o emitida por una superficie a lo largo del espectro electromagnético en cientos de bandas [1]. El movimiento del avión y de la misma superficie terrestre al momento de la captura genera distorsiones en la imagen. Por esta razón, es necesario incluir una etapa de corrección geométrica en el pre-procesamiento de las imágenes hiperespectrales. Para realizar una adecuada corrección se requiere datos de control que permitan determinar las distorsiones geométricas presentes en la imagen [2]. Para el desarrollo de este trabajo se realizó una revisión de la literatura, donde se estudian conceptos como imagen hiperespectral, radiancia, reflectancia, bandas espectrales y corrección geométrica. A partir de esta revisión, se estableció la metodología para realizar la corrección geométrica de datos hiperespectrales de los cuales se tiene datos de navegación, que incluyen datos como los ángulos roll, heading, y pitch. Las funciones para realizar la corrección geométrica se implementaron en Matlab y fueron validadas con datos hiperespectrales reales que se encuentran en la base de datos SHARE 2012 1 . A continuación, se presenta la revisión del estado del arte, el manual de usuario para hacer uso de las funciones desarrolladas en Matlab y un ejemplo de los resultados obtenidos con la base de datos SHARE 2012. Finalmente, se presentan conclusiones y recomendaciones para trabajos futuros. 1 Rit.edu. (2011). Login | Downloads | SHARE 2012 | RIT. [online] Available at: https://www.rit.edu/cos/share2012/downloads.php [Accessed 10 Aug. 2016]. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 5 2. MARCO TEÓRICO La percepción remota nos permite obtener información de la superficie de la tierra desde el espacio o una aeronave, sin necesidad de estar en contacto con ella. Para adquirir este tipo de información existe sensores pasivos y sensores activos. Los sensores activos emiten una señal que al retornar al sensor permite medir ciertas características físicas de la superficie terrestre. Por su parte, los sensores pasivos usan la energía emitida por el sol, que viaja a través de la atmosfera e interactúa con la superficie, para sensar la superficie terrestre [3]. La atmósfera hace parte de todo este proceso, donde la energía interactúa con este elemento, a su vez los objetos que dependen directamente de sus propiedades en la interacción o respuesta de la energía recibida y reflejada. El sensor remoto recibe y graba la radiación electromagnética reflejada o emitida por el objeto y la atmósfera. Después de realizar todo es proceso es donde se empieza a realizar la transmisión y procesamiento de la energía grabada por el sensor, esta es llevada directamente a una estación receptora en donde se procesan todos los datos obtenidos y son convertidos en imágenes digitales [2]. Debido a la interacción de la luz con la atmosfera, los movimientos de la Tierra y los movimientos de las plataformas donde se encuentra el sensor, estas imágenes digitales se ven afectas por los efectos atmosféricos y por perturbaciones geométricas. Es así, que parte del pre-procesamiento de las imágenes debe incluir una la corrección de los efectos atmosféricos y la corrección geométrica. Entre los sensores pasivos se encuentran los sistemas hiperespectrales que capturan información en cientos de bandas a lo largo del espectro electromagnético [2]. De esta manera un sensor hiperespectral se puede ver como un cubo, con dos dimensiones espaciales y una tercera dimensión que corresponde a la información espacial. Las cámaras hiperespectrales usualmente cubren desde la región del espectro visible hasta el infrarrojo. Cada pixel en una imagen hiperespectral corresponde a una firma espectral, cuya forma INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 6 permite la identificación de materiales y objetos en la superficie terrestre de forma remota [2]. El concepto de imágenes hiperespectrales se puede observar en la Figura 1. Figura 1: Procedimiento de análisis hiperespectral Calvo, C. (2012). Procesamiento a bordo de imágenes hiperespectrales de la superficie terrestre mediante hardware reconfigurable. Doctorado. UNIVERSIDAD COMPLUTENSE DE MADRID. El procesamiento y análisis de imágenes hiperespectrales incluye diferentes etapas. La primera etapa incluye los procesos para remover las distorsiones geométricas y atmosféricas de los datos capturados. Después de estos procesos se puede realizar una reducción de dimensiones para mejorar la discriminación de las clases con técnicas tradicionales de reconocimiento de patrones. Por último, se realiza uno de los tres procesos para extraer información de los datos hiperespectrales: detección de objetivos, clasificación o desmezclado. Es de interés para este trabajo la corrección geométrica. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 7 Dentro de las fuentes de distorsión geométrica tenemos las siguientes que afecta de una u otra manera el procesamiento de la imagen digital [4]:  Distorsión Óptica  Relación de aspecto  Velocidad de espejo no lineal  Secuencia de geometría del detector y de rastreo  geometría de observación  Efecto panorámico  Curvatura de la tierra  movimientos de la aeronave / satélite u objetivo  Cambios de altitud (roll / pitch / heading)  Variaciones de posición (altura, giro)  Rotación de la tierra Las distorsiones aparecen como  Cambios de escala sobre la imagen  Irregularidades en las relaciones angulares entre los elementos de imagen  Desplazamiento de objetos en una imagen  Oclusión de un elemento de imagen por otro  Corrección de la distorsión es a menudo costosa  Equipo y operador de tiempo 2.1 Corrección geométrica Para realizar la corrección geométrica de una imagen capturada con un sensor remoto, se debe transformar las coordenadas de los píxeles de tal forma que (1) coincidan con puntos de control o una imagen de referencia o (2) se use información de navegación para remover los efectos geométricos. La transformación se realiza usualmente mediante una INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 8 transformación polinomial de segundo grado que se obtiene a partir de un conjunto de pares de puntos de control o datos de navegación. [1] La corrección atmosférica nos permite transformar la imagen original, a niveles de reflectancia los cuales son captadas por el sensor en la atmosfera, de esta manera nos ayuda a disminuir los efectos de dispersión, causados por las partículas de la atmosfera. La idea es disminuir el efecto de los ángulos en el momento que se captan las imágenes y minimizar los errores que influyen en la radiación o en el valor radiométrico de cada imagen captada por el sensor. Durante la corrección geométrica se busca poder corregir los desplazamientos y distorsiones que nos arroja la imagen en el momento de la captura, los cuales son causados por roll, pitch y heanding, también hay otros factores de cambios como las coberturas de la tierra, clima y temperatura, logrando así mejorar la calidad visual de la imagen. 2.2 Localización de puntos de control INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 9 3. METODOLOGÍA Para el desarrollo de la librería de funciones que realiza la corrección geométrica de imágenes hiperespectales aerotransportados, se seleccionó una base de datos disponible a través de la web que tiene disponible además de los datos espectrales los datos de navegación. La programación de las funciones se realizó con base a esta base de datos usando Matlab. A continuación, se describe: la base de datos, las funciones implementadas, los requerimientos de los archivos de entrada, el formato de los archivos de salida. En el siguiente capítulo se presenta un ejemplo de uso de las funciones implementadas. 3.1 Base de datos La base de datos SHARE2012 se encuentra en la página web https://www.rit.edu/cos/share2012/downloadarea.php, allí están los datos tomados en el experimento de campo y se dividen así:  Datos Avon: los materiales para los que se recolectaron espectros de tierra incluyeron fieltro, fieltro negro, lienzo gris, fieltro rojo, azul, verde, amarillo, dorado y rosa, y materiales de fondo comunes.  Datos Conesus: Estos datos se centraron principalmente en la detección de blancos de agua. Las imágenes fueron recogidas por los sensores Wasp y SpecTIR a las 12:00 horas.  Datos Cicuta: Los datos se centraron principalmente en las aplicaciones forestales, las imágenes fueron recogidas por los sensores Wasp, SpecTIR y LIDAR entre el medio día y la 1 pm.  Datos Downtown Rochester: los datos de la Ciudad de Rochester fueron recopilados el 9/20/2012, estos se centraron principalmente en la detección de materiales. Las imágenes fueron recogidas por los sensores SpecTIR a las 9:00 horas. https://www.rit.edu/cos/share2012/downloadarea.php INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 10  Datos Quarry: Los datos se centraron principalmente en la reconstrucción 3D y la identificación del material. Las imágenes fueron recogidas por los sensores Wasp, SpecTIR y LIDAR a las 12:30 horas. Para el desarrollo del proyecto se usaron los datos Avon tomados en la mañana y capturados por el sensor SpecTIR, en la base de datos hay seis imágenes tomadas por este sensor; la imagen 0920-1706_rad.dat se usó como referencia para el procesamiento y corrección geométrica, esta imagen tiene un tamaño de 385.200 KB, tiene 360 bandas y los siguientes archivos de navegación:  0920-1706_rad.dat : contiene los datos de la imagen con distorsiones.  0920-1706_rad_glt.dat : contiene las coordenadas correctas de la imagen, se usa para dar la adecuada ubicación a los pixeles.  0920-1706_rad_parsed_nav.txt : en esta imagen están los ángulos correctos de los pixeles. 3.2 Lectura de datos En esta sección se describe como se realiza la lectura de la imagen y los archivos de navegación. 1. Se hace uso de la función read_HSI, esta tiene como parámetro de entrada el archivo 0920-1706_rad.dat, se cambia la extensión .dat por. bsq. 2. Se realiza la lectura del archivo 0920-1706_rad_glt.dat, también se usa la función read_HSI, el parámetro de entrada es el archivo mencionado, se cambia la extensión .dat por. bil. 3. Se usa la función de matlab textread para leer el archivo 0920- 1706_rad_parsed_nav.txt, esta función se define así: textread('Nombre del archivo a leer','%f','headerlines',1), donde %f indica que leerá valores de coma flotante y con ('headerlines',1) se ignora la primera fila del archivo. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 11 3.3 Corrección Geométrica Para el desarrollo de esta actividad se crearon las funciones Main y Ubicación pixeles, estos se describen a continuación:  Main o En esta se envían los datos de entrada para que la función read_HSI haga la lectura de la imagen y los datos de navegación. o Se declara un ciclo for de 4 iteraciones para llamar la función ubicación pixeles el mismo número de veces. o Se instancia ubicación pixeles y cómo parámetro de entrada se le asigna (I,GTL,i), donde “I” es la imagen original, “IMG” es el archivo con las coordenadas correctas de los pixeles y “i” es el índice del ciclo for que servirá como opción para un “switch” que se definirá en la función ubicación pixeles. Al mismo tiempo que se realiza la instancia se recibe como parámetro la imagen corregida, para luego con la función “RGB” mostrar la imagen a color. o Finalmente, con la función “Multibandwrite” se guarda la imagen corregida.  Ubicación Pixeles o Esta función tiene cómo parámetros de entrada (ImagenOriginal, ArchivoGTL, Opcion) los cuales tienen relación con (I,GTL,i) definidos en el Main. o Debido a que las imágenes son de gran tamaño se dividen en cuatro cuadrantes y de esta misma manera se visualizarán y guardarán en el Main, adicional se crea “ImagenCorregida”, que es una imagen de ceros con el tamaño de cada uno de estos cuadrantes, esta será el parámetro de salida de la función. o Se declara la estructura de control “switch” que nos permite seleccionar cada uno de los cuadrantes de la imagen a procesar. o En las variables Row y Column se guardan los índices lineales (coordenadas) diferentes de cero del archivo “GTL”, para luego con un ciclo “for” recorrer el archivo y asignar estos índices lineales a “ImagenCorregida”.  Diagrama donde se resume el proceso de corrección geométrica. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 12 3.4 Librería de Funciones A continuación de indicarán las funciones y métodos utilizados para la corrección geométrica de la imagen, con sus respectivos datos de entrada y salida.  Función read_HSI, recibe como parámetro de entrada los archivos 0920-1706_rad.bsq y 0920-1706_rad_glt.bil, y retorna los archivos en las variables “I” y “GTL”.  Función Main, es el archivo principal donde se instancian las funciones necesarias para la corrección geométrica.  Ubicación Pixeles, los datos de entrada son ImagenOriginal, ArchivoGTL, Opcion y como dato de salida tiene a ImagenFinal. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 13 4.RESULTADOS Y DISCUSIÓN En esta sección se describe el resultado obtenido al realizar el procesamiento geométrico de una imagen hiperespectral tomada desde una plataforma aérea; esto se logra con la implementación de un método de corrección geométrica en el que ingresa una imagen con distorsiones y en la que no se logra identificar los elementos de esta. En la figura 1 se muestra la imagen hiperespectral con la banda 30. Imagen 1, Imagen hiperespectral tomada de la Base de datos Share 2012. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 14 Para el fácil procesamiento de los datos hiperespectrales se divide la imagen de entrada en cuatro cuadrantes, a continuación, se muestran cada uno de estos usando la banda 30. Imagen 2, cuadrante uno de la imagen hiperespectral. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 15 Imagen 3, cuadrante dos de la imagen hiperespectral. Imagen 4, cuadrante tres de la imagen hiperespectral. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 16 Imagen 5, cuadrante cuatro de la imagen hiperespectral. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 17 Haciendo uso de los archivos de navegación de la imagen se programan los algoritmos necesarios para intercambiar pixeles y ubicarlos correctamente, y finalmente obtener una imagen corregida y sin distorsiones. Imagen 5, Cuadrante uno de la imagen corregida. Imagen 6, cuadrante dos de la imagen corregida. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 18 Imagen 7, cuadrante tres de la imagen corregida. Imagen 8, cuadrante cuatro de la imagen corregida. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 19 5.CONCLUSIONES, RECOMENDACIONES Y TRABAJO FUTURO  Como resultado de aplicar la corrección geométrica de datos hiperespectrales es posible obtener una mayor nitidez sobre la plataforma terrestre fotografiada, para determinar sus cambios, relieve y elementos presentes que aporten información para su clasificación.  Se comprueba que la corrección geométrica de imágenes hiperespectrales se puede realizar con métodos modelados en Matlab, siendo esta otra alternativa a la hora corregir distorsiones en las imágenes.  Para tener la imagen en el plano correcto y no percibir el movimiento de la captura, se recomienda realizar la correcta ubicación de los ángulos roll, pitch y heading.  Las imágenes satelitales proveen información que puede ser analizada para determinar cambios en: desarrollo urbanístico, zona geográfica, recursos naturales, etc. INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 20 REFERENCIAS [1] AMBROSIO,, G., GONZÁLEZ,, J. and ARÉVALO, V. (2012). Corrección radiométrica y geométrica de imágenes para la detección de cambios en una serie temporal. 1st ed. [ebook] Málaga. Available at: https://www.rit.edu/cos/share2012/downloads.php [Accessed 12 Sep. 2016]. [2] Schläpfer, D. (2014). Geo-atmospheric processing of airborne imaging spectrometry data Part 1: parametric orthorectification. 1st ed. [ebook] Zurich,: Rudolf Richter. Available at: http://www.rese.ch [Accessed 4 Oct. 2016]. [3] TOUTIN, T. (2004). Geometric processing of remote sensing images: models, algorithms and methods. 1st ed. [ebook] ottawa. Available at: http://thierry.toutin@ccrs.nrcan.gc.ca [Accessed 18 Oct. 2016]. [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] 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. [7] 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 [8]. 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. [9] ITTEN, K. I. Y P. MEYER (1993) “Geometric and radiometric correction of TD Data of mountainous forested areas”. IEEE Trans. On Geoscience and Remote Sensing INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 21 6. ANEXOS INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 22 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 23 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 24 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 25 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 26 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 27 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 28 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 29 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 30 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 31 INFORME FINAL DE TRABAJO DE GRADO Código FDE 089 Versión 03 Fecha 2015-01-22 32