[GRASS-dev] [GRASS GIS] #807: r.watershed doesnt consider longer
distance to diagonal neighbouring pixels
GRASS GIS
trac at osgeo.org
Wed Nov 11 05:44:40 EST 2009
#807: r.watershed doesnt consider longer distance to diagonal neighbouring pixels
----------------------+-----------------------------------------------------
Reporter: aread | Owner: grass-dev at lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Raster | Version: 6.4.0 RCs
Keywords: | Platform: All
Cpu: All |
----------------------+-----------------------------------------------------
When using r.watershed on a low relief smooth dem I realised that the flow
direction surface was almost 20 times more likely to go to one of the
diagonal pixels rather then the edge pixels. I’m sure this is not right as
I interpret the description in Ehlschlaeger (1989) this shouldn’t happen.
The defect is that r.watershed isn’t correcting for the larger distance
between cells that share a corner then cells that share an edge. The
result is that r.watershed is directing flow to the lowest cell not the
steepest cell.
Ehlschlaeger (1989) in the last paragraph of section 4 describes how the
search algorithm should be adjusted to account for diagonal cells being
further away so that flow follows the steepest path. see
[http://chuck.ehlschlaeger.info/older/IGIS/paper.html]
In
[http://trac.osgeo.org/grass/browser/grass/trunk/raster/r.watershed/ram/do_astar.c#L232]
there is code in get_slope that accounts for the diagonal but it doesn’t
seem to be called.
--
Ticket URL: <http://trac.osgeo.org/grass/ticket/807>
GRASS GIS <http://grass.osgeo.org>
More information about the grass-dev
mailing list