Questions tagged [pdal]

PDAL (Point Data Abstraction Library) provides both a suite of command-line applications and programming library for the processing, filtering, translation, and querying of point cloud data in a pipeline fashion that allows complex processing chains to be put together simply.

Filter by
Sorted by
Tagged with
11 votes
3 answers
3k views

Difference between LAStools, libLAS and PDAL?

After many readings, I'm still confused about the difference of use and the aims of the following tools for LiDAR data processing and manipulation: LAStools, libLAS, and PDAL. My understanding so far ...
Eskapp's user avatar
  • 322
10 votes
1 answer
4k views

How to install PDAL in Windows?

I want to import .las files to PostGIS. As I found out I can do it by using PDAL. However, I cannot find the right way to install it in Windows. I downloaded a folder from here https://www.pdal.io/...
November's user avatar
  • 127
7 votes
2 answers
773 views

Are PDAL or PCL capable of producing LiDAR grid metrics?

I typically use Windows-based FUSION to generate grid metrics, which can be used to describe forest structural characteristics. From the FUSION documentation: GridMetrics computes a series of ...
Aaron's user avatar
  • 51.6k
6 votes
1 answer
272 views

Erratic results from filters.normal in PDAL?

Given this roof structure: I get the following output for the normalx, after using: { "type":"filters.normal", "knn":8 }, (orange to purple : -1 to 1) Comparable situation for ...
tilt's user avatar
  • 3,267
5 votes
1 answer
475 views

PDAL filters reprojection is not changing Z values

I'm trying to reproject an LAS file using PDAL, and it looks like the X/Y values are being transformed, but the Z values are staying the same. pdal translate input.las output.las -f filters....
TJR's user avatar
  • 1,612
5 votes
1 answer
3k views

Extract Point Cloud bounding box with PDAL in Python?

