I'm trying to work out least cost paths in QGIS. I have a DEM and a slope raster extracted from it, and a set of points, between which I want to find the least cost paths. I can find a SAGA plugin, but it needs a cost raster.

How do I go about making one of those, and then getting the least cost paths?

  • Welcome to gis.stackexchange! Please note that a good question on this site is expected to show some degree of research on your part, i.e. what you have tried and - if applicable - code so far. For more info, you can check our faq.
    – underdark
    Oct 30, 2015 at 18:06
  • You must think about the cost raster as what are the movement impediments acroos your DEM. The factors that works as constrains coul be many. The simplest one is slope, for instance. You can calculate the slope from your dem (degrees or precent). In my field (archaeology) there are people that uses also the rivers and the slopes. I have seen even soils or vegetation cover as impediments. There is also something called the backpackers equation. In this regard you have to define which variable/variables are going to be considered. Nov 3, 2015 at 14:05

1 Answer 1


I am assuming that you already have some sort of friction surface, for instance slopes from the DEM.You can try two things. The first one involves use the procesing toolbox. Make sure it is on advanced interface. From the grass comands section yo can use use either r.cost or r.walk to define your cost surface. Then you can use r.drain to calculate the least cost path.

The second one is using the grass plugin with the same tool mentioned above. You will have to define the grass environment to use your data and "import" the rasters you want to use in to grass. Once you have the data in the grass format you can use r.cost r.wal and r.drain.

Look at the Wiki Evaluating Landscape Permeability in Quantum and you can see the implementation under QGIS.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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