Articulo_slc_off_proyect_7_07 Relleno de Las Lineas Negras Landsat

download Articulo_slc_off_proyect_7_07 Relleno de Las Lineas Negras Landsat

of 49

Transcript of Articulo_slc_off_proyect_7_07 Relleno de Las Lineas Negras Landsat

Facultad de Matemtica y Computacin Universidad de La Habana

Rellenado de los gaps provocados por la falla del Scan Line Corrector en las imgenes Landsat 7 ETM+

Trabajo de Diploma presentado como requisito para obtener el ttulo de Licenciado en Ciencias de la Computacin.

Autora: Neisy Rodrguez Ramos Tutores: Lic. Ina Bell-lloch Garca Lic. Soltan Galano Duverger

La Habana, Junio de 2009.

Resumen El uso de plataformas satelitales se ha convertido en una herramienta imprescindible para dar seguimiento a fenmenos de la vida en la Tierra. El satlite Landsat 7 toma imgenes de Cuba cada 16 das, y desde Octubre del 2008 se encuentran disponibles de manera gratuita. Cuando uno de sus sensores dej de funcionar, las imgenes comenzaron a presentar franjas de datos invlidos (gaps). En este trabajo se implementa la metodologa Phase 2 Gap-Fill Algorithm para corregir los valores perdidos en las escenas del Landsat 7, lo cual tiene un impacto directo en los estudios cartogrficos y el seguimiento de fenmenos medioambientales en el pas. Los resultados del procesamiento de las imgenes por el mtodo implementado son comparados con los obtenidos por otros sistemas empleados en el pas.

Abstract The use of satellite platforms have become an essential tool to follow phenomenon related to the life in Earth. The Landsat 7 satellite takes images of Cuba every 16 days, which are free to download since October 2008. When one of Landsats sensors failed in 2003, invalid data strips (gaps) appeared in the images. The Phase 2 Gap-Fill Algorithm is implemented to correct lost data in the Landsat 7 scenes. It has a direct impact on cartographic studies and to follow environmental phenomenon in Cuba.The result of the images processed by the implemented method is compared with those obtained by using traditional systems applied in our country.

2

Agradecimientos Quisiera agradecer a todas aquellas personas que han contribuido de una forma u otra a la realizacin de este trabajo. Primero que todo a mi hermano Tito, mi gua y ejemplo durante toda mi vida, sobre todo en los estudios. A mi mam, que tanto se ha sacrificado y esforzado durante mi carrera, estimulndome e impulsndome en cada momento para seguir adelante, sin perder la confianza en m. A mi pap, tos y abuelos, por la preocupacin y el apoyo. Al profe Yoel por los consejos y su dedicacin incondicional. A los profes que fueron ms all y pasaron a ser buenos amigos, Lily, Eve, Pablo, mi flaco Erich. A Dionne y Abelito, por estar sobre todo en los tiempos difciles. A mis compaeros de grupo que contribuyeron a armonizar los estudios en un ambiente tan lindo. A Tamayo por las explicaciones y por compartir sus conocimientos pacientemente. A Gustavo y familia, por el cario. A la gente de la beca, por los momentos de alegra a pesar de las dificultades que pasamos juntos. A mis tutores, Ina, Soltan, Estrada y Gustavito, por el apoyo y el esfuerzo para lograr la culminacin de este proyecto. A todos los profesores que han contribuido en mi formacin profesional, a lo largo de mi carrera estudiantil. En fin, a todos ellos, y los que se me quedan por mencionar, muchas gracias.

3

ContenidoIntroduccin .................................................................................................................................. 6 Objeto de estudio...................................................................................................................... 7 Problema cientfico ................................................................................................................... 7 Objetivo del trabajo .................................................................................................................. 7 Justificacin de la investigacin ................................................................................................ 7 Tareas ........................................................................................................................................ 8 Estructuracin del trabajo ......................................................................................................... 8 Captulo 1 Imgenes del satlite Landsat 7 .................................................................................. 9 1.1 Descripcin .......................................................................................................................... 9 1.2 Formatos TIFF y GeoTIFF ................................................................................................... 11 1.2.1 Formato TIFF (Tagged Image File Format) ................................................................. 11 1.2.1.1 Organizacin del fichero ..................................................................................... 11 1.2.1.2 Estructura de la cabecera .................................................................................... 11 1.2.1.3 Estructura del IFD ................................................................................................ 12 Estructura de las entradas........................................................................................... 12 1.2.2 Formato GeoTIFF ........................................................................................................ 13 1.2.2.1 Los metadatos del GeoTIFF (llaves) ..................................................................... 14 Estructura del GeoKeyDirectory .................................................................................. 14 1.3 Formato de las imgenes del Landsat 7 ............................................................................ 14 Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos.................. 16 2.1 Anlisis de las metodologas conocidas para la eliminacin de los gaps .......................... 18 2.2 Metodologa implementada ............................................................................................. 20 2.2.1 Justificacin terica .................................................................................................... 20 2.2.1.1 Ajuste de histograma .......................................................................................... 20 2.2.1.2 Modelo de regresin lineal ................................................................................. 22 2.2.2 Metodologa ............................................................................................................... 24 Captulo 3 Implementacin ......................................................................................................... 29 3.1 Tecnologas aplicadas ........................................................................................................ 29 3.1.1 .NET Framework ......................................................................................................... 29 3.1.2 El lenguaje de programacin C# ................................................................................. 30 3.1.3 WinHex ....................................................................................................................... 30 3.1.4 ENVI (Environment for Visualizing Image) ................................................................. 30 3.2 Rellenando los gaps .......................................................................................................... 30 4

3.2.1 Manejador del formato GeoTIFF ................................................................................ 30 La clase TiffManager ................................................................................................. 31 3.2.2 La clase Scene .......................................................................................................... 31 Buscando las fronteras de la imagen real ....................................................................... 32 3.2.3 Recursos empleados para el procesamiento eficiente de las imgenes.................... 33 3.2.4 La clase ImageProcessor ..................................................................................... 34 La filosofa de los cuatro cuadrantes ........................................................................... 34 Miembros de la clase ...................................................................................................... 35 3.3 Aplicacin .......................................................................................................................... 37 3.3.1 Opciones del men..................................................................................................... 38 Captulo 4 Resultados.................................................................................................................. 41 Conclusiones ............................................................................................................................... 43 Recomendaciones ....................................................................................................................... 44 Bibliografa .................................................................................................................................. 45 Anexos ......................................................................................................................................... 47 Anexo 1 Descripcin de las entradas contenidas en el IFD de las imgenes del Landsat 7 (19) ................................................................................................................................................. 47 Anexo 2 Otros preprocesamientos que se pueden realizar para obtener un resultado ms efectivo. ................................................................................................................................... 48 Anexo 3 Diagrama de bloques del Proceso de Macheo de Histogramas................................ 49

5

Introduccin

IntroduccinLa posibilidad de obtener imgenes desde el espacio con sensores montados en plataformas areas y satelitales, constituye una herramienta de vital importancia, pues permite actualizar con rapidez y precisin, el seguimiento de distintos fenmenos en la Tierra. Uno de los archivos de imgenes ms completos e importantes para el estudio de la superficie de la Tierra (1), lo constituye el captado por los satlites de mediana resolucin Landsat, el cual data de ms de 35 aos, resultado de un programa diseado a fines de los aos 60 por la Agencia Espacial Norteamericana, dedicado a la observacin de los recursos terrestres. Recientemente ha sido habilitado en el sitio http://glovis.usgs.gov por el Servicio Geolgico de los Estados Unidos (USGS1), el acceso electrnico de manera gratuita, a cualquier imagen de esta compilacin, con escenas globales que fechan desde 1972 hasta la actualidad, con una frecuencia de muestreo entre 16 y 18 das, las cuales han sido tomadas con los sensores Escner Multiespectral (MSS) a bordo de los satlites Landsat 1, 2, 3, 4 (todos desactivados); Mapeador Temtico (TM) a bordo de los Landsat 4 y 52; y el Mapeador Temtico Ensanchado (ETM+) a bordo del Landsat 7. Este ltimo ha provisto de informacin casi ininterrumpida desde su lanzamiento en Julio de 1999, pero en la actualidad presenta un problema a causa de una falla en el instrumento que corrige las lneas escaneadas, conocido como Scan Line Corrector (SLC-off), el cual se encuentra apagado desde Mayo de 2003 (2), dando como resultado que todas las escenas de Landsat 7 adquiridas desde el 14 de Julio de ese ao hayan sido colectadas conteniendo franjas de datos invlidos (gaps3). No existe otro satlite que ofrezca imgenes de Cuba, con similares caractersticas y de manera gratuita. Sin embargo, la utilidad de las mismas est reducida enormemente debido al problema del SLC-off. Hasta la fecha, se emplean mtodos y softwares para intentar corregir las imgenes daadas, pero estos son poco efectivos. Por otra parte, el precio de cada una de las imgenes corregidas por instituciones forneas es de aproximadamente 300 USD y, para cubrir toda Cuba, se necesitan 16 escenas (Figura 1). Se estima que se requieran tres juegos al ao como promedio, uno para cada temporada (lluvia y seca) y otro extra para evaluar, por ejemplo, alguna afectacin producida por huracanes o incendios, con lo cual habra que destinar

