[GRASS-user] Building topologically correct stream network

Micha Silver micha at arava.co.il
Sun Jul 26 09:43:12 EDT 2009

On Thu, 23 Jul 2009 08:15:41 +0200
Markus Metz <markus.metz.giswork at googlemail.com> wrote:

> Hamish wrote:
> > MMetz:
> >   
> >>> What exactly is wrong with topology? The existence of these
> >>> dangles? 
> >
> > note the v.strahler help page makes special mention that if you used
> > r.watershed you should check the topology. Maybe it makes a bitter
> > deal out of that than is really the case?
> >
> > S:
> >   
> >> Maybe there is nothing wrong.  On further reflection the area that
> >> I am trying to use this procedure on is very flat and there are
> >> intermittent streams and wetlands (site visit) all over the
> >> study area.  These non-connected lines maybe showing
> >> intermittentancy?
> >>     
> >
> > do you see a "ladder effect" in the r.to.vect river network?
> > (like a braided river with all joins at right angles)
> > maybe that is the problematic topology the module is concerned
> > about? 
> I can only think of these two possible problems - dangles and
> ladders. Dangles are caused by the method used to extract streams
> from a flow accumulation map whereas these ladders are an artefact of
> r.to.vect.
I'm also struggling with these "ladder" artifacts. They seem to
appear, of course, in flat areas. Attached is a sample with the
catchments raster (colored) in the background and the catchments vector
map (black lines) overlayed. (I used the '-s' option with r.to.vect to
smooth corners) and streams in blue. 

There's no problem running v.clean tool=rmarea to get rid of the small
areas, but then what you get is streams running right along the line
dividing two basins, which looks incorrect. Sometimes the clean
operation will leave a "zigzag" boundary and the stream then "crosses"
back and forth between two basins, which is certainly not desirable.

I've tried this at a few different resolutions (both larger and
smaller than the original dem) and the problem appears consistently. 

If anyone has suggestions to overcome this problem, I'll be in line
for testing.


> I'm regularly trying out different threshold values in r.watershed,
> only to get different streams to be vectorized, flow accumulation and 
> drainage direction are not affected by the threshold option in 
> r.watershed. I have an idea for a new module that would take flow 
> accumulation and theshold as input and would then extract streams
> from it, both as raster and as vector (topologically clean in the
> v.strahler sense). This new module would work with both SFD and MFD
> flow accumulation and with r.terraflow flow accumulation. The problem
> is that the rough concept exists in my head only and I have no time
> right now to develop this module. All the code is there in
> r.watershed, it just needs to be reorganized a bit...
> Markus M
> _______________________________________________
> grass-user mailing list
> grass-user at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-user
> This mail was received via Mail-SeCure System.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: r_watershed.png
Type: image/png
Size: 82564 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/grass-user/attachments/20090726/a1a44f3a/r_watershed-0001.png

More information about the grass-user mailing list