Menu

HowToRun

Rupesh Shrestha

How to Run MCC-LIDAR

There are two parameters that the user must define in the command line syntax to run MCC, the scale (s) parameter and the curvature threshold (t). The optimal scale parameter is a function of 1) the scale of the objects (e.g., trees) on the ground, and 2) the sampling interval (post spacing) of the lidar data. Current lidar sensors are capable of collecting high density data (e.g., 8 pulses/m2) that translate to a spatial sampling frequency (post spacing) of 0.35 m/pulse (1/sqrt(8 pulses/m2) = 0.35 m/pulse), which is small relative to the size of mature trees and will oversample larger trees (i.e., nominally multiple returns/tree). Sparser lidar data (e.g., 0.25 pulses/m2) translate to a post spacing of 2.0 m/pulse (1/sqrt(0.25 pulses/m2) = 2.0 m/pulse), which would undersample trees and fail to sample some smaller trees (i.e., nominally <1 return/tree).

Therefore, a bit of trial and error is warranted to determine the best scale and curvature parameters to use. Select a las tile containing a good variety of canopy and terrain conditions, as it's likely the parameters that work best there will be applicable to the rest of your project area tiles. As a starting point: if the scale (post spacing) of the lidar survey is 1.5 m, then try 1.5. Try varying it up or down by 0.5 m increments to see if it produces a more desirable digital terrain model (DTM) interpolated from the classified ground returns in the output file. Use units that match the units of the lidar data. For example, if your lidar data were delivered in units of feet with a post spacing of 3 ft, set the scale parameter to 3, then try varying it up or down by 1 ft increments and compare the resulting interpolated DTMs. If the trees are large, then it's likely that a scale parameter of 1 m (3 ft) will produce a cleaner DTM than a scale parameter of 0.3 m (1 ft), even if the pulse density is 0.3 m (1 ft). As for the curvature threshold, a good starting value to try might be 0.3 (if data are in meters; 1 if data are in feet), and then try varying this up or down by 0.1 m increments (if data are in meters; 0.3 if data are in feet).

Example command line inputs

Run MCC at a scale parameter of 1.5 and a threshold parameter of 0.3 m:

    mcc-lidar -s 1.5 -t 0.3 input_filename.las output_filename.las

Run MCC and also create ascii grid DTM with a cell-size of 5 m:

    mcc-lidar -s 1.5 -t 0.3 input_filename.las output_filename.las -c 5 output_grid.asc

Available Switches, Options

Desirability of the result is assessed via visual inspection of a hillshade of the DTM interpolated from the ground returns classified by MCC. Commission errors (i.e., classifying a true vegetation return as "ground") will cause distracting bumps in the DTM hillshade. Increasing the scale and/or curvature parameters and rerunning MCC should remove most of these bumps. You can set an optional switch, -S, to make MCC output an asciigrid of the DTM after each pass; this file must be imported into some other program to be viewed. Another optional switch, -N, makes MCC output a .csv file of the non-ground points removed after each pass. Again, this file would have to be imported into some other program to be viewed.

To see a list of available switches (options), use the --help switch:

    mcc-lidar --help

Description of MCC-LiDAR Output

The output LAS file differs from the input LAS file in that those returns classified as ground will be assigned a value of 2 as per the LAS classification standard. MCC makes no assumptions about the non-ground returns and so leaves these values either as is, or if they were set to 0 then these will be updated to 1, indicating that a classification algorithm has been used. Future versions of MCC may classify returns as 5 (high vegetation), 4 (medium vegetation), or 3 (low vegetation), corresponding to the 3 scale domains at which MCC calculates curvatures from thin plate spline surfaces as it iterates through the point cloud.


Related

Wiki: Home