1 2

Todas las siglas de este trabajo estn referidas a los trminos en ingls. Este ltimo se encuentra activo aunque brinda muy pocas prestaciones. 3 Aunque existen varios tipos de gaps, en este documento se emplea este trmino para hacer referencia a los datos invlidos producidos por el SLC-off

6

Introduccin

alrededor de 14.000 USD anuales a esta actividad, descontando el costo de produccin bajo condiciones nacionales.

Figura 1 Escenas que cubren el territorio nacional.

Todo lo anterior presupone la necesidad de implementar un procedimiento para restaurar con datos cercanos a la realidad, los valores que se han perdido como consecuencia del mal funcionamiento del SLC.

Objeto de estudioLas imgenes satelitales tomadas por el Landsat 7.

Problema cientficoLas imgenes satelitales tomadas por el Landsat 7 presentan gaps que dificultan su anlisis para la actualizacin cartogrfica y el seguimiento de fenmenos medioambientales que ocurren en el pas. Los mtodos utilizados hasta la fecha para la correccin de las imgenes son poco efectivos.

Objetivo del trabajoCorregir mediante la implementacin del proceso de macheo de histogramas sugerido en el Phase 2 Gap-Fill Algorithm, los valores radiomtricos perdidos en las imgenes Landsat 7 SLC-off, para viabilizar las tareas de actualizacin de cartografa y posibilitar el seguimiento a distintos fenmenos medioambientales del pas.

Justificacin de la investigacinLa implementacin de un algoritmo capaz de corregir las imgenes del Landsat 7 tendra un impacto directo sobre los estudios cartogrficos y medioambientales del pas. Desde el punto de vista econmico significara un ahorro estimado en 14.000 USD anuales.7

Introduccin

TareasLas principales tareas desarrolladas para dar cumplimiento al objetivo planteado en este trabajo son las siguientes: Estudio de las imgenes satelitales y el formato GeoTIFF. Estudio de las metodologas actuales para la correccin de los gaps y seleccin del algoritmo adecuado para resolver el problema. Diseo e implementacin de una herramienta que permita corregir las imgenes daadas. Evaluacin de la efectividad del resultado respecto a los mtodos utilizados actualmente para corregir las imgenes.

Estructuracin del trabajoEste trabajo est estructurado en Introduccin, cuatro captulos, Conclusiones y Recomendaciones. En la Introduccin se da una visin panormica sobre los antecedentes del uso de las imgenes del Landsat 7 en Cuba y de la aparicin de los gaps para luego caer en el diseo de la investigacin. En el Captulo 1 Imgenes del satlite Landsat 7, se exponen las caractersticas de las imgenes objeto de estudio de este trabajo, y se profundiza en la estructura de los formatos TIFF y GeoTIFF. En el Captulo 2 Los gaps producidos por el SLC-off, y las metodologas para corregirlos, se explican el origen de los gaps en las imgenes del satlite y la metodologa empleada para corregir estos defectos. En el Captulo 3 Implementacin se detalla cmo se implement la metodologa propuesta para rellenar los gaps para el procesamiento digital de las imgenes, cuyos Resultados se muestran en el Captulo 4. Luego aparecen las Conclusiones y las Recomendaciones del trabajo, seguidos de la Bibliografa referenciada y consultada y los Anexos.

8

Captulo 1 Imgenes del satlite Landsat 7

Captulo 1 Imgenes del satlite Landsat 71.1 DescripcinLas imgenes tomadas por el satlite Landsat 7 presentan ocho bandas en escala de grises, las cuales cubren un rango espectral que va desde el espectro visible hasta el infrarrojo cercano y el infrarrojo trmico. En la Figura 2, se muestra una imagen de la banda 3 (rojo visible) correspondiente a la escena 15-45. La banda Pancromtica es la mayor novedad de este satlite, su resolucin espacial de 15 m registrado con las dems bandas, permite que las imgenes generadas sean trabajadas para obtener ampliaciones de hasta 1:25.000. La banda 6, con ganancia baja y ganancia alta, permite varias opciones de anlisis y aplicaciones, tales como la medicin relativa de temperatura radiante o un clculo de temperatura absoluta (3). En la Tabla 1 se muestra el registro de las bandas espectrales que capta este satlite.Tabla 1 Registro de las bandas espectrales para el sensor ETM+

Bandas 1 2 3 4 5 6 7 8

Longitud del espectro 0.45 0.52 m 0.52 0.60 m 0.63 0.69 m 0.76 0.90 m 1.55 1.75 m 10.40 12.50 m 2.08 2.35 m 0.52 0.90 m

Resolucin espacial 30 m 30 m 30 m 30 m 30 m 60 m 30 m 15 m

Descripcin Azul visible Verde visible Rojo visible Infrarrojo cercano Infrarrojo Infrarrojo trmico Infrarrojo Pancromtico

La cobertura de cada una de las escenas es de 183x170 km2 aproximadamente, lo cual sumado a la resolucin espacial de las mismas, provoca que las imgenes tengan un tamao considerablemente grande. Producto del movimiento de rotacin de la Tierra, o del ngulo desde el cual el satlite toma las imgenes, puede suceder que las escenas no tengan una misma resolucin, o que estn ligeramente desfasadas, lo que provoca que las imgenes correspondientes a una escena, no necesariamente sean del mismo tamao, ni abarquen la misma rea exactamente. El formato de estas imgenes es el GeoTIFF, cuya estructura se explicar ms adelante.9

Captulo 1 Imgenes del satlite Landsat 7

Figura 2 Imagen de la banda 3 correspondiente a la escena 15-45, tomada por el Landsat 7 el 01/03/2009.

En dependencia del anlisis que se quiera realizar se combinan varias bandas, producto de lo cual se obtienen las imgenes policromticas como la mostrada en la Figura 3. Entre los anlisis ms comunes se encuentran los del comportamiento de la vegetacin, de los suelos o el nivel de humedad, por citar algunos ejemplos.

Figura 3 Imgen policromtica obtenida al combinar varias bandas.

10

Captulo 1 Imgenes del satlite Landsat 7

1.2 Formatos TIFF y GeoTIFF1.2.1 Formato TIFF (Tagged Image File Format)Este formato desarrollado por Aldus Corporation en el ao 1987, fue especificado originalmente como un estndar para guardar imgenes en blanco y negro creadas por escner y aplicaciones de publicacin. El principio del formato TIFF consiste en definir etiquetas que describen las caractersticas de la imagen. Est diseado para ser extensible, y permite almacenar ms de una imagen en un mismo fichero. TIFF ha ganado su reputacin por su potencia y flexibilidad, pero es considerado tan complicado y misterioso como bueno. Este formato es uno de los ms completos en su definicin y el ms especificado en documentaciones tcnicas oficiales. Son tantas sus variantes que su manejo puede llegar a ser muy complejo, pero si slo se contemplan las ms habituales se simplifica enormemente.

1.2.1.1 Organizacin del ficheroTodo fichero TIFF est organizado en tres secciones: la cabecera del fichero, el directorio de imgenes del fichero (IFD) y los datos del bitmap. Un fichero que contenga varias imgenes tendr un directorio y un bitmap por cada imagen contenida. Aunque la cabecera va siempre al comienzo, las otras dos partes pueden ir dispuestas de varias maneras. En la Figura 4 se ilustran tres posibles distribuciones de los datos de un fichero TIFF. (4)

Figura 4 Posibles distribuciones de los datos de un fichero TIFF

1.2.1.2 Estructura de la cabecera 4

