Tuesday, 31 March 2015

How to convert an ArcGIS flow accumulation layer into a "Boolean" stream layer

A flow accumulation layer is a continuous raster that stores the number of upstream raster cells that flow into each cell. As water accumulates in cells as it flows downhill, higher accumulation values should correspond to larger streams. To create vector stream channel lines from a flow accumulation layer it must first be reclassified to a Boolean layer that defines if a channel exists within each cell or not. To do this a flow accumulation threshold must be set that defines how much flow a cell must have to be identified as a 'channel'. 

Boolean layers contain store one of two values in each cell that represent either 'true' or 'false' ('yes'/'no') in respect of the entity being modelled. In Boolean mathematics, "true" is assigned the value '1', and false '0'. But in some situations, including reclassifying  an ArcGIS flow accumulation layer, data needs to classed '1' for 'true' and 'NoData' for 'false'.

In the HydroGIS practical, you create a flow accumulation layer from your hydrologically correct DEM. Flow accumulation ranges from 0 (no flow from no other cells flow into this cell) to 10119 (the number of upstream cells that flow into a cell).


To convert the flow accumulation surface into vector stream channel lines you must select a threshold flow accumulation value above which a cell is defined as containing a stream channel (channel = 'true'), and below which no channel is present (channel = 'false'). This threshold determines the density of stream lines that will be created. A higher threshold will result in fewer stream cells than a lower threshold.

A good way to select a threshold is to change the symbology of the flow accumulation layer so that it only displays cells with values above the threshold. You can then view the density of channel cells before creating your Boolean channel raster layer.

Open the flow accumulation Layer Properties and select the Symbology tab. Now set the layer to show two classified values. The class containing lower values represents 'false' cells that do not contain stream channels. The class containing higher values 'true' cells that contain channels. Select the Classify... button to change the threshold between the two classes.
See how a flow accumulation threshold to 3036 results in very few stream channel cells (above), whereas a threshold of 100 defines many more stream channel cells (below).


When you have chosen your threshold, use the Spatial Analyst Reclassify tool to create a 'Boolean' raster that stores '1' in channel cells and 'NoData' in non-channel cells. To do this you must change the 'New values' from the default incremental integer classes to '1' and 'NoData'.



The 'Stream to Feature' tool in the Hydrology tool set can now be used to generate vector streamlines from this 'channel layer' (Input stream raster) and the flow direction raster for the hydrologically correct DEM the stream lines were derived from.

No comments:

Post a Comment