Overview of watershed delination using QGIS. The
Manual approach uses a series of functions available in SAGA GIS. The
Automated approach uses QSWAT+ which is recentely implmented in QGIS 3. Other approaches are introduced in youtube videos by Hans van der Kwast.
Create a merged DEM layer
(1) Download Adjusted DEM from MERIT Hydro. Select area you need.
Build Virtual Raster
(3) Select layers to be merged, uncheck the checkbox
Place each input file into a separate band, and Run
(4) Merged DEM
Raster channel network
(1) I create a binary raster data with
1 indicating stream networks (
0 otherwise) to burn streams into DEM. Download Upstream Drainage Area from MERIT Hydro
(3) Input a formula to extract pixels with > XXX drainage area (
"epsg4326_MWupa@1" >= 1). In this example, I set a value of 1 as pixel values were entered in unit ‘km2’. Unit varies by file, so make sure before deciding the value.
(4) Binary channel data - pixels with > 1 km2 drainage area have 1, otherwise 0.
Burn streams into DEM
Raster Calculator. Subtract a value from the original DEM using the Binary channel layer (
"epsg4326_MWdem@1" - "epsg4326_MWupa_channel@1"*20). In this case, subtracting 20 m from the original DEM. Important: every single pixel must match between layers.
(2) Burned DEM - pixels where streams flow have low elevations.
(2) Reprojection setup
Input Layer: burned DEM
Source CRS: current layer CRS
Target CRS: target CRS
Resampling method to use:
Nodata value for output bands: -9999
Output file resolution in target georeferenced units: 90 m
Additional command-line parameters:
Fill depression area
Terrain Analysis - Hydrology >
Fill sinks (wang & liu)
(2) Fill sinks setup
DEM: Burned DEM
Minimum Slope: 0.001 (default 0.01, but does not work for Midwest)
Create a channel network
Terrain Analysis - Hydrology >
Elevation: Filled DEM
Method: Deterministic 8
Terrain Analysis - Channels >
Elevation: DEM used for catchment area calculation
Initiation Grid: Catchment area grid produced by 'Catchment area'
Initiation Threshold: Minimum catchment area to be a channel
(3) Channel network produced
(1) Go to SWAT+ website and install the software onto your computer. Install guide is available on the website linked.
Manage and Install Plugins > Search
SWAT > Check
QSWATPlus3_64 to activate QSWAT+
(1) Create a working directory where all the output files will be stored
(2) Create a QGIS project in the working folder (otherwise QSWAT+ will ask you to create)
S+ icon in the menu bar
Delineate Watershed in the QSWAT+ inbox
(5) Create streams (click
Create streams once you are ready)
Select DEM: Choose raw or burned DEM (or filled DEM, but the following process involves filling depression areas).
Burn in existing stream network: [Optional] check and choose a vector stream file for burn-in if you prefer
Stream threshold: Define minimum catchment area to be a channel or stream
(6) Create watersheds (click
Create watersheds once you are ready). In the following example, I drew two outlet points indicated by blue triangles
Use an inlets/outlets shapefile: [Optional] check and choose a vector file that specifies inlets/outlets or draw inlets/outlets (
Draw inlets/outlets). If you use a predefined point vector, the file must contain the following fields in its attribute table -
PTSOURCE. The field
IDis a series number that uniquely identifies each point, while others are an indicator variable that speficies whether the point is either a reservoir (
RES), inlet (
INLET) or PTSOURCE (
PTSOURCE). If the point is either of these, the corresponding column should be indicated as
0). If all the columns but
0, then the point is recognized as an outlet.
Snap threshold (meters): If you draw inlets/outlets, those must be exactly on a stream line. QSWAT+ snap points to the nearest stream line with a threshold value of 300 m by default.
(7) Stream and watershed layers created for each outlet
(8) To merge subbasins, go to
Merge subbasins tab at the bottom >
Select subbasins. QAWAT+ will let you select subbasins that you want to merge. Note that the QSWAT+ will not merge subbasins that do not share an outlet.
(9) Merged watershed polygons
(10) Output files are stored in the working directory: Go to your working directory >