Original Scenario
Our original scenario uses XYZ as an input and generates a DEM raster.
In order to generate correct elevations along point cloud edges, all adjacent point clouds must be taken into account. However, generating a single DEM for both center tile and all adjacent tiles can significantly affect performance. To reduce the overall volume of data, we can generate a relatively small buffer around central point cloud (200 meters, for example), and clip the surrounding tiles with this buffer. The resulting point cloud will be used for making a DEM raster, and then the raster can be clipped to the original extents of the source tile. According to this requirement,
Bufferer and
Clipper should be able to work with point clouds:
The output, a DEM file, looks as follows:
See attached file LAS to DEM.zip for workspace and data.
Additional Scenarios
LAS2DEM
If a simple XYZ data is replaced with LAS files, the source point clouds may contain different classes of points according to LAS classification (0 is new, 1- unclassified, 2 - ground, 3 - low vegetation etc). For DEM we only need the ground class. This requires a
PointCloudSplitter transformer with an option of splitting by class.
Compare the following two rasters. The DEM on the left uses LAS "as is", the right raster uses only class 2 (or ground):
No Splitting by class
Split by classification
(2 - ground only)
The workspace is very similar to the original with just two transformers added -
PointCloudSplitter and a custom PointCloudLASClassifier:
If your LAS files comes with classification make sure that only appropriate classes are used for DME generation.
LAS2TIN
We can get some interesting results if we don't split a point cloud by class, and generate a TIN with an ortho texture on it:
The output may be useful for making quick 3D city models:
The quality of the model depends on surface tolerance parameter in TINGenerator. The attached package contains two pdf examples - with 5 and 0.1 ground units tolerance.
See attached file - LAS to textured TIN.zip for workspace