grass tutorialj

17
 T utorial de WinGrass para Teledetección (con anotaciones; versión 6.3.cvs) 2006/2007 1. Introducci ón Grass es un sistema de GIS con gran cantidad de utilidades de procesamiento de imágenes que lo hacen una buena herramienta para analizar las imágenes de teledetec- ción. Grass es un programa de código abierto, esto es, el código del programa es público y cualquiera (con conocimientos de programación) puede añadir utilidades para au- mentar sus capacidades o facilitar su manejo. Fruto de la colaboración en esto último, por ejemplo, es el sistema de menús de la interfaz gráca. Gr as s nació en el mu nd o Unix y es o ha dete rminado su ar qu it ectu ra . En ca da sesión, Grass trabaja dentro de un directorio de proyectos desde el que opera sobre una base de datos que almacenada en un subdirectorio (en el interior de éste, se hallan archivos y más subdirectorios con información de la base de datos que no deben ser abiertos directamente). Una base de datos de Grass se denomina proyecto o “location”, porque en su interior habrá información geográca relativa a una misma localización. Cada base de datos contiene grupos de mapas o “mapsets”, en los que se guarda realmente la información. Veremos que los “mapsets” se pueden relacionar luego entre sí (son como las tablas de una base de datos relacional). Para modicar la base de datos, para extraer información de ella, para desplegar la información gráca que contiene, etc. Grass emplea programas independientes, que se suelen llamar módulos, y que se nombran siguiendo el esquema general grupo.operación.tipo El grupo es una letra que indica la parte de Grass que se encargará de la tarea: d. sere er ea op eraciones dedes pl ie gu e gr á code al nti po(ej . d.hist og ra m) db. sere er ea op eraciones dire ct amen tesob rela ba sede datos (e j.db.c on nect ) g. se re e re a comandos ge ne ra les de Grass (e j. g.r emov e) i. se re e re a coma ndos de pr ocesamie nt o de imág enes (e j, i. gr oup) photo . se ree re a coma ndos para proce sar fotog rafí as aéreas (ej. phot o.cam era) 1

Upload: merymoon05

Post on 07-Oct-2015

2 views

Category:

Documents


0 download

DESCRIPTION

Tutorial del sistema de información geográfico grass