Bytes 0-1: Especifican el orden de los bytes utilizado en el fichero. Puede ser uno de los siguientes valores: 4949h (II) 4D4Dh (MM)4. Bytes 2-3: Tericamente indican el nmero de la versin TIFF.

En el orden II (Intel), el orden de los bytes es del menos significativo al ms significativo, ya sea con valores de 16 o de 32 bits. El orden MM (Motorola) es al contrario, del ms significativo al menos significativo.

11

Captulo 1 Imgenes del satlite Landsat 7

Bytes 4-7: Contienen el desplazamiento en bytes, desde el inicio del fichero, para acceder al primer directorio de imagen. Su nico requisito, respecto a su ubicacin es que est en una direccin par.

1.2.1.3 Estructura del IFDUna vez localizado el IFD se pasa a interpretarlo. Consiste en un contador de dos bytes, indicador del nmero de entradas o campos que contiene el directorio. A continuacin estn las entradas; cada una consta de 12 bytes y al final de estas aparece un puntero al siguiente directorio de cuatro bytes; si no hay mas directorios debe estar en cero. Cada directorio de imagen define una imagen completa, y esto es lo que permite realizar ficheros TIFF multi-imagen. Estructura de las entradas Bytes 0-1: Especifica el cdigo. Bytes 2-3: Especifica el tipo. En laTabla 2 se muestran los tipos admitidos. Bytes 4-7: Longitud, especificada en unidades del tipo de datos de la entrada, no en bytes totales. Bytes 8-11: Desplazamiento en bytes para acceder a los datos de la entrada. Debe ser un nmero par. Si el tamao de los datos es menor o igual a 4 bytes, entonces no es almacenado el desplazamiento para acceder a los datos, sino los datos mismos, y si son menores de 4 bytes, son ajustados a la izquierda. Para conocer el tamao de los datos, se deben consultar el tipo y la longitud.Tabla 2 Tipos de datos vlidos

Tipo Nombre Tamao1 2 3 4 5 BYTE ASCII SHORT LONG RATIONAL 2 bytes 4 bytes 8 bytes 1 byte

DescripcinEntero sin signo de 8 bits Cadena de cdigos ASCII acabada en 0 Entero sin signo de 16 bits Entero sin signo de 32 bits Dos LONG representando a una fraccin

Las entradas estn ordenadas crecientemente dentro del fichero en funcin de su cdigo. En la Figura 5 se ilustra la organizacin lgica de un fichero TIFF, descrita a lo largo de este epgrafe.

12

Captulo 1 Imgenes del satlite Landsat 7

Figura 5 Organizacin lgica de un fichero TIFF

1.2.2 Formato GeoTIFFEl formato GeoTIFF fue diseado en el Laboratorio de Propulsin a Reaccin (Jet Propulsion Laboratory) de la NASA (National Aeronautics Space Administration) por el Dr. Niles Ritter. La especificacin GeoTIFF define un conjunto de etiquetas TIFF provistas para describir toda la informacin cartogrfica originada desde sistemas satelitales de imgenes, de escaneos de fotografas areas; de escaneos de mapas; de modelos de elevacin digital o como resultado de anlisis geogrfico. Esta informacin adicional incluye el tipo de proyeccin5, sistema de coordenadas, elipsoide, datum y todo lo necesario para que la imagen pueda ser automticamente posicionada en un sistema de referencia espacial. Su objetivo es permitir una va de atar una imagen raster a un modelo espacial o una proyeccin de mapa conocido y describir estas proyecciones. GeoTIFF no pretende convertirse en un reemplazo de estndares de intercambio de datos geogrficos ya existentes, tales como los estndares USGS, o el estndar de metadatos FGDC (Federal Geographic Data Committee). Por el contrario, promueve el aumento de un formato de datos raster ya existente y popular para soportar informacin georreferenciada y geocodificada.

5

Estas proyecciones incluyen UTM, US State Plane and Nacional Grids, as como tipos de proyecciones derivadas tales como Transverse Mecator, Lambert Conformal Conic, etc.

13

Captulo 1 Imgenes del satlite Landsat 7

El formato GeoTIFF es completamente compatible con TIFF 6.0, por lo que un programa informtico incapaz de leer e interpretar esa informacin, podr an as abrir el archivo de imagen GeoTIFF y visualizarlo como si de un archivo TIFF normal se tratara. (5)

1.2.2.1 Los metadatos del GeoTIFF (llaves)La cantidad y tipos de parmetros que podran ser requeridos para describir las proyecciones ms populares, implicara desde docenas hasta cientos de etiquetas, lo que agotara las habilitadas por el formato TIFF. Para solucionar este problema, GeoTIFF utiliza una aproximacin a travs de llaves (geotags) para codificar informacin, las cuales estn diseadas en una forma anloga a las etiquetas TIFF estndar, en su estructura y disposicin. A medida que surjan nuevas necesidades, otras llaves pueden definirse dentro de la estructura, sin requerir la asignacin de nuevas etiquetas. Estas llaves se encuentran en un GeoKeyDirectory (GKD), el cual se referencia en el IFD, en una etiqueta conocida como GeoKeyDirectoryTag, cuyo cdigo es 87AFh. Estructura del GeoKeyDirectory Este directorio tiene una cabecera, a continuacin de la cual se encuentra el conjunto de entradas (KeyEntry), con una estructura anloga al formato de las entradas del IFD.Estructura de la cabecera

Bytes 0-1: KeyDirectoryVersion. Indica la versin de la implementacin de las llaves y es usado para asegurar que es una implementacin vlida. Bytes 2-3: KeyRevision. Indica qu revisin del conjunto de llaves es usado. Bytes 4-5: MinorRevision. Indica qu conjunto de cdigos de llaves es usado. Bytes 6-7: NumberOfKeys. Indica la cantidad de llaves.

1.3 Formato de las imgenes del Landsat 7Despus de estudiar la estructura de los formatos TIFF y GeoTIFF, se procedi a leer e interpretar los ficheros de las imgenes del Landsat 7, utilizando la herramienta WinHex, y se arrib a las siguientes conclusiones: El orden de los bytes utilizado en el fichero es el II, o sea, el orden de los bytes es del menos significativo al ms significativo. El fichero tiene un nico IFD, lo que implica una nica imagen. El IFD identificado, tiene 18 entradas. A continuacin se muestran los nombres de las mismas con sus respectivos identificadores, y en el Anexo 1 se describe cada una de ellas.14

Captulo 1 Imgenes del satlite Landsat 7

NewSubfileType (FEh) ImageWidth (100h) ImageLength (101h) BitsPerSample (102h) Compression (103h) PhotometricInterpretation (106h) StripOffsets (111h) Orientation (112h) SamplesPerPixel (115h) RowsPerStrip (116h) StripByteCounts (117h) XResolution (11Ah) YResolution (11Bh) PlanarConfiguration (11Ch) ModelPixelScaleTag (830Eh) ModelTiepointTag (8482h) GeoKeyDirectoryTag (87AFh) GeoAsciiParamsTag (87B1h)

De todas estas, las ltimas cuatro son las que describen la informacin geogrfica. El resto, son etiquetas clsicas del formato TIFF.

15

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlosEl Landsat 7 fue lanzado el 15 de Abril de 1999. En Mayo de 2003, el sensor ETM+ comenz a presentar fallas en el SLC, por lo cual este se encuentra apagado, y las escenas adquiridas desde el 14 de Julio de ese ao, presentan lneas de datos invlidos (gaps), como se muestra en la Figura 6.

Figura 6 Fragmento de imagen con gaps producidos por el SLC-off.

El SLC es la parte del sensor ETM+ que compensa el movimiento hacia adelante del satlite durante la adquisicin de las imgenes. Sin el SLC, el rea escaneada por el sensor delinea un patrn de zigzag como se describe en la Figura 7, causando que parte de los datos registrados estn duplicados y, la parte correspondiente al terreno bajo el satlite, no sea registrada en absoluto, quedando las regiones duplicadas y las no registradas de la imagen con el valor 0. Esto significa que dichas imgenes contienen datos reales intercalados con franjas negras (el equivalente al valor 0 en todos los canales).

Figura 7 Camino del escner ETM+ con y sin el SLC, tomada del sitio de la USGS Landsat Projects SLC-off

16

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

