Problem Solving: Finding slope breaks in DEM

kfroesekfroese Geotechnical EngineerPosts: 165Trusted User
edited June 2012 in Elevation Data
I am working on a project considering development boundaries on a piece land next to a high river bank. I'm interested in finding the major breaks in slope along this property. I typically export my DEM as slope, bring it back into GM, and then contour on 7degrees. This 7d line has typically given me the top-of-bank line fairly well. However, it is not working at this site to find the bottom of the slope as the plateaus adjacent to the river are sitting anywhere from 6d to 20d.

What I have tried to figure out is how to contour were there is a significant change in slope. Remembering back to my university calculus, it seems that what I'm looking for is essentially the 2nd derivative (slope angle being the 1st). So, I exported my DEM of slopes as slopes (which gives the slope of the slopes, or rate of change of slope). It seemed like a good idea but I had too much noise in the data to cleanly extract a contour line (unlike the top-of-bank 7d line).

Any thoughts from the community?


  • global_mapperglobal_mapper Administrator Posts: 17,238
    edited June 2012
    That is exactly what I would have suggested, but as you noted there is a lot of noise. You might try applying resampling to your original export of a slope grid to smooth it out a bit, maybe a box averager of some size (play with them to see what works best) and then do the slope of slopes from that to see if it filters out some of the noise.

    Let me know if I can be of further assistance.


    Global Mapper Guru
  • kfroesekfroese Geotechnical Engineer Posts: 165Trusted User
    edited June 2012
    I did make an attempt or two to simplify the data. I created slope degree contours on a 3d spacing, used those contours to create a simpler slope DEM and then exported the "slope" of that. However, that still didn't seem to be enough simplification. I will try doing it on 5d contour interval and will also check the result of increasing the sample spacing when exporting.

  • tjhbtjhb Global Mapper User Posts: 454Trusted User
    edited June 2012
    FWIW (since you ask for comments) I would do this in Manifold, where you have many more degrees of control. For example you can explicitly specify a window over which slope should be calculated, apply smoothing as part of the calculation, before or afterwards (or both), and this is done on the GPU so is lightning fast.

    AvgValue(Slope(Slope(LowPass1([DEM]), 3), 3), 1)
    This would apply a moderate low pass (smoothing) filter to the source DEM, calculate the slope over a window of 7 x 7 cells, then the same again (slope of slope), and finally apply averaging to the results over a 3 x 3 window. Because it happens so quickly, it's essentially costless to experiment to get the result you need.

    Horses for courses. Happy to send you back a processed sample if you can supply source data.
  • kfroesekfroese Geotechnical Engineer Posts: 165Trusted User
    edited June 2012
    After doing another hour or two of fiddling, I think I'm going to be stuck manually tracing the slope toe I'm interested in. It doesn't seem that changing the sampling interval (either in XY or in terms of degrees) generates a result that I'm happy with. I think fairly uniform slopes would be required for my methods to work.

    tjhb: can you send me a private message with your email address so I can send you some sample data? I'm curious to see what Manifold can do with this as it is a program I have considered looking into.
  • tjhbtjhb Global Mapper User Posts: 454Trusted User
    edited June 2012
    Sorry not to have seen this sooner.

    I can't see how to PM you here--nor how you could PM me. I thought we had email addresses in our profiles but apparently not. I'd certainly like to help though.

    Try my user name at clear dot net dot nz.
Sign In or Register to comment.