Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.


Jeff
Posts:
107
Registered:
2/27/10


Re: Finding "mountain passes"
Posted:
Jan 23, 2013 7:16 PM


"Nicholas" wrote in message <kdpegc$5k$1@newscl01ah.mathworks.com>... > Hi All > > I'm curious about an efficient means of finding "mountain passes," i.e., saddle points, between two peaks of a realvalued matrix of arbitrary dimension. > > In other words, I have this matrix M and two peaks in that matrix, x and y. You're some silicon hiker who wants to hike from peak x to peak y, but you want to minimize how much you go down, so you can minimize how much you have to hike back up to get to y. Let's say you can find this path, what is the value of the lowest point along this path? How can I find that? > > Phrased differently, if we create a series regions defined by contour lines, what is the maximum of the set of contour regions that encompass both peak x and y, or the lowest contour that contains either x and y but not both. > > The last way I'll phrase it is, if changing elevation incurs a cost, what is the lowest point on the minimumcost path between the two peaks? > > (for a better explanation than I feel like I'm giving, consult: http://en.wikipedia.org/wiki/Topographic_prominence but keep in mind I don't want the distance from the peak to the contour, but rather the distance from the "ground" to the contour) > > Thanks!
If you can truly find this path (i.e. you have a list of coordinates) then the MIN function on the elevation component will give you the lowest point(s). You can then use FIND to create an index of the point(s) that equal that elevation.
If you do not actually have this path, and you are truly interested in saddle points, then watershed thresholding is what you want. Steve Eddins has a great series of blog entries here: http://blogs.mathworks.com/steve/2009/04/24/continentaldivide1intro/
Of course, he is doing the topographical opposite, if you will, by finding a ridge, but the principle is the same.



