Interpolating to produce DEMS

JWO%LEICESTER.AC.UK at VTVM2.CC.VT.EDU JWO%LEICESTER.AC.UK at VTVM2.CC.VT.EDU
Mon Jan 6 06:34:05 EST 1992


In response to William Lamb's question on grassu-list:

> ... how does one make a DEM (and subsequent slope cell map)
> from a grid of point elevations.

I assume you mean an irregular set of point elevations (otherwise you would
already have your DEM). I think the best method to use will depend on the
distribution of points that you have. GRASS has three interpolators that can
be used for converting point to surface data: r.surf.idw, r.surf.idw2 and
r.surf.contour. For slope calculation, use r.slope.aspect.

The first two are simple inverse distance weighting interpolators that use
the n nearest data points to calculate the value at each cell location. These
work best for randomly distributed (eg sampled) data points. r.surf.idw is more
efficient at processing densely distributed data while the other is better for
sparse data. GRASSclippings (Vol 5 no.2 p9) shows how r.surf.idw2 was used to
create a DEM in this way. In my limited experience however, most data that are
to be used to create a DEM are either (vector) contour data themselves or at
least a point pattern greatly influenced by the distribution of original
contour lines. For such data idw interpolation often not appropriate.
Characteristic terracing effects are often produced that reflect the original
pattern of contours. This can be clearly visualised by applying the GRASS shell
script shade.rel.sh to the DEM with a low sun angle.

More acceptable for DEM interpolation from contour data is r.surf.contour. This
will reduce (but not eliminate) terracing effects for point distributions that
follow contour lines.

(To provoke discussion:)  I feel that none of the GRASS interpolators are
entirely suitable for producing DEMS from contour data - largely because of
terracing artifacts in the resultant DEM. Has anyone else had problems (or
success) of a similar nature ?


> I have not been able to figure out how to get DEM data into GRASS4.0 if you
> do not have a local tape drive.  I have to dump nine track tapes on a
> Vax or Amdahl cross-campus :-( and then bring them to my workstation
> across our net.  The grass4.0 command m.dem.extract wants a tape drive
> locally.  How can this be bypassed?  I would really like to save myself
> from writing a program to do this if someone has done it before.

I too have exactly the same problem and was thinking about writing a program to
convert USGS DEMS into GRASS format. Surely this must be a common task that
many GRASS users will have had to face. Can it really not be done without using
1/2 inch magnetic tape ? If no one has a solution I would be willing to write
the code and submit it to anyone who wants it. Is there anywhere that
subscribers to grassp and grassu can leave/collect GRASS code without waiting
for the next GRASS release ?

---------------------------------------------------------------------------
Jo Wood
ASSIST					email:	JWO at UK.AC.LEICESTER
Midlands Regional Research Laboratory	tel:	0533 523625
University of Leicester			fax:	0533 522200
LEICESTER LE1 7RH
UK
---------------------------------------------------------------------------



More information about the grass-user mailing list