Los gaps provocan aproximadamente, la prdida de un 22% de la informacin de cada imagen. Estn dispuestos en franjas inclinadas hacia la izquierda unos 8 o respecto a la orientacin horizontal debido a la rotacin de la imagen, y aparecen en intervalos de 33 pxeles. Estas franjas tienen hasta 15 pxeles en el borde de la imagen, y van disminuyendo gradualmente camino al centro hasta desaparecer. Segn el USGS, esta zona libre de gaps, tiene una extensin de 22km de ancho aproximadamente. Una anchura de 15 pxeles combinado con una distancia de 33 pxeles significa que al borde de la escena, el 45% de los datos se pierden.6 (6) En los bordes de las franjas de gaps, pueden existir pxeles que no sean registrados como gaps en todas las bandas, por el ETM+. La amplitud de las lagunas en los datos, vara para las diferentes bandas espectrales. Debido a esto, al combinar las bandas algunos gaps pueden quedar con un color distinto de negro, como se muestra en la Figura 8. 7

Figura 8 Fragmento de una imagen, resultado de la combinacin de las bandas 3, 2, 1.

En una escena, no es posible determinar la posicin en la que aparecern las rayas. Por tanto, no se puede estimar de manera confiable cuntas imgenes sern necesarias para un rellenado completo de las mismas. (6) En la secuencia de escenas tomadas a una misma localizacin geogrfica, las franjas de datos invlidos se van desplazando, hasta coincidir nuevamente en un ciclo de 4 tomas. Es esta caracterstica la que permite sentar las bases para disear y proponer metodologas para eliminar los gaps en las imgenes del Landsat 7, aprovechando los valores de los pxeles vlidos que se corresponden geogrficamente a los mismos en otras escenas.

67

Esto se agrava por el hecho de que el resto de los pxeles pueden estar sujetos a la cobertura de nubes. Este aspecto puede ser importante a la hora de determinar si se van a eliminar los gaps de las imgenes banda a banda o no.

17

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

2.1 Anlisis de las metodologas conocidas para la eliminacin de los gapsLa existencia de vacos de datos (data gaps) es un fenmeno tpico en las imgenes remotas y, su ocurrencia y dinmica, pueden responder a motivos naturales muy comunes como cobertura de nubes y sombras, o instrumentales como son el Rayado Linear (Line Striping), relativamente comn en Landsat 5 TM, y el SLC_off existente en todas las imgenes Landsat 7 ETM+ posteriores al 31 de Mayo del 2003, dificultad que se mantendr, al menos, hasta el 2011 (7)& (8). Esto provoca que, en la bsqueda de viabilizar el trabajo de los especialistas, se imponga la necesidad de corregirlas. Para ello, existen diversas tcnicas (9) & (10), en funcin de las cuales se han diseado distintas metodologas, que pueden ser separadas en tres grandes grupos (7): Basados en mltiples imgenes: los gaps de una imagen primaria, son reconstruidos usando otras imgenes, que contienen informacin vlida en la zona correspondiente. En este grupo se encuentran, las tcnicas de Ajustes Lineales Locales del Histograma (Local Linear Histogram Match, LLHM (6)) y las de Ajuste de Histograma para la imagen completa (Histogram Specification), que funcionan con datos seleccionados manual o automticamente para toda o parte de las imgenes, y favorecen el ajuste radiomtrico; las basadas en la Calibracin Lineal Emprica (Empirical Line Calibration) que funcionan sobre la regresin lineal de puntos seleccionados por sus caractersticas de terreno y su respuesta espectral; y la basada en la Transformacin de las Componentes Principales (PCT) que convierte los datos de la imagen que se utilizar para rellenar, a las caractersticas de la imagen primaria que presenta los vacos. El problema de estas tcnicas surge cuando existen diferencias importantes entre los datos de las distintas imgenes, debido a cambios en el terreno, atmosfricos o de la radiacin solar, entre otros. Basados en una sola imagen: funcionan utilizando las correlaciones entre los pxeles de la imagen, obtenidas por tcnicas geoestadsticas de interpolacin, donde las reas vacas son reconstruidas usando datos vlidos de la propia imagen. En este grupo se encuentran tcnicas sencillas como el reemplazo de los pxeles vacos por sus vecinos, tales como Vecino ms cercano, Mxima Verosimilitud, Mahalanobis (11) y otras ms complejas como el Krigging ordinario. Estas tcnicas tienen como principal problema que los pxeles son totalmente creados va interpolacin y sus resultados son variables en cuanto a confiabilidad.

18

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

Hbridos: Este tercer grupo aprovecha las sinergias existentes entre los dos anteriores. Incluye tcnicas como, la del relleno de las reas vacas que usan datos vlidos de la propia imagen, aplicando un proceso de interpolacin basado en la informacin de los bordes, con otra imagen, como el caso del CoKrigging; o usando un enfoque de segmentacin que utiliza la informacin obtenida de otras imgenes para establecer una rutina de interpolacin dentro de los lmites definidos para cada segmento. La utilidad de estas tcnicas se ha demostrado en trabajos a escalas regionales, pero no se recomienda para trabajos de mayores resoluciones.

Del anlisis de las metodologas, la revisin bibliogrfica existente sobre el tema donde se muestran ejemplos de mtodos que se aplican (12) & (13), y el uso de algunos de ellos por un grupo de especialistas en Procesamiento Digital de Imgenes de Teledeteccin sobre la escena 15-458, se lleg a la conclusin de que el grupo de mtodos basados en ajustes radiomtricos, era ms confiable que el basado en interpolaciones de los datos de una misma imagen y que dentro de ellos, el Phase 2 Gap-Fill Algorithm (14), propuesto y utilizado por el USGS, basado en un Ajuste Lineal Local del Histograma, era el ms conveniente, y brindaba los mejores resultados en la correccin (relleno) de las imgenes del Landsat 7 con el problema SLC-off, as como para el relleno en las mismas, de los vacos provocados por nubes y sus sombras, al obtenerse resultados prcticamente sin errores y sin huellas en las reas corregidas. Debe observarse que hasta donde se conoce, el algoritmo mencionado anteriormente, no est implementado en ningn software, descontando por supuesto el desarrollado por el USGS. Se seala (6) que para el procedimiento escogido, el problema radica en que no retiene la relacin entre los pxeles de la imagen, ya que el ajuste utilizando una pequea ventana siempre causa que los pxeles de la imagen de relleno se ajusten a los de la imagen rellenada, incluso cuando no sea conveniente9, pues los mtodos basados en una pequea ventana, son una mezcla de ajuste radiomtrico con interpolacin, lo cual no es recomendable cuando se desea preservar cuanto sea posible, el estado real de las imgenes, evaluado de mayor importancia que el resultado con un buen aspecto. Se consider que cuando se deseen imgenes que tengan el menor grado de interpolacin posible, mantengan la resolucin original y sean, no fotografas casi instantneas de cambios de ciclo corto, sino que muestren el estado general de un8

Cubre la Pennsula de Zapata y el Centro-Occidente de Cienfuegos. Es considerada una de las ms complejas en el pas por su diversidad y cambios frecuentes debidos a la humedad del terreno. 9 Como por ejemplo, si hubieran cambios en el uso del terreno, en la fenologa de la vegetacin o en las condiciones de humedad, etc.

19

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

territorio en un perodo anual, de temporadas (seca o lluvia, verano o invierno), etc., y que adems puedan ser procesadas y comparadas por mtodos automticos o semiautomticos, el alegado problema pasa a ser irrelevante y se convierte en ventaja, en especial el buen aspecto que implica la desaparicin total o casi total de las huellas de los rellenos, cuestin que en los restantes mtodos basados en varias imgenes se mantiene en algn grado e impide o distorsiona las clasificaciones.

2.2 Metodologa implementada2.2.1 Justificacin tericaLas imgenes correspondientes a una misma escena tomadas en distintos espacios de tiempo, comnmente muestran diferencias en el grado de brillantez, es decir, presentan variaciones en sus histogramas de frecuencia de niveles de gris, lo cual puede ser causado por el de vapor de agua distribuido en la atmsfera, por efectos como neblinas fundidas con objetos sobre el terreno, o elevaciones del terreno, entre otros. En la bsqueda de lograr un correcto rellenado de los gaps, se dise una metodologa que ajusta las imgenes radiomtricamente10, para tener en cuenta los aspectos planteados.

2.2.1.1 Ajuste de histogramaSean y dos niveles de gris continuos (considrense variables aleatorias), y sean y sus funciones de densidad continuas correspondientes. y denotan los niveles de gris de las imgenes de entrada y salida respectivamente. Se puede estimar de la imagen de entrada dada, mientras que es la funcin de densidad de probabilidad especificada que se desea para la imagen de salida. Sea una variable aleatoria con la propiedad

