I want to create a ground model from a *.las file. The LAStools are available in QGIS but limited in use (generation of black diagonal in result file), so I can't use this.

In the GRASS tools I can find the tools v.lidar.edgedetection, v.lidar.growing and v.lidar.correction, to classify the las data. Unfortunately, v.lidar.edgedetection gives me a python error. So this isn't working either.

How could I proceed?

  • 1
    What does the error message state?
    – artwork21
    Feb 22, 2016 at 12:31
  • I will check this
    – David M.
    Feb 23, 2016 at 8:08
  • 1
    The black line added by LAStools is because they aren't licensed. Not all LAStools are free (including the tool required to create a DEM), without a license they will run but will introduce noise.
    – danclewley
    Aug 9, 2016 at 11:56
  • related (.xyz version): gis.stackexchange.com/questions/170706/… Mar 29, 2017 at 15:29

5 Answers 5


It is possible to generate a DEM from a las file within QGIS using Fusion.

Use this tutorial to enable FUSION's tools in QGIS (works up to QGIS 2.18 version*). It is written for LAStools, but it is straightforward adapting it.

*As from QGIS version 3, one can install the plugin (besides the core software) and work from there. See: Unable to install FUSION in QGIS 3.2?.

Once you manage to activate Fusion, you will need the GroundFilter tool for classifying ground points (if the point cloud is not yet classified), and then, GridSurfaceCreate to generate the DEM.

enter image description here

If you don't need to use QGIS, I suggest the following approach, which classifies ground points with the MCC algorithm.

  • I installed the latest version of Lastools, but I'm using QGIS 2.12.0-Lyon, in the tutorial their speaking about QGIS 2.2.0 : isn't this a problem? When I try to run "groundfilter" I get the following message : c:\software\LAStools\Groundfilter.exe is not recognized as an internal or external command, operable program or batch file. Is this beacause of the version of QGIS I'm using, or did I something wrong during the installation?
    – David M.
    Feb 23, 2016 at 7:19
  • This is because GroundFilter and GridSurfaceCreate are tools from Fusion, not Lastools (Fusion is a different program from Lastools). You said you did not want to use Lastools, because the strips it puts over the DEM. So, you need to install Fusion and link it with QGIS. The Fusion tools will appear under the folder "surface" (see the screenshots). I am using QGIS 2.12.2. Feb 23, 2016 at 8:38

I am using the following procedure in SAGA:
pc_processing_with_saga (Wichmann et al. (2012)) deprecated link, new link!

If you still want to use the DEM in other programs (like QGIS), export it as GeoTIFF from SAGA when reaching Close Gaps step (I use already classified las files).

In SAGA it works like a charm and it is fast.

  • But to work with SAGA you need LAS version 1.2. If you need to convert it from 1.4 version use las2las.exe.
    – Jost Hobic
    Feb 23, 2016 at 8:24
  • I have just tried with saga-7.6.2_x64 and there was no need of anything else. Really like a charm and fast!
    – Marco
    Mar 31, 2020 at 15:09

pktools, when built with liblas support, provides functionality to generate DEMs from LAS point clouds. The toolkit provides a program called pklas2img, which rasterises a LAS/LAZ point cloud using filtering/compositing options. For instance, the following commands would generate a DEM:

pklas2img -i input.las -o output_dem_min.tif -comp min -n z -dx 2 -dy 2 -ot Float32


  • comp is the compositing rule for multiple points in a cell, in this example we use min, which retains the pulse with the minimum height for each grid cell. The documentation provides the full list of compositing options.
  • dxand dy are the output resolutions

After this step, it is advisable to filter the DEM, which can be done using pkfilterdem as follows:

pkfilterdem -i output_dem_min.tif -o output_dtm.tif -f promorph -dim 3 -dim 17


  • dim is the maximum filter kernel size

Note, this functionality is also available from the Processing Toolbox in QGIS using pktools version 2.6.6 (see below):

enter image description here


Install PDAL library (with OSGeo4W) and look at this example https://pdal.io/workshop/exercises/analysis/dtm/dtm.html


The lidR package is an option if you are comfortable writing some simple R code. The method grid_terrain will interpolate a digital elevation model (ground surface) from a classified point cloud. Several algorithms are available to do this including tin (triangulation) and knnidw (k nearest neighbor inverse distance weighting). If your point cloud has no classification, the package also offers a ground classification function.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.