Data: I have a point cloud file, let call it "pc_file" (it's not a .las but a .ply file ; https://en.wikipedia.org/wiki/PLY_(file_format) ). Goal to achieve: I am searching a fast way to extract ...
swiss_knight's user avatar
  • 10.1k
4 votes
1 answer
1k views

Is it possible to run PDAL without Conda?

PDAL looks like a fantastic library but for some reason when I install Anaconda, it breaks a bunch of dependencies\paths. Is it possible to use PDAL without having Anaconda (Miniconda) installed? If ...
Cary H's user avatar
  • 924
4 votes
1 answer
3k views

Viewing point clouds in bpf format?

Is there any software that can be used to view point clouds in bpf format? My preference is for free software that has low-learning curve for quick visualizations. Currently, I convert bpf to las ...
user55937's user avatar
  • 1,281
3 votes
2 answers
3k views

Python-PDAL: error reading Format 1.4 LAS File - (readers.las Error) Global encoding WKT flag not set for point format 6 - 10

I am using python-pdal 2.4.2 to read a LAS 1.4 in PointFormat 8, with the objective or using different writers stages afterwards. The pipeline is simple: import json import pdal filepath = "path/...
CharlesG's user avatar
  • 223
3 votes
3 answers
3k views

Creating a Canopy Height Model (CHM) image from a LAS file on Mac?

Main question: Is there a way of creating a Canopy Height Model from a LAS file using Mac (not wine etc)? I also would like to batch process a lot of LAS files the same way. I should mention that I ...
oskarlin's user avatar
  • 1,941
3 votes
2 answers
10k views

Converting .las to .pcd file using PDAL?

Is it possible to translate .las files to .pcd with PDAL? If so, using which tool? I need an example about how to set the command-line with such tool. If it is not possible (or alternatively), is ...
ahmad735's user avatar
  • 133
3 votes
2 answers
2k views

Finding tree canopy width using PDAL?

I want to classify (and separate) houses from trees (high vegetation) in point cloud data using PDAL. I use height filter for this purpose. Our high Vegetation lies in the range between 5 and 10 ...
ahmad735's user avatar
  • 133
3 votes
2 answers
962 views

Getting extent of a point cloud using laspy

As part of a geo-indexing script, I'd like to add in support for numerous .laz files we have sitting around on our SAN. The only intent of the handler is to grab the filename/path, the SRS, and the ...
auslander's user avatar
  • 1,497
3 votes
1 answer
2k views

How to write multiple .las files from polygon clipping with PDAL?

I am using PDAL (through Python) to crop multiple polygons from a point cloud and store them as separate files. For efficiency reasons I would like to define this in a single pipeline. However, using ...
jelleve's user avatar
  • 193
3 votes
1 answer
322 views

PDAL crashes when trying to filter noise points from outliers filter

I have a relatively simple PDAL pipeline being used to process a bunch of .laz files. { "type": "readers.las", "filename": "c:\\stuff\\10781001.laz" }, ...
user890's user avatar
  • 5,733
3 votes
1 answer
495 views

Extracting (big) rocks from LiDAR data

I have a .las file and want to show the outline of the big rocks located in this area. So far I have done the following: Obtain a ground model from the .las file including the rocks. Calculate ...
YellowBird's user avatar
3 votes
1 answer
749 views

Getting source bounds when filtering LAS using PDAL?

I'm using PDAL to filter out non ground points to create a DTM along with a DSM also made through PDAL to create a Canopy Height Model using this method. My workflow looks like this. #!/bin/sh # ...
oskarlin's user avatar
  • 1,941
3 votes
1 answer
225 views

pdal truncating values when writing ply

When using pdal to either translate to ply file or split a ply file in smaller chunks, it appears to be truncating values so I end up with point clouds with stripping. This does not occur with other ...
crEO's user avatar
  • 33
3 votes
0 answers
476 views

Number of points in .las by PDAL from Python

I need to recieve the number of points that .las file has from Python and save it as variable. For now I'm doing it like this: def execute(self, pipeline): pipeline = pdal.Pipeline(json.dumps(...
Марина Лисниченко's user avatar
3 votes
0 answers
277 views

Reprojecting a pointcloud into a local coordinate system with PDAL?

I am currently facing the challenge of bringing a point cloud (las) from the coordinate system NAD83(2011) / South Carolina https://epsg.io/6569 into a local coordinate system. I have been given the ...
undefined Solutions's user avatar
2 votes
2 answers
219 views

PDAL is mixing Lat and Lon when using tindex

I am trying to extract polygon representing the extent of my .LAS file. I am using tindex to do so. When importing the resulting file, it looks like longitude coordinates are set as latitude and vice ...
B-C B.'s user avatar
  • 765
2 votes
1 answer
1k views

How to create boundary polygons of the actual data area in LAS files?

Using command line utility or utilities suitable for scripting how can I generate a boundary polygon that shows the area actually covered by lidar data points, not just the box extent of the LAS files?...
matt wilkie's user avatar
  • 28.2k
2 votes
1 answer
943 views

Getting LiDAR point cloud point spacing using PDAL

I am trying to use PDAL (in Python) to extract metadata from a LiDAR point cloud (.las). I am using the "pdal info" command and applying different flags (e.g. -metadata, -stats) to get ...
mdl518's user avatar
  • 165
2 votes
1 answer
536 views

PDAL removes color attribute from LiDAR point cloud?

I am trying pdal to perform a ground filtering on a point cloud (las file) with colors. I use the pcl option and this tutorial Identifying ground returns using ProgressiveMorphologicalFilter ...
GeomP's user avatar
  • 107
2 votes
1 answer
215 views

Incorrect CRS affects on writers.gdal result

I have a .las file with CRS that is not decoded correctly and looks like following: At the same time the part of metadata which (as I understand) stands for CRS looks like this: "...
Марина Лисниченко's user avatar
2 votes
1 answer
2k views

Extracting LAS/LAZ info in a performant way with PDAL?

I can do this: import json import subprocess as sp laz_file = somefile.laz r = (sp.run(['pdal', 'info', laz_file], stderr=sp.PIPE, stdout=sp.PIPE)) json_info = json.loads(r.stdout.decode()) and ...
auslander's user avatar
  • 1,497
2 votes
1 answer
386 views

PDAL: Argument references invalid/unused stage: 'filters.voxelgrid'

I am running into an error when running pdal translate on Mac OS High Sierra: PDAL: Argument references invalid/unused stage: 'filters.voxelgrid'. This is the command I am using based on a PDAL ...
Aaron's user avatar
  • 51.6k
2 votes
1 answer
3k views

Importing LiDAR (.las) data in PostgreSQL with PDAL?

I am following this tutorial to load LiDAR data into PostGIS/PostgreSQL database. The order is: Create extensions: CREATE EXTENSION postgis; CREATE EXTENSION pointcloud; CREATE EXTENSION ...
November's user avatar
  • 127
2 votes
1 answer
595 views

Creating filter stage of type filters.height using PDAL?

I use PDAL to find the height of points from LiDAR data. When I run the command: pdal translate myfile.las height.bpf height --writers.bpf.output_dims="X,Y,Z,Height;" It throws me the following ...
ahmad735's user avatar
  • 133
2 votes
2 answers
405 views

Do i lost precision when importing LAS files with PDAL?

I check pdal info and see that bbox has 15 digit numbers: "boundary": { "type": "Polygon", "coordinates": [ [ [ 1528634.540273188613355, 403421.710437842586543, ...
Kliver Max's user avatar
  • 2,032
2 votes
1 answer
145 views

pdal tile to generate TIFFs without seams

I'm using a pdal tile command like the one below. This works, and creates tiles of Z dimension in a TIFF. However, the edges of each tile create a seam (seen below). I tried setting the buffer to 1 ...
Marc Miles's user avatar
2 votes
1 answer
2k views

append X,Y,Z and intensity values into a las file

I want to append XYZI values row after row into a las file.How to do this? I'm using python laspy library to write XYZI points at once, but i want to append row after row using a loop. The points are ...
Stark's user avatar
  • 31
2 votes
2 answers
353 views

Unexpected argument grid_dist_x using PDAL

I'm trying to convert a .las file to a DTM/DEM using PDAL, but having the issue of multiple bands instead of one. I went through Generating a DTM and writers.gdal but it prompts an error message: ...
Hassam Ali's user avatar
2 votes
1 answer
1k views

Displaying point cloud footprint from PostGIS using GeoServer and OpenLayers?

I'm using PDAL to import LAS files into PostGIS. The tutorial provided by boundless is great, and shows how to display the data in patches, but it doesn't cover displaying the table 'footprint'. ...
Dean's user avatar
  • 567
2 votes
0 answers
150 views

Importing PDAL inside QGIS plugin

I have some functions using PDAL in Python that I'd like to integrate inside a QGIS plugin. This plugin must be easy to install on different OS (Windows, Linux). However, even if PDAL is used by QGIS ...
GuillaumeG's user avatar
2 votes
1 answer
325 views

PDAL +init use deprecated but what is the alternative

With PDAL I was trying to using a proj4 string like +init=epsg:32615 +geoidgrids=C:\vdatum_GEOID12A\vdatum\core\geoid12a\g2012au7.gtx based on an example given on the PDAL website https://pdal.io/en/...
TJR's user avatar
  • 1,612
2 votes
0 answers
232 views

Change vertical unit in a LAS/Z file with PDAL

I am using pdal translate to filter and transform some lidar files. One issue we have are the vertical units. Sometimes they are correctly specified, sometimes they are not, and sometimes they are ...
winwaed's user avatar
  • 1,314
2 votes
0 answers
126 views

NAD83(CSRS) EPSG code vs Helmert parameters

NRCan provides helmert parameters which can be used to go from ITRF08 to NAD83CSRS. (https://webapp.geod.nrcan.gc.ca/geod/data-donnees/transformations.php?locale=en). I can put these into a proj4 ...
Scott's user avatar
  • 33
2 votes
0 answers
311 views

Big .las to raster converting by writers.gdal

I have a script: pipeline = [ path, { "filename": out_path, "gdaldriver": "GTiff", "resolution": 1, "output_type": "max", ...
Марина Лисниченко's user avatar
2 votes
0 answers
235 views

PDAL filters.crop fails with Unable to transform crop geometry to point coordinate system

When trying to crop a point cloud using boundsfollowing error is thrown: PDAL: filters.crop: Unable to transform crop geometry to point coordinate system. Below is my JSON: [ "PointCloud.laz&...
tachyon's user avatar
  • 131
2 votes
0 answers
328 views

Using PDAL in custom QGIS plugin

Is there a way to use PDAL in the custom QGIS plugin without conda (especially in Windows)? The only solution I'm using now is conda environment activation and launching QGIS from this environment ...
Марина Лисниченко's user avatar
2 votes
0 answers
181 views

PDAL: How to combine two range filters with an OR (instead of AND)?

I have a point cloud with two additional attributes (dimensions): Planarity and Linearity. I want to filter this point cloud based on the following condition: Planarity > 0.90 OR Linearity > 0....
pipppoo's user avatar
  • 21
2 votes
2 answers
1k views

Converting point cloud to raster with PDAL

I would like to convert my test.las file to a DTM file I tried using this command: (LIDAR) C:\Users\Dell\Documents\LIDAR>pdal pipeline test.json But it's giving me as an error: (PDAL Debug) ...
work's user avatar
  • 73
1 vote
2 answers
1k views

Identifying SBET coordinate system and reprojecting it with PDAL?

I've received discrete return LiDAR data from a data provider, which was acquired with an Optech C-300 scanner. In addition to the LAS data, the delivery includes the trajectory information in the ...
dmci's user avatar
  • 4,872
1 vote
1 answer
279 views

How to correct PDAL error using filters.smrf "Some NumberOfReturns or ReturnNumber values were zero but not all..."

I'm new to using the PDAL system to query and process LiDAR point cloud data from the USGS Lidar Explorer. I've been following some of the tutorials in the PDAL Quickstart Guide and have applied the ...
W. Kessler's user avatar
1 vote
1 answer
301 views

pdal | issues when using tiledb reader in python

I have created an fresh conda environment and installed pdal per the pdal Quickstart instructions: conda create --yes --name pdalplayground --channel conda-forge pdal All applications (tindex, tile, ...
user890's user avatar
  • 5,733
1 vote
2 answers
2k views

PDAL: Couldn't create filter stage of type 'filters.voxelgrid'

I have the following PDAL pipeline: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <Pipeline version="1.0"> <Writer type="writers.pgpointcloud"> <Option name="...
user1014923's user avatar
1 vote
2 answers
1k views

How to run PDAL pipeline with docker

I used to use PDAL with conda environment, and in that time I used pipeline command with the simple: sudo pdal pipeline -i /Documents/laz2pg.txt And that did the work. But, now, at the moment, I ...
Neven's user avatar
  • 526
1 vote
1 answer
233 views

How to speed up my PDAL pipeline script?

I'm creating an app for point cloud processing. I've made a pdal script with Python and I have some trouble with the cpu usage and processing speed I've made a pipeline for las processing, with some ...
Nicolas Guibal's user avatar
1 vote
1 answer
616 views

Is it possible to read a subset of points with the PDAL C++ api?

I am using the PDAL C++ API to read LAS/LAZ data. We're finding some of the tile files are very large (160M+ points), so I wish to take a sample of them. Although the point order in the tiles is ...
winwaed's user avatar
  • 1,314