TRANSCRIPT

  • Tutorial de WinGrass para Teledeteccin(con anotaciones; versin 6.3.cvs)

    2006/2007

    1. IntroduccinGrass es un sistema de GIS con gran cantidad de utilidades de procesamiento de

    imgenes que lo hacen una buena herramienta para analizar las imgenes de teledetec-cin.

    Grass es un programa de cdigo abierto, esto es, el cdigo del programa es pblicoy cualquiera (con conocimientos de programacin) puede aadir utilidades para au-mentar sus capacidades o facilitar su manejo. Fruto de la colaboracin en esto ltimo,por ejemplo, es el sistema de mens de la interfaz grfica.

    Grass naci en el mundo Unix y eso ha determinado su arquitectura. En cada sesin,Grass trabaja dentro de un directorio de proyectos desde el que opera sobre una basede datos que almacenada en un subdirectorio (en el interior de ste, se hallan archivosy ms subdirectorios con informacin de la base de datos que no deben ser abiertosdirectamente). Una base de datos de Grass se denomina proyecto o location, porqueen su interior habr informacin geogrfica relativa a una misma localizacin. Cadabase de datos contiene grupos de mapas o mapsets, en los que se guarda realmente lainformacin. Veremos que los mapsets se pueden relacionar luego entre s (son comolas tablas de una base de datos relacional).

    Para modificar la base de datos, para extraer informacin de ella, para desplegar lainformacin grfica que contiene, etc. Grass emplea programas independientes, que sesuelen llamar mdulos, y que se nombran siguiendo el esquema general

    grupo.operacin.tipoEl grupo es una letra que indica la parte de Grass que se encargar de la tarea:d. se refiere a operaciones de despliegue grfico de algn tipo (ej. d.histogram)

    db. se refiere a operaciones directamente sobre la base de datos (ej. db.connect)

    g. se refiere a comandos generales de Grass (ej. g.remove)

    i. se refiere a comandos de procesamiento de imgenes (ej, i.group)

    photo. se refiere a comandos para procesar fotografas areas (ej. photo.camera)

    1

  • r. se refiere a comandos que operan sobre datos raster (es decir, orientados aimgenes definidas por pxels) (ej. r.colors)

    r3. se refiere a comandos que operan sobre datos raster tridimensionales (esdecir, orientados a volmenes definidos por vxeles) (ej. r3.to.rast)

    v. se refiere a comandos que operan sobre datos vectoriales (ej. v.type)

    p. o ps. se refiere a comandos de impresin o de generacin de mapas en PostScript(ej. ps.map)

    Los mdulos pueden recibir argumentos, que se escriben a continuacin del nombre delmdulo, y que les indican qu deben hacer o cmo hacerlo. Todos ellos se relacionan,a travs de la sesin de Grass, con la base de datos.

    Nota: Gracias a la interfaz grfica en Tcl/Tk, no es necesario memorizar loscomandos ms bsicos, ya que se pueden llamar desde los mens y eje-cutar desde los dilogos.Gracias a los tutoriales, los manuales y la ayuda en lnea (g.help) se pue-den usar los comandos, desde la ventana de comandos de la interfaz grficaque, como son tantos (ms de 350), no caben en los mens de la interfazgrfica.

    Cmo empezar?Lo primero, es instalar WinGrass. Para ello, el curso de Teledeteccin de la UNED

    proporciona un instalador Windows.

    Lo primero que pregunta el instalador es si se acepta la licencia GNU bajo la que sedistribuyen el programa, las utilidades Unix que necesita, el intrprete que gestiona lainterfaz grfica, la documentacin que lo acompaa y hasta el propio instalador. Estono significa ms que aceptar que lo que se ha recibido gratis, se debe dar gratis (y slogratis), as como cualquier software que se derive de ello (pero no los trabajos que serealicen utilizando este software, que permanecen siendo nuestros trabajos).

    Lo segundo que pregunta es qu se quiere instalar adems del WinGrass: este tuto-rial en PDF y enlaces para arrancar el programa y acceder al tutorial desde el men deinicio. Estos dos son opcionales, pero cmodos.

    2

  • Lo tercero es el directorio de instalacin. Aunque en Windows es tpico instalarlos programas en Archivos de Programa (la versin hispana del Program Files in-gls), los espacios en las rutas a los archivos no sientan bien a los programas quehay que invocar. La razn de esto es que los parmetros que se les pasan a los di-ferentes mdulos del Grass van separados del nombre del mdulo y entre s por es-pacios, de modo que un argumento que contenga espacios, como Archivos de pro-grama\TeledeteccionUNED\share\proj ser visto por el mdulo que lo vaya a utilizar(probablemente) como tres opciones: Archivos, de, programa\TeledeteccionUNED\-share\proj. El error dir: El archivo Archivos no se ha encontrado, o algo similar.La solucin es sencilla: instalar el programa en una carpeta como c:\FreeSoftware(que habr que crear previamente, y posiblemente, haciendo uso de privilegios de ad-ministrador), con un nombre sin espacios. La ausencia de espacios en los archivosque se generen posteriormente ser vital para que WinGrass funcione correctamente.Seguramente, en breve, saldr una versin Windows que no tenga este defecto, pero,hasta entonces. . .

    A continuacin el instalador descomprimir los archivos, crear el programa dearranque, escribir los enlaces, etc.

    3

  • Despus, para arrancar WinGrass habr que ejecutar el script grass63.bat, que re-side en el directorio de instalacin, o llamarlo desde el men de inicio: Programas->TeledeteccionUNED ->winGrass63.

    Nota: Al arrancar WinGrass, nuestro ordenador pitar y mostrar un mensajede advertencia, diciendo que el location no existe. Es-to es porque no habamos usado antes WinGrass y, por ello, no tiene unalocation de partida (lo que interpreta como , desconoci-da). A continuacin se explica como crear un proyecto y una location.

    4

  • 1.1. Crear una locationComo ya se ha dicho (y se repetir peridicamente), WinGrass no reacciona bien

    ante los espacios en las rutas de archivos. Por esta razn, recomendamos que los pro-yectos se creen en el subdirectorio projects del directorio de instalacin, que es elvalor por defecto.

    Una location se puede crear de 1+3 maneras diferentes.

    0. Copindola de otra instalacin de Grass, o bajndola de Internet (como los datosSpearfish,http://grass.navicon.dk/sampledata/spearfish_grass57data.tar.gz,que se usan profusamente en los tutoriales).

    1. Crendola a partir de una imagen georreferenciada.

    5

  • 2. Crendola a partir de un cdigo EPSG (cdigos de coordenadas de la EuropeanPetroleum Survey Group), que aglutinan sistema de proyeccin y regin proyec-tada.

    3. Crendola a partir de unos valores de proyeccin (datum e intervalos de latitudy longitud que comprenden la location.

    Crear una location a partir de una imagen georreferenciada

    Si tuviramos una imagen georreferenciada (por ejemplo, un GeoTiff), bastara pul-sar el botn Georeferenced file para importar la informacin de la proyeccin y crearuna location adaptada e esta imagen. Si la imagen no est georreferenciada, pode-mos engaar a Grass para que la use sin asignarle una proyeccin (Grass le asignaun cdigo 0 de proyeccin y otro 0 de datum).

    De cualqier modo, Georeferenced file abrir un dilogo que nos pedir el nom-bre de la nueva location y que seleccionemos de nuestro disco duro la imagen departida. Hecho esto, aceptaremos Define location y (si no falla nada) veremos queha aparecido una nueva entrada entre las Project Locations disponibles, con un map-set llamado PERMANENT, que siempre se crea por defecto. Hecho esto, podemosentrar en Grass.

    Lo que ha hecho WinGrass (en el caso de que la imagen no contenga iformacingeogrfica) es inicializar la proyeccin de la location a una proyeccin inexistentedel tipo (x,y) en unidades de la imagen (pxels), en vez de la usual latitud-longitud, engrados. Por lo tanto, las coordenadas del borde norte (superior) de la imagen sernigual a la altura de la imagen, las del borde este, iguales a la anchura de la imageny las de los bordes sur (inferior) y oeste (izquierdo), idnticamente cero. Por otrolado, evidentemente, la resolucin ser de 1 unidad por pxel, tanto en una direccincomo en la otra. Todo esto, sin importar la imagen, slo su informacin geomtrica.

    Nota: A veces, WinGrass no ser capaz de llevar a cabo la creacin de una loca-tion dada. Un mensaje de error (extrao incluso para los programadores)

    6

  • informar de ello, mientras que en la lista de Project locations habr si-do creada una que no se puede seleccionar (adems se llamar algo ascomo 809.tmp, variando el nmero). Cuando suceda esto, se deber in-sistir. Desde una ventana del explorador de archivos, se borran tanto lacarpeta 809.tmp (u otra que se mencione en el error) como el archivo.grass63, si ste se acaba de crear. Se vuelve a intentar la operacin. Aveces, es necesario cerrar WinGrass y volverlo a arrancar (siempre, eli-minando primero la carpeta temporal y el archivo .grass63 que se hayacreado de forma defectuosa). El motivo de este comportamiento errtico,es desconocido.

    Para importar la imagen ser necesario entrar en Grass. Una vez dentro, se accede almen File->Import->Raster map. En este men, la opcin ms general es Mul-tiple formats using GDAL, que emplea la biblioteca GDAL (Geospatial Data Abstrac-tion Library) para interpretar los formatos de archivo ms utilizados guardndolos enla base de datos como capas en el mapser de la location. El dilogo que se abrir nospedir dos datos imprescindibles: el archivo que contiene la informacin (Raster fileto be imported, que se puede seleccionar desde un dilogo de seleccin de ficheros) yel nombre que daremos a las capas que contenga (Name for output raster map). Alleer el archivo, Grass crear una serie de capas (layers) a partir de los canales quecontenga la imagen, a los que llamar con el nombre que nosotros le diramos seguido(separado por un punto) del nombre del canal.

    Nota Por ejemplo, una imagen RGB que denominramos mapa, resultara entres capas: mapa.red, mapa.green y mapa.blue. Una imagen multi-espectral (o hiperespectral), que se llamara multimapa, resultara en lascapas multimapa.1, multimapa.2, multimapa.3, . . .

    7

  • Nota: Una vez se acepta, en la ventana de salida (Output) se mostrar el men-saje Projection of input dataset and current location appear to match(esto es, la imagen con la que se cre la location y la que se est cargandotienen idnticas dimensiones), seguido de Proceeding with import. . . .

    . . .

    Nota: Algunas imgenes LANDSAT, multibanda y georreferenciadas (en forma-to GeoTIFF), se pueden obtener en la direccin

    http://glcfapp.umiacs.umd.edu:8080/esdi/index.jsp

    En esta pgina se puede seleccionar grficamente, desde una interfaz deweb, con un mapa, la zona de inters de nuestro estudio (indicando algu-nos otros datos). Finalmente, se obtiene un enlace a un directorio FTP des-de el que bajarse las imgenes. Se trata imgenes relativamente grandes,dado que Landsat proporciona una resolucin de 30 m (en su 8 bandas) yel swath de este satlite es de 185 km (y las imgenes son aproximada-mente cuadradas). Un tamao tpico son 88517872 pxeles.

    Crear una location a partir de un cdigo EPSG

    Los cdigos EPSG son cdigos numricos asignados por el European PetroleumSurvey Group (EPSG, Grupo Europeo para el Sondeo de Petroleo) para definir losparmetros geodsicos de una proyeccin topogrfica.

    Seleccionar, bajo la leyenda Define new location with. . . el botn EPSG codes.Entonces se abrir un dilogo en el que se podr introducir el nombre de la location(Name of new location). El cdigo EPSG que corresponder a sta, se puede intro-ducir directamente en EPSG code number of projection, o buscarlo (lo ms prctico)pulsando el botn Browse a la derecha de este campo. Entonces se abrir un archivo

    8

  • de texto: situando el cursor en el datum que se quiere utilizar, y pulsando el botn Grabcode, se anotar el cdigo en la lnea de texto. Slo falta decir Define location.

    Nota: Un cdigo EPSG til en Espaa (y resto de Europa) es el que aparececomo ED50 en el archivo de cdigos EPSG que viene con Grass. Se puedededucir que este sistema de proyeccin usa las coordenadas de latitud ylongitud, y como elipsoide del datum el internacional (de 1924, con puntofundamental en Postdam).

    Esto ha definido una location en blanco, para empezar, sin ninguna informacinacerca de las coordenadas de los bordes de la imagen ni, por supuesto, ninguna infor-macin de imgenes (u otra) asocidada a ella. Grass slo sabe la proyeccin que seutilizar y (si el cdigo EPSG especifica rea) la regin de la Tierra a la que correspon-de.

    Nota: Para que la bsqueda de cdigos EPSG funcione, debe estar bien seleccio-nado el Path to EPSG codes-file (el instalador inicializar este valor alarchivo instalado con WinGrass, por lo que no har falta modificar el valorpor defecto).

    9

  • Para definir el rea geogrfica que comprende la location, habr que entrar en Grass(Enter Grass) y usar los mens Config ->Region ->Change region settings dela ventana principal (en cuyo ttulo aparece GIS Manager). Esto abrir un dilogoen el que se podrn indicar los mrgenes (Bounds) norte, sur, este y oeste, y las re-soluciones (Resolution) en ambos ejes (pxeles cuadrados, Grid resolution 2-D), opor separado (North-South grid resolution 2-D y East-West grid resolution 2-D).Alternativamente a las resoluciones (en grados por pxel), se pueden especificar el n-mero de filas y de columnas (de pxeles) de la regin. En el mismo men aparecen otrasopciones ms avanzadas (como la resolucin de mapas de relieve, digital elevation mo-dels, en Top-bottom grid resolution 3-D).

    Nota: Una manera fcil de obtener imgenes cuyas coordenadas conocemos espor medio de Google Maps. Desde la direccin http://maps.google.com sepuede acceder a imgenes de satlite georreferenciadas de todo el mun-do en diversas resoluciones. El problema es que no se pueden copiar. . .

    10

  • fcilmente, sin pasar por un pantallazo (usar la tecla Print screen delteclado y pegarla en una nueva imagen de, por ejemplo, MS Paint).Para obtener las coordenadas de la imagen que muestra Google, y en elformato decimal que usa Grass (adems), se puede elegir Obtener un en-lace a esta pgina. Entonces Google Maps nos dar un URL, que contienecuatro nmeros, por ejemplo (destacados en negrilla)http://maps.google.com/maps/ms?ie=utf8&hl=es?msa=10&ll=42.384669,-8.724861&spn=0.169398,0.32135&z=12&om=1stos son, por orden, las coordenadas latitud-longitud del centro de la ima-gen (las coordenadas son negativas si se hallan en el hemisferio sur o en elhemisferio occidental) y el tamao, en grados, de la imagen. De este mo-do, basta sumar o restar (vectorialmente) la mitad de este segundo par alprimero para obtener los mrgenes (Boundaries) de la regin represen-tada por la imagen, que nos pedir Grass. La resolucin de la imagen, quetambin nos pedir Grass, se calcula como el cociente entre la altura de laimagen en pxels y la altura de la imagen en grados; debera coincidir conel cociente entre las anchuras (en pxeles y en grados), pero si no, Grassdeja introducir los datos independientemente.

    Crear una location a partir de unos valores de proyeccin

    Nota: Esta opcin no funciona totalmente bien en WinGrass, debido a limita-ciones de la consola de comandos de Windows a la hora de componercaracteres (en particular, de interpretar la secuencia Escape-Enter que usaGrass para dar por finalizada la entrada de datos).

    . . .

    1.2. Ver una locationWinGrass (en la versin 6.3 distribuida en este curso de teledeteccin) abre, na-

    da ms entrar en la interfaz principal (despus de pulsar el botn Enter Grass) tresventanas:

    11

  • la ventana principal (el GIS Manager), que contiene los mens que realizan lasprincipales operaciones de Grass as como la lista de capas que muestra el visorseleccionado

    la ventana de visor, que permite ver las capas seleccionadas del mapset de lalocation (que se eligen y combinan desde la ventana principal)

    la ventana de comandos, en la que se muestran las llamadas a los comandos deGrass y sus resultados (incluso si estos comandos se llevan a cabo desde mensdel GIS Manager o mediante eventos de Map Display)

    Nota: Anteriormente (en versiones ms antiguas de Grass) la nica ventana dis-ponible era la principal. Como ventana de comandos se usaba un terminaltipo Unix (el mundo en el que naci Grass) y las ventanas de visuali-zacin haba que abrirlas de cada vez, usando i.display (o entrada en elmen equivalente). Ahora tambin es posible abrir un nuevo visualizador,tanto llamando a i.display como usando el icono en la barra de herra-mientas (el tooltip indica Start new map display monitor)

    En este tutorial trataremos slo (o principalmente) las imgenes raster, esto es, lasconstituidas por pxeles y obtenidas mediante sensores (fotogrficos, radiomtricos,radar, etc.). Existen dos tipos de capas raster que se pueden mostrar en la ventana delvisor:

    canales de las imgenes del mapset: se aaden estas capas pulsando el botn dela barra de herramientas Add raster layer.Entonces, una nueva capa ser aadida al panel Map Layers for Display de laventana principal. El canal especfico se elige pulsando el botn Base map eneste panel de entre todos los canales de imgenes disponibles en el mapset. Paracombinar esta capa con las dems que se muestran en el visor, se puede jugar con

    12

  • su opacidad/transparencia (canal alfa). Adems, se puede marcar o desmarcarla capa para que sea visible o invisible en el Map Display.

    combinaciones RGB (o HIS) de canales del mapset: se aaden estas capas pul-sando el botn de la barra de herramientas Add RGB or HIS layer.Entonces, una nueva capa ser aadida en Map Layers for Display, pudin-dose seleccionar los canales del RGB o del HIS con los botones red (RGB) orhue (HIS) (para el rojo o la tonalidad), green (RGB) or intensity (HIS) (parael verde o la intensidad) y blue (RGB) or saturation (HIS) (para el azul o lasaturacin), respectivamente. Qu modelo de componentes de color se usar, de-pender del botn seleccionado: display map as RGB o display map as HIS.De nuevo, es posible mostrar o no mostrar esta capa, y hacerla ms o menostransparente u opaca.

    13

  • Nota: Adems de capas raster, Grass maneja capas vectoriales ms o menosespecializadas.As, es posible con el botn de la barra de herramientasAdd vector layeraadir una capa vectorial, la cual podra haber sido importada antes desdeFile->Import->Vector map->Various formats using OGR.El botn Add directional arrows layer permite definir un campo de di-recciones (o de velocidades), que se calcula a partir de dos canales: elde direccin y el de mdulo.El botn Add thematic map layer permite usar una imagen vectorial (enla que se definen puntos o regiones) para asignar valores numricos a dis-tintas zonas de la location y rotularlas en el visor.

    1.3. Calcular nuevas capasUna de las operaciones ms sencillas con capas de un mapset es la aritmtica de

    capas, esto es, las operaciones entre los valores de los pxels de iguales coordenadasde las distintas capas. Este tipo de operaciones son frecuentes para calcular ndices decoberturas (por ejemplo, ndices de vegetacin), en los que se relacionan los valoresde reflectancia en distintas bandas. En WinGrass estas operaciones se llevan a cabomediante el men Raster->Mapcalculator.

    El dilogo que lanza Mapcalculator pide, en primer lugar, las capas del mapsetcon las que se va a trabajar. A cada una (hasta un mximo de cuatro) se le asigna unaletra: A, B, C, D. En el campo Formula se escriben las operaciones que se quieren lle-var a cabo entre las capas A, B, C, D (empleando estos smbolos para referirse a ellas).Por ltimo, pide el nombre de la capa en la que se guardar el resultado Resultingoutput map.

    Consideremos, por ejemplo, una imagen de Thematic mapper (imagen Landsat)y calculemos el ndice de vegetacin normalizado, que se define como el cociente

    NDVI =R[4]R[3]R[4]+R[3]

    donde R[#] es la reflectividad medida en la banda # del sensor EMT+ del Landsat 71.

    1Las bandas del sensor Landsat-7 ETM+ (Enhanced Thematic Mapper +) son las siguientes:

    # banda rango Comentarios1 450 nm515 nm Verde-azulada; penetra en el agua2 525 nm605 nm Verde; mxima reflectancia de la vegetacin3 630 nm690 nm Rojo; mxima absorcin de la clorifila4 775 nm900 nm Infrarrojo cercano; estimacin de biomasa5 1,55m1,75m Infrarrojo medio; permite discriminar vegetacin y

    suelos6 10,4m12,5m Infrarrojo trmico; determinacin de la temperatura y

    la humedad; menor resolucin espacial 60 m7 2090 nm2350 nm Infrarrojo medio; permite discriminar minerales y

    rocas8 520 nm900 nm Pancromtico; imgenes visibles en escala de grises;

    mayor resolucin espacial 15 m

    14

  • Importemos las imgenes (ya calibradas y georreferenciadas) correspondientes acada banda desde archivos GeoTIFF (vase ms arriba cmo conseguir estas imge-nes). Seleccionemos los dos canales (3 y 4 en este caso) e introduzcamos en el dilogode Map calculator el primero como canal A y el segundo como canal B. En la ex-presin matemtica introducimos A-B y guardamos el resultado en una nueva capade denominaremos NDVInum. Igualmente, introducimos la expresin A+B (conlas mismas A y B que antes) y guardamos el resultado en NDVIden. Ahora, selec-cionamos como canal C, NDVInum y como canal D, NDVIden, e introducimos lafrmula C/D. El resultado lo guardamos en NDVI: ste es el mapa de ndices devegetacin buscado.

    Nota: Si en el campo de la expresin matemtica, introducimos (A-B)/(A+B),WinGrass produce un mensaje de error: esta sintaxis con parntesis pareceinterferir con la sintaxis de la lnea de comandos desde la que pasa losargumentos el intrprete Tcl/Tk al programa r.mapcalculator.

    Todas ellas permiten determinar la reflectancia espectral de las cubiertas del terreno, con resolucin espa-cial de 30 m (excepto la #6 y la #8).

    15

  • Nota: Si realizamos una operacin y, despus de ver el resultado, nos damoscuenta de que la frmula usada es errnea, deberemos eliminar la capa deresultado antes de proceder a rectificar nuestro error. Para ello, tendremosque seleccionar File->Manage maps and volumes->Remove maps y, enel dilogo que se abre, seleccionar el mapa que queremos olvidar. Sin estaoperacin, r.mapcalculator nos generar un error, informndonos de queERROR: option : exists, esto es, la capa que queremoscrear ya est creada.

    Nota: Un mtodo ms potente para realizar operaciones entre imgenes es te-clear el comando r.mapcalc en la ventana de comandos y pedirle a Grassque lo ejecute en un terminal (Run in Xterm, aunque realmente es unaconsola deWindows). r.mapcalc nos mostrar un prompt en el que po-dremos introducir las ecuaciones. Por ejemplo, para llevar a cabo el clculoanterior, teclearamosmapcalc>ponte.NDVIS = int( 128 * (ponte.4 - ponte.3) / (ponte.4 +ponte.3) + 128 )mapcalc>end

    Esta ecuacin indica a Grass que calcule el NDVI (que siempre estar en elintervalo (1, 1)), lo rescale al intervalo [0, 256) y convierta el resultadoa valores enteros. Por ltimo, se indica que se ha terminado de introduciroperaciones con end (se podran introducir ms operaciones, si quisi-ramos, que creasen otras capas). Una vez le hemos dicho qu tiene quehacer, r.mapcalc se pone a hacerlo, indicando el porcentaje de progreso,y cierra su terminal al acabar (dependiendo del tamao de las imgenes ode la complejidad del clculo deberemos esperar ms o menos).

    Nota: Cuando se calcula una imagen o cuando se muestra una imagen con va-lores de los pxels en coma flotante (esto es, con valores no enteros), a

    16

  • veces Grass nos los muestra en falso color, esto es, usando una paletade colores que (presuntamente) nos permite ver mejor los contrastes en laimagen. A veces, estos contrastes mostrados por WinGrass son indeseadosy es preferible la representacin ms sencilla: en escala de grises.

    Para lograr esto, se debe indicar a Grass qu tabla de colores debe usarcon Raster->Manage map color->Set colors to predefined color tables.En el dilogo, se selecciona la capa en cuestin (Name of input rastermap) y de la lista Type of color table se selecciona, o bien gray1.0(si los valores de los pxels se encuentran en [0,1)) o bien gray255 (sise encuentran en [0,256)) o bien gray (que adapta la tabla de color a losvalores en la imagen).

    Referencias[1] http://grass.itc.it: Pgina oficial del proyecto Grass.

    [2] M. Neteler & H. Mitasova. GRASS Open source GIS: A GRASS GIS Approach.Kluwer Academic Press, 2004. Tambin en http://grass.itc.it/netler/grass54

    [3] http://jrshelby.com/grass/tutorial60: Tutorial de Grass 6.

    [4] http://grasscastellano.tk: Espacio de noticias sobre el desarrollo de Grass en espa-ol.

    17

    IntroduccinCrear una locationVer una locationCalcular nuevas capas