donde es una variable falsa (dummy) de integracin. Se reconoce esta expresin como una versin continua de ecualizacin de histogramas11. Supongamos que se define una variable aleatoria con la propiedad

Ajuste radiomtrico: Consiste en el macheo de dos imgenes, analizando los niveles de intensidad, de manera que se ajustan los valores radiomtricos de una imagen con respecto a otra. 11 ecualizacin de histogramas: Consiste en determinar una funcin de trasformacin que busca producir una imagen de salida con un histograma uniforme.

10

20

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

donde

es una variable dummy de integracin. y , se obtiene que satisface la condicin

Igualando

asumiendo que i.

existe y que satisface las condiciones , niveles de gris

es montona decreciente en el intervalo normalizado al intervalo ii. para todo

La ecuacin a travs de muestra que una imagen con una funcin de densidad de probabilidad especificada puede ser obtenida de una imagen de entrada siguiendo el siguiente procedimiento: 1. 2. 3. 4. Obtener la funcin de transformacin usando Usar para obtener la funcin de transformacin Obtener la funcin de transformacin inversa Obtener la imagen de salida aplicando a todos los pxeles en la imagen de entrada.

El resultado de este procedimiento ser una imagen cuyos niveles de gris ( ) tienen la funcin de densidad de probabilidad especificada . Afortunadamente el problema de la ecualizacin de histogramas se puede simplificar en el caso discreto (15). La formulacin discreta de est dada por

donde es el nmero total de pxeles de la imagen, es la cantidad de pxeles con nivel de gris , y es el nmero discreto de niveles de gris. Similarmente la transformacin discreta de se obtuvo del histograma y tiene la forma12

Finalmente, la versin discreta de la ecuacin

es dada por

12

La variable

fue adicionada para ganar claridad en la discusin que sigue.

21

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

o, segn

, por

Las ecuaciones hasta la son las bases para el macheo de histogramas de imgenes digitales. es una mapeo de los niveles de gris de la imagen original a los correspondientes . calcula una funcin de transformacin del histograma . Dos de las funciones de transformacin ms conocidas son la Gaussiana y la lineal.

2.2.1.2 Modelo de regresin linealComo el problema ser tratado entre dos imgenes, solamente sern consideradas dos variables en el modelo lineal, por lo cual, este vendra dado por la ecuacin de una recta incluyendo el error que se pueda cometer:

donde: y y son los parmetros de la ecuacin de regresin lineal (coeficientes), son las variables (valores de intensidad de las imgenes),

es el trmino de perturbacin (o error) estocstica. En el modelo que nos ocupa, indica el intercepto con el eje , y es la pendiente de la recta, que expresa en cunto vara al producirse un incremento unitario en . A esta ltima se le denomina Coeficiente de Regresin. Antes de continuar, debe ser aclarado que el trmino de perturbacin estocstica es una variable aleatoria no observable, que toma valores positivos negativos, y que se puede considerar una variable que sustituye a todas las que puedan afectar a , pero por una varias razones de medicin u obtencin de datos, no se puede incluir en el modelo. El proceso de estimar los parmetros de la ecuacin a partir de los valores disponibles, recibe el nombre de Ajuste de Curva. Con el propsito de minimizar los errores de estimacin, se emplea el Mtodo de los Mnimos Cuadrados Ordinario (MMCO). Se denomina error de estimacin (o residual) a la diferencia entre los valores reales ( ) y sus estimados ( ), y se denota como , por lo que se puede definir la ecuacin de regresin a partir del criterio de que la suma de los residuos resulte lo ms pequea como sea posible.

22

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

Adoptando el mtodo de los mnimos cuadrados:

se obtendran entonces los nicos estimadores y de y , que producen el valor ms pequeo posible de , mediante un sencillo clculo diferencial. Para ello se hallan la primera y segunda derivada parcial respecto a y y se igualan a 0. Este proceso de diferenciacin produce el siguiente sistema de ecuaciones normales:

Para ganar claridad en la obtencin de los estimadores mtodo matricial.

y

, se trabajar con el

Sea la ecuacin de regresin estimada, la siguiente ecuacin matricial:

donde:

Aplicndole el mtodo de los mnimos cuadrados antes mencionado para poder estimar las , se obtienen las siguientes ecuaciones normales:

Por tanto es de inters saber a qu son iguales

y

23

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

donde la inversa de

es:

Finalmente:

2.2.2 MetodologaPara rellenar los gaps provocados por el problema del SLC-off en una imagen, es necesario procesar cada una de las ocho bandas en escala de grises que la componen, de forma independiente. El algoritmo seleccionado en este trabajo, recibe como entrada dos escenas correspondientes a una misma banda de las imgenes a corregir, primaria y secundaria (o de relleno), y devuelve una escena cuyos datos vlidos sern los mismos de la escena primaria unidos a los gaps que se hayan podido rellenar. Para ello, se emple la siguiente metodologa: I. Preparar las escenas de trabajo utilizando el programa de procesamiento de imgenes ENVI, para pasarlas como una entrada correcta al algoritmo seleccionado. Implementar un algoritmo de relleno utilizando el proceso de macheo de histogramas propuesto en el Phase 2 Gap-Fill Algorithm.

II.

I. Para que el algoritmo sea efectivo, las escenas de entrada deben cumplir dos condiciones fundamentales13. i. Deben tener el mismo tamao en cuanto a filas y columnas, y corresponderse a la misma localizacin geogrfica. ii. Deben estar libres de nubes y sus sombras. Producto del movimiento de rotacin de la Tierra, o del ngulo desde el cual el satlite toma las imgenes, puede suceder que las escenas no tengan una misma resolucin, o13

Otros preprocesamientos que se sugieren para obtener un mejor resultado son los mencionados en el Anexo 2.

24

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

que estn ligeramente desfasadas. Por tal motivo, es necesario hallar una zona que sea cubierta por todas. Esto se logra con el ENVI, y una vez detectada, se recorta manualmente cada escena de trabajo. Por otra parte, las nubes, debido a la alta intensidad de luz que tienen, pueden interferir de manera desfavorable en el proceso de correccin. Para eliminarlas, se detectan manualmente junto a sus sombras, y se sustituyen los valores que ocupan, por el valor 0 en escala de grises, para posteriormente tratarlas como al resto de los gaps. II. Denotemos por , al conjunto de escenas obtenidas en I. Se seleccionan del mismo, dos escenas, una primaria y una de relleno (tratando de que sean las ms adecuadas en cuanto a calidad, y que tengan un nivel de luminosidad similar). Estas sern la entrada del algoritmo implementado, en el cual, se siguen los pasos expuestos a continuacin: 1) Buscar las fronteras de la imagen real en la escena primaria, para analizar solamente aquellos puntos que son gaps. 2) Buscar las fronteras de la imagen real en la escena de relleno. 3) Dividir la imagen en cuatro cuadrantes, y para cada uno de ellos hacer(Ver en el Anexo 3 el diagrama de bloques): A. Por cada pxel invlido contenido en la imagen real de la escena primaria (hallado desde el centro hacia los bordes laterales14), si el pxel correspondiente en la escena de relleno es vlido: a) Buscar una ventana que se vaya extendiendo por los vecinos que lo rodean, hasta llegar a la mnima cantidad requerida de pxeles comunes, 144 por sugerencia de USGS (14). (Ver Figura 9). b) Calcular los coeficientes de la funcin de regresin lineal entre los pxeles comunes. c) Ajustar los coeficientes a un rango razonable. d) Calcular la funcin con el valor del pxel vlido. e) Asignar el valor calculado al pxel invlido en la escena primaria. 4) Si an quedan pxeles invlidos en la imagen real de la escena primaria: a) Tomar de otra escena de relleno. b) Volver al paso 2. 5) Fin.

14

Refirindose a la escena primaria.

25

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

Figura 9 En las ventanas de ejemplos, los pxeles negros son gaps y los blancos son datos vlidos. Como las imgenes estn georreferenciadas, la localizacin del pxel (x,y) es la misma sobre el terreno de ambas escenas, y los pxeles comunes son aquellos que son vlidos en las dos. La ventana de pxeles comunes va creciendo alrededor del gap tratando de mantener la forma cuadrada, hasta alcanzar el nmero mnimo de pxeles comunes requeridos.

