How I can get Digital Height Model (only object heights, DSM - DTM = DHM)?
Many applications can do this, but they convert it to GRID or TIN format. I was wondering if it was possible to keep the data as point clouds.
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It only takes a minute to sign up.Sign up to join this community
An option to normalize* LiDAR point clouds (and keep it as a point cloud) is Fusion. One will need the command line
ClipData together with the switches:
dtm:file, which is the bare-earth model (DTM), and
ClipData description says:
...When used in conjunction with a bare-earth surface model, this logic allows for sampling a range of heights above ground within the sample area.
When the switches
height are added, each return in the lidar cloud will have the elevation subtracted by the elevation in the corresponding pixel in the DTM. The output file will be of type
.las, where the z coordinates will be heights.
It will also work with .laz files (compressed .las) in Fusion's version 3.4 and above, but needs LAStools installation too.
The ClipData syntax to perform such analysis would be the following:
ClipData /height /dtm:file InputSpecifier SampleFile [MinX MinY MaxX MaxY]
ClipDatais the command line itself.
/dtm:fileare the switches necessary to normalize the cloud.
InputSpecifieris the original .las file,
SampleFileis the output file (.las file).
For example: let's assume our lidar file has name
gross.las and it is stored under the directory C:/LiDAR. The DTM is stored in the same directory with name
bare_earth.dtm1. The bounding box UTM coordinates of
7100000 7200000 730000 740000. The normalized cloud will be named
normalized.las and it will be stored in the same directory as the other files. Fusion is installed under the directory
C:. Type this:
C:\Fusion\ClipData /height /dtm:C:\LiDAR\bare_earth.dtm C:\LiDAR\gross.las C:\LiDAR\normalized.las 7100000 7200000 730000 740000
1. One needs to have the bare-earth model with the .dtm Fusion's format to run ClipData. Refer to this thread to learn how to generate a DTM starting from a non classified lidar cloud. Then, use Fusion's
ASCII2DTM tool to convert the DTM from .asc format to .dtm extension.
*Scheme about the normalizing process.
Fusion LiDAR can do that, try download. User manual is simple and you can process lidar files via command line. http://forsys.cfr.washington.edu/fusion/fusionlatest.html
edit: FUSION Manual: http://forsys.cfr.washington.edu/fusion/FUSION_manual.pdf
try to search it using "normalize". You can create bare earth file using GroundFilter.
The steps for normalizing point clouds in LiDAR360 are as follows:
(1) Remove outlier points to improve the quality (Data Management > Point Cloud Tools > Outlier Removal);
(2) Classify ground points (Classify > Classify Ground Points);
(3) Generate DEM (Terrasin > DEM);
(4) Normalize the point cloud data based on DEM file (Data Management > Point Cloud Tools > Normalization).