0

With reference to Using a large set of elevation values for an area how can I find how 'hilly' it is?

which is a reasonable question, perfectly intuitive.

Clearly a 2 km radius near the fjords in Norway is more "hilly" than a similar radius around Topeka, Kansas.

So what is that intuition?

It's not the number of local maxima. Local variations produce local maxima and minima to an infinitely small scale.

It's not about global maxima or minima. Any finite set of elevations could have arbitrarily big or small variations.

But anyone can see that some places are more "hilly" than others.

The obvious answer is to add up the difference between the average elevation and the max or min. But that's not right because it doesn't take into account the locality of the max or min.

A better answer integrates slopes around every max and min, and this is a nontrivial formalization.

So my question is this: Is there a way to take a function of two variables, f(x, y), defined on a closed and bounded set, and average the gradient around every local max and min?

  • 1
    Please refrain from using words like the one I just edited on this site – Yuriy S Mar 30 '18 at 13:30
  • For example, $$-x^2$$ is not as "hilly" as $$-2x^2$$ – Steve Kangas Mar 30 '18 at 14:00
  • If you had a polynomial you would add up the local derivatives around each zero to get a measure of "hilliness". – Steve Kangas Mar 30 '18 at 14:02
  • This page might contain relevant information (this coming from a nanoscientist, who is familiar with similar problems) https://en.wikipedia.org/wiki/Surface_roughness – Yuriy S Mar 30 '18 at 14:07
  • Thanks Yuriy. I'm thinking about the original question, which is ill-defined. Answers would depend on how you define things... which is the interesting part. – Steve Kangas Mar 30 '18 at 14:18
  • About the question at the end of the post: how is $f(x,y)$ defined? Is it given in analytical form? Then I don't see a problem with explicitly finding all extremum points and directly computing the gradients. – Yuriy S Mar 30 '18 at 14:19
  • In the original problem it was a finite set of elevation points (1092 points defined on a 2 km radius). I mentally ran a surface through the points. – Steve Kangas Mar 30 '18 at 14:32
  • It's nontrivial to average gradients around all the maxima and minima. – Steve Kangas Mar 30 '18 at 14:33
  • The idea would be that you have greater "hilliness" if the region has a lot of very steep hills and valleys. – Steve Kangas Mar 30 '18 at 14:44
  • Just looking quickly at your Wikipedia link, Yuriy, it seems like the most commonly used measure of "roughness" is just a sum of deviations from the average. This would make a good measure over a large region but I don't think it would capture the idea that a small region is more "hilly" than another. Again... the problem is ill-defined. – Steve Kangas Mar 30 '18 at 14:54
  • Are you looking for the total variation, $\mathrm{TV}=\iint|\nabla f|,\mathrm dA$? This is used extensively in image processing. An "average slope" could then be quantified as $\mathrm{TV}/A$. –  Mar 31 '18 at 15:15
  • The original questioner did ask for a formula for this... so total variation might be a good answer there. Problem is, you can get a big total variation if you just have one very big hill, which doesn't seem to capture the intuition: If I ride my bike around Seattle, I notice that I have to go up and down some steep hills many times, whereas it doesn't seem that way if I ride my bike around Amsterdam. So I was thinking the measure should involve the number of max and min and a measure of steepness for each one, adding all this up in some reasonable way. – Steve Kangas Apr 03 '18 at 22:53
  • Of course, natural landscapes tend to be fractal-like, so for a practical answer you might need to filter enough to smooth things out to a human scale. Still not sure how to formulate the intuition. – Steve Kangas Apr 03 '18 at 22:55

0 Answers0