tech explorers, welcome!

Etiqueta: geoprocessing

☮️ #WarTraces : la huella aérea de un mundo en guerra.

Todo empezó como un ejercicio de curiosidad, pensando si el ataque al puente de Kerch en Crimea se habría visto desde el espacio.

Para mi sorpresa, este será uno de los menos visibles de los ataques ocurridos durante la guerra de Ucrania.

Con cada noticia, comprobaba las imágenes satélite (accesibles públicamente) de la Agencia Espacial Europea y encontré evidencias de muchas de las informaciones. Las imágenes satélite son puramente objetivas. No hay manipulación o un discurso detrás.

Esto es totalmente opuesto a tomar un bando. Se trata de mostrar la realidad y la escala de la guerra. La auténtica y única verdad es que la violencia y la guerra tienen que ser condenadas en todas sus formas y prevenidas con cada mínimo esfuerzo que uno pueda hacer.

#WarTraces empieza en Ucrania, porque está cerca de los europeos, 24/7 en TV, y afectando a muchas y poderosas economías. Pero hay muchos otros conflictos activos en el mundo. Muchos otros que parecen olvidados. Muchos otros que no parecen tener importancia. Muchos otros que deben cesar igual que este.

Sígueme en 🐦 Twitter para saber cuando se actualiza este post!

🐦 @RoamingWorkshop

PAZ ☮ HERMANOS

TIP! Haz click en una imagen para ampliarla.

Guerra de Ucrania: 24 Feb 2022 - hoy

📖 Cronología de Wikipedia.

Guerra Civil Siria: 2011 - hoy

📖 Cronología de Wikipedia.

Conflicto Palestino-Israelí : 1948-hoy

📖 Cronología de Wikipedia.

Procesa datos LIDAR en QGIS y crea tu propio Modelo Digital del Terreno

Hay veces que un Modelo Digital del Terreno (MDT) se queda corto o no está muy limpio. Si tienes acceso a datos LIDAR, puedes generar tú mismo un modelo del terreno y sacarle más partido obteniendo mayor detalle de las zonas que te interesen. Vamos a ver cómo.

1. Descarga de datos

Nube de puntos

Voy a usar los magníficos datos públicos del Instituto Geográfico Nacional (IGN, España) obtenidos mediante vuelos que utilizan técnicas de medición láser (LIDAR).

  1. Accede a los datos LIDAR del Centro de Descargas del IGN.

http://centrodedescargas.cnig.es/CentroDescargas/index.jsp

  1. Dibuja un polígono de la zona de interés.
  1. Descarga los archivos PNOA-XXXX...XXXX-RGB.LAZ. RGB emplea color verdadero; ICR, infrarrojo. Pero ambos son válidos.

TIP! Descarga todos los ficheros a la vez utilizando el fichero el applet del IGN. Es un fichero .jnlp que requiere JAVA instalado en Windows o IcedTea en Linux (sudo apt-get install icedtea-netx)

2. Procesado de nube de puntos LIDAR en QGIS

Visualización directa

Desde las últimas versiones (p.e.: 3.28 LTR Firenze), QGIS permite visualizar directamente los ficheros de nube de puntos.

En el menú Capa -> Añadir capa... -> Añadir capa de nube de puntos...

Se mostrarán los datos que hemos descargado en color verdadero, que podemos clasificar en las Propiedades de Simbología, eligiendo la representación de Clasificación por tipo de datos:

Vista 3D

Otra función que trae ahora QGIS por defecto es la visualización de la información en 3D.

Vamos a configurar las propiedades 3D de la capa LIDAR para triangular las superficies y obtener un mejor resultado.

Ahora creamos una nueva vista en el menú Ver -> Vistas del Mapa 3D -> Nueva vista del mapa 3D. Con SHIFT+Arrastrar rotaremos la vista en perspectiva.

Complemento de LAStools