Solucin Conceptual de A Esta parte de la metodologa no modifica el Phase 2 Gap-Fill Algorithm, propuesto por la USGS (Anexo 3). a. Se buscan los pxeles comunes como se ilustra en la Figura 9, denotando por y , a los conjuntos de valores hallados para las escenas primaria y de relleno respectivamente. b. Construir la funcin de regresin lineal asociada al problema

y calcular los coeficientes por el Mtodo de los Mnimos Cuadrados Ordinario:

Haciendo

y

, se obtiene

26

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

c. Para prevenir datos fuera del dominio (outliers), que tienen un efecto fuerte sobre la transformacin, se fija el mximo valor del , ( ), para acotar los valores permisibles de la forma:

Si no se cumple esta condicin, entonces recalcular el media y la desviacin estndar:

y el

usando la

donde: la media de los pxeles comunes hallados en la imagen primaria , la desviacin estndar de los pxeles comunes hallados en la imagen primaria , la media de los pxeles comunes hallados en la imagen de relleno , y la desviacin estndar de los pxeles comunes hallados en la imagen de relleno . Luego chequear nuevamente la condicin cumplirse hacer: para los valores obtenidos, de no

27

Captulo 2 Los gaps producidos por el SCL-off, y las metodologas para corregirlos

d. Calcular

donde e. Finalmente hacer

es el color del pxel de relleno.

28

Captulo 3 Implementacin

Captulo 3 Implementacin3.1 Tecnologas aplicadasEl desarrollo de una herramienta que posibilitara poder cumplir con el objetivo propuesto en este trabajo, requiri el estudio y aplicacin de las tecnologas expuestas brevemente a continuacin.

3.1.1 .NET FrameworkLa aparicin de .NET Framework o Plataforma .NET, fue una revolucin en el mundo del desarrollo de aplicaciones computacionales. Creada por Microsoft, el diseo de esta plataforma tuvo en cuenta la variedad de lenguajes que usan los desarrolladores de software y la creciente necesidad de interaccin entre bibliotecas desarrolladas en distintos lenguajes. Por esta razn surge el Common Language Specification (CLS) que es un conjunto de especificaciones para los compiladores que deseen sumarse a la plataforma, y tiene como condicin primaria generar cdigo Microsoft Intermediate Language (MSIL). En la Plataforma .NET es posible programar en cualquier lenguaje siempre que el compilador utilizado cumpla con el CLS. La Plataforma .NET como infraestructura sobre la que se rene todo un conjunto de lenguajes y servicios que simplifican enormemente el desarrollo de aplicaciones, ofrece un entorno de ejecucin altamente distribuido, que permite crear aplicaciones robustas y escalables. Sobre la plataforma se ejecutan las aplicaciones en lugar de hacerlo directamente sobre el sistema operativo. Contiene elementos como el Common Language Runtime (CLR), ASP.NET, Web Service, Windows Forms y bibliotecas de clases y utilitarios. El CLR es el motor donde se ejecutarn las aplicaciones, y es el encargado de convertir el cdigo MSIL en lenguaje de mquina. De esta forma, indistintamente de la herramienta de desarrollo utilizada y del lenguaje elegido, el cdigo generado es siempre el mismo. Este cdigo es transparente al desarrollo de la aplicacin pues es generado automticamente por el compilador. Sin embargo, el cdigo generado en MSIL no es cdigo mquina y por tanto no puede ejecutarse directamente. Se necesita un segundo paso en el que una herramienta denominada compilador JIT (Just-In-Time) genera el cdigo mquina real que se ejecuta en la plataforma que tenga la computadora. La compilacin JIT la realiza el CLR a medida que se invocan los mtodos en el programa y, el cdigo ejecutable obtenido, se almacena en la memoria cach de la computadora, siendo recompilado slo cuando se produce algn cambio en el cdigo fuente.

29

Captulo 3 Implementacin

La Plataforma .NET provee bibliotecas muy tiles que brindan clases, interfaces y herramientas que proporcionan acceso a la funcionalidad del sistema. Estas bibliotecas propician la interoperabilidad entre lenguajes de programacin integrados a la plataforma, puesto que permiten usar una misma va de comunicacin con el CLR. La biblioteca de clases constituye una coleccin orientada a objetos de tipos reutilizables que se pueden emplear para desarrollar aplicaciones que abarcan, desde las tradicionales herramientas de interfaz grfica de usuario (GUI) o de lnea de comandos, hasta las aplicaciones basadas en las innovaciones ms recientes proporcionadas por ASP.NET, como los formularios Web Forms y los servicios Web XML (16).

3.1.2 El lenguaje de programacin C#C# es un lenguaje de propsito general diseado por Microsoft para la Plataforma .NET. Su sintaxis y estructuracin es muy parecida a la de los lenguajes C++ y Java, tomando las mejores bondades de los mismos. Como principales caractersticas se encuentran su sencillez, modernidad, amplio soporte a la orientacin a objetos, orientacin a componentes, gestin automtica de memoria, seguridad de tipos, instrucciones seguras, sistema de tipos unificado, extensibilidad de tipos bsicos, extensibilidad de operadores y extensibilidad de modificadores entre otras (17).

3.1.3 WinHexWinHex es un editor hexadecimal universal muy til para el procesamiento de datos a bajo nivel, capaz de cargar y leer ficheros grandes (18).

3.1.4 ENVI (Environment for Visualizing Image)Es un moderno sistema de procesamiento de imgenes diseado para proporcionar anlisis multiespectral de los datos obtenidos por teledeteccin desde aviones y satlites. Proporciona un entorno potente, novedoso y de fcil uso para presentar y analizar imgenes de cualquier tamao y tipo de datos en un amplio rango de formatos.

3.2 Rellenando los gaps3.2.1 Manejador del formato GeoTIFFPara poder garantizar que al tratar las imgenes, estas mantuvieran el formato GeoTIFF y siguieran georreferenciadas, era necesario modificar solamente la parte del fichero en la cual estuvieran los datos de la imagen en s, o sea, los bytes que representaran los pxeles de la misma.

30

Captulo 3 Implementacin

Luego, una vez conocida la estructura de los ficheros con dicho formato, se impona la necesidad de un manejador que permitiera interpretar la informacin contenida en los mismos. Para ello se implement una clase denominada TiffManager, cuyas funcionalidades se explican a continuacin.

La clase TiffManagerEsta clase recibe la localizacin del fichero a interpretar, y lee el mismo acorde a las especificaciones del formato explicadas anteriormente. Se puede decir que desglosa el fichero en tres bloques esenciales de informacin: Header: Secuencia de bytes previa a los datos de la imagen. Bitmap: Secuencia de bytes que representan los datos de la imagen. Footer: Secuencia de bytes posterior a los datos de la imagen.

Esto permite hacer copia de un fichero sin que los metadatos y la estructura interna del mismo varen, simplemente, construyendo otro fichero con el mismo Header, otro Bitmap con las mismas propiedades y diferentes valores en los datos y, el mismo Footer. Por supuesto, estos bloques dispuestos en el mismo orden en que se encuentran en el fichero fuente. Adems, se implementaron las clases: IFD_Entry: Representa una entrada de un IFD, por lo cual tiene como

campos: cdigo, tipo, tamao y datos que le corresponden. Entry_Type: Representa el tipo de entrada de un IFD, y tiene como campos un tipo, y la cantidad de bytes necesarios para representarlo, lo cual facilita saber en dependencia del tipo, si los ltimos cuatro bytes correspondientes a una entrada constituyen los datos que la representan, o el offset a los mismos.

Estas clases permiten poder almacenar en el manejador los metadatos de forma fcilmente legible, los cuales pueden ser muy tiles en tareas futuras, en caso de necesitar interpretar la informacin geogrfica de la imagen, por citar un ejemplo.

3.2.2 La clase SceneSe dise la clase Scene para poder representar las imgenes satelitales con los datos que le proporciona un manejador. Adems de los elementos expuestos en la explicacin de la clase TiffManager (Header, Footer y Bitmap), una escena tiene otros campos como: el offset al Footer, la direccin del camino donde se localiza y el nombre, los cuales sern necesarios a la hora de salvar la imagen correspondiente a la escena.

31

Captulo 3 Implementacin

