What it is actually doing
A point cloud is a bag of measurements. Almost everything people want from it — a contour, a volume, a slope map, a cross section, a hillshade — is computed from a regular grid, not from the points. Gridding is the step in between, and it is where most of the decisions that affect the answer get made.
There are three of them, and this page exposes all three:
- What to throw away. Points classified as noise (ASPRS 7 and 18) and points carrying the withheld flag are dropped before anything is gridded. This is not optional housekeeping. A surface model is a maximum, and a maximum is by construction maximally sensitive to exactly the errors that are highest — a single return off a bird forty metres up is not a small error in the average, it is the answer for that cell, drawn with the same confidence as the roofs around it.
- How coarse a grid. The cell size should follow the point spacing. Every cell finer than the data supports is a cell whose value had to be invented.
- Where the ground is. Only for the terrain model, and it is the decision that sets its quality. Either the file's own class 2 points are trusted, or a morphological filter derives the ground from the shape of the lowest surface — opening it at steadily growing window sizes and cutting anything that disappears faster than terrain plausibly could.
The points are then read exactly once. Every record is folded into per-cell accumulators and forgotten, which is why the memory this needs depends on the size of the site and not on the size of the file.
What comes out
| Product | Rule | Keeps |
|---|---|---|
| DSM — surface model | Highest surviving point per cell | Roofs, canopy, vehicles, power lines |
| DTM — terrain model | Ground points only, interpolated between | Bare earth, with structures removed |
Both are written as single-band Float32 GeoTIFFs, tiled and Deflate compressed, with nodata set and the source file's coordinate system carried through.
Things worth anticipating
- Buildings come out about one cell too large in a DSM. Any cell a roof merely overlaps takes the roof's height, because the roof point is the highest thing in it. Every structure is dilated at its edges by up to a cell. That is inherent to a maximum, not a fault in the grid — and it is a good reason not to take building footprints from a DSM.
- Power lines appear as ridges hanging in mid air. The cable really is the highest thing there. Correct for obstruction analysis, unwanted for a visual surface.
- Water comes out as holes. It absorbs the beam and returns little, so lakes and rivers arrive as gaps rather than flat surfaces. Whether they get filled is the fill distance's decision.
- Ground under dense canopy is genuinely absent. Neither a classification nor a filter can recover a measurement that was never made. The terrain model interpolates across it, which is the right answer for the surface and still worth knowing about — the coverage bar in the result says how much of the raster is measurement and how much is interpolation.
- A terrain model is only as good as its ground. If the output looks wrong, the problem is nearly always in how the ground was found, not in how it was interpolated afterwards.
Check it before you use it
The result is shown hillshaded, in place, before anything is downloaded, because the checks that matter are visual ones. On a terrain model, look at where the buildings were: they should be gone, and the ground should not be lumpy where they stood. On a surface model, look for isolated spikes, which are noise that was never flagged as noise. Switch the hillshade off and on — a colour ramp hides metre-scale errors that a raking light makes obvious immediately.