Stream and Catchment Delineation in QGIS 3 using GRASS tools

  Рет қаралды 57,315

Hans van der Kwast

Hans van der Kwast

Күн бұрын

This video shows how to delineate streams and a catchment using the GRASS tools from the QGIS processing toolbox. In another video the same was demonstrated using the SAGA tools in QGIS ( • Stream and catchment d... ). At the end of this video both methods are compared.
Credits for OpenStreetMap data: © OpenStreetMap contributors
SRTM data available from USGS Earth Explorer: earthexplorer.usgs.gov
The procedure is based on Chapter 4 of the book "QGIS for Hydrological Applications - Recipes for Catchment Hydrology and Water Management" by Kurt Menke and Hans van der Kwast. More information about the book can be found at the website of Locate Press: www.locatepress.com/hyd
This video is part of IHE Delft OpenCourseWare. More free resources can be found at www.gisopencourseware.org
For an overview of our GIS courses and info on tailor made trainings and advise see our folder: www.un-ihe.org/sites/default/...
IHE Delft and Nieuwland Geoinformatie offer an online course. It includes support from experienced trainers and you'll get the official QGIS certificate after completion. More info at: www.learning-gis.com
Subscribe to the KZbin Channel for updates!

Пікірлер: 84
@thewahface
@thewahface 2 жыл бұрын
Big fan. Very helpful thank you very much sir
@forestinventory
@forestinventory 2 жыл бұрын
Thanks for this helpful tutorial, I am learning much! In regard to the raster calculator: for calculating absolute values, you can simply use ABS(flowdir@1)
@user-nf6ys9vr6d
@user-nf6ys9vr6d 7 ай бұрын
Dear Hans Thank for your tutorials, please how can delineate multiple catchments at once
@HansvanderKwast
@HansvanderKwast 7 ай бұрын
It depends what you need. There are tools that allow you to give multiple user-defined outlets or tools that can automatically find the pits and use them for delineation. Check out this playlist: kzbin.info/aero/PLeuKJkIxCDj2Gk0CkcJ-QeviE41aMZd-5&si=qWUtk1MEzQ4QKYLy With the PCRaster Tools plugin you can use pit tool and use the result as an input for the catchment tool. That's the most simple way.
@tzevoon
@tzevoon 3 жыл бұрын
Thanks for another great video! I see that we always have to specify the outlet. Is there a way to delineate sub-catchment for tributaries within a larger catchment, without specifying all its outlet individually?
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
Thanks. Have a look at Tutorial 6 on this page: courses.gisopencourseware.org/course/view.php?id=10 If you follow the SAGA approach (kzbin.info/www/bejne/aIbFYZZtiNhgipY) you can calculate the junctions in the Channel network and drainage basins tool and use that as an input to iteratively calculate the subcatchments of those points.
@abhimanyukumarbarnwal4616
@abhimanyukumarbarnwal4616 3 жыл бұрын
Hello Hans, would you help us to find command area from a given canal/river in QGIS??
@ferdinanmanullang4488
@ferdinanmanullang4488 4 жыл бұрын
Thank you very much for the video Sir. Anyway, what is the unit of flow accumulation? Because on the channels creation step, you set the flow accumulation should be bigger than 50,000. Is it in m3/s?
@HansvanderKwast
@HansvanderKwast 4 жыл бұрын
Flow accumulation is the number of upstream cells that contribute to the cell. It's not m3/s, because there's no rainfall as input. So basically it is a unit of rain on each cell and then adds it up. A threshold >50k means that only cells that have more than 50k contributing cells are considered as a river. You need to calibrate that number by looking at existing maps or satellite images.
@imtiazabdulgafur9144
@imtiazabdulgafur9144 2 жыл бұрын
Hi, I have 2 points where I got different outputs. When I tried to change the values for flowdirabs it would not just change the label but the output as a whole, which was not in your case. The second was for the river, I got it on value 0 but not on 1. I apologise if it's hard to read but let me know if you would like me to rephrase, thanks.
@raidanmaqtan2652
@raidanmaqtan2652 Жыл бұрын
Dear Dr.Hans. Many thanks for the video and for all your continuous free support in this field. I have followed the steps in this video to extract the streams network of my study area ( big area). Please, is it possible to convert the extracted raster (the layer channels of values 0 and 1 only as described at time16.36 of your video) to a vector layer of streams network? How to do that and convert only the streams (the 1 value) to a vector without including the 0 value and no data value extent? with many thanks in advance
@HansvanderKwast
@HansvanderKwast Жыл бұрын
You have to use the r.thin and r.tovect tools to do the conversion. See kzbin.info/www/bejne/pqLChppogpmVo7s
@raidanmaqtan2652
@raidanmaqtan2652 Жыл бұрын
@@HansvanderKwast Many thanks dear Dr.Hans.
@SuperDanisse
@SuperDanisse 3 жыл бұрын
I just discovered your channel and I love it. Does it matter the version of QGis?
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
The algorithms don't change. But to avoid errors I recommend to use the LTR versions. The problems have normally more to do with the steps: - do not use a DEM without reprojecting from GCS to a projection with x, y in meters. Interpolarate voids, otherwise no continuity of the flow. Fill the sinks, otherwise a lot of disrupted streams. Don't use a very high resolution, especially if you have a large catchment. Don't use spaces, dots, special characters in folder and file names. The area should also not be too flat or too human modified. Outlets should be chosen in the delineated stream, otherwise it will not follow the model.
@SuperDanisse
@SuperDanisse 3 жыл бұрын
@@HansvanderKwast thanks a lot for your tips. I have two questions, is it the same reprojecting the dem than simply using the right click feature of exporting and choosing the desired SRC? I‘ve not seen in your videos the voids interpolation, does the fill tool make also that?
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
@@SuperDanisse Right click is available from version 3.16. The videos are made with older versions. This video shows how to interpolate voids: kzbin.info/www/bejne/fKithHWlidNkr5Y
@hanjostark637
@hanjostark637 Жыл бұрын
Hi Dr Hans. I followed your steps on this video, but my projection might be off? when I ran the Fill on the cliped DEM it displays it at a nother location. Why would this be? Kind Regards Hanjo Stark
@Haryy86
@Haryy86 Жыл бұрын
Did you try to set the proper 'extent' of the map when using r.fill.dir tool?
@Agi-ot2sc
@Agi-ot2sc 11 ай бұрын
Hey thank you very much for this video. For me tho it’s still not working. I can’t do a vector of streams and r.stream.extract is too much processing for my pc. The water outlet with my absolut flow direction (which is 0 to 128) is always 1-3 pixel big, what do I need to change?
@HansvanderKwast
@HansvanderKwast 11 ай бұрын
I'm not sure what could go wrong. I prefer using the workflow with the PCRaster Tools plugin. You can find lots of videos on my channel or check this workshop: courses.gisopencourseware.org/course/view.php?id=60. I think it's more robust than other tools.
@TheSinured
@TheSinured 3 жыл бұрын
Thank you very much for the video! I've found all your video's extremely helpful! I've been trying it out for my own project in Uganda but the result (both through GRASS tools and SAGA tools) channels are not always accurate to rivers displayed on basemaps. Even though a lot of rivers are the same, others are split in two different big rivers while on the basemaps it's just one river. I was wondering how I can alter the results so the channels are displayed more realistically. I've tried different SRTM layers, different tools, etc. but they all display 2 different rivers instead of 1.
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
You can try to improve the results by burning in the river network. There are 2 videos about that on my channel. Burning in the river network will force that the DEM is lower where the rivers are. Your problem can be caused by (1) human manipulation of the stream flow, (2) errors in the DEM, (3) resolution of the DEM in relation to local depressions, such as wetlands and lakes, ...
@TheSinured
@TheSinured 3 жыл бұрын
Thank you very much for your answer! I burned it and it displayed very accurate rivers now compared to my basemap! You're my hero
@moonlighttreasure1099
@moonlighttreasure1099 4 жыл бұрын
Hi thanks for the tutorial. I was able to make it to almost the very end but when I run r.waterout it kept showing SetColorTable() only supported for Byte or UInt16 bands in TIFF format. How to solve it?
@HansvanderKwast
@HansvanderKwast 4 жыл бұрын
That's no problem. You don't need a color table. Check if the output has been generated.
@AhmedAdelSaleh
@AhmedAdelSaleh 4 жыл бұрын
Thanks a lot dear Dr.Hans Do you think that GRASS tools plugin is suitable to do the same process.
@HansvanderKwast
@HansvanderKwast 4 жыл бұрын
This procedure was done with te GRASS tools in the Processing Toolbox.
@jeremymorris1307
@jeremymorris1307 3 жыл бұрын
@@HansvanderKwast Thanks for this really helpful video. Could you comment on why you chose this process over the tools in r.watershed?
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
@@jeremymorris1307 r.watershed creates all basins. If you want to delineate the catchment of a specific outlet you need to use this procedure.
@jokojoko9
@jokojoko9 3 жыл бұрын
Hi! Great video! How can I remove bridges from DEM? Problem is that when channel hits a bridge it redirects to a nearby catchment area.
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
Maybe the resolution of your DEM is so high that it is a DSM instead of a DTM. You could resample to a courser resolution. Or get a layer with bridges (e.g. through QuickOSM), rasterize them and apply some mapalgebra to reduce the elevation at the bridge.
@jokojoko9
@jokojoko9 3 жыл бұрын
@@HansvanderKwast it's 1x1m grid. But smaller bridges aren't removed. I Will try to modify it. Thank you.
@miraclebuoy
@miraclebuoy Жыл бұрын
Hello, Sir. I can't produce a good watershed @ 20:15 because one of my streams wrongly flows to the opposite direction ( i also noticed it form the flow accumulation step). Is there any option to reverse its course? Thanks.
@HansvanderKwast
@HansvanderKwast Жыл бұрын
That's due to the DEM and maybe the filling process. Try another DEM or another workflow (PCRaster, SAGA, Whitebox).
@miraclebuoy
@miraclebuoy Жыл бұрын
Hello Dr Hans. I have faced great difficulty of delineating watershed of a terminal lake, a lake which has inlets but no outlets (Lake Hawassa in Ethiopia). I tried repeatedly using all your suggestions, be it changing the DEM or alternating between PCRaster, SAGA, Whitebox, GRASS, SWAT and stream burning. I think the problem is with the filling process. But no idea how to go about it. Unfortunately there is no any KZbin video on how to deal with such terminal lakes. Can you do one please. Thank you in advance.
@HansvanderKwast
@HansvanderKwast Жыл бұрын
You need to delineate the catchments with outlets at the lake shores. Don't include the lakes, because they will be filled.
@miraclebuoy
@miraclebuoy Жыл бұрын
@@HansvanderKwast Thanks but the filling process step is done before outlet designation. At the filling step, the lake is already filled and the streams are pushed away from the reality. I wish you could take a couple of your precious minutes to delineate Lake Hawassa, in Ethiopia (which is a typical terminal lake) and check for yourself using any one of your delineation procedures, which I am strictly following.
@HansvanderKwast
@HansvanderKwast Жыл бұрын
@@miraclebuoy Just mask the lake in the DEM so it has nodata values.
@szarith1399
@szarith1399 2 жыл бұрын
hi, how to have QGIS with GRASS?, I've downloaded the latest one but I don't see the 'QGIS with GRASS', it only shows 'QGIS Desktop 3.22.2'
@HansvanderKwast
@HansvanderKwast 2 жыл бұрын
In the newer versions there's no separate way to start QGIS if you want to use GRASS. But you need to make sure you have GRASS installed. See kzbin.info/www/bejne/ppvEkHiOZdmJkKM
@sumanghimire2382
@sumanghimire2382 3 жыл бұрын
After the Raster calculator step I am getting an error "Raster couldnot create destination file". How can I solve this problem?
@oweesrashid4166
@oweesrashid4166 3 жыл бұрын
While specifying thd outlet .....You are searching for the capturing thd outlet point....However if we are already having the steam guage lat ang long data.....How to assign that as outlet data point..... please answer
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
I've made a new video to answer your question: kzbin.info/www/bejne/a4nQgaGBeLKNfsk. Hope it's useful.
@maiyourathaankarunanandara3382
@maiyourathaankarunanandara3382 2 жыл бұрын
HI Hans, Can you please explain, what does this (-) Flow accumulation mean? do we have to convert this "-" accumulation also into "+" values? Problem: 1) I have a catchment which shows higher negative flow accumulation than "+" values, this "-" flow accumulation defines my river network exactly than positive flow accumulation 2) Why D8 is better than MFD Method?
@HansvanderKwast
@HansvanderKwast 2 жыл бұрын
Negative flow accumulation means that it's outside your catchment. More info here: grass.osgeo.org/grass76/manuals/r.watershed.html D8 is not better than MFD. What you want to use depends on your area. In science you start with the most simple model. In this case D8. MFD might give better results in flatter areas. There are also other algorithms. See for example this document: rivix.com/Topics/D8_vs_Dinf.php
@maiyourathaankarunanandara3382
@maiyourathaankarunanandara3382 2 жыл бұрын
@@HansvanderKwast Thanks I will have a look on this documents
@cameronciaglia7171
@cameronciaglia7171 Жыл бұрын
I am also getting negative accumulations - did you manage to fix it, if so how?
@maiyourathaankarunanandara3382
@maiyourathaankarunanandara3382 Жыл бұрын
@@cameronciaglia7171 I just converted it into positive values.
@paisneepatel6469
@paisneepatel6469 Жыл бұрын
​@@maiyourathaankarunanandara3382 how you converted negative values to positive
@jiongwang7645
@jiongwang7645 3 жыл бұрын
What happened to the upper left corner that downstream values are very dark (low) at 14:25?
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
These are negative flow accumulation values indicating that those cells have surface runoff from outside of the current geographic region. Meaning they don't belong to the catchment that we're going to derive.
@jiongwang7645
@jiongwang7645 3 жыл бұрын
@@HansvanderKwast Thanks a lot for detailed explanation. Your video is very helpful.
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
@@jiongwang7645 FYI a step by step tutorial with data is available at GIS OpenCourseWare: www.gisopencourseware.org You can find it under the Advanced QGIS tutorials.
@abhimanyukumarbarnwal4616
@abhimanyukumarbarnwal4616 4 жыл бұрын
How can I delineate river and catchment area of a plain area using QGIS
@HansvanderKwast
@HansvanderKwast 4 жыл бұрын
Probably only manually by digitizing and expert knowledge.
@sankaraanu3884
@sankaraanu3884 3 жыл бұрын
I am not getting osm standard map eventhough I had installed the latest version of plugins and the status of QGIS official plugin repository is unavailable....plzz suggest any solution for this problem..
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
Sounds like QGIS can't connect to your internet.
@onkarchothe6897
@onkarchothe6897 3 жыл бұрын
how to calculate the area of the respective stream order? we can calculate the length of each order stream but how to calculate the area? 1st order , 2nd order etc?.
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
These methods are pixel based. So you don't get an area of the stream, it's limited to 1 pixel and it's spatial resolution. If you want real areas, you need to find a way to derive the channel width from the DEM or through remote sensing classifcation. Once you have the polygons, you can calculate the area. If the river is available as polygons in OpenStreetMap you can also use that.
@onkarchothe6897
@onkarchothe6897 3 жыл бұрын
@@HansvanderKwast thank you so much sir.
@EyyoWagwanBoy
@EyyoWagwanBoy 3 жыл бұрын
where can i get the bounding box shp sir??
@dwiyantipurwanto7105
@dwiyantipurwanto7105 3 жыл бұрын
akhirnya ada yg nanya ini wkwk
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
You have to create a bounding box polygon yourself, based on your knowledge on the approximate extent of the study area.
@onkarchothe6897
@onkarchothe6897 3 жыл бұрын
How to find out the centroid of the catchment in QGIS?
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
In the main menu of QGIS go to Vector | Geometry Tools | Centroids
@onkarchothe6897
@onkarchothe6897 3 жыл бұрын
@@HansvanderKwast thank you so much sir.
@adriantoadrian4302
@adriantoadrian4302 3 жыл бұрын
Txuuu
@pranitatiwari9611
@pranitatiwari9611 3 жыл бұрын
i am not getting build virtual raster option
@HansvanderKwast
@HansvanderKwast 3 жыл бұрын
Probably something wrong with your installation. Normally this is solved when you make a new profile. Go to Settings | Use Profiles | New Profile... and choose a simple name without spaces or strange characters. Note that you need to start QGIS with GRASS for the procedure in the video.
@nishantsaxena1976
@nishantsaxena1976 2 жыл бұрын
Not getting the catchment boundary after applying r.outlet
@HansvanderKwast
@HansvanderKwast 2 жыл бұрын
Check if you have chosen an outlet in a delineated stream that corresponds with the filled DEM.
@vvl3393
@vvl3393 2 жыл бұрын
i had the same error as you. you have to make sure your project CRS is the same as the selected layer CRS (in this case the flow direction layer)
@joshuah.9687
@joshuah.9687 2 жыл бұрын
@13:30 you went WAY to fast for the color editing! I slowed it down to .25 speed and I'm still having trouble following. What exactly were you doing with the color picker and the stops???
@joshuah.9687
@joshuah.9687 2 жыл бұрын
Same for the layer styling... I labeled everything (North, North East...), but when I finish, North is not on top. The Value is 2, but your North is on top. I really wish you would have explained this in better detail instead of blow through it.
@HansvanderKwast
@HansvanderKwast 2 жыл бұрын
It's covered in other videos. For example this one: kzbin.info/www/bejne/aIbFYZZtiNhgipY and this one kzbin.info/www/bejne/p2aXqYevi5yad6c. Also in the book QGIS for Hydrological Applications: locatepress.com/book/hyd. Info about encoding of flow direction by different tools: gis.stackexchange.com/questions/254939/legend-of-flow-direction-calculated-with-processing-toolbox-qgis-saga.
@HansvanderKwast
@HansvanderKwast 2 жыл бұрын
You can also download the ramp from the QGIS Style Hub: plugins.qgis.org/styles/116/
@joshuah.9687
@joshuah.9687 2 жыл бұрын
@@HansvanderKwast Thank you for the reply. Apologies for sounding snippy. I am trying to complete a catchment basin for my boss and it's taking days because all I've ever used is ArcMap + extensions, so I am having to teach myself QGIS with no one to help except KZbin. I was able to complete up to the accumulation layer, but my values for the main channel are coming out as -1000 to -100000+, but I know for a fact this is the main channel the tributaries are feeding into. Some of the tributaries are giving a range in the 2000s, but others are -3000s. Where did I go wrong?
@HansvanderKwast
@HansvanderKwast 2 жыл бұрын
@@joshuah.9687 There can be many reasons. I prefer to use methods with the Strahler order, because they're more intuitive. For teaching I use my own PCRaster Tools plugin. It's very robust. Check this tutorial: courses.gisopencourseware.org/course/view.php?id=48&section=1 You can also use the SAGA workflow: kzbin.info/www/bejne/aIbFYZZtiNhgipY. If you're in a hurry use the models for SAGA here: plugins.qgis.org/models/ or for PCRaster via the Resource Sharing plugin: kzbin.info/www/bejne/gZPNeqZ8gcSDma8 If you're in a super hurry, just use Lekan: www.reos.site/en/reos-project/lekan/
Catchment delineation with PCRaster Python
15:17
Hans van der Kwast
Рет қаралды 4,3 М.
Stream and catchment delineation in QGIS 3
33:40
Hans van der Kwast
Рет қаралды 133 М.
When You Get Ran Over By A Car...
00:15
Jojo Sim
Рет қаралды 24 МЛН
I Can't Believe We Did This...
00:38
Stokes Twins
Рет қаралды 95 МЛН
Became invisible for one day!  #funny #wednesday #memes
00:25
Watch Me
Рет қаралды 55 МЛН
Определение границ бассейнов рек в QGIS 3.16
14:38
Александр Фадеев - Территория ГИС
Рет қаралды 4,5 М.
QGISHydro Webinar 4: Stream & Catchment Delineation
1:11:52
Hans van der Kwast
Рет қаралды 50 М.
Burning stream network into DEM layer in QGIS
16:04
Hans van der Kwast
Рет қаралды 15 М.
Deriving River Network & Catchments from a DEM using QGIS
25:54
GeoDelta Labs
Рет қаралды 170 М.
Watershed Analysis in GRASS GIS
50:55
Brendan Harmon
Рет қаралды 9 М.
FASTEST Way to Learn Modern GIS and ACTUALLY Get a Job
15:12
Matt Forrest
Рет қаралды 97 М.
Watershed Delineation in QGIS (Quickest & Easiest Tutorial)
9:24
Creating 3D maps in QGIS
8:57
Jess Zimmerman
Рет қаралды 11 М.
Stream and catchment delineation with GIS (theory)
21:13
Hans van der Kwast
Рет қаралды 30 М.