Tambin tendr un arreglo de tamao 257, donde las primeras 256 posiciones almacenarn la frecuencia del color con valor i-simo en la escala de grises en la imagen real (histograma), y en la ltima estar guardado el mximo valor alcanzado, para poder escalar en dependencia del mismo, la grfica que ilustre dicho histograma. Por otra parte, en cada imagen se buscan las fronteras de la imagen real, para determinar la regin en que se enmarca y, evitar procesar pxeles que no pertenezcan al interior de la misma, los cuales, representan un por ciento significativo. Luego, una escena adems, tendr dos listas que almacenarn en la posicin i-sima, la (el ndice correspondiente a la columna) del pxel que se encuentra en las fronteras izquierda y derecha de la fila i-sima, respectivamente.

Buscando las fronteras de la imagen realDado que para que las imgenes satelitales constituyan una entrada vlida para el algoritmo de relleno seleccionado, son recortadas de manera que se corresponden en localizacin geogrfica y tamao, las fronteras de la imagen real en las mismas pueden describir diferentes formas. Las regiones de una imagen recortada se ilustran en la Figura 10. La parte gris representa la imagen real; la parte negra, los pxeles que no sern analizados; y los puntos amarillos representan los vrtices del polgono que circunscribe a la imagen real.

Figura 10 Representacin de las regiones de una imagen satelital.

La metodologa que se sigui para hallar las fronteras fue la siguiente: 1. Avanzando desde las esquinas y hacia el interior de la imagen, se buscan los vrtices del polgono (mximo ocho).

32

Captulo 3 Implementacin

2. Se calculan las pendientes de las rectas que constituyen las fronteras y con ello se denotan las ecuaciones de las mismas. 3. , se calculan las correspondientes a las fronteras izquierda y derecha de la imagen real. Una vez determinadas las fronteras, se procedi a rellenar los gaps.

3.2.3 Recursos empleados para el procesamiento eficiente de las imgenesPara trabajar eficientemente con procesamiento de imgenes, se recomienda cargar en memoria un bloque de informacin, y acceder directamente a la misma, a travs de un puntero que se vaya moviendo y leyendo los bytes guardados, lo cual agiliza enormemente el proceso. Para poder hacer esto en C#, se debe especificar en las propiedades del proyecto que se permite trabajar en cdigo inseguro (unsafe) y, usando los ensamblados System.Drawing y System.Drawing.Imaging, se facilitan funcionalidades de las clases Bitmap y BitmapData, las cuales se exponen a continuacin.LockBits y UnLockBits: Son funciones pblicas de la clase Bitmap para bloquear y

desbloquear un rea especificada en la memoria respectivamente. Los parmetros que recibe la funcin LockBits son, un objeto de tipo Rectangle que especifica el rea que ser bloqueada, y dos enteros que especifican el nivel de acceso y el formato de la imagen. Estos dos ltimos, a travs de los enumeradores ImageLockMode y PixelFormat, los cuales se expondrn seguidamente. LockBits devuelve un objeto de la clase BitmapData, que posteriormente recibir UnLockBits como parmetro.ImageLockMode: Los posibles valores son:

ReadOnly: Especifica que la imagen fue bloqueada solamente para leer. ReadWrite: Especifica que la imagen fue bloqueada para leer o escribir. WriteOnly: Especifica que la imagen fue bloqueada solamente para escribir. UserInputBuffer: Especifica que el buffer usado para leer o escribir los

datos de la imagen es reservado por el usuario.PixelFormat: Define el nmero de bits asociado a un pxel. En este caso, las

imgenes tienen 8 bits por pxel (8bpp).BitmapData: Esta clase especifica los atributos de una imagen de mapa de bits.

Scan0: Obtiene o establece la direccin de los datos del primer pxel en el

mapa de bits. Tambin corresponde a la primera lnea de exploracin del mapa de bits. Stride: Obtiene o establece el ancho de paso (tambin denominado ancho de exploracin) del objeto Bitmap.33

Captulo 3 Implementacin

Width: Obtiene o establece el ancho en pxeles del objeto Bitmap. Tambin

corresponde al nmero de pxeles de una lnea de exploracin. Height: Obtiene o establece el alto en pxeles del objeto Bitmap. A veces se denomina nmero de lneas de exploracin. PixelFormat: Obtiene o establece el formato de la informacin de pxeles en el objeto Bitmap que este objeto BitmapData devuelve.

A continuacin, se ilustra un ejemplo de cmo aplicar lo explicado anteriormente para ganar rapidez al trabajar con las imgenes.

Cdigo 1 Ejemplo de lectura/escritura de un bitmap eficientemente, cargndolo en memoria.

3.2.4 La clase ImageProcessorEsta clase fue diseada para procesar las imgenes, as que ms bien es utilitaria, por lo cual, todos sus miembros son estticos, y de esta manera no hay necesidad de instanciarla.

La filosofa de los cuatro cuadrantesPreviamente a aplicar el algoritmo para rellenar los gaps, dada la disposicin de las franjas de gaps en las imgenes y, aprovechando el hecho de que en el centro no hay presencia de los mismos, se decidi dividir la imagen en cuatro fragmentos: superior izquierdo, superior derecho, inferior izquierdo e inferior derecho. Luego, se aplic el algoritmo de relleno seleccionado a cada uno, de manera que los datos se analizaron desde el centro y hacia las esquinas. Todo esto, con el objetivo de aportar la mayor cantidad de datos vlidos originales (o sea, que inicialmente no eran gaps) a la funcin de regresin lineal, a la hora de calcular el valor del color de relleno.

34

Captulo 3 Implementacin

Miembros de la claseA continuacin se exponen los miembros de la clase ImageProcessor entre los que se encuentra implementado, finalmente, el algoritmo de relleno seleccionado para cumplir el objetivo de este proyecto. En esta funcin (Ver Cdigo 2) se bloquean los bitmaps correspondientes a las imgenes primaria y secundaria, y se llama al mtodo que rellena los gaps para cada cuadrante. Es vlido destacar que, aunque se trabaj por cuadrante, se tuvieron que bloquear en memoria las imgenes procesadas completas, para no restringir la bsqueda de los pxeles comunes a un solo cuadrante, y tratar siempre de buscar la ventanita que los contenga, con el gap analizado lo ms centrado posible. Los parmetros que recibe son los siguientes: Bitmap prime_Bmp, fill_Bmp: Especifican los bitmaps correspondientes a las imgenes primaria y secundaria respectivamente. List prime_left_Border, prime_right_Border: Lista de las que delimitan las fronteras izquierda y derecha de la imagen real en la imagen primaria respectivamente. que List fill_left_Border, fill_right_Border: Lista de las delimitan las fronteras izquierda y derecha de la imagen real en la imagen de relleno respectivamente.Gap_Fill:

Cdigo 2 Funcin Gap_Fill

Quarter_Gap_Fill:

Mtodo donde se aplica el algoritmo de relleno seleccionado (Ver Cdigo 3). Los parmetros que recibe son, adems de las fronteras de las imgenes primaria y secundaria, los siguientes:

35

Captulo 3 Implementacin

Bitmap_Data prime_Data, fill_Data:

bitmaps correspondientes a las respectivamente. Point pi, pf: Son los dos puntos que determinan el rectngulo correspondiente al cuadrante analizado desde el centro pi, hasta la esquina pf. int ptr_Remain: Especifica si en una misma fila el puntero se mueve hacia adelante o hacia atrs (sus valores posibles son 1 -1 respectivamente). int y_Remain: Especifica si en una misma columna el puntero sube o baja (sus valores posibles son -1 1 respectivamente)

especifican los atributos de los imgenes primaria y secundaria

Ntese como la evaluacin de las condiciones para proceder en los ciclos depende de estos dos ltimos parmetros, los cuales son necesarios sobre todo, para identificar aquellos casos en que la movida del puntero sea hacia atrs en una fila, o hacia arriba en una columna.

Cdigo 3 Mtodo Quarter_Gap_ Fill, donde se rellenan los gaps, segn el proceso de macheo de histogramas propuesto en el Phase 2 Gap-Fill Algorithm.

Find_NxN:

Funcin para buscar la ventana de pxeles comunes alrededor del gap que se est analizando mediante un llamado al mtodo Grow. Devuelve un objeto de tipo NxN que ser explicado ms adelante.

36

Captulo 3 Implementacin

Mtodo para expandir la ventana de pxeles comunes, tratando de mantener la forma cuadrada, pero no forzando a ello. Esto lo logra determinando los puntos que delimitan las filas y columnas a expandir (como se ilustra en el Cdigo 4), los cuales pasa como parmetro a las funciones Grow_Col y Grow_Row, encargadas de chequear en la bsqueda de los mismos.

