Skip to content

Datos Raster

Un mapa raster es una capa de datos consistente de un arreglo matricial de celdas. Este tiene una cierta cantidad de filas y columnas, con un dato puntual (o un indicador de valor nulo) en cada celda. Estos pueden existir como una rejilla en 2D o como un cubo en 3D.

Las fronteras geográficas de un mapa raster son descritas por los campos: north, south, east y west. Estos valores describen las líneas que acotan el mapa en sus esquinas. Estas líneas no pasan a través del centro de la rejilla de celdas en la esquina del mapa, sino afuera del mapa.

Como regla general en GRASS:

  • Las salidas de mapas raster tiene sus fronteras y resolución igual a la región en procesamiento actual.
  • Los mapas de entrada raster son automáticamente cortados o re-escalados para que coincidan con la región actual.

Importación de datos usando Grass ascii

El comando r.in.ascii convierte un archivo raster en ASCII a una capa raster en binario. El archivo raster ASCII tiene una sección de encabezado que describe la ubicación y tamaño de los datos, seguidos por los datos.

El encabezado tiene 6 líneas:

	north: xxxxxx.xx
	south: xxxxxx.xx
	east:  xxxxxx.xx
	west:  xxxxxx.xx
	rows:  r
	cols:  c

Los campos north, south, east y west son las coordenas de las esquinas de la región geográfica. Los campos rows y cols describen las dimensiones de la matriz de datos a seguir. Los datos que siguen son r filas de c enteros, pero no es necesario que todos los datos de una fila estén en una línea.

Opcionalmente los siguientes parámetros pueden ser definidos en la sección de encabezado:

	null:  nn
	type:  float
	multiplier: 2.
  • "null" define un string o número a ser convertido a valor nulo (no data).
  • "type" define el tipo de dato (int,float,double) y no es requerido
  • "multiplier" es una parámetro opcional para multiplicar cada valor en las celdas

Ejemplo

Considere el siguiente archivo, llamado ejemploRaster.txt, que incluye una serie de valores de ejemplo:

north:                   4299000.00
south:                   4247000.00
east:                     528000.00
west:                     500000.00
rows:                         10   
cols:                         15   
null:                      -9999   
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

El comando para importar este archivo en GRASS sería similar al siguiente:

r.in.ascii input=ejemploRaster.txt output=mapRaster1 title="Ejemplo raster"

Exportación de datos ascii

El comando r.out.ascii convierte un capa de una mapa raster en un archivo de texto ASCII.

El comando para exportar el mapa raster anterior en GRASS sería similar al siguiente:

r.out.ascii input=mapRaster1 output=mapRasterOut1.txt

Definición de la región

Ahora se debe definir la región que utilizará Grass para generar capas raster. Además se debe especificar la resolución (cantidad de filas y columnas) que utilizará dicha región, el siguiente comando permite realizar eso:

g.region n=100 s=0 w=0 e=100 rows=100 cols=100

Despliegue en pantalla

Ahora utilice el comando el siguiente comando para desplegar la imagen en pantalla:

d.rast map=interpolacion

Importación y exportación usando ascii ESRI

Otro formato muy utilizado para intercambio de datos entre diferentes software de SIG, es el ESRI ARC/INFO ASCII, el cuál es diferente del GRASS ASCII. El comando utilizado para importar datos en este formato es r.in.arc y acepta un parámetro type que establece el tipo de celda: CELL para enteros, FCELL para punto flotante (la opción por omisión). El formato de un archivo de este tipo será de la forma:

ncols            10
nrows            10 
xllcorner       100 
yllcorner       100 
cellsize         10
NODATA_value  -9999
	
0 0 0 0 0 0 0 0 0 0 
1 1 1 1 1 1 1 1 1 1 
2 2 2 2 2 2 2 2 2 2 
3 3 3 3 3 3 3 3 3 3 
4 4 4 4 4 4 4 4 4 4 
5 5 5 5 5 5 5 5 5 5 
6 6 6 6 6 6 6 6 6 6  
7 7 7 7 7 7 7 7 7 7 
8 8 8 8 8 8 8 8 8 8 
9 9 9 9 9 9 9 9 9 9

Los mapas raster pueden ser exportados en formato ESRI ASCII mediante el comando r.out.ascii. Otros comandos tal como r.out.png, r.out.tiff y r.out.gdal permite escribir las capas raster en diferentes formatos conocidos.

Ejemplos

Para importar un archivo en formato ARC/INFO ASCII (similares a los presentados anteriormente) se puede utilizar los siguientes comandos:

r.in.gdal input=raster2.txt output=raster2

Cada capa raster puede ser escrita en un formato adecuado para visualizarlo mediante diferentes software gráficos. Sin embargo, antes de exportar los datos se debe hacer que coincida la región actual y resolución con las de la capa raster:

g.region n=200 s=100 e=200 w=100 cols=10 rows=10
r.out.png input=raster1 output=raster1.png

Metadatos

El módulo r.info despliega información general sobre una mapa tal como la región de extensión, rango de datos, tipos de datos, historia de creación, y otros metadatos. La extensión de una capa raster puede ser administrada con r.region

No hay que confundir este último comando con g.region el cual es utilizado para establecer la región actual. La región actual es la extensión y resolución utilizada por la gran mayoría de comandos para generar su salida. Para conocer la región actual se puede utilizar este mismo comando sin parámetros y con la opción -p.

Ejemplos

Mediante los siguientes comandos se modifica la ubicación de la capa raster y se verifica su nueva posición:

r.region map=raster1 n=100 s=0 e=100 w=0
r.info map=raster1

Se debe recordar que es importante redefinir la región y resolución actual para que coincida con la extensión de la nueva capa raster, con un comando como:

g.region n=100 s=0 e=100 w=0 cols=10 rows=10

Importación y exportación en otros formatos

Para importar datos en cualquier otro formato es conveniente utilizar el comando r.in.gdal que soporta hasta 45 formatos raster diferentes.

Ejercicios

  1. Cree un archivo raster que represente los elementos geográficos que se muestran en la imagen que aparece más abajo. En dicha imagen se pueden identificar: edificios, calles, un lago, y tres tipos de zonas de cultivo. Cada celda equivale a una zona de 20x20 metros. Defina los siguientes códigos para cada uno de los elementos: edificio -> 1, calle -> 2, lago -> 3, cultivo1 -> 4, cultivo2 -> 5, y cultivo3 -> 6.

  1. Genere una imagen en formato PNG a partir de dicha mapa.