Para utilizar la información fácilmente usaremos las herramientas del plugin LAStools, que instalaremos de la siguiente manera:

TIP! En Linux es recomendable tener instalado Wine para trabajar con los ficheros .exe o será necesario compilar los binarios.

  1. Accede a la web de LAStools y navega a la parte inferior:

https://lastools.github.io/

  1. La herramienta completa es de pago, pero puedes acceder a la descarga pública para utilizar las funciones básicas que necesitamos.
  1. Descomprime el fichero .zip en una carpeta sencilla (sin espacios ni caracteres especiales)
  1. Ahora abre QGIS, busca el complemento LAStools e instálalo.
  1. Por último, configura la ruta de instalación de LAStools (si es distinta de su valor por defecto C:/ ). La configuración mostrada abajo sirve para Linux con Wine instalado (en mi caso uso PlayOnLinux).

Extraer tipos de datos LIDAR

Con LAStools podemos extraer información de los distintos tipos de datos que componen la nube de puntos. Por ejemplo, vamos a extraer solo los datos clasificados como Suelo (que se corresponden con el valor 2).

Con el proceso las2las_filter podremos crear una nueva nube de puntos filtrada:

  • Selecciona el fichero a filtrar.
  • En filter, elige la opción keep_class 2 para conservar solo el tipo de datos 2 (suelo)
  • Deja lo demás por defecto, e introducir 0 en los campos que requieren un valor value (de lo contrario devolverá un error).
  • Por último, guarda el fichero con formato .laz en una ubicación conocida para encontrarlo fácilmente.

Al finalizar solo tendrás que cargar el fichero generado para ver la nueva nube de puntos con valores exclusivamente del terreno (edificios y vegetación eliminados).

Conversión de LIDAR a vectorial

Ahora usaremos el proceso las2shp para transformar la nube de puntos a formato vectorial y poder operar normalmente con otras herramientas de GIS:

  • Elige el fichero de nube de puntos filtrado anteriormente.
  • Especifica 1 punto por registro para extraer todos los puntos de la nube.
  • Guarda el fichero con formato .shp en una ubicación conocida para encontrarlo fácilmente.

Y esta será tu nube de puntos filtrada en el formato clásico vectorial.

Como verás, la tabla de atributos no cuenta con ningún campo específico. Yo voy a crear un campo ELEV para guardar las coordenadas Z (o cota) y utilizarlas para generar un Modelo Digital del Terreno a continuación.

3. Creación del Modelo Digital del Terreno

Raster a partir de capa de puntos vectorial

Gracias a la integración de GRASS GIS, disponemos de potentes herramientas de procesado vectorial y ráster. Vamos a usar v.surf.idw para generar una malla regular a partir de la interpolación de los datos de una capa de puntos (en este caso se ponderan los valores obtenidos mediante el inverso de la distancia, pero también hay algoritmos para emplear splines).

  • Seleccionamos la capa vectorial de puntos.
  • Elegimos el número de puntos para emplear en la interpolación (en este caso los puntos son bastante densos así que elijo 50). Cuantos más elijas, más suavizado será el resultado, pero perderás el detalle de la densidad de la información.
  • Dejamos la potencia del inverso de la distancia en 2, para emplear el "inverso de la distancia al cuadrado".
  • Seleccionamos el campo de datos que usará la interpolación (ELEV).
  • Definimos el tamaño de celda de la malla. Elijo 2 para poder comparar el resultado con el producto MDT 2 metros del IGN.

4. Resultado

Vamos a quitar zoom para ver cómo ha quedado todo:

Y ahora veamos un poco más el detalle.

Aplicamos la misma rampa de color al MDT que hemos generado y al producto descargado del IGN para comparar el resultado obtenido. En general es muy bueno, con algunas diferencias en zonas arboladas, siendo más razonable el resultado de nuestro procesado.

¡Y eso es todo! Cualquier duda o comentario lo puedes dejar en Twitter!

🐦 @RoamingWorkshop