Point Cloud to DEM: How a LAS/LAZ File Becomes a Surface

A point cloud is millions of separate measurements; a DEM is one elevation per grid cell. Converting one into the other — LiDAR to DEM, LAS to DEM — is the step that turns a scan into something you can contour, section and compute volumes on. The conversion is simple to run and easy to get subtly wrong, because three decisions are hidden inside it: which points count, how big a cell is, and what happens where there are no points. This guide walks through each.

Which points: the DTM and the DSM are different rasters

The same cloud produces two different surfaces. Use only the points classified as ground and you get a bare-earth model, a DTM. Use every point and you get a surface model, a DSM, that runs over vegetation, buildings and machinery.

Neither is the correct one; they answer different questions. Earthwork, drainage and contours need the ground. Stockpiles, structures and line of sight are measured on the surface that is actually there.

Two surfaces from one point cloud
OutputPoints usedValue kept per cellUsed for
Bare-earth DEM (DTM)Ground-classified points (class 2)Lowest elevationCut and fill, grading, drainage, contours
Surface model (DSM)All pointsHighest elevationStockpiles, structures, line of sight, orthophoto base

Ground classification comes before the conversion

A bare-earth DEM can only be as good as the ground classification in the file. In the LAS format every point carries a class code, and class 2 means ground. If the cloud was never classified, there are no ground points to select, and a so-called DTM built from it is a DSM under another name.

Check the file before converting it: how many points it holds, whether any are classified as ground, and whether it carries colour. A cloud straight off a photogrammetry run is often unclassified; airborne LiDAR deliveries usually are classified.

Cell size follows point density

The cell size of the DEM should match what the cloud can support. With about four points per square metre, a 0.5 m cell has roughly one point in it; ask for 0.1 m and most cells are empty and have to be filled from their neighbours. The raster gets twenty-five times larger and carries no more detail.

A sound starting point is the average point spacing — one over the square root of the density. Go coarser when the ground is smooth and the file size matters; go finer only when the density is really there.

Cells with no points

Empty cells are normal: water returns little to a topographic laser, the ground under a building has no ground points, and dense canopy lets few pulses through. A converter either leaves those cells as NoData or fills them by interpolating from the surrounding points.

Filled cells look like data and are not. A lake filled from its banks is a guess, and so is the ground under a warehouse. Know which your tool does, and treat large filled areas as unmeasured when a volume depends on them.

Checks to run on the result

Shade the DEM and look at it. Stripes along flight lines point to a misaligned strip; pits and spikes point to noise points that were kept; a terraced look means the cell is finer than the data. Then compare the surface against a few surveyed check points, and confirm the horizontal and vertical coordinate system before measuring anything — a DEM in ellipsoidal heights read as orthometric is wrong by the geoid separation everywhere.

Point cloud to DEM in STREAM

STREAM opens LAS and LAZ directly and reads the file before converting it: point count, classification, colour and extent. It then offers three outputs as checkboxes — a bare-earth DEM from the ground-classified points, taking the lowest elevation per cell; a surface model from all points, taking the highest; and an orthophoto from the colour of the highest point. If the cloud has no ground-classified points, the bare-earth option is disabled and says why.

The cell size is pre-filled from the cloud's point density and the output size is previewed in pixels; set it finer than the density and STREAM says that this adds no detail. The cloud is streamed in chunks rather than loaded whole, so file size is not the limit, and the result opens as tiled terrain that every tool — volumes, cross-sections, contours, slope, hydrology — runs on. The derived DEM exports as GeoTIFF.

STREAM does not classify or edit points. A cloud that needs ground classification has to be classified before it is brought in.

Frequently asked questions

How do you convert a LiDAR point cloud to a DEM?

Choose the points to use — ground-classified points for a bare-earth DEM, all points for a surface model — set a cell size that matches the point density, and rasterize: each cell takes one elevation from the points that fall in it. Then check the result against known points and confirm its coordinate system.

What cell size should a DEM from a point cloud have?

About the average point spacing, which is one over the square root of the point density: roughly 0.5 m for four points per square metre. A finer cell leaves most cells empty and filled from neighbours, so it makes the file larger without adding detail.

Can I make a DTM from an unclassified point cloud?

Not a true one. A bare-earth model is built from ground-classified points; without classification there is nothing to select, and the result includes vegetation and structures. Classify the cloud first, or build a surface model from all points.

What is the difference between a DEM made from LiDAR and one made from photogrammetry?

Both rasterize a point cloud. LiDAR pulses can reach the ground through gaps in vegetation, so a ground-classified LiDAR cloud gives a bare-earth model under canopy; a photogrammetric cloud sees only what the camera saw, so it gives the surface on top.

Can STREAM convert LAS or LAZ to a DEM?

Yes. It opens LAS and LAZ, builds a bare-earth DEM from ground-classified points, a surface model from all points, or both in one import, at a cell size suggested from the point density, and exports the result as GeoTIFF. It does not classify points.

Why does my DEM have holes or flat patches?

Cells with no points — water, the ground under buildings, dense canopy — are either left as NoData or filled by interpolation. Flat or smeared patches are filled cells; treat them as unmeasured where a volume depends on them.

Turn a LAS or LAZ point cloud into a DEM in STREAM

Native Windows · fully offline · free beta

Point Cloud Viewer