Usando la librería PDAL con archivos LIDAR

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (2 votos, media: 5,00 sobre 5)
Cargando…

PDAL, Point Data Abstraction Library , es una librería de código abierto en C++ para procesar, consultar, filtrar o realizar conversiones de nubes de puntos.

Un ejemplo de datos en nubes de puntos puede ser cualquier archivo obtenido mediante  tecnología LIDAR. En estos ficheros, normalmente en formato LAS o LAZ, contamos con un enorme de información capturada por el escaner láser y que puede ser usada para obtener modelos digitales de elevaciones, superficies, renderizados en color RGB, extracción de árboles y masas vegetales, masas de agua, contornos de construcciones, mecánica de rocas…

En la siguiente entrada vamos a generar un modelo digital de elevaciones a partir de varios ficheros LIDAR en formato LAZ.

Usando PDAL con el terminal de OSGeo4W

Podemos usar la librería de distintas formas:

  • Una vez instalada, lanzamos los comandos mediante el terminal de nuestro sistema operativo.
  • Con Python, instalándola usando por ejemplo el gestor de paquetes Conda.

Si hemos instalado QGIS con OSGeo4w, dispondremos un terminal preparado para usar PDAL y otras muchas bibliotecas de carácter geográfico (PROJ, GDAL/OGR, GEOS…) de forma sencilla.

Recientemente se ha abierto una campaña de crowdfunding para integrar PDAL a QGIS que esperemos logre su finalidad. Mientras tanto usaremos el shell del OSGeo4W y  accederemos a la visualización de los resultados con QGIS.

Para comprobar que la librería se encuentra disponible en nuestro equipo, abrimos la terminal y escribimos pdal. A continuación, nos aparecerá la información de uso y comandos disponibles.

PDAL en OSGEO4W
PDAL en OSGEO4W

Si no nos reconoce el comando, debemos abrir el programa instalación de OSGeo4W para añadir la librería.

Instalación de PDAL
Instalación de PDAL desde el instalador de OSGEO4W

Usando pipeline (tuberías)

Para ejecutar de forma sencilla uno o varios procesos con PDAL podemos usar pipeline. Mediante esta opción, la librería ejecutará una cadena de procesos que concatenan/unen (de ahí la denominación de tuberías) las entradas y salidas de cada una de ellos. Esta cadena se define en un archivo JSON.

En el siguiente ejemplo, definimos las sentencias para realizar un recorte mediante una caja de coordenadas (bounds) de un archivo LAZ. La opción de salida será un fichero descomprimido con extensión LAS.

{
  "pipeline": [
  {
    "filename": "lidar.laz",
    "spatialreference": "EPSG:25830"
  },
  {
    "type": "filters.crop",
    "bounds": "([336770.5,4194436.1],[336812.3,4194459.9])"
  },
  "cliplas.las"
  ]
}

Para su ejecución desde el terminal escribimos

pdal pipeline nombredelpipeline.json

Creando un Modelo Digital de Elevaciones

Un uso frecuente de los datos LIDAR es obtener un modelo digital de elevaciones. Vamos a realizar esta sencilla operación con cuatro hojas del LIDAR 1ª Cobertura (2008-2015) disponibles para su descarga en la web del Centro de Descargas del CNIG.

Los datos corresponden el entorno del Conjunto Arqueológico de Madinat al-Zahra (Córdoba, España). La información LIDAR es cada vez más usadas en el campo de la arqueología. Estos datos son de utilidad para detectar microtopografías en las que identificar estructuras arqueológicas de entidad todavía enterradas.

Hojas LiDAR
Hojas LiDAR de la web del CNIG.

Esta operación de unión y conversión podría realizarse con la conocida aplicación LAStools. Su uso abierto tiene ciertas limitaciones y genera una franja de valores nulos superado un número de puntos. Esta es una de las razones porque es interesante saber usar PDAL.

Nuestro objeto JSON (all2dem.json) va a contener la siguiente estructura:

{
  "pipeline" : [
    "PNOA_2014_AND-NE_334-4194_ORT-CLA-COL.laz",
    "PNOA_2014_AND-NE_334-4196_ORT-CLA-COL.laz",
    "PNOA_2014_AND-NE_336-4194_ORT-CLA-COL.laz",
    "PNOA_2014_AND-NE_336-4196_ORT-CLA-COL.laz",
   {
     "type" : "filters.merge"
    },
    {
      "filename": "all2dem.tif",
      "gdaldriver": "GTiff",
      "resolution": 5.0,
      "output_type": "mean",
      "type": "writers.gdal"
    }
  ]
}
  • Localizamos los cuatro archivos LAZ de entrada.
  • Realizamos un filtro de tipo  merge para unir los archivos.
  • Para terminar, transformamos la unión en un archivo en formato tif georreferenciado con GDAL con resolución de 5 metros generado a partir del valor medio.

Ejecutamos nuestro archivo JSON desde la terminal.

pdal pipeline all2dem.json

Una vez obtenido el geotiff, vamos a cargar el archivo ráster en QGIS aplicando una simbología de sombras para su mejor visualización.

Mapa de pendientes sobre el DEM generado con PDAL
Mapa de pendientes sobre el DEM generado con PDAL

Como se puede apreciar los pasos para trabajar con datos LIDAR y la librería PDAL son muy sencillos. En la documentación tenemos otros ejemplos de las numerosas posibilidades de esta librería.

Desde el Área de Sistemas de Información Geográfica y Desarrollo de Geoinnova podemos ayudar a profesionales y empresas que necesiten trabajos de consultoría sobre este u otro tema vinculado con las Tecnologías de Información Geográfica.

Artículo anteriorCurso básico de SIG para la aplicación del DF 253/2019 del COAVN
Artículo siguienteSemi-automatic classification plugin (Parte-1)
Patricio Soriano
Geógrafo “Full-stack” y desarrollador web especializado en Tecnologías de Información Geográfica. Vinculado con la labor de consultoría, ha realizado diversos proyectos sobre análisis urbanístico, planes de vivienda y gestión patrimonial, así como la puesta en marcha de Sistemas de Información Geográfica corporativos para la administración pública. Dentro de los trabajos como desarrollador se encuentran el diseño de varias aplicaciones webmapping y desarrollos para QGIS (Spanish Inspire Catastral Downloader, CDAU Downloader o qgis2mapea). Autor del blog www.sigdeletras.com y organizador de Geoinquietos Córdoba. Actualmente se encuentra incorporado al equipo de desarrollo de Geoinnova en aplicaciones Open Source. Como docente lleva impartiendo cursos profesionales de SIG desde 2007 para diferentes entidades y en diferentes modalidades (tanto presencial como online). Especializándose en los últimos años en cursos de QGIS a distintos niveles.

Dejar respuesta

Please enter your comment!
Please enter your name here