Cómo utilizar la calculadora ráster con una máscara en QGIS

La calculadora ráster es una herramienta que permite realizar operaciones matemáticas sobre los valores de los píxeles existentes en un ráster, lo que es útil para la conversión y manipulación de dichos datos. Los resultados de dichas operaciones se muestran en una nueva capa ráster en un formato admitido por la librería GDAL.

Podemos dividir la calculadora ráster en tres partes:

  1. Bandas ráster. Contiene todas las capas ráster cargadas en la interfaz de QGIS y que pueden ser utilizadas para la realización de cálculos sobre las mismas.
  2. Capa resultado. Lugar donde definimos la capa de salida. Además, podemos indicar la extensión de la zona de cálculo para establecer la resolución de la capa de salida.
  3. Contiene todos los operadores disponibles para añadir a la caja de expresiones de la herramienta. Cuenta con operadores matemáticos y funciones trigonométricas.

El conjunto de operaciones que podemos realizar a través de la calculadora ráster se encuadran dentro de lo que se conoce como álgebra de mapas y que nos va a permitir realizar análisis geográficos.

En ocasiones, puede que deseemos realizar operaciones sobre una zona en concreto de un ráster de entrada, en lugar de sobre toda su extensión. Para ello podemos valernos de una segunda capa de entrada, con la extensión deseada, y sobre la que introduciremos los valores que deseamos modificar en la primera.

En el presente tutorial, vamos a mostrarte cómo modificar los valores de un ráster a partir de una máscara con la calculadora ráster de QGIS.

En este ejemplo, el objetivo es modificar el valor de altitud de las celdas de un Modelo Digital del Terreno (MDT) sobre un conjunto de lagos de Alaska.

MDT_Lagos

Puedes seguir el presente tutorial descargando los datos pinchando aquí.

1) Creación de la máscara (vectorial)

En primer lugar, debemos de extraer la máscara en la que indicaremos las celdillas a las que deseamos modificar su valor. Para ello hemos extraído los límites del MDT alaska.tif en formato vectorial y lo hemos unido (merge) a la capa de lagos que hemos digitalizado a través de una ortofoto.

El resultado sería el siguiente (mascara_vec.shp):

mascara_vec

El siguiente paso es editar la tabla de atributos de la máscara, añadiendo un campo que contendrá el valor que deseamos modificar a las celdas del MDT. En nuestro ejemplo, vamos a sumar aumentando el valor de altitud para los lagos.

Como no nos interesa modificar el valor del resto de celdillas que rodean los lagos, otorgaremos el valor ‘0’ al polígono que representa los límites del MDT, de este modo al realizar la suma el valor no se verá afectado.

Ya tenemos nuestra máscara, en formato vectorial, lista. Pero, para poder operar con ella, en la calculadora ráster necesitamos convertirla en dicho formato.

2) Creación de la máscara (ráster)

El siguiente paso es convertir la máscara vectorial creada en el paso anterior a formato ráster.

Convertir entre el formato ráster y vectorial permite emplear ambos tipos de datos cuando nos encontramos inmersos en un proyecto SIG. Esto además permite emplear las diferentes herramientas de análisis específicas para cada uno de estos tipos de datos geográficos.

Es muy importante que el resultado de la rasterización de la máscara guarde la misma resolución que el MDT de partida. Accede a las propiedades del MDT alaska.tif y, en la pestaña General, apunta la resolución del mismo.

Accede a la herramienta Rasterizar desde el menú Ráster/Conversión: 

E introduce en ella los siguientes parámetros:

  • Archivo de entrada: shp
  • Campo de atributos: VALORES
  • Archivo de salida para los vectoriales rasterizados: tif
  • Tamaño del ráster en píxeles: Anchura 141 y Altura 108 (la misma resolución que la capa tif)
  • Extensión de salida: Indica la extensión de la capa alaska.tif

Como podrás apreciar ya se han cargado los valores de todos los píxeles, puedes comprobarlo empleando la herramienta Identificar objetos espaciales identificar_objetos_espaciales.

3) Operando con la calculadora ráster

Ya tenemos lista nuestra máscara en formato ráster con los valores de los píxeles que deseamos modificar en el MDT. Es el momento de operar con la calculadora ráster de QGIS sumando la máscara al MDT, accede a ella a través del menú Ráster/Calculadora ráster…

Una vez haya cargado la interfaz de la herramienta, observa que automáticamente detecta las capas ráster que tengamos cargadas en QGIS, y las muestra en Bandas ráster.

Introduce los siguientes parámetros:

  • Capa de salida: tif (por ejemplo)
  • Formato de salida: GeoTIFF
  • Deja los valores que toma por defecto en el apartado Extensión, puesto que las dos capas tienen los mismos límites y la misma resolución espacial.
  • SRC de salida: EPSG: 2964 NAD27 / Alaska Albers
  • Expresión de la calculadora de campos: «alaska@1» + «mascara_ras@1»

Listo!.

Para comprobar el resultado, haz zoom sobre la zona de los lagos y escoge un píxel con la herramienta Identificar objetos espaciales, si escoges en Modo la opción De arriba abajo, podrás conocer el valor de ese píxel en las tres capas ráster con las que hemos operado.

identificar_raster_resultado

Si quieres aprender a trabajar con la calculadora raster, crear máscaras, modificar el valor de una celdilla, etc. Inscríbete en nuestro curso online de QGIS avanzado, contarás con el apoyo de un tutor que te ayudará a resolver todas tus dudas.

Let’s connect!

Date de alta en nuestra newsletter y te enviaremos GRATIS el ebook que te ayudará a impulsar tu perfil GIS:
Vitaminas MappingGIS

Tan solo una vez al mes recibirás las últimas novedades del sector GIS y de nuestros cursos

4 comentarios en «Cómo utilizar la calculadora ráster con una máscara en QGIS»

    • Hola Sergio,

      Gracias a ti por tu comentario y por seguir nuestro blog. Nos alegramos de que haya sido de tu agrado.

      Un saludo!

  1. Thanks for the tutorial. I am a begginer and for that reason I need more help than expected. Could you be so kind and tell me how do I extract the limits of the Alaska tiff file?

    Thanks for your help.

    • Hi Nuno,

      You can get the boundary of a raster file with these steps:
      1) Multiply the raster by 0 to create a constant value raster using Raster Calculator.
      2) Convert the constant value raster to polygon using the Raster to Vector tool (Raster/Conversion).

      Thanks for follow us!

Los comentarios están cerrados.