Grow:

Cdigo 4 Ejemplo de la forma en que se determinan los ndices que delimitan las columnas o filas a expandir.

y Grow_Row: Son los mtodos donde se leen desde un punto inicial hasta uno final pasados por parmetro, una columna o una fila respectivamente, en bsqueda de pxeles comunes.Grow_Col Gain: Funcin que devuelve un objeto de tipo Co_Vector, con los valores del gain y el

bias requeridos para calcular la funcin de regresin lineal. Recordemos que estos son los coeficientes de la ecuacin de regresin empleada para calcular el valor del color de relleno ( ). Es en esta funcin que se calculan y ajustan de ser necesario, los valores del gain y el bias.Inside_Real:

Funcin booleana que determina si un punto est contenido en la

imagen real. Funciones Window_Mean y Standard_Deviation: Devuelven la media y la desviacin estndar de un conjunto de valores respectivamente. Adems se implementaron las clases a las cuales se hizo referencia anteriormente: NxN: Representa la ventana de pxeles comunes, contiene dos listas que

almacenan los valores de los datos que les corresponden a estos, en las imgenes primaria y de relleno respectivamente. Co_Vector: Representa un vector con los valores de los coeficientes de la funcin de regresin que sern empleados, almacenados en los campos gain y bias.

3.3 AplicacinSe dise una aplicacin sencilla (Figura 11) y bastante intuitiva con el objetivo de que resulte cmoda y prctica a la vez para los usuarios, que permite realizar los

37

Captulo 3 Implementacin

procedimientos correspondientes de correccin de las imgenes. Para su utilizacin, se requiere el Sistema Operativo Windows con el .NET Framework 2.0 o superior.

Figura 11 Forma principal de la aplicacin implementada

Cada vez que se abre o crea una imagen, se le asocia una escena (Scene) que la representa. Para poder visualizarla dentro de la aplicacin, se dise la Forma View_Form, como se muestra a continuacin en la Figura 12.

Figura 12 Ejemplo de la aplicacin con dos imgenes cargadas

3.3.1 Opciones del men File/Open: Muestra un dilogo que permite seleccionar las imgenes a abrir, las cuales se visualizan automticamente. File/Save: Crea un fichero con extensin .tif, cuyos datos son rellenados con los Header, Bitmap y Footer correspondientes a la imagen activa.38

Captulo 3 Implementacin

File/Properties: Muestra las propiedades de la imagen activa. Para ello se dise la Forma Properties, ilustrada en la Figura 13.

Figura 13 Ejemplo de la visualizacin de las propiedades de una imagen

File/Exit: Cierra la aplicacin. Options/Gap Fill: Muestra un dilogo en el cual se escogen las imgenes primaria y de relleno, de todas las que se encuentran abiertas (Figura 14). Para ello es necesario que existan al menos dos, de lo contrario, se mostrar un mensaje de error para alertar al usuario.

Figura 14 Opcin de rellenar los gaps

Una vez seleccionadas las imgenes, se hace un llamado a la funcin Gap_Fill de la clase Image_Processor, y se visualiza la imagen rellenada, la cual ser una copia de la primaria, pero su Bitmap ser el retornado por esta funcin. En39

Captulo 3 Implementacin

la Figura 15 se muestra un ejemplo del resultado de rellenar un fragmento de la escena 15-45.

Figura 15 Resultado de rellenar los gaps correspondientes a un fragmento de la escena 15-45

Para poder saber si an existen gaps en esta imagen despus de aplicar el algoritmo de relleno, se puede ver la frecuencia del valor 0 en la grfica de las propiedades que representa el histograma correspondiente.

40

Captulo 4 Resultados

Captulo 4 ResultadosLos resultados obtenidos al utilizar el software desarrollado fueron efectivos y satisfacen las expectativas de los especialistas que lo han evaluado. Los pxeles con datos invlidos producto del SLC-off en las imgenes corregidas, fueron rellenados con valores que se ajustan a los de los datos vlidos de la misma, y para ello fueron requeridas a lo sumo 5 imgenes. En la Figura 16 se puede observar una comparacin de los resultados alcanzados al procesar imgenes de la escena 15-45 tomadas en Enero del 2009. Ntese cmo en (b) se eliminan los puntos negros pero se rellenan con valores que resaltan a la vista, dificultad que no est presente en (c).

Figura 16 Comparacin de resultados: a) imagen con gaps, b) resultado de corregir los datos con el ENVI, c) resultado obtenido con la aplicacin desarrollada.

Para evaluar la factibilidad del uso del software se realizaron pruebas con la aplicacin para estudiar el tiempo de procesamiento. Estaba demostrado que el algoritmo funcionaba, pero no se saba cunto iba a tardar procesar las imgenes completas o si las computadoras de las cuales se dispone en Cuba seran capaces de soportarlo. Se hicieron pruebas con parejas de imgenes de diferentes bandas, se midi el tiempo de corrida y se calcul la velocidad de procesamiento en estas condiciones. Los resultados se muestran en la Tabla 3. La mquina tena las siguientes caracterasticas: Velocidad de reloj original: 2667 MHz; procesador Intel Celeron D 331 a 2666 MHz; cach L1: 16 KB; cach L2: 256 KB; Memoria RAM: 1 GB DDR SDRAM PC3200 (200 MHz) El tiempo de procesamiento de las imgenes oscil entre 5 y 12 minutos en dependencia del tamao, lo que se considera aceptable si se tiene en cuenta el ahorro de tiempo, dinero y trabajo de especialistas.

41

Captulo 4 Resultados

Tabla 3 Estudio de la velocidad de procesamiento de las imgenes.

BANDA TAMAO x2 (MB) 3 5 4 3 4 1 2 3 4 5 7 64,22 64,22 64,22 64,22 64,22 101,50 101,50 101,50 101,50 101,50 101,50

TIEMPO MINUTOS 7,45 6,1 5,29 7,55 5,3 10,35 11,2 11,28 11,05 11,2 11,15

RATIO T/T (MB/S) 0,14 0,18 0,20 0,14 0,20 0,16 0,15 0,15 0,15 0,15 0,15

Se estima el aporte econmico tanto por la utilidad que brindan estas imgenes por su valor de uso en la obtencin de resultados (normalmente puede ser muy superior a las de su costo directo), como por el gasto en que se incurrira para adquirirlas en el mercado internacional. Por ejemplo, en este momento estn en su fase inicial tres proyectos de la Unidad Cientfico Tcnica de GEOCUBA de Investigacin y Consultora, con un valor total de 1 milln de pesos y 5000 CUC, para la elaboracin de los mapas de cobertura forestal y uso de suelos en el pas a escalas 1:250.000 y 1:100.000, cuya realizacin slo ser posible utilizando las imgenes corregidas con la aplicacin desarrollada. El trabajo se considera una novedad tecnolgica en Cuba.

42

Conclusiones

ConclusionesAl estudiar el problema expuesto en este trabajo, muchas incgnitas fueron planteadas ante la incertidumbre de si sera posible o no rellenar correctamente los datos invlidos de las imgenes del Landsat 7 producidos por el SLC-off y, suponiendo que la respuesta fuera positiva, si sera factible aplicarlo con el soporte tecnolgico que existe en el pas. Se implement el proceso de macheo de histogramas del Phase II Gap-Fill Algorithm para corregir los valores radiomtricos perdidos en las escenas del Landsat 7 SLC-off. Los resultados obtenidos se consideran cualitativamente superiores a los que tradicionalmente se alcanzaban en el pas utilizando la aplicacin ENVI. La insercin de la aplicacin desarrollada en diferentes centros del pas permitir la mejora de los estudios cartogrficos y del seguimiento de fenmenos medioambientales con un considerable ahorro de divisas. Hasta el momento la aplicacin del paquete de softwares ha sido utilizada con xito en la fase inicial de tres proyectos de la Unidad Cientfico Tcnica de GEOCUBA y se espera que tenga ms aplicaciones en el futuro inmediato.

43

Recomendaciones

RecomendacionesEn este proyecto, slo ha sido abordado el problema de los gaps de las escenas del Landsat 7. Para dar continuidad al trabajo, se recomienda automatizar los procesos previos de preparacin de las imgenes para que cumplan los requerimientos del algoritmo implementado: tener el mismo tamao en cuanto a filas y columnas, corresponderse a la misma localizacin geogrfica, y estar libres de nubes y